TweetFollow Us on Twitter

Feb 99 Online

Volume Number: 15 (1999)
Issue Number: 2
Column Tag: MacTech Online

Specialty Frameworks

by Jeff Clites <online@mactech.com>

Last September we took a look at MacZoop, a medium-sized, general-purpose framework designed as a tool for those learning to program the Macintosh in C++. This month we are going to look at several smaller frameworks and shells, some general but lightweight and some designed to fulfill a specific purpose.

Moof

Moof (which stands for The Minimal Object-Oriented Framework, and is also the sound made by the famous dogcow) is a tiny C++ framework for Mac applications, written by Joe Strout. It consists of only five files (2 source and 3 header). Because of its size, it can serve as a non-intimidating introduction to the way frameworks work in general and as a reference source for some standard bits of Macintosh code. It would be a good place for beginners to get their feet wet. Moof can also be enhanced using the author's pane classes, which are self-contained and framework-neutral, and can be used with Moof, PowerPlant, MacZoop, with another framework, or by themselves.

Moof
http://www.strout.net/info/coding/macdev/intro.html

YAAF

YAAF (Yet Another Application Framework) is a cross-platform C++ framework from The PandaWave, supporting programming for the Macintosh, Windows 95 and Windows NT, and X Windows. It is freeware, released under the GPL Library License, which allows you to sell applications built using YAAF (check the license for the specific terms). According to its web site, "YAAF provides a basic core framework for working with windows, views, menus, and controls in a portable fashion." The most interesting thing about YAAF is that it is used by its authors to produce all of their software, including the commercial BugLink bug-tracking application.

YAAF
http://www.pandawave.com/yaaf/index.html

CPLAT

CPLAT is another cross-platform C++ framework, supporting both Macintosh and Windows development. Based on its web site, it supports a wide range of user interface elements. CPLAT is not free, although it is low-cost and is priced based on the number of developers - there is no licensing fee for the applications you build.

CPLAT
http://ksoft.net/CPLAT.html

MADE

