LoginControl 2.0

Although Leopard (Mac OS X 10.5) offers many improvements over Tiger, it also takes a few small steps backwards. One of those is that you can no longer choose the order in which login items open. (Login items are programs and other items that automatically open when you log in to your account; each user has his or her own list of login items in the Accounts pane of System Preferences.) At the same time, a much-requested feature that's never been included in OS X is the ability to create different sets of login items. You can prevent all login items from opening by holding down the shift key when you log in, but you can't create subsets of your full list--or completely different sets--and choose to load a different one at each login.

Thoughtful Tree Software's LoginControl 2.0 offers both features in an easy-to-use package, although one with a few limitations. When you first launch LoginControl, its Live List displays the current list of login items--the same list found in Accounts preferences. To customize the sequence in which items launch or open, you simply drag them up and down the list. (Keep in mind that OS X doesn't add any delay between items as they launch; it simply launches them one after another. So if you have two items that must actually launch in sequence, you should place the first at the beginning of your list and the other at the end.) Your changes are automatically reflected in the actual Login Items list in System Preferences; similarly, if you make a change to the Login Items list in System Preferences, that change will immediately be reflected in LoginControl's Live List.

You can also remove an item from the list by selecting it and clicking on the minus (-) button below the list, or add an item to the list by dragging it into the LoginControl window or clicking on the plus (+) button and navigating to the item. Again, your changes automatically sync with System Preferences.

But the more useful feature, in my opinion, is the ability to switch between multiple login-item lists. To create a new list, you click on the plus (+) button under Saved Lists; give the new list a name and it appears in the Saved Lists section. (If you want to create a new list based on an existing list--Saved or Live--you select the source list and then choose File: Duplicate List.) You manage these lists just as you do the Live List; the difference is that changes to Saved Lists aren't reflected in Accounts preferences.

When you want to switch to a different list, you select it and then click on the Make Live List button that appears. The Live List's contents are replaced by the contents of the selected list; more importantly, so are the contents of the Login Items list in Accounts preferences. The next time you log in, the new list of login items will be used. (Making such a change doesn't affect which programs are currently running; login items are, as the name implies, opened at login. Once they're open, they run until you manually quit them.)

Note that if you've made changes to the Live List in LoginControl, or to the official Login Items list in Accounts preferences, you'll want to save that list before switching to another list; if you don't, those changes will be lost. The easiest way to do this is to use the Duplicate List command to make a copy of the Live List. But this reveals LoginControl's biggest limitation: Although the Live List is synchronized with the Login Items list in System Preferences, Saved Lists aren't automatically updated. So if you make a Saved List the current Live List and then make changes to the Live List (or to the official list in System Preferences), those changes aren't reflected in the original Saved List. I'd like to see LoginControl offer an option to automatically save changes made to a Saved List while it's the Live List.