TweetFollow Us on Twitter

September 93 - ObjectMaster

ObjectMaster

Vinko Tsui

ObjectMaster is an object-oriented development tool available on the Macintosh. It provides a total environment, including the ability to display a class tree of your application. Its a source code editor that knows about object-oriented classes, methods, and member fields.

In version 1.0 ObjectMaster introduced one of the only integrated object-oriented development tools. With version 2.0 it has further enhanced the environment for its existing users, and hopes to gain some new ones.

the original

General Features of ObjectMaster

ObjectMaster is a "generic" object-oriented code development tool. It is a real life demonstration of Apple's concept for having applications do a few things very well and rely on others for specific tasks. ObjectMaster (OM) accomplished this using the standard suite of AppleEvents plus a few other custom ones.

OM does not have a built in compiler, resource editor or debugger; it lets the user choose these tools. It then uses AppleEvents to execute the appropriate tool for the corresponding task.

OM is not only for users of object-oriented languages. It is also accommodating to users of non-object-oriented Programming languages. This is because OM has an editing environment with custom formatting and macro facilities in the File window, and the capability of managing your procedures with its Browser window.

Object-oriented programmers will be happy to know that OM will assist you in subclassing Super Classes and even allows you to choose the methods to override. It also allows you to mark the classes so that OM can distinguish the difference between custom classes and components or other class libraries.

Aside from the standard editor capabilities, it also colorizes the keywords in your source, like the comments, compiler options and keywords from programming languages. You can customize this easily via a dialog, and these settings are programming language specific. There are sets for Pascal, C/C++ and Modula-2. It also accommodates source code from other platforms by allowing the users to define their own keywords to ignore or to have values of either TRUE or FALSE.

One thing the 4th Dimension users will feel familiar with are the menu bars in the OM windows similar to those in 4th Dimension. In version 2.0 the user can choose whether these menu bars are shown in the respective windows, along with the application menu bar in Geneva 9 point or 12 point, or combine all the menus in one application menu bar. If the latter is chosen the content of the application menu bar becomes context sensitive with the current active window. Unfortunately, ObjectMaster does not care how wide your screen is, so if your screen is too narrow the menu bar will run off the right hand side of the screen.

OM also has the capability to generate a Make file for your source code.

The Browser Window

This is where OM displays the classes, member fields and member methods. It organizes these properties within three lists shown as three of the Browser's four panes. The class list can display its content in a hierarchical or alphabetical order. When the user selects one of the items in this list, it will automatically update the method and member field lists to show the class's methods and member fields respectively. When the user selects an item from the method list OM will display its implementation in the edit pane of the Browser window. OM will also identify any overridden methods by underlining their names in the method list. Each of the lists can display its contents in alphabetical order; the methods in the Method list and the member fields in the Member Field list may also be displayed in the order in which they were defined; and the Class list will also display in hierarchical order.

The File Window

This window is similar to other editor windows such as those available in MPW and Symantec. The difference is that it has a list of macros organized in a menu. These macros can be expanded anywhere the caret is located within the Edit area. OM comes with a few programming language specific macros, and the macros can be customized by the user. Unfortunately, customizing these macros is not that easy since the user has to do it with ResEdit.

The Worksheet Window

This is similar to the MPW worksheet. The user can execute AppleEvents, MPW scripts, and commands. ObjectMaster accomplishs this by using AppleEvents. Therefore, it requires accompanying AppleEvent aware tools, like MPW 3.3, ToolServer, and Think Project Manager 6.0

The Project Window

This is where the files for the OM project are listed when the user chooses "Add Source Files." The files can be listed in many different orders, including by pathname, by Filename, by size, by programming language, by project state, by suffix, by color, or by date. This window is MPW Projector aware, meaning that OM will not allow the user to modify a file if it has not been checked out modifiable. For each item in this window the user may choose to display different information, like the language, project state, name, modification date, file size, unit name and pathname.

The Tree Window

This window displays the class tree for your object-oriented application. This is a great way of seeing how things are organized in your application. When the user double clicks on one of the nodes in the tree, OM will open a Browser window displaying the class's methods and fields.