MADE (Macintosh Application Development Essentials) is a shareware C++ code collection from Sig Software and it forms the basis of several of their products. Not a complete framework per se, its goal is to ease the drudgery of writing the low-level code needed for Mac applications and to help the developer deal with the more tricky aspects, rather than to handle all of the higher-level and user interface issues. Notably, MADE includes code to help with the bug-hunting (or bug-avoiding) process, including support for assertions and memory trashing, with the goal of forcing bugs to manifest themselves reproducibly and as early as possible, rather than laying dormant until encountered by unsuspecting users. (These features were inspired by Steve Maguire's book Writing Solid Code, by the way.)

MADE
http://www.sigsoftware.com/made/

DropShell

DropShell is a small, free shell for writing "droplet" applications-programs which do most of their work by performing some action on items dropped onto their icon in the Finder. Written in C by Leonard Rosenthol, Marshall Clow, and Stephan Somogyi, the shell provides all of the code needed to run the application and handle the necessary AppleEvents-all you have to do is add the code to process the files as they are handed to you by the shell, which can optionally omit folders or recurse through them. It will even manage a splash-screen for you, on the theory that it's good to give users visual feedback that your application is running. It's really very handy.

DropShell
http://www.lazerware.com/software.html

DropUNIX

DropUNIX is an adaptation of the above-described DropShell. It's raison d'être is to provide programmers with a quick and easy way to port UNIX and DOS command-line applications to the Mac. Essentially, it takes the dropped files and passes them to a modified main() as though their paths were passed on the command line. It's a simple idea, but it can save you a lot of time and effort.

DropUNIX
http://www.ZenSpider.com/ZSS/Products/DropUNIX/

ZDropletApp

For readers who are using the MacZoop framework, M. Uli Kusterer has written ZDropletApp. It functions almost exactly like DropShell, but it is based on MacZoop and is intended to give users of that framework a quick and easy way to create a droplet application. Uli has several other MacZoop classes here, including an extensive set of pane classes to help you build sophisticated user interfaces.

Uli's MacZoop Classes
http://www.weblayout.com/witness/ZoopClasses.shtml

Cream

Cream is the creation of Marco Piovanelli, author of the immensely popular WASTE text editing library. It is unique in that it is a lightweight C++ framework whose goal is to help you create scriptable applications that comply with the Apple Event Object Model (AEOM). It replaces Apple's Object Support Library, and lets you handle AppleEvents in a manner which fits very naturally with the C++ object model. It even purports to simplify "whose clause" resolution, which can be a nightmare. Check it out and make your applications scriptable-or Cal Simone will come after you.

Cream
http://www.merzwaren.com/cream/index.html

AppeWin

If you've ever wanted to create system-wide floating windows or Faceless Background-Only applications, then look no further-AppeWin by Matt Slot will show you all you need to know, including all of the nastiness necessary to get color floating windows under previous OS versions. It's useful for its stated purpose, but also for demonstrating a number of sophisticated techniques, including creating a jGNEFilter and using the Drag Manager.

AppeWin
http://www.AmbrosiaSW.com/~fprefect/

CMM Plugins

Contextual Menu Manager plugins were a great addition to MacOS 8. They are useful and easy to write, and they give you an excuse to use the SOM Objects mechanism which was orphaned when OpenDoc left town. They can also force you to keep up your AppleEvent skills, since AEs are the best way to boss around a variety of applications, including the Finder. Trygve Isaacson of Bombay Digital has written a widely-used CMM plug-in framework to make this process even easier. If you are a PowerPlant user, then you should also check out David Thoreau Catmull's CCMArea, which is a set of C++ classes for enhancing PowerPlant's support for contextual menus within your application.

CMM Plug-In Framework
http://www.bombaydigital.com/pages/software/cmm_plugins/framework.shtml
CCMArea
http://www.kagi.com/dathorc/ccmarea.html

These and oceans of other links are available from the MacTech Online web pages at www.mactech.com/online/.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

Combo Quest (Games)
Combo Quest 1.0 Device: iOS Universal Category: Games Price: $.99, Version: 1.0 (iTunes) Description: Combo Quest is an epic, time tap role-playing adventure. In this unique masterpiece, you are a knight on a heroic quest to retrieve... | Read more »
Hero Emblems (Games)
Hero Emblems 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: ** 25% OFF for a limited time to celebrate the release ** ** Note for iPhone 6 user: If it doesn't run fullscreen on your device... | Read more »
Puzzle Blitz (Games)
Puzzle Blitz 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Puzzle Blitz is a frantic puzzle solving race against the clock! Solve as many puzzles as you can, before time runs out! You have... | Read more »
Sky Patrol (Games)
Sky Patrol 1.0.1 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0.1 (iTunes) Description: 'Strategic Twist On The Classic Shooter Genre' - Indie Game Mag... | Read more »
The Princess Bride - The Official Game...
The Princess Bride - The Official Game 1.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.1 (iTunes) Description: An epic game based on the beloved classic movie? Inconceivable! Play the world of The Princess Bride... | Read more »
Frozen Synapse (Games)
Frozen Synapse 1.0 Device: iOS iPhone Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: Frozen Synapse is a multi-award-winning tactical game. (Full cross-play with desktop and tablet versions) 9/10 Edge 9/10 Eurogamer... | Read more »
Space Marshals (Games)
Space Marshals 1.0.1 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.1 (iTunes) Description: ### IMPORTANT ### Please note that iPhone 4 is not supported. Space Marshals is a Sci-fi Wild West adventure taking place... | Read more »
Battle Slimes (Games)
Battle Slimes 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: BATTLE SLIMES is a fun local multiplayer game. Control speedy & bouncy slime blobs as you compete with friends and family.... | Read more »
Spectrum - 3D Avenue (Games)
Spectrum - 3D Avenue 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: "Spectrum is a pretty cool take on twitchy/reaction-based gameplay with enough complexity and style to stand out from the... | Read more »
Drop Wizard (Games)
Drop Wizard 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Bring back the joy of arcade games! Drop Wizard is an action arcade game where you play as Teo, a wizard on a quest to save his... | Read more »

Price Scanner via MacPrices.net

Apple’s M4 Mac minis on sale for record-low p...
B&H Photo has M4 and M4 Pro Mac minis in stock and on sale right now for up to $150 off Apple’s MSRP, each including free 1-2 day shipping to most US addresses. Prices start at only $469: – M4... Read more
Deal Alert! Mac Studio with M4 Max CPU on sal...
B&H Photo has the standard-configuration Mac Studio model with Apple’s M4 Max CPU in stock today and on sale for $300 off MSRP, now $1699 (10-Core CPU and 32GB RAM/512GB SSD). B&H also... Read more

Jobs Board

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