Multiple AccuDraw shortcut files


AskInga logo

Original Article Date:  Dec 21, 2001

Is your MicroStation desktop cluttered with toolframes and toolbars? Are you sacrificing precious desktop real estate because “You just gotta have that icon”? If so, then read this article by Seth Cohen from Rowse Company and learn how creating multiple AccuDraw shortcut files will let you reclaim your desktop!

With thanks to Mr. Seth Cohen, of Rowse Company, for contributing this article on maximizing your productivity with AccuDraw's shortcuts. It's a wonderful companion article to Doug Watt's two part series on Command Aliasing: Command Aliasing - Part 1 , Command Aliasing - Part 2

What is AccuDraw? According to the MicroStation/J help, “AccuDraw is a drafting aid that evaluates such parameters as your current pointer location, the previously entered data point, the last coordinate directive, the current tool's needs, and any directive you have entered via either keyboard shortcuts or AccuDraw options. AccuDraw then generates the appropriate precision coordinates and applies them to the active tool”. The topic that we will be discussing is AccuDraw shortcuts.

AccuDraw Shortcuts
The functionality of AccuDraw shortcuts is to run MicroStation key-in commands. This is accomplished by the user creating a shortcut to a desired key-in by associating two alphanumeric characters to that key-in.

Here is an example of how to create an AccuDraw shortcut, how they can make drafting more efficient, and increase your MicroStation desktop.

Wouldn't it be nice if...you could turn off the display of, let's say, 150 reference files without having to:



Well with AccuDraw, you could set two shortcuts to toggle all the reference files on and off. Here's how:

First, we will define two shortcuts that will act like switches. The shortcuts are, R0 which would turn all reference files off and R1 that would turn all reference files on.

To accomplish this, open AccuDraw by keying in ACCUDRAW DIALOG MAIN, or click the AccuDraw icon on the primary toolbar. When the AccuDraw window appears, press the question mark (Shift + /), which will open the AccuDraw Shortcuts window.

Click on the New button and enter the following information in the New Shortcut dialog: Shortcut – R0 ,Description – All ref's display off ,Command – REFERENCE DISPLAY OFF ALL;UPDATE ALL

For the shortcut that turns on all reference files, click the New button again and enter the following information in the New Shortcut dialog: Shortcut – R1 ,Description – All ref's display on ,Command – REFERENCE DISPLAY ON ALL;UPDATE ALLThat's it! Now, when you want all 150 reference files turned OFF or ON, type R0 or R1.

June 2003: Rick Bowden offers this tip: Rather than having two shortcuts to do this why not create one as a toggle? I tried it and it works quite well. Here's what it looks like "reference display toggle all;update all" and assigned RT as the key-in. Each time you use the key-in it toggles the reference file on or off depending on their present status.

