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

Is there cross-platform play in slither....
So you've sunken plenty of hours into crawling around in slither.io on your iPhone or iPad. You've got your stories of tragedy and triumph, the times you coiled four snakes at one time balanced out by the others when you had a length of more than... | Read more »
Rodeo Stampede guide to running a better...
In Rodeo Stampede, honing your skills so you can jump from animal to animal and outrun the herd as long as possible is only half the fun. Once you've tamed a few animals, you can bring them home with you. [Read more] | Read more »
VoxSyn (Music)
VoxSyn 1.0 Device: iOS Universal Category: Music Price: $6.99, Version: 1.0 (iTunes) Description: VoxSyn turns your voice into the most flexible vocal sound generator ever. Instantly following even subtle modulations of pitch and... | Read more »
Catch Battleplans on Google Play from Ju...
Real-time strategy title Battleplans is due for release on Google Play on June 30th, following its release for iOS systems last month. With its simple interface and pretty graphics, the crowd-pleaser brings a formerly overlooked genre out for the... | Read more »
iDoyle: The interactive Adventures of Sh...
iDoyle: The interactive Adventures of Sherlock Holmes - A Scandal in Bohemia 1.0 Device: iOS Universal Category: Books Price: $1.99, Version: 1.0 (iTunes) Description: Special Release Price $1.99 (Normally $3.99) | Read more »
Five popular free apps to help you slim...
Thanks to retail and advertising, we're used to thinking one season ahead. Here we are just a week into the summer and we're conditioned to start thinking about the fall. [Read more] | Read more »
How to ride longer and tame more animals...
It's hard to accurately describe Rodeo Stampede to people who haven't seen it yet. It's like if someone took Crossy Roadand Disco Zoo and put them in a blender, yet with a unique game mechanic that's still simple and fun for anyone. [Read more] | Read more »
Teeny Titans - A Teen Titans Go! Figure...
Teeny Titans - A Teen Titans Go! Figure Battling Game 1.0.0 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0.0 (iTunes) Description: Teeny Titans, GO! Join Robin for a figure battling RPG of epic proportions! TEENY... | Read more »
NinjAwesome: Tips and tricks to be a mor...
Sorry about that headline, but I'm going to go ahead and assume that GameResort would not have named its game NinjAwesome without expecting some of that. It is, in fact, pretty awesome the way it combines an endless runner and old school arcade... | Read more »
Into Mirror (Games)
Into Mirror 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: "Is all that we see or seem, but a dream within a dream?"- Edgar Allan Poe New game by Lemon Jam Studio, the team behind Pursuit... | Read more »

Price Scanner via MacPrices.net

15-inch Retina MacBook Pros on sale for $200-...
B&H Photo has 15″ Retina MacBook Pros on sale for up to $210 off MSRP. Shipping is free, and B&H charges NY tax only: - 15″ 2.2GHz Retina MacBook Pro: $1799.99 $200 off MSRP - 15″ 2.5GHz... Read more
Mac minis on sale for up to $100 off MSRP
B&H Photo has Mac minis on sale for up to $100 off MSRP including free shipping plus NY sales tax only: - 1.4GHz Mac mini: $449 $50 off MSRP - 2.6GHz Mac mini: $649 $50 off MSRP - 2.8GHz Mac mini... Read more
Clearance 2015 13-inch MacBook Airs available...
B&H Photo has clearance 2015 13″ MacBook Airs available for $300 off original MSRP. Shipping is free, and B&H charges NY sales tax only: - 13″ 1.6GHz/4GB/128GB MacBook Air (MJVE2LL/A): $799.... Read more
Apple refurbished Mac minis available for up...
Apple has Certified Refurbished Mac minis available starting at $419. Apple’s one-year warranty is included with each mini, and shipping is free: - 1.4GHz Mac mini: $419 $80 off MSRP - 2.6GHz Mac... Read more
ABBYY TextGrabber: 1,000,000 Installs in 5 Da...
ABBYY, an international OCR technologies provider, has announced that their image-to-text application TextGrabber, got installed 1,000,000 times in just five days while being featured by the App... Read more
New SkinIt Waterproof Case For iPhone 6
With its impact and waterproof design, the Skinit Waterproof case provides security and protection to guarantee your phone will get you through even the most demanding outdoor conditions. The impact-... Read more
iMacs on sale for up to $150 off MSRP
B&H Photo has 21″ and 27″ iMacs on sale for up to $150 off MSRP including free shipping plus NY sales tax only: - 27″ 3.3GHz iMac 5K: $2181.11 $118 off MSRP - 27″ 3.2GHz/1TB Fusion iMac 5K: $1949... Read more
12-inch 1.1GHz Retina MacBooks on sale for $5...
B&H Photo has 2016 12″ 1.1GHz/256GB Retina MacBooks on sale for up to $50 off MSRP. Shipping is free, and B&H charges NY tax only: - 12″ 1.1GHz Space Gray Retina MacBook: $1249 $50 off MSRP... Read more
WWDC Announcements Revisited Still Underwhelm...
I was disappointed that no new MacBook hardware was announced at this year’s all-software World Wide Developer’s Conference. Not even a hint about what’s in the development pipeline. Of course, we... Read more
Twelve South Compass 2 iPad Stand Now Availab...
Twelve South has updated its most popular iPad stand, Compass 2, with the introduction of two new colors — Gold and Rose Gold. These new color options n perfectly complement the new Rose Gold iPad... Read more

Jobs Board

*Apple* iPhone 6s and New Products Tester Ne...
…we therefore look forward to put out products to quality test for durability. Apple leads the digital music revolution with its iPods and iTunes online store, Read more
Music Marketing Lead, iTunes & *Apple*...
…Music Marketing Lead is responsible for developing robust marketing campaigns and programs for Apple Music and iTunes across the whole of Apple ecosystem. This Read more
*Apple* Valley Medical Clinic is Hiring - AP...
Apple Valley Medical Clinic is Hiring! Apple Valley Medical Clinic is an independently owned practice operating a Family Medicine Clinic, a 24/7 Urgent Care, Read more
*Apple* New Products Testers Needed - Apple...
…we therefore look forward to put out products to quality test for durability. Apple leads the digital music revolution with its iPods and iTunes online store, Read more
*Apple* Solutions Consultant - APPLE (United...
Job Summary As an Apple Solutions Consultant, you'll be the link between our future customers and our products. You'll showcase your entrepreneurial spirit as you Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.