Help from 411

ObjectMaster supports the same 411 help files shipped with MPW. It even lets you generate basic 411 syntax as a base for your own custom 411 Help files. You can get 411 help for any procedure or method simply by double clicking on the item you want help with. The 411 help text will be displayed in a help window, where you can copy anything from it to your own source.

Now for the New Stuff

There are over a 100 new enhancements, each of which makes the new version even more valuable. Great improvements were also made to OM's manual. It is more accurate and easier to understand. I will now point out some of the new enhancements which are significant in providing an improvement to the total experience for the user.

Project Window

Enhancements made to OM's Project window begin with support for recursive projector databases both with Source-Server and MPW. OM has full support for SourceServer. After the "Use Projector" option is selected in the Project menu, OM uses and launches if necessary, SourceServer for all projector tasks. Since OM has always supported the ToolServer, everything you want to do with MPW is available to the OM user. Plus, THINK users can now enjoy the features of Projector as well, without having to use MPW. There are also new supports for the Projector. These features are all accessible from the Projector menu:
  • "New Project Database…" creates a new projector database and makes it the database for the current OM project.
  • "Orphan" makes the selected file an orphan from the current Projector database. This feature is implemented by OM directly, and does not require SourceServer or MPW.
  • "Update From Project Database" checks out read-only files from the Projector database which are newer than the user's local version. The checked out files are selected in the Project window after the operation.
  • "Check In My Changes" checks in all the files the user has checked out. The files are then read-only, and are selected in the project window after the operation.
  • "Update Database With My Changes" is the same as "Check In My Changes" but keeps the files modifiable.
  • "Project Information" dumps project information into the OM worksheet. If some files are selected, only information about these files is displayed, otherwise the full project information is dumped. Unfortunately, due to limitations in PPC only 32k of data can be sent back from SourceServer, so some information may be truncated. This is a bug in Apple's AppleEvent manager and not in OM.
  • "Cancel Checkout…" behaves the same way as the MPW Cancel Checkout command.

Some of the other improvements in this window include the menu command "In project folder only" which now means in the project folder and all its included folders (as compared to the project folder and not the included ones in version 1.0). You can now rename files in the Project window.

The user can now use the new menu item "Ignore MPW Settings" in the File menu of the Project window, to choose on a per project basis whether he wants to use the MPW settings such as font, size, and tab size, or use a project setting. This allows multiple programmers working on the same set of sources to have their own preferences setup the way they want it. This also enables the user to visualize source code he inherited from somebody else consistently. The user can also add break lines in the Project window, when sorting by color or folder for instance. When items in the Project window are sorted in project order, the files in the Project window can be re-ordered by dragging them in the Project list.

Browser Window Enhancement of this window starts with the ability for the user to select more than one class in the Class pane of the Browser window and then change their attributes like their color or the User Class status, or sort the classes by color. There is also an option to use the color of the source file from the Finder as the color for the class.

The three list panes were in horizontal orientation in version 1.0. This sometimes does not provide a tall enough Text pane to see the required source. Smalltalk users are more used to the vertical orientation, but users of narrow monitors will find this orientation inconvenient. OM 2.0 lets you to choose.

The Browser window now maintains a list of the last ten methods opened in the window. There is a cartouche at the bottom of the Browser window. The popup will show the different methods available; selecting one will replace the existing method by the one you choose.

The "Save As Template Window" for Browser window now save the browser options (Hierarchical/Alpha, Inherited Methods/Fields, Show File types…) as the default to be used when opening a new browser.

Double clicking on a class or a field in a Browser window opens the class definition in the edit view of the Browser. This can be edited and saved back. Due to these changes the items "Close Method", "Save Method" and "Revert Method" now change on the fly according to what is edited in the text view.

In the Method and Member field pane in the Browser window, the user can now sort by access rights. If this option is selected OM will put public member first then protected members and last private members.

Text Window Now users can do searches in the window that displays the 411 help text, and hypertext is available through Command Click on any word you want further help with. The definition of the word you want help with will be displayed in the upper part of the Help window, where the bottom half will still display the textual explanation.

