Download | http://www.strout.net/files/OpenStrip.sit.hqx |
---|---|
Current Version | 0.4 , released on 2000-Oct-27 -- release notes are included with the download package. |
System Requirements | OpenStrip requires MacOS 9.0.4 with CarbonLib 1.1, or Mac OS X. |
License | OpenStrip is free and open-source. This means you may distribute it as you like, and even change the source as long as you send me your changes. |
Mailing Lists | To be notified of updates to OpenStrip or OpenStrip modules, subscribe to the openstrip-news mailing list.
If you're interested in helping with OpenStrip development or writing some modules, please subscribe to the openstrip-devl mailing list. |
Help Wanted! | As an open-source project, OpenStrip is a community effort that needs your help to thrive. Please visit the OpenStrip project page at SourceForge: We need developers to help with coding, artists to help with icons, and everybody else to report bugs and feature requests. Please get involved! |
"OpenStrip" is a free, Open-Source reimplementation of the Control Strip. It is only getting started, and I welcome any and all suggestions.
As you probably know, the Control Strip is going away in OS X. I consider this a shame, since I find it very useful for:
And best of all, the Control Strip collapses down to a little tab when you want it out of your way. It's great! But, like many other great things, Apple is suffering from lack of vision and killing it. (They're killing the Apple menu too, making something like the Control Strip even more useful -- put oft-used desk accessories and such there.)
Apple is trying to make the Dock replace the Control Strip, the Apple Menu, and system menus. But working in OS X for any amount of time quickly demonstrates that it's inadequate to the task.
Fortunately, there is nothing particularly difficult about the Control Strip. It's just a global floating window served by a faceless background app. This can be rewritten in OS X pretty easily. Current CSMs will have to be recompiled, but shouldn't need too much change to their source code.
OpenStrip will be a faceless background application which creates and manages a floating utility window. It will load Control Strip Modules (CSMs) -- which should probably be called OpenStrip Modules once they're recompiled -- and call code in these to draw themselves, respond to events, etc. There will be no control panel in the classic sense ('cdev' or 'appc'), though there may be another application which speaks to OpenStrip via AppleEvents and can inspect or change its preferences.
It should be noted that starting with Mac OS 8.5, the Control Strip is an application and not loaded at startup time. This is very similar to how OpenStrip will be implemented.
Currently a CSM is a 68k code resource. For OpenStrip, it will be a PowerPC Carbon shared library instead. This will of course mean recompiling each CSM, but there will be few (if any) changes needed to the source code (except those required for Carbonization).
Because of these unusual features, a custom window definition function is used.
The current OpenStrip prototype does not use kUtilityWindowClass, because this identifier disappeared from the Carbon headers for a while. It's back now, but I haven't yet downloaded the latest version. As soon as I do, we'll be able to make a global floating window in Carbon/OS X.
The appearance of the OpenStrip window comes from some resources in its resource fork. I currently have four partial sets of graphics. The first is mostly a copy of the current ("classic") ControlStrip:
The second one is a hacked-together first-draft attempt at something which will fit in better with the new Aqua look:
The third one, currently used by the code, is a nicer Aqua look prepared by Lucas Haley.
Finally, here's a concept by Samrod Shenassa.
The first three are actual screenshots of the running OpenStrip program (though the first two are currently disabled). Please keep in mind that these are preliminary; we can tweak them easily, and we'll eventually provide user configuration modules (aka "skins").
As of Sunday, October 8, 2000, OpenStrip has received a couple of bug fixes (the width is constrained to be a positive value, and clicking the anchor tab now collapses the strip), as well as a few enhancements to the sample modules. See the release notes included with the download for details. Module authors, contact me and we'll look into updating your modules for OS X!
Done! | Not Yet Done |
---|---|
|
|