Contents

Previous

Next

Last

Button Dialogs

Button Dialogs are used for programming the Buttons and the Hat Switches on your controller. They can be programmed to control a button on one of the Control Manager Devices (DirectX Mode), or they can be programmed to send keyboard characters when they are pressed or released (Programmed Mode). They can also be designated as the "Shift Button" for the map.

Notes on Hat Switches

The hat switches (with the possible exception of the POV hats) are seen as buttons by the Control Manager and so this section applies to them, also. Hat switches are selected a little differently, though. When you click on a hat switch in the Selection Pane on the left, the Select Panel on the right side of the Settings Box will be activated. To select the particular hat direction that you want to program, you need to click on that direction on the Select Panel graphic.

Hat Switch Position

The hat switches can be a bit confusing since the directions aren't particularly intuitive, especially on the Pro Throttle. Understanding where the "Up" position is located is the key. Consider the finger or thumb which will be used to activate the particular hat. It will point in the "Up" position, the other positions will follow from that. On joysticks and yokes the direction is fairly intuitive, being either physically "Up" or "Forward". The hats on the Pro Throttle are the ones that generally cause confusion. For the hats located on the back of the throttle handle, the "Up" position is actually towards the right, the way your thumb points. For the hat on the front of the Pro Throttle, "Up" is actually down, the direction that your index finger points.

Shift Button

The "Shift Button" box is located in the Settings Box at the top of the Dialog Pane. If checked, it designates the selected button as the one that controls whether the map is in "Normal Mode" or "Shifted Mode". This essentially doubles the number of button commands that can be programmed in the map. One set of commands is sent when the map is in Normal Mode, a second set of commands is sent in Shifted Mode. When the designated buttons is not pressed, the map is in Normal Mode. When the designated button is pressed, the map is in Shifted Mode.

Only one button may be designated as the shift button for the entire map. It normally is not used for any other function since having it send characters or activate a Control Manager Device button since having some function execute every time you change from Normal to Shifted mode is not normally desirable. Also, the Shift Button should be chosen so it can be held down while other buttons are pressed. Picking a button that's activated with your thumb pretty much precludes the use of any other button that is activated by your thumb, for example. The most common assignment is probably the "pinky" button on joysticks or one of the buttons operated with the index finger on the front of the yoke handles.

DirectX Mode

When the DirectX Mode checkbox in the Settings Box is checked, the button will operate in DirectX Mode. In this mode, the button controls one of the buttons on a Control Manager Device seen by Windows, or it can activate one of the buttons on the Mouse. The Dialog Pane will look like this:


The Controller Settings section has two sets of boxes. The "Normal Action" section defines the Control Manager Device and Button ID that will be used when the map is in Normal Mode. The "Shifted Action" defines the Control Manager Device and Button ID that will be used when the map is Shifted Mode. Otherwise, the two sections are identical.

Both sections contain two drop-down lists. The DirectX Device box selects which Control Manager Device that the button will be assigned to. This can be any CM Device ID or the Mouse. The DirectX Control box selects the button ID on that Control Manager device which the selected button will control.

You do not need to fill in both sets of boxes. The Normal Action section sets the default value. If the Shifted Action section is left blank, the Normal Action will operate when the map is in either Normal or Shifted mode.

If you want to use a button as a Mouse button, you need to set the DX Device to Mouse (it's below CM Device 16 in the drop-down list) and assign the button to Button 1, Button 2, or Button 3. Other buttons are not recognized by the mouse.

Programmed Mode

If the DirectX Mode checkbox in the Settings Box is unchecked, then the button will operate in Programmed Mode and will be programmed to send characters. The Dialog Pane will look like this:


Just as in DirectX Mode, the dialog has sections for both Normal Action and Shifted Action. Again, if no Shifted Action is programmed, the Normal Action will be generated whether the map is in Normal Mode or Shifted Mode.

Each section has two boxes in it, one labeled "Press" and the other labeled "Release". You enter the characters that you want the controller to send when the button is pressed and the characters you want it to send when the button is released respectively. See the section on Programming Character Macros for information on entering characters and strings, special characters, etc.

List Mode

There is a second method for programming characters called "List Mode". Normally a button sends the same characters at press//release every time, depending of course on the current Mode, Shift state, etc. List mode allows you to specify a list of Press/Release commands, as many as 32, for any button. Each time the button is pressed, the next command in the list will be sent. When the end of the list is reached, it is started over.

To use the List function, pick a button and uncheck the "DX Mode" box. You'll see a new checkbox show up between the "DX Mode" and the "Shift" checkboxes. Check that and the button dialog will change to a two-column list. It looks like this:


The first 8 entries should be visible with a scroll bar on the right that lets you scroll down through the other 24. The left column holds the "Press" command, the right column holds the "Release" command. You just need to enter the commands as you would into the normal character boxes. Neither entry is mandatory, you can have a Press without a Release and vice-versa.

In the above illustration, two "Press" entries ("GearUp" and "GearDown") have been made. no "Release" entries have been made. As the button is pressed repeatedly, the Control Manager will send alternating "GearUp" and "GearDown" command on each button click. "GearUp" and GearDown" would have to have been defined in an associated CMC file of course, or they would not be recognized.

The same basic "right-click" mechanisms that works with the normal text boxes works with the List dialog also. The main difference is that the right-click will select the cell that will receive the command, something that wasn't really necessary for the other boxes. The right-click allows you to insert CMC commands or use the keystroke generator to enter the commands if you'd rather.

List programming does not recognize the Shift button, you get the same list whether shift is down or not. It does recognize Mode though, so you can have different lists on the same button for different modes. If the mode changes, the list will normally be restarted at the first item in the new mode. List Mode is like the other CM Mode commands, you only have to program Mode 1 and it will be used in any of the other three modes that aren't otherwise programmed. Since the most common use of List Mode includes only one list, though, the list is not reset unless the Mode change implies a list change.

For example if you only program a List to Mode 1, letting that be the default for the other Modes, then a Mode switch will not reset the list. On the other hand, if you were to program different lists in Mode 1 and Mode 3, you could switch from Mode 1 to Mode 2 without causing the list to reset, but a switch from Mode 2 to Mode 3 would cause a list change so the list would be reset. Likewise a switch from Mode 3 to Mode 4 would cause a reset even though Mode 4 isn't programmed itself since it would be using the default Mode 1 list.

Using List Mode

List Mode programming can be used in several ways. Probably the most common is as a toggle. If you've got a function that needs two commands, say "CanopyOpen" and "CanopyClose" or "GearUp" and "GearDown", and you want to have one button handle them both, you can just put the two command on the first two press strings in the list and they'll alternate each time you click the button, effectively turning the button into a "Toggle".

Lists can also simplify the programming of sequences. Using the existing SELECT block function for example, you essentially have to use a different CMS button for each command in the sequence. With the List, the CMS file can simply pulse a single button and the List will automatically take care of the sequencing.

Button Dialog Comment Box

At the bottom of the Button Dialog is the Comment Box. This does not affect map operation, it just provides a place to make a note about what the button is programmed to do.