Build Menu The new menu command "Skip Warning" is a handy way to omit all compilation warnings without setting this flag in the compile statements. When this flag is toggled, while an Error window is opened, the user needs to close it and perform a "Build Error List" to see the change reflected. The new menu command "Set SYM File" lets the user associate different SYM files with the same project. The "Set Build Script" menu item lets the user choose which script to use for compilation; the default is CompileProject, so that several versions of the application can be built from the same project and still use the Build command.

Enhanced C++ features There is now support for distinguishing multiple inheritance classes. A "°" at the end of the class name shows that it is inherited from several classes. The class will be attached to the first of the base class in the Class pane when the hierarchical display option is chosen in the Browser window and in the Class Tree. Option-clicking on the class in the class tree will show the list of its parents. Support for C++ 3.0 template is also added. The template classes appear as regular classes with their name annotated with a † at the end in the Browser window and the Class Trees to show they are not real classes. The same thing is done for template functions.

Enhancement In General The following are items of improvement throughout the product that do not fit in any particular category:

  • The make file generated is now sorted from fewer dependents to more dependents, and all the files on which a specific file depend are compiled before the file itself is compiled.
  • When a file has been changed in version 1.0 OM normally brings up an alert to explain the problem, but now it will just perform the required reparsing automatically.
  • The find in Dictionary dialog in now modeless, which allows it to be kept around for lookups. There's also a new multifile search command where after the search criteria are set in the Find dialog, it will search for the file after the last file you search, in the project order.
  • Now the names of the script and tools executed in MPW or ToolServer will be displayed in the Worksheet's cartouche similar to MPW's worksheet, so that the user can tell what is happening behind the scene in MPW or ToolServer. There is a difference from MPW's worksheet, where if you click in the cartouche it will toggle between two displays: the current tool or script running and the percentage completed.
  • Option-Double click has been extended to open files by their name or unit name. Option double click on x.h in an #include "x.h" will open the file x.h if it is in the project. Option double click on UMacApp in a uses clause in pascal will open the file UMacApp.p. Another way for doing the same thing is from the new "Open Selection" menu item in the File menu.
  • Parsing of files is now much quicker. During parsing there is also a status display which keeps a current count of all the problems encountered. This parsing process now also makes use of MutiFinder memory under System 7, so that the likelihood of running out of memory is reduced.
  • Now when OM encounters a file error, this information is stored on disk. When the program is reopened it will be shown as such.
  • There is now much better background multitasking during project opening and multi file search.
  • There is a new Status window accessible from the Windows menu that shows the number of classes, methods, fields, structures, segments, resources and files in memory, and the amount of free memory.
  • If implementations for methods in a class are missing after the class has been modified in the Browser window, OM can create these implementations automatically if desired, or on command for a class which has missing method implementations. Pure virtual member functions will be recognized correctly, so that default implementations are not created for them. These functions show up in outline style in the Browser window. Classes with pure virtual members are also displayed in outline style.
  • The Find window now supports regular expressions; unfortunately, after Regular expression help is selected for this movable modal window, it may be too tall on some monitors.
  • OM now supports type-ahead keyboard handling in lists, which greatly reduces scrolling and allows for getting to the desired item faster, especially on slower CPUs.
  • The OM Button folder now accepts aliases and special consideration is made for applications so that OM launches them automatically.
  • Each file now can be flagged as a user file as opposed to a library file, and you can indicate whether or not it should appear in the makefile.
  • When a file cannot be found during opening of the OM project, a Replacement dialog is displayed for the user to locate the missing file. Now there is a new button which will enable you to skip all missing files.
  • All the dialogs used for defining macros are now modeless.
  • Automatic markers are created for classes definitions as well as method implementations now.
  • The user can create StartScript and EndScript files in the project folder of the OM project. If they exist, OM will execute their contents upon opening and closing of the project. This allows for pre and post project customization.
  • The user can now set the Text format for more than one file at a time by setting a Text format in the Project window. Text format is applied to any selected file; hence file Text format can be set without opening the files.
  • The style of the text within the #if #endif block can now be set independently from the rest of the code. This style is the same as the style assigned for code that are skipped.
  • OM's new menu item "Append to Clipboard" in the Edit menu, lets the user copy stuff and concatenates them with the contents of the existing clipboard, so that the user can copy multiple items from different places and pastes them in one location.
  • OM now is aware of link errors and will open the CompileProject.err each time there are link errors.
  • The Option click for highlighting the enclosing syntax block also takes into account the pre-processor directives like #if #else and #endif sequences.
  • A Pop-up menu in the 411 window allows the user to go back to previous 411 entries.
  • AppleScript is supported in the new version. The Command-Enter key combination in the Worksheet is used to execute AppleScript scripts. OM itself has support for the following classes implemented: cApplication, cWindow, cDocument.
  • Two new menu items, "Execute In Shell" and "Execute In AppleScript" in the File menu of the Files window, allow for the execution of AppleScript and MPW Shell commands from any text window. The output is always directed to the Worksheet window.
  • OM now supports Think Reference 2.0. When an entry has not been found in 411 or no 411 files were added to the project, OM will talk to THINK Reference 2.0 to get the information.
  • A new Startup folder in the OM folder is used for automatic startup of AppleScript so that AppleScript handlers can be placed in this folder.
  • The cursor now changes appropriately depending on the external tool being used; SourceServer, ToolServer, and Think Reference. This is to provide the user with more information on what is going on.
  • Add File for a THINK C project is now implemented. It requires THINK Project Manager 6.0. When adding files from a THINK project, OM will let you choose if you want all files or just the files in the project folder.
  • Command click in close box hides a window. Option+Command-click in close box closes all windows of the same kind as the one you clicked in. Option click in close box closes all windows except the project window.
  • Command click in the title of a text file (as in the finder) brings a popup showing the folders hierarchy to which the file belongs. The long file names are truncated with "Volume:…:File" as in MPW.
  • The worksheet buttons feature of OM has been extended so that under system 7 anything can be made a button. If it is a text file with an OM, MPW, ToolServer signature it will be executed in MPW/ToolServer, otherwise an open document AE is sent to the finder (so that you can make buttons for documents).
  • In the documentation window, option-enter will force OM to go to Think reference even if the entry is in the 411 files for the project.

