Display devices

Top  Previous  Next

Configure hardware Display devices

 

Configures display devices (monitors).

 

Before configuring displays for use with Whisker, configure the monitors in the Windows Control Panel. On a multimonitor computer running Windows 2000, choose Start Settings Control Panel Display Settings and you will see something like the following:

 

Windows_ConfigureMultimonitor

 

The Control Panel allows you to set the relative position of your monitors (by dragging the images around), set the resolution of each, etc. Whisker is only able to use monitors that are part of the Windows desktop (this is not deliberate, but appears to be a bug in the Windows DirectDraw enumeration function). Therefore, any display that you wish to use with Whisker must have Extend my Windows desktop onto this monitor ticked.

 

One and only monitor will have Use this device as the primary monitor ticked. I will refer to this as the primary monitor. It is the one that the Windows desktop starts from; programs that are not multimonitor-aware default to opening on the primary monitor.

 

Within Whisker, when you choose Configure hardware Display devices you will see the following dialogue box:

 

WhiskerServer_ConfigureDisplays

N.B. This screenshot is from a computer that had three monitors attached, of which one (DISPLAY2) is currently disabled. Note that individual displays may appear more than once, under different names and/or via different driver systems.

 

Use device. You may enable or disable each display device. If the device is enabled, the following options become available:

 

Hide mouse cursor. Makes the mouse cursor invisible when it enters this display area.

 

Mouse behaviour. Choose from:

Mouse: the mouse generates mouse-down, mouse-move, and mouse-up events.
Ignore: the mouse does nothing.
Touchscreen: the mouse generates touch-down, touch-move, and touch-up events.

 

       Best mouse options for animal-oriented multiple-monitor rigs. Typically, while it is impossible to prevent the mouse pointer from crossing over a window (reliably) that is not using DirectDraw, you may not want the mouse to appear on monitors that are inside your operant chambers. In that case, tick Hide mouse cursor and set the mouse behaviour to Ignore — the mouse will not be prevented from entering the portion of the desktop corresponding to this display, but will be invisible and ineffective.

       Best mouse options for iPads with Air Display software. The Air Display software makes an iPad behave like an additional monitor; touching the iPad generates mouse events. For this setting, choose "mouse behaviour = touchscreen" so that the iPad emulates a touchscreen for Whisker tasks (a touchscreen emulating a mouse emulating a touchscreen!). You probably also want "hide mouse cursor" ticked.

       Best mouse options for human testing with a mouse. Don't hide the mouse cursor. Choose mouse behaviour to be "mouse" or "touchscreen" depending on what your Whisker client task expects.

       Losing the mouse pointer. Hiding the mouse cursor can cause one problem, namely that you may 'lose' your mouse pointer because it is invisible; in that case, you need to move it in the general direction of a monitor that doesn't have this kind of Whisker display on it! (If your primary monitor is at the top left of the desktop map in Control Panel, for example, and isn't being used for a Whisker display, simply move your mouse left and up and the mouse pointer should come back into view on the primary monitor.)

       OLDER VERSIONS (before WhiskerServer v4.2.1): had an "Exclude mouse" option. When "Exclude mouse" was ticked, this was equivalent to "Hide mouse cursor" and "Ignore" mouse behaviour. When it was unticked, this was equivalent to showing the mouse pointer and having it behave like a mouse.

 

Keep topmost. (Only available if DirectDraw is not being used.) This ensures that the Whisker display is forced on top (in front) of any other windows. It should normally be ticked. However, you are recommended to avoid ticking this option for the primary monitor — as it will then be very hard to use any other programs!

 

Use DirectDraw back buffer (PRECLUDES VIDEO). Select between using the standard Windows graphics routines (this option off), or high performance DirectX routines (this option on). This should generally be enabled, unless: (a) you wish to use video (see Video objects); (b) you experience problems with a piece of hardware: not using DirectDraw may solve some problems. One particular instance of (b) is that DirectDraw mode doesn't work with an iPad running Air Display (May 2012).

 

Exclusive mode. Puts DirectDraw into exclusive mode, in which Whisker tries to take exclusive control of a whole monitor for that display.

 

Border. Suppose your touchscreen is smaller than your monitor - the touchscreen is 1024 arbitrary units wide, while the monitor is 1280 arbitrary units wide. You may then want to scale the Whisker display so that the display is only 1024 units wide, so all of it is visible through the touchscreen. To achieve this, you want a display that's 1024/1280 = 0.8 (80%) of the size of the monitor. So you would want a 10% border on either side of the screen. To achieve this, enter 10% in the "border" box. (The default is no border - 0% - in which the whole monitor is used.) The border applies to the left/right and top/bottom borders simultaneously.

 

