toxicsoftware.com

RANDOMIZE USR 0

toxicsoftware.com header image 2

Second Hand Smoke

October 30th, 2006 · Comments · Uncategorized

So ‘Disco‘ (you know, that Disc burning program that does a fraction of what Disk Utility does but actually costs money) is now available as a public beta.

One of the most controversial “features” of the program is the fact that the main window actually smokes when a disc is being burnt. Poking inside the bundle of Disco.app I came across Smoke.framework with what looks like full headers included.

Ignoring the dangers of passive smoking for a moment I decided it would be fun to try and use the smoke effect in a test application.

SecondHandSmoke.png

And here’s a quick movie to illustrate the pretty smoke animation:

SecondHandSmoke.mp4

Now you too can add the smoke effect to your own applications. Download the public beta of Disco (version 1.0b3 according to the Finders “Get Info” window). Be quick. I’d imagine that the next release of Disco wont include headers for the framework. Move the application to your /Applications folder. Then download my test application here: SecondHandSmoke.zip.

You should be able to compile and run “SecondHandSmoke” (it will warn that it cannot find OSXHIGuidelines.pdf - but do like the Disco authors did and ignore that warning). If your hardware is capable enough you should be able to see the smoke effect rising from the top of the window. (It might take 10 to 20 seconds for the smoke to appear).

You can change the smoke parameters by using the smoke settings window (dialog? pane? view?) within Disco. Then just copy Disco’s prefs (com.discoapp.Disco.plist) to SecondHandSmoke’s prefs (com.example.SecondHandSmoke.plist).

Feel free to add smoke to your own applications, Brent - NNW users expect the main window to Smoke now. Dan, don’t feel left behind, Sandvox needs to smoke. All the cool kids are doing it. Peer pressure is a bitch.


Update Predictably the guys at DiscoApp have removed the headers from the framework. Of course they refrained from rev-ing the version number of the beta. So now there are two 1.0b3 versions of DiscoApp in the wild. 1.0b3 (with headers) and 1.0b3 (without). Bad developer. No cookie.

Of course removing the headers does nothing to stop you from using class-dump to generate your own headers (and pretty cool headers they are - look at all those CIFilter subclasses). I’ve just uploaded an amended project that includes a class-dumped header. You’ll need to install Disco 1.0b3 (sans headers) into /Applications as before.


Update 2 Just had a nice AIM conversation with Austin Sarner, one of the authors of Disco, and he seems to be quite amused by this little hack. Although I really don’t like the use of the smoke effect in Disco, I completely support their attempts to innovate.


Update 3 I took 15 minutes to hack the Smoke framework into a SIMBL plugin so that any application can have the smoke effect (why wait for developers to innovate?). I’m not distributing this project as it requires a modification of the Smoke framework itself, but here’s a movie: HolySmokesMovie.mp4


Update 4 Reduce size of movie to 640×480 to keep people with smaller screens happy.

Update 5 My code no longer works. For an updated description of how to get the smoke working see: dev.lipidity.com

Tags:

Viewing 20 Comments

blog comments powered by Disqus