In Conclusion ACI has packed a lot into this latest upgrade for one of the best and most customizable development environment. It replaces MPW's editor with a more superior one, but still provides the user with the needed access to MPW's powerful tools. It also gives the MPW user the choice of using a faster compiler like the one from Symantec. All in all ObjectMaster version 2.0 is well worth the $169.00 upgrade cost for existing users.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

Top Mobile Game Discounts
Every day, we pick out a curated list of the best mobile discounts on the App Store and post them here. This list won't be comprehensive, but it every game on it is recommended. Feel free to check out the coverage we did on them in the links... | Read more »
Price of Glory unleashes its 1.4 Alpha u...
As much as we all probably dislike Maths as a subject, we do have to hand it to geometry for giving us the good old Hexgrid, home of some of the best strategy games. One such example, Price of Glory, has dropped its 1.4 Alpha update, stocked full... | Read more »
The SLC 2025 kicks off this month to cro...
Ever since the Solo Leveling: Arise Championship 2025 was announced, I have been looking forward to it. The promotional clip they released a month or two back showed crowds going absolutely nuts for the previous competitions, so imagine the... | Read more »
Dive into some early Magicpunk fun as Cr...
Excellent news for fans of steampunk and magic; the Precursor Test for Magicpunk MMORPG Crystal of Atlan opens today. This rather fancy way of saying beta test will remain open until March 5th and is available for PC - boo - and Android devices -... | Read more »
Prepare to get your mind melted as Evang...
If you are a fan of sci-fi shooters and incredibly weird, mind-bending anime series, then you are in for a treat, as Goddess of Victory: Nikke is gearing up for its second collaboration with Evangelion. We were also treated to an upcoming... | Read more »
Square Enix gives with one hand and slap...
We have something of a mixed bag coming over from Square Enix HQ today. Two of their mobile games are revelling in life with new events keeping them alive, whilst another has been thrown onto the ever-growing discard pile Square is building. I... | Read more »
Let the world burn as you have some fest...
It is time to leave the world burning once again as you take a much-needed break from that whole “hero” lark and enjoy some celebrations in Genshin Impact. Version 5.4, Moonlight Amidst Dreams, will see you in Inazuma to attend the Mikawa Flower... | Read more »
Full Moon Over the Abyssal Sea lands on...
Aether Gazer has announced its latest major update, and it is one of the loveliest event names I have ever heard. Full Moon Over the Abyssal Sea is an amazing name, and it comes loaded with two side stories, a new S-grade Modifier, and some fancy... | Read more »
Open your own eatery for all the forest...
Very important question; when you read the title Zoo Restaurant, do you also immediately think of running a restaurant in which you cook Zoo animals as the course? I will just assume yes. Anyway, come June 23rd we will all be able to start up our... | Read more »
Crystal of Atlan opens registration for...
Nuverse was prominently featured in the last month for all the wrong reasons with the USA TikTok debacle, but now it is putting all that behind it and preparing for the Crystal of Atlan beta test. Taking place between February 18th and March 5th,... | Read more »