Here are a couple of tips on using AccuDraw's shortcuts:

  1. In order for any of the shortcuts to work correctly, the AccuDraw Window must have the focus. This can be done one of several ways:
    • Press the ESC key.
    • Assign the this key-in to a function key: ACCUDRAW DIALOG MAIN and whenever you need the focus in AccuDraw, just press that function key.
    • To ensure that the focus stays in the AccuDraw as much as possible, choose Workspace > Preferences > Category - Tools , and toggle the Auto-Focus Tool Settings Window to OFF.
  2. Go and get MStoys which is an MDL that adds the key-ins ACCUDRAW ROTATE ELEMENT and ACCUDRAW SUSPEND. These keyins rotate the compass to the angle of any element and temporarily suspend AccuDraw, respectively.
  3. You can string keyins together by using a semi-colon(;). Doing this reduces the amount of “clicks” or movement that you will have to do with the mouse. An example of this would be: Shortcut - CB, Command - REFERENCE CLIP BOUNDARY;ALL;CHOOSE ELEMENT. This shortcut will clip the boundary of all reference files, after a fence is defined (and you don't even have to open the Reference File dialog or Reference tool box).

Hey Seth, What about function keys?
Now you might be saying “Why should I use AccuDraw? I could use function keys!” Well one major advantage of AccuDraw shortcuts is that you can make shortcuts that make sense. Unlike using Function Keys (F1, F2, Alt + Ctrl + F1, etc.) AccuDraw shortcuts can “sound” like the key-ins they are created for. For example the Copy command could be CO, the Rotate command could be RO and so forth. Plus, you'll save a ton of finger energy not having to activate the Alt + Ctrl + Shift + F8 function key.

Limitation of AccuDraw shortcuts
This is not to say that using AccuDraw shortcuts does not have its limitations as well. One limitation is that there is no way to have single letter and two letter shortcuts that begin with the same letter. In other words, you can't have a shortcut Z and another that's ZW. Another one of AccuDraw's limitations is that you can only have up to two-character shortcuts. This limitation can be very frustrating when developing a list of shortcuts meant to improve your productivity. For instance, let's say you wanted to create a shortcut for the Copy command that activates the keyin COPY EXTENDED. The obvious two-letter shortcut would be CO, but what if CO was already assigned to another keyin? And CP? And CY? There is no way to get by this limitation of AccuDraw's functionality....until now.

Mulitple AccuDraw Shortcut Files
This brings us to the main subject of this article. How can we allow MicroStation to use more than two characters for shortcuts? The answer is simple. We can create a MicroStation BASIC macro that acts like a switch, and loads another AccuDraw shortcut file for you. With help from a former colleague, David Munro, P.E., a Project Engineer at CLD Consulting Engineers Inc. in Manchester NH, we created such a macro. Our macro consists of 9 simple lines of code that have been numbered for your reference:

You don't have to be a programmer to understand how the BASIC program is working. Here is a breakdown of the code. Of course, if you don't care to know, feel free to skip to this section.

Lines 1, 2 and 3 define variables.

Line 4 is very important for certain shortcuts. Essentially, the command No Echo tells MicroStation not to display messages such as MACRO [macro file]LOADED in the right side of the status bar. By disabling the messages from appearing, the user will still be able to view the current snap mode, selection set count, and so on.

In Line 5, Command$ is a MicroStation BASIC command that returns a string representing the argument from the command line used to start the macro. In other words, any text entered after the key-in MACRO [macro file] will get sent to the Command$ string variable, which I have equated to fileName.

Here is an example:

Shortcut = C1
Key-in = MACRO SHORTCUT COLORS

This key-in runs the macro shortcut.ba and passes COLORS to Command$. The macro then takes COLORS and stores it in the variable cmd.

In Line 6, we define the variable strTemp to equal the path (default) of the shortcut files, and we append ( & ) the contents of the strTemp variable with a TXT extension. The TXT extension is added so we don't have to type .txt in every AccuDraw shortcut that we use to call another file.

Line 7 re-defines the value of the MS_ACCUDRAWKEYS variable to equal strTemp.

Then in Line 8, we send a command to MicroStation followed by Line 9 which re-initializes the message display in the status bar with the key-in ECHO.

Getting the files in the right place
Now we need to look at where to put our AccuDraw shortcut file. A few questions need to be answered first:



Here are some suggestions for implementing multiple AccuDraw shortcut files defined by each setup.

Network Setup using Roaming Profiles and the Master Shortcut File (preferred setup):
This setup requires that you create and store the AccuDraw shortcut files in the user's roaming profile. This is a great way to allow each user at your site to maintain/create their own shortcut files. This way, each user will create/assign shortcuts that make sense to them. Additionally, the user can log onto any machine in the network (with MicroStation loaded on the machine) and use their shortcut files.

The following is a list of items that will need to be changed/edited:

  1. Initial definition of MS_ACCUDRAWKEYS in a site configuration file.
    An example of this is: MS_ACCUDRAWKEYS = $(PROFILE)shortcuts/shortcut.txt. The $(PROFILE) variable, uses the WinNT environment variable $(USERPROFILE) to expand the variable definition to c:\winnt\profiles\[USERNAME]\bentley\shortcuts\shortcut.txt. Be careful if you change over to Windows 2000 Professional, as the $(USERPROFILE) variable is defined as c:\documents and settings\[USERNAME].










You also have the option to place the shortcut files in one location that only a certain group of individuals have access to. Then you can then set network permissions to allow which users will maintain and create the shortcut files. You still have to complete the steps above, except the definition of the location folder and the Master Shortcut file (Steps 1 and 2) are set to a folder that all users can share on the network.

Local Setup and The Master Shortcut File (using MicroStation “out of the box”:
The local setup is the easiest of all. The only requirements are:

  1. Place the AccuDraw shortcut files in the default location defined by MS_ACCUDRAWKEYS which is pointing to c:\bentley\workspace\system\data by default.
  2. Place the macro in a location where MS_MACRO is pointing to which, by the way is c:\bentley\workspace\system\macros by default.
  3. Edit the definition of strTemp ("$(PROFILE)\shortcuts\" & fileName & ".txt" to the default location of the shortcut files. Like so: strTemp = " c:\bentley\workspace\system\data\" & fileName & ".txt". Also, be forewarned that if you wish to keep a copy of the default shortcut file (shortcut.txt), rename it before copying all the shortcut files to the same folder location (c:\bentley\workspace\system\data).




What do I mean by “The Master Shortcut File”?
AccuDraw shortcuts and files can be setup in two ways:

Method 1. Use a master shortcut file, and when the macro is used to switch to another file, each shortcut in that “switched file” will be created so that they switch back to the master shortcut file.

Method 2. When the macro is called to switch to another file, the shortcuts in that file will be defined so that they don't switch back to the master shortcut file, rather the user stays in the file called and can create a commonly named shortcut in each file that switches back to the master shortcut file.

I know, this sounds a little confusing, but it's *really* easy to setup. The table below helps better describe this:

Note that all the shortcuts contain the key-in MACRO SHORTCUT SHORTCUT along with the desired shortcut. Additionally, the ZZ shortcut serves as an, oops, I pressed the wrong buttons shortcut, that restores you to the master shortcut file.

How do I find those key-ins?
So, how do you find out all those key-ins? Well, you could look at Inga's The V7 Keyin List, record a macro, dig behind the scenes in Workspace > Customize or use an MDL utility called ALTKEYIN. ALTKEYIN extracts any MicroStation key-in that you invoke by clicking on an item from the pull-down menus or from clicking an icon on a toolbox. It then grabs the key-in and populates the AltKey-In shown below:

To copy the key-in from the AltKey-In window:

  1. Put the focus in the AltKey-In field.
  2. Press the Up and Down arrow keys on the keyboard to cycle to the desired key-in(s)
  3. Select the text
  4. Press CTRL + C to copy the text to the clipboard.



Now you can create your shortcut by pasting the command syntax into the command field of the Edit Shortcut dialog box. So, you ask, how do I get a copy of this awesome utility? E-mail info@rowseco.com, and we will e-mail it to you for free!

Reasons to try AccuDraw:
Implementing AccuDraw shortcuts at your site can increase your productivity two-fold. I will explain this statement with a real life example. Prior to working with Rowse Company, I was a Highway Design Technician / MicroStation & InRoads Coordinator, supporting Engineers and Technicians with drafting and minor engineering tasks. My primary work involved Design for the Vermont Agency of Transportation (VTrans), New Hampshire Department of Transportation (NHDOT) and Maine Department of Transportation (MDOT).

One of the tasks involved with Highway design is making revisions to a set of Roadway Plans that an Engineer would mark up (lot's of red ink). Although user might find this task tedious and boring, I loved performing this task as it involved (for me) the use of AccuDraw shortcuts. I would challenge myself to create as many shortcuts that I needed without using any pull-downs or icons. This is of course why my Master Shortcut file contains approximately 150 shortcuts.

One day, I decided to see if spending all this time creating these shortcuts was truly making me more productive, and wasn't wasting company time. My test was to take a part of a set of plan sheets, time myself and perform all the edits without using any AccuDraw shortcuts (i.e. using pull-downs and icons only). Then, do the same edits using my AccuDraw shortcuts. I performed these edits on the Typical Sections Sheets. Typical sections are a set of plan sheets that show the cross sectional view of the designed roadway at major changes. Here are the results of this test:

Typical Sections with pull-downs and icons only – 1.5 hours
Typical Sections using AccuDraw shortcuts only – 45 minutes

As you can see from this test, using AccuDraw shortcuts increased my productivity two-fold!

Conclusion:
Am I saying that you too can increase your productivity two-fold? Maybe not. What I am saying is to give AccuDraw shortcuts a try and you too will reap the benefits from one of MicroStation's best tools. Also, I am providing (free of charge) all my AccuDraw shortcut files and the macro used to switch between shortcut files in a convenient ZIP file. These shortcuts are over 7 years in the making, in 13 different shortcut files, and total more than 350 shortcuts in all! Simply e-mail info@rowseco.com and we will send you the file, or download them from Inga's website.

Take back your MicroStation desktop and increase your drafting productivity today, with the use of multiple AccuDraw shortcut files!

AskInga Article #94