ISO FileMaker Magazine: FileMaker Video Tutorials, Templates, Help & More

Video Browser

Scriptology Video Browser

Tools & Resources

QuicKeys X2 - A Power User's Review

Posted by: Editor / Thursday, July 17, 2003 – 7:47pm

QuicKeys X2 - A Power Users's Review
by Matt Petrowsky

OPEN THE PICTURES PAGE
WATCH THE VIDEO
DOWNLOAD MATT'S QUICKEYS SHORTCUTS

The value of time

     I've always been fond of my time. Hopefully, you're just as fond of your time as I am of mine. When it comes to working with any software tool, be it FileMaker Pro or Photoshop, the time it takes you to accomplish any given task can either be short or long - sometimes very long. Some of this is under your control and some of it isn't.

     As computers are "supposed" to make things easier for us, there are some things that just aren't that easy. This is when it pays to know what tools are available and what they can do for you. For example, one of my most recent tasks was to create 5,832 gradients for use in FileMaker Pro layouts. 5,832 gradients!!!! Am I crazy? How long would this take me if I were to click and drag 5,832 gradients in Photoshop and copy and paste them into FileMaker. Well, with a loose guess of one minute per gradient that would break down to 97.2 hours or, at 12 hours per day, that would take me 8 days straight working to create a gradient in every minute of the 12 hours I was working. Forget about that occasional weekly movie break!

 So what does this have to do with QuicKeys? Automation is the answer to that question and in this article I'll be walking through the new QuicKeys X2 available for Macintosh. There's also a version of QuicKeys available for Windows, although it is not as powerful because most all Windows applications must follow more strict interface guidelines that make most all elements in the software interface accessible via key combinations. Windows has stronger support for what is called the focus and this makes using the keyboard alone much easier in Windows. So this article is more for the Mac user where QuicKeys has existed for many, many years.

     Now, the fact of the matter is, I used AppleScript for the problem I just mentioned about the gradients, but I could have done it with QuicKeys. I have used QuicKeys since the days of Macintosh OS 8 and 9 and there have been macro programs (that's what QuicKeys is) almost as long as computers have been around. QuicKeys has long been the most visible of applications for this software category for as long as I can remember, this is on the Macintosh of course. CE Software, the maker of QuicKeys, recently moved into the Windows space in the past few years and have migrated their stalwart OS 9 version forward to OS X in the form of QuicKeys X 1.5 and now the most recent release in the form of QuicKeys X2. I was using QuicKeys X 1.5 prior to X2 and I'll highlight a few of the changes/enhancements in this article.

Where many software companies fail

     While it's not possible for any engineering team to think of all the possible environments and uses where their software will be exposed, it is possible to create a more flexible environment where customization can play a strong role in the use of the software. One notable application that does allow full customization of its menus is BBEdit on the Macintosh. However, when core feature sets often takes precedence over some of the niceties of customization, a very rigid and fixed environment limits the speed with which an application can be maximized.

     FileMaker Pro on the Macintosh falls into this situation where it doesn't allow you to define your own keys for any of the various menu commands possible in the application. Here's where QuicKeys enters the picture. Wish you had quick access to Define Relationships, Define Value Lists, to define a button, ScriptMaker and any other menu command? Wish you could use a single button to change the fill color of a layout object to a custom color? Well you can with QuicKeys.

     In fact, I have included my own set of custom QuicKeys for FileMaker Pro and FileMaker Developer to get you started. You'll find them at the top of this article. I'll take you through a tour of this new version as I cover how it will affect the time you spend in FileMaker Pro.

The Before & After

     Before we jump into how QuicKeys X2 is new and improved we need to point out a few things about QuicKeys on OS X and how it differs from OS 9. The environment in OS X has changed the way QuicKeys does things quite dramatically. Since OS X is a Unix variant, the method for running QuicKeys macros is handled through the Universal Access area of the System Preferences. In the change from version 1.5.2 to 1.5.4 this switch was made because of OS 10.2. Many users, including myself, were unaware of this change made in the updated version (even through it was in the Read Me for the update) and had presumed that 1.5.4 was less stable than prior versions. However, after finding out this fact and turning on the options needed, QuicKeys runs like a pro. As long as the option Enable access for assistive devices is checked in the Universal Access preference pane then QuicKeys X2 will work flawlessly.

Making FileMaker Pro a better application

     Finally, we've arrived at the part where we talk about why QuicKeys is such a powerful tool when used with FileMaker Pro. Well, if you're at all familiar with using QuicKeys then you know that accessing menu options is quite easy. This is the first place we start to put the program into good use. Here are a few of the key combinations that I use for accessing common dialogs.

Quick Menu Commands
Turn Debug Scripts ON/OFF Command-Control-D
Access ScriptMaker Command-Control-S
Define Relationships Command-Control-R
Define Value Lists Command-Control-V
Define a button Command-Control-B
Set Layout Order (while in Layout mode) Command-Control-L
Rename Layout (while in Layout mode) Command-Option-L
Turn object boundaries ON/OFF Command-Control-T

     All of the former commands simply access a menu item found in FileMaker Pro or Developer. However, two of the areas I spend a large amount of time in is Layout mode and ScriptMaker. In fact, I bounce back and forth between them quite a bit - if you're a full-time FileMaker developer you know what it's like. There are a number of tasks that require quite a bit of mouse travel in the user interface. The process of duplicating a script leaves the word "copy" on the duplicate. Changing your mind about what a script should be called requires a trip to the Rename button. Importing any number of scripts more than two leaves you with the task of taking the name "imported" off of each of the imported scripts. There are a number of things that I find myself doing routinely in Layout mode. Some of those include indenting fields, setting field alignment, choosing a custom color for a layout object and the every popular changing of fonts. Here are some of my other keys that automate all of these processes and more.

Layout Automation Commands
Indent a field 2 pixels (provided you changed to pixel mode) Command-Control-2
Indent a field 3 pixels (provided you changed to pixel mode) Command-Control-3
Indent a field 4 pixels (provided you changed to pixel mode) Command-Control-4
Access Paragraph Indent values Command-Control-I
Align text vertically to top Command-Control-Up Arrow
Align text vertically to bottom Command-Control-Down Arrow
Align text vertically to center Command-Control-Right Arrow
Change font to Arial Command-Option-Control-A
Change font to Courier Command-Option-Control-C
Change font to Tahoma Command-Option-Control-T
Change font to Verdana Command-Option-Control-V
Choose new custom fill color F1
ScriptMaker Commands
Duplicate script and remove "copy" Control-D
Strip "imported" from imported scripts Command-Control-Left Arrow
Delete script without confirmation Command-Option-D
Rename script button Control-R

     Along with other custom keys that will set the size of fields to either 16, 18, 20, or 22 pixels high I am able to knock out FileMaker layouts in a flash using these key sets. I can't tell you how much QuicKeys has influenced how I develop in FileMaker Pro. When I was making the switch to OS X from OS 9 and QuicKeys had not yet been released, but FileMaker Pro had, I found it hard to justify moving to OS X because working in FileMaker Pro was so painful for someone who likes to use the keyboard more than the mouse. And speaking about using the mouse, QuicKeys has always offered a cool feature of being able to trigger its macros from a toolbar. But what about those toolbars?

Ohhh those, um, Toolbars...

     This is the one area where QuicKeys has been less successful on the OS X side of things. Since FileMaker itself has made the move to OS X, FileMaker itself lost the native toolbars because of being a Carbon application and not fully native Cocoa. This had a number of users up in arms that liked using the format toolbar for changing fonts and sizes. Never mind the fact that a two-button mouse allows you to simulate using a control-click to access the context sensitive menu for changing these features. Wile the toolbars in the OS 9 version of QuicKeys are much more user friendly, you can tell that the toolbars in the OS X 1.5 and X2 versions of QuicKeys have received less attention - at least it seemed this way when I spent more than a few minutes trying to figure them out

It's very cumbersome to manage toolbars and modify them. Only after a lot of trial and error did I find out you could place new shortcuts in between others. You can't just drag and drop the buttons in the order you want them. While the toolbars do support tabs, you can't move items from one tab area to another.For the life of me I couldn't find out how to remove buttons that had been previously added to a toolbar. While the customization looks comprehensive, allowing you to choose icon sizes, the position of names relative to icons and how the toolbar behaves, it was a frustrating experience trying to make the toolbar fit the bill. It required a trip to CE Software support to find out that my two-button mouse wasn't going to work on the toolbar and I'd have to control-click to get options.Even then, there were no more options using the context menu than accessing options via the menu.

     At this point I considered using a combination of other tools to make a properly working toolbar for use in FileMaker Pro. The best solution I came up with uses a combination of an application named DragThing where it will launch an AppleScript that calls the QuicKey that performs the desired action in FileMaker Pro. You can make a DragThing dock appear only in FileMaker but this solution was less than satisfactory because of how DragThing launches AppleScripts. Speaking of AppleScript.

     With strong AppleScript support in FileMaker Pro, you would think that you could create your own database that simulates a toolbar and simply include AppleScript code that would perform the various tasks within the menus by using the do menu function of FileMaker's AppleScript Dictionary. But alas, there seems to be some communication problems with accessing menu items when using AppleScript from within FileMaker itself - although this is possible will many other common tasks. For example the following code, when pasted into a field and triggered by a ScriptMaker script using the Perform AppleScript step will result in a Error -10000 on OS X.

tell application "FileMaker Developer"
   activate
   do menu menu item "Debug Scripts" of menu "Scripts"
end tell


(Developer's note: It is not required to use the tell statements surrounding your AppleScript code when the code is executed from within FileMaker. This is because of the somewhat confusing "me" situation. What is the "me" situation you ask? What happens is code in AppleScript needs to reference an object - often, it's the application that is executing the code. Since that application (or script) is the only target that knows the specific functions, you must use the tell statements. In this case the "me" is FileMaker and FileMaker is telling itself which code to execute. Since FileMaker knows it's own commands you don't have to tell FileMaker what it already knows.)

Making it work in FileMaker

     One of the tricks to making QuicKeys X2 work with FileMaker is understanding the difference between a Carbon application and a Cocoa application and how much of FileMaker is Cocoa versus Carbon. You see, QuicKeys X2 supports many default interface objects such as buttons, popup menus and windows. However, since FileMaker isn't fully Cocoa you can always count on the QuicKey for a button to function properly. This means you need to become familiar with the other options that QuicKeys provides. The Clicks type of QuicKey is the key to understanding how to make certain buttons click within certain dialogs. Taking a look at the shortcut for Delete Script (without the delete confirmation prompt) reveals there are two different clicks because the first click has to happen in ScriptMaker on the Delete button and the second click happens on the confirmation dialog box that asks if you are sure you wish to delete the script.

     It's important that you understand that QuicKey's Clicks can use a position relative to the active window and can do this based on any of the four corners of the window. Plus, you can assure yourself you are in the right window by identifying it by name - or part of a name. There are many situations where you want to use the default QuicKeys items but they just won't work properly with FileMaker. This means you need to translate what you would actually do in real life with clicks of the mouse. Once you understand this there is little that you can't automate in FileMaker Pro with QuicKeys.

Putting things into practice

     Getting started with QuicKeys is the first step in making things faster in FileMaker Pro. The other step is forcing yourself to use the keys to accomplish the tasks. Once you become familiar with the keys, and what they do, you'll find yourself getting things done much quicker. I would suggest getting a copy of QuicKeys and installing the shortcuts I provide on this page. You can install the shortcuts into the Library > QuicKeys > Shortcuts folder found in your specific user folder. There is a picture of this at the bottom of the pictures page that goes with this article.In the long run, you'll find that being able to control your own destiny within an application makes much more sense for the hard core FileMaker user.

Happy FileMaking!

About author

Matt Petrowsky is the Senior Editor for ISO FileMaker Magazine. Matt has been involved with FileMaker Pro since the early '90s. Having authored many articles, a popular book, spoken at conferences and seminars, as well as provided private training, Matt is continuously updating his knowledge and skill about the powerful FileMaker platform. You can contact Matt by sending email to editor@filemakermagazine.com.

Filed under:
-