Price Scanner via MacPrices.net

AT&T is offering a 65% discount on the ne...
AT&T is offering the new iPhone 16e for up to 65% off their monthly finance fee with 36-months of service. No trade-in is required. Discount is applied via monthly bill credits over the 36 month... Read more
Use this code to get a free iPhone 13 at Visi...
For a limited time, use code SWEETDEAL to get a free 128GB iPhone 13 Visible, Verizon’s low-cost wireless cell service, Visible. Deal is valid when you purchase the Visible+ annual plan. Free... Read more
M4 Mac minis on sale for $50-$80 off MSRP at...
B&H Photo has M4 Mac minis in stock and on sale right now for $50 to $80 off Apple’s MSRP, each including free 1-2 day shipping to most US addresses: – M4 Mac mini (16GB/256GB): $549, $50 off... Read more
Buy an iPhone 16 at Boost Mobile and get one...
Boost Mobile, an MVNO using AT&T and T-Mobile’s networks, is offering one year of free Unlimited service with the purchase of any iPhone 16. Purchase the iPhone at standard MSRP, and then choose... Read more
Get an iPhone 15 for only $299 at Boost Mobil...
Boost Mobile, an MVNO using AT&T and T-Mobile’s networks, is offering the 128GB iPhone 15 for $299.99 including service with their Unlimited Premium plan (50GB of premium data, $60/month), or $20... Read more
Unreal Mobile is offering $100 off any new iP...
Unreal Mobile, an MVNO using AT&T and T-Mobile’s networks, is offering a $100 discount on any new iPhone with service. This includes new iPhone 16 models as well as iPhone 15, 14, 13, and SE... Read more
Apple drops prices on clearance iPhone 14 mod...
With today’s introduction of the new iPhone 16e, Apple has discontinued the iPhone 14, 14 Pro, and SE. In response, Apple has dropped prices on unlocked, Certified Refurbished, iPhone 14 models to a... Read more
B&H has 16-inch M4 Max MacBook Pros on sa...
B&H Photo is offering a $360-$410 discount on new 16-inch MacBook Pros with M4 Max CPUs right now. B&H offers free 1-2 day shipping to most US addresses: – 16″ M4 Max MacBook Pro (36GB/1TB/... Read more
Amazon is offering a $100 discount on the M4...
Amazon has the M4 Pro Mac mini discounted $100 off MSRP right now. Shipping is free. Their price is the lowest currently available for this popular mini: – Mac mini M4 Pro (24GB/512GB): $1299, $100... Read more
B&H continues to offer $150-$220 discount...
B&H Photo has 14-inch M4 MacBook Pros on sale for $150-$220 off MSRP. B&H offers free 1-2 day shipping to most US addresses: – 14″ M4 MacBook Pro (16GB/512GB): $1449, $150 off MSRP – 14″ M4... Read more

Jobs Board

All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.