Helium Foot Software

Making your Mac more agile, more powerful and more fun

November 2008
Sun Mon Tue Wed Thu Fri Sat
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            
About
Helium Foot Software develops MercuryMover: Don't let the mouse slow you down! Move and resize windows on your Mac with the keyboard.
Recent Entries
Highbrow v0.4.0(11/14 12:57)
MercuryMover v2.0.2(11/12 20:44)
MicroISV Marketing for the Masses(11/12 20:39)
Second Time Around(10/23 18:04)
Hacking the Press(10/12 22:19)
defaultapp(10/05 16:07)
MercuryMover v2.0(09/22 10:33)
Just Start(09/12 11:53)
Follow Me(09/09 10:40)
C4(09/08 10:47)
Recent Comments
Re: MercuryMover v2.0.2(Joe : 11/14 10:37)
Re: Second Time Around(Brett : 11/12 14:36)
Re: Second Time Around(kalperin : 10/29 00:41)
Re: Second Time Around(Chad : 10/28 21:54)
Re: Second Time Around(Evan : 10/24 00:50)
Re: defaultapp(Andrew Mortensen : 10/15 15:14)
Re: MercuryMover v2.0(kalperin : 10/13 10:16)
Re: MercuryMover v2.0(Du Song : 10/12 22:34)
Re: defaultapp(Preston : 10/08 16:24)
Re: defaultapp(Diane Ross : 10/07 19:17)
Recent Trackbacks
There are no trackbacks.
Categories
Helium Foot (19 items)
Software (5 items)
MercuryMover (36 items)
Blog (3 items)
MacSanta (3 items)
Marketing (11 items)
Philanthropy (0 items)
Podcasts (3 items)
Highbrow (1 items)
Archives
Blogroll

Syndicate this site (XML)

RSS/RDF 0.91

14 August
2008

Short(cut) time

Where Keith takes no shortcuts

Yesterday and the day before i had planned to cross MercuryMover's new shortcut editor off of my todo list. As man plans, software laughs. Fear not loyal reader, for yesterday i solved the major technical problem. Before i give you the slightly technical answer, let me provide an introduction for those of you new to the Helium Foot blog. Here at Helium Foot Software, we're working on v2.0 of our flagship (and for now, only) product called MercuryMover. MercuryMover enables you to move and resize the windows on your Mac from your keyboard.

For the last few years hooking up a user interface to your Mac app's preferences has been pretty trivial thanks to Cocoa Bindings. In short, bindings provide the glue between your interface and your data (whether that data is in some persistent store such as your preferences or is just your applications's model). Unfortunately, my case is not exactly textbook since MercuryMover ships as a Preference Pane that is hosted by System Preferences. Thus, when i try to bind to my preferences, i'm bound to the preferences for System Preferences (would you prefer that i write about something else??). The solution was to create a proxy object that hosts an array of all of the Shortcuts. This array is both backed by MercuryMover's preferences and also bound to the Preference Pane. This lets the Preference Pane display the shortcut information as stored in the preferences file, and also persist changes to the same. Eagle eyed (kv) observers will note that this will keep information in sync only in one direction (from the Preference Pane to the preferences file) but not vice versa. Since the MercuryMover agent that actually moves and resizes the windows can also create shortcuts, i have said agent posting a notification via the NSDistributedNotificationCenter which the Preference Pane listens for and updates itself accordingly.

For those of you keeping score at home, here's where we stand in our run up to the v2.0 beta:

  • New pop-in/pop-out animations
  • cool display when shortcut is saved
  • Add shortcut editor to preference pane
  • fix window along the left or bottom edge +/= key unexpected behavior
  • change demo so that it is based on a number of uses, not a number of days
  • give pref pane a once over
  • change "Advanced" tab to "Keys" and list undo, redo, center and maximize
  • set the copyright year automatically at build time
  • Give EULA a once over
  • run through clang


Up today: Finish the shortcut editor and fix the maximize/center bugs.

Posted by kalperin at 12:11 | Comments (0)
<< Shortcuts and Setbacks | Main | Off of the Bus >>
Comments
There are no comments.
Post a comment