Note: the primary monitor may appear twice — once as 'Primary display driver', and once as the video card that is driving that monitor. There is no point enabling both.

 

When you first run WhiskerServer, the defaults for the primary monitor are don't use —don't go topmost — don't exclude mouse. You can then change these settings if you wish. All other monitors default to use — don't use DirectDraw — go topmost — don't exclude mouse. This is a safety feature: it is suggested that you use the mouse to check that the display is where you expect and responds correctly, and then exclude the mouse when you have finished testing.

 

Display settings take effect when you restart the server.

 

Tips

Tip_Hand

MULTIPLE MONITOR SYSTEMS CAN BE CONFUSING.

 

As the owner of a multimonitor system, you may notice all sorts of strange behaviour — for example, when most programs go into a 'full screen' mode (e.g. Microsoft Word), their borders extend slightly beyond the desktop you are familiar with and may be visible on the next monitor! For reasons such as these, Whisker displays that aren't using DirectDraw should have Keep topmost enabled.

 

Even a 'topmost' window cannot entirely prevent anything from being visible in front of it. If you configure Windows so that window outlines are shown when windows are dragged (in Windows 2000, Start Settings Control Panel Display Effects Show window contents while dragging = OFF), the outlines will be visible over the Whisker display. (Once you release the mouse button, the dragged window will vanish behind the Whisker display.)

 

Thus, it is possible to move another window 'underneath' a Whisker display. If the Whisker display is enforcing Keep topmost behaviour, it may be impossible to retrieve the other window!

 

It is impossible for Whisker to defend non-DirectDraw windows entirely against 'virtual desktop management' programs that allow you to move windows around. For example, TriPlus WinSpace 3 Light is capable of moving Whisker full-screen non-DirectDraw displays around on the desktop, giving ridiculous results.

 

THE SIMPLEST AND BEST RESULTS SHOULD BE OBTAINED USING DIRECTDRAW EXCLUSIVE MODE.

 

Note also that Whisker display windows appear in the Windows task bar to confirm that they are being used. This is deliberate.

 

 

Tips

Tip_Hand

IF YOU LOSE CONTROL OF YOUR COMPUTER WHILE TESTING…

 

It is possible to lose the ability to see where you are working if you mis-configure the display devices. If you enable the primary monitor, you may have to press Alt-TAB to get back to your desktop, because the taskbar will not be visible. But if you enable the primary monitor and set the Keep Topmost attribute, the display will force itself in front of everything on your desktop and keep itself there. It is even more confusing if you also set the Exclude mouse attribute, because then you can't see the mouse.

 

To rescue yourself,

 

1. Shut down the server.

 

Hold Alt down and press TAB until the small, moving box is over the WhiskerServer icon (not the full-screen display device, which will have an 'F' in its icon – the WhiskerServer icon has no letters, just the eye-and-whiskers picture). Release Alt. This will transfer the focus to the WhiskerServer console, even though you may not be able to see it. Your screen will probably look like this until WhiskerServer is shut down:

 

ConfusedMonitors_Blank

 

which is the problem!

 

Press Escape at least three times to ensure that WhiskerServer is not displaying any menus or dialogue boxes.

 

Press Alt-F4 to close WhiskerServer. Although you will not be able to see it, WhiskerServer will now pop up this dialogue box:

 

WhiskerServer_ConfirmExit

 

so press Enter. If clients were connected, a second dialogue box will appear (again, you will be unable to see this):

 

WhiskerServer_ReconfirmExit

 

so press Enter again. The server will now close, and your desktop will become visible again.

 

2. Disable use of the primary monitor

 

To avoid this situation recurring, choose Start Run and type in regedit . This will run the Registry Editor.

 

In the left-hand tree view of the Registry Editor, find the following entry:

 

HKEY_CURRENT_CONFIG\Software\WhiskerControl\WhiskerServer\Version [the most recent]\Display devices

 

It will look something like this:

 

Regedit_DisplayDeviceKey

 

If you wish, you can explore the tree further and directly edit the entries for the primary monitor (EnumeratedDisplay_0) to disable it, but the easies thing is to click on 'Display devices' in the left-hand tree and press DEL. The Registry Editor will ask for confirmation:

 

Regedit_DeleteKey

 

When you next run WhiskerServer, it will return to its default behaviour, in which the primary monitor is disabled. You may have to reconfigure your other monitors.

 

Why is this situation permitted? Because I think it may be useful to have full-screen control of your primary monitor under some circumstances, e.g. if you are testing an overly-inquisitive subject on a laptop. If nobody ever uses this facility and a consensus of opinion develops that it's a pain to have the primary monitor enabled in 'topmost' mode, I might remove the option. Comments to rudolf@pobox.com.