═══ 1. MSE installation, upgrading, startup, deinstallation ═══ Please choose from the following topics: Installation Upgrading Command line (startup) Deinstallation ═══ 1.1. MSE installation ═══ Unzip MSE.ZIP into an empty directory. Review the READ.ME file. Run INSTALL.CMD. ═══ 1.2. Upgrading MSE ═══ Review the new READ.ME file. Exit MSE if it is running (Hint: "MSE.EXE /k" will cause MSE to close itself). Unzip the new MSE.ZIP into the MSE directory, being especially sure to overwrite MSE.EXE and MSEHOOK.DLL. You can click the About button to check to see if the compile time and date changed to be sure you did actually overwrite the files. If MSE gives you a version mismatch error and refuses to run, you missed one of them. Restart MSE. If you used the Pick click button command, you may have to adjust that button's command on the MSE main window. In some circumstances, MSE's DLL (MSEHOOK.DLL) may be "stuck," and you can't overwrite it even after exiting MSE. In this situation, remove the MSE program object from your Startup folder, if one exists (to prevent MSE from starting automatically), reboot, unpack MSE, then run INSTALL.CMD. The latest version of MSE can be found at http://www.bmtmicro.com/mse. The HISTORY.TXT file will show you what's new in this version of MSE. ═══ 1.3. MSE command line arguments ═══ MSE's installation program builds program objects to launch MSE for you. However, you may want to make others for specialized purposes. MSE has some command line arguments you can use if you have the need or desire. It's not required that you use any of these, or even know what they are. Feel free to skip this section. The following command line arguments can be used with MSE: /c Show MSE clipboard manager of any running instance of MSE. /d# # sets the delay in seconds before MSE starts up (1-99). /h Hide MSE after startup. /k Kill any running instance of MSE. /n# # sets the number of clipboard entries retained by MSE (5-99). MSE may be rerun to surface a running instance. Only one instance will actually be running on the system. Note that command line arguments go in the "Optional Parameters" field of a program object's Properties notebook (what we used to call the Settings notebook in ye olde days). Or you can just type 'em on a command line, you dinosaur, you. :-) ═══ 1.4. MSE deinstallation ═══ Run UNINSTAL.CMD. ═══ 2. MSE main window ═══ The MSE main window allows you to assign commands to mouse button/keyboard modifier combinations. Command names prefaced with an asterisk (for example, "*Roll up/down") work only when the mouse button is clicked on a titlebar window. Other commands should work anywhere the button is clicked. Just select the command for a given mouse button/keyboard modifier from the dropdown listboxes. A word about "keyboard modifiers" (called "Key mods" on the main window): When you click a mouse button, you can also hold down a Shift, Ctrl or Alt key, or some combination thereof. This is known as "modifying" the click. With three mouse buttons and three modifer keys, you get a total of twenty-four different "modified" clicks (including "plain" clicks where no key is pressed). In addition to the dropdown listboxes for button commands, there are a couple of checkboxes and a few buttons on this window. Here's the breakdown: The Disabled checkbox disables MSE's mouse enhancements. You can also temporarily disable MSE by pressing the Scroll Lock key so that the Scroll Lock light comes on. The Not in list checkbox removes MSE from the OS/2 Window List. Note that the Disabled and Not in list checkboxes are mutually exclusive -- only one may be checked at a time. This is to prevent you from getting into "trouble" where you have disabled MSE but can't use MSE to call the main window back up. You might then have to resort to running MSE from a command line to make it reappear so you can change it. The Reload menus button causes all MSE user-programmable menus to be rebuilt. If you modify one of the menu data files (MSEMENU#.DAT), click this button to reload the data. It also reloads virtual and file dialog exclusions. The Settings button displays the MSE settings dialog. The MSE icon can be clicked to call up the clipboard manager, if it's being used. You can request a context menu containing many useful MSE commands on this icon, too. The Exit button ends the MSE application. ═══ 3. MSE button commands ═══ Here's a breakdown of the button commands available: OS/2 default No command -- just do what OS/2 would do. Show MSE Show the MSE main window. *Close window/Close window Well, close the window you clicked, of course. *Window to back/Window to back Send the window you clicked to the bottom of the ZOrder (window pile). *Window on screen/Window on screen Move the the window you clicked so that it is entirely on the screen. *Roll up/down/Roll up/down "Roll up" a window so that only its titlebar shows. If the window's already rolled up, roll it back down. Note that not all windows take kindly to such treatment, but most don't mind. *Move window/Move window *Size window/Size window *Maximize window/Maximize window *Minimize window/Minimize window Window list The same as if you'd selected these commands from the window's system menu. Switch list Calls up MSE's switch list, from which you can select a window, close it, hide it, or move it to the current desktop (if you're using virtual desktops). The switch list shows which desktop each application is running in, if you're using virtual desktops. Next window Calls up the next window in the ZOrder (window pile). Like pressing Alt+TAB. B1 2-click Mimics a mouse button one double-click. Note: This one works better if there are no modifiers involved (i.e. assigned to mouse button three with no key mods). You can still use the chord shortcuts with this command, but you must use them with the mouse pointer in a position on the screen where a button one double-click won't evoke a reaction (for example, on an empty spot of the desktop). B1+2 Chord Mimics a mouse button one + mouse button two chord (a chord is when you press two or more mouse buttons simultaneously). Win text->clip Copies the clicked window's window text to the clipboard. Win text->clip append Appends the clicked window's window text to the clipboard. Note that OS/2 seems to have a 64k limit to clipboard text... Clip->Win text Sets the clicked window's window text to the clipboard's text. Start FM/2 Starts File Manager/2, best file manager around. What, you don't have a copy of the program that won a 1995 OS/2 Magazine Editor's Choice award, a 1996 OS/2 e-Zine! Reader's Choice award, and was nominated for SIA's best shareware utility of 1997?!? Get one! http://www.bmtmicro.com/fm2 Open object Brings up a dialog that lets you open any file, folder or named WPS object. Minimize all Minimizes all windows. Menu #1-#7 Brings up a user-programmable menu. See the MSEMENU1.DAT that came with MSE for an example (here's a copy of it in this help file). Virtual desktops Displays the virtual desktop pick window. Clipboard manager Displays the clipboard manager window. Calculator Displays a simple calculator. OS/2 command line Starts an OS/2 command line session. Pick click Brings up a menu from which you can pick an MSE command to apply to the clicked window. This allows you to get to any MSE command without having to use the keyboard, for those who have physical problems with the keyboard modifiers. Commands prefaced with an asterisk (*) only work if you click a titlebar. Otherwise, the OS/2 default click is used. Hint: You should probably not assign a command to mouse button one or mouse button two with no modifiers or with the Alt modifier -- these are used extensively by the WPS and PM. Ignore this advice at your peril. If you try it anyway and get yourself into a jam, remember that the Scroll Lock key will temporarily disable MSE so you can fix it. ═══ 3.1. MSE button menu sample ═══ ; ; MSEMENU1.DAT -- a sample for MSE ; ; You can place the name of a program to run or the objectID of a WPS ; object in this file, and it'll be accessible in a menu in MSE. The ; commands "Menu #1" through "Menu #7" activate them. This menu will ; be activated by the "Menu #1" command (hence the "1" in the filename). ; ; Note this is more of an example file than an attempt to do something ; actually useful... ; ; ; Hints: ; ===== ; ; MSE will allow you to create a menu definition file if you try to ; access one that doesn't exist. If you select a command from a menu ; while holding down the Ctrl key, MSE will allow you to edit the ; menu definition file instead of executing the command. The menu will ; automatically be reloaded when you're done editing. You can edit ; the file normally with some other editor, but then you'll need to ; use the "Reload menus" option to cause all menus to be reloaded the ; next time you try to pop them up -- no biggie. ; ; ; Rules: ; ===== ; If the name of the program contains a space _and_ you wish to give ; an argument to the program after the name, you must enclose the ; program name in quotes (like on a command line). For example: ; "MY TERRIBLY COOL.EXE" file.txt ; ; If you give a fully qualified path to the program, that path will be ; used as the initial starting directory when the program is run; ; otherwise, the default directory (MSE's) will be used. ; ; To specify a WPS object, it must have an objectID. You can create ; named objects using REXX (see below). ObjectIDs have the form: ; Examples of pre-named objects: ; The system clock: ; The Drives object: ; The font palette: ; The system setup folder: ; Exception: Folders and data files can be opened just by specifying ; their fully qualified path name (i.e. C:\OS2\BITMAP). ; ; Lines cannot exceed 1000 bytes in length. ; ; One entry per line. ; ; Lines beginning with a semi-colon (like this one) are comments, and ; are ignored. They have to be read from disk, so don't go overboard ; (like this file :-). ; ; You can have up to seven of these menu files, named MSEMENU#.DAT ; where # is 1-7. ; ; ; /* Example of creating a WPS object with an ObjectID in REXX: */ ; /* ========================================================= */ ; call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs' ; call SysLoadFuncs ; SysCreateObject('WPFolder','My Folder',','OBJECTID=,f) ; ; ; The actual menu items appear below: ; e.exe ib.exe ═══ 4. MSE settings ═══ This dialog, accessed from the Settings button on the main MSE window, allows you to control many of the ways that MSE behaves: The Sliding focus checkbox causes the window under the mouse to receive the focus without clicking. The No ZOrder change checkbox prevents the window from being brought to the top. The Wrap at screen edges checkbox causes the mouse pointer to wrap to the opposite side of the screen instead of stopping at an edge. Note that when this setting is checked, the "Shift required to bump desktops" setting below is automatically selected as well. Center mouse on selected windows causes MSE to place the mouse pointer over the center of windows selected from the MSE switch list or virtual desktop selection window. Mouse to default button causes MSE to place the mouse pointer over the default button of a dialog when it pops up. The Center mouse on dialogs without default buttons checkbox causes MSE to center the mouse over dialogs that don't have a default button. Test the last one -- it might sound good, but you may not like it much in practice. The Mouse motion reaction delay field tells MSE how many milliseconds (1/1000ths of a second) to delay reacting when the mouse moves. This delay applies to sliding focus, desktop bumping, mouse wrapping and corner command activation. The default is 0 (no delay). The Seconds until pointer hides field controls how many seconds MSE waits while the mouse pointer doesn't move before making the mouse pointer invisible (move the mouse to bring it back). Enter 0, which is the default, to disable this feature. Note that this is only accurate to about ten second intervals. There is no interrelationship between this timer and the Mouse motion reaction delay timer above. You can Enable enhanced file dialog to have MSE provide an improved standard file dialog. Applications that use custom file dialogs will not be "enhanced," but most don't. You can selectively exclude programs from this by placing the name of the program in a list file named FEXCLUDE.LST in the MSE directory. The FileDlg exclusions button will allow you to edit this file. If you Enable clipboard manager, MSE will provide extended clipboard functionality. You can assign the clipboard manager window to a mouse button command, or click the MSE icon on the MSE main window to call it up. The Autosave clipboards checkbox causes MSE to save and restore text clipboards to and from disk when MSE starts and exits, respectively. The Clips fldr button opens the folder where these saved clipboard files are kept, for maintenance purposes. Hints: Clipboards saved to disk are loaded even if the Autosave clipboards option is turned off. You can manually save and load clipboards to and from disk using the context menu available on the clipboard manager window's tip window. The Enable screen capture checkbox allows MSE to save bitmaps of the screen when you press the PrintScrn key. Bitmaps are saved to the SCRNSHTS directory off of the MSE directory and are named SCRN###.BMP, where ### is an incrementing number to allow multiple captures. Note that VIO windows eat the PrintScrn when they have the focus -- change the focus to some other window, or the desktop, in that case. The Folder button beside this checkbox opens up the WPS folder for the SCRNSHTS directory so you can do maintenance there. A command file, AFTRSCRN.CMD, is run after screen shots are captured so that you can further process the resultant bitmap file if desired. A sample came with MSE which you can edit to taste. Finally, you can set the number of Color bits to use when capturing the screen. A value of 1 gives a black-and-white bitmap, a value of 4 gives a 16-color bitmap, a value of 8 gives a 256 color bitmap, and a value of 24 gives a "true color" bitmap. The higher this value, the more diskspace and (very temporarily) memory the bitmap requires. If you Enable chord shortcuts, MSE will attempt to activate the following chord shortcuts: Hold down mouse button three, then press mouse button two to display the MSE main window. Hold down mouse button three, then press mouse button one to show the virtual desktop window. Hold down mouse button three, then press mouse button two while holding down either the Shift, Alt or Ctrl keys to display the clipboard manager window. MSE can provide "virtual desktops" if you check the Use virtual desktops checkbox. Basically, this expands the desktop into an area nine times larger than the single screen usually available. The WPS Desktop itself is available in all virtual desktops. You can Mouse-bump desktops, which means you'll switch virtual desktops when the mouse bumps up against the edge of the screen. Note that this is a 3-state checkbox -- when checked, mouse bumping is on; when "greyed" (third state -- the funny looking one), mouse bumping is on and the mouse will be positioned to the opposite side of the screen after bumping. You can opt to have Shift required to bump desktops which can help eliminate accidentally bumping to another virtual desktop during normal mouse motion. If you don't like the little numbered button virtual desktop dialog, you can check the Larger desktop selection window button to try a more powerful desktop selection window. MSE usually "normalizes" the desktops when it exits (in other words, places all running programs back on the real desktop), but you can check the Don't normalize on exit button to prevent this. You can still use the Reset desktops command, which places you on the real desktop, AKA the center virtual desktop (#5), and moves all windows to that virtual desktop. You may want to exclude some windows from the virtual desktop array (or think of it as having some windows available on all virtual desktops). Simply place the titles of the windows in a text file named EXCLUDE.LST in the MSE directory. The Virtual exclusions button will allow you to edit this file. Partial titles are sufficient, one per line. The Enable swapfile monitor checkbox causes MSE to display a small swapfile counter on the screen. The size of the swapfile and the amount of free space on the drive holding the swapfile are shown. If the free space falls below 32k, the background of this monitor window turns red. The swapfile monitor has some minor smarts -- it normally checks the swapfile about once every two minutes, but when changes are noticed or freespace is below 32k, it checks more often. If you Enable clock, MSE displays a small clock on the desktop. You can Include date in the clock. The clock is updated about once every minute. If you'd like the clock and swapfile monitor to "float" to the top of the window stack about once every thirty seconds, check the Float monitors to top checkbox. Hints: Click the clock to call up the OS/2 System Clock. Click the swapfile monitor to call up the OS/2 Launchpad. Drag the clock or swapfile monitor to any position you like on the screen with mouse button two (the regular drag-an-object button). Change the colors and font of either by dropping colors and fonts onto them from the system palettes (remember, use Ctrl while dropping a color to change the text color). Click and hold mouse button one on either while "dragging" the mouse to show MSE. Click mouse button two on either to force an immediate window update. The Corner commands button calls up another dialog that lets you assign commands to the corners of the desktop. These commands are activated when the mouse is moved into the corresponding corner. ═══ 4.1. Corner commands ═══ You can use the Corner commands dialog, accessible from the MSE Settings dialog, to have MSE invoke a command when you move the mouse pointer into one of the four corners of the desktop. The dialog displays a dropdown listbox containing possible commands (a subset of the usual button commands), and a representation of the desktop with radio buttons in the four corners. Select a radio button and the dropdown listbox shows the command associated with that corner. Select another command from the listbox, and that command becomes the command for that corner. The Nothing command can be used to make the corner behave normally -- nothing happens when you move the mouse there. ═══ 4.2. About virtual desktops ═══ This is what virtual desktops might look like if you could see them all at once. The desktop you start in is numbered "5" in the illustration -- it has a couple of programs running in it. Note that the WPS Desktop is present in all virtual desktops. Clicking the button numbered five in this illustration would result in the desktop numbered "5" in the top illustration being selected. Hints: Minimized and hidden windows don't "move" when you change desktops -- in other words, they restore to whatever the current desktop happens to be. You can see which virtual desktop programs are running in by using the MSE switch list button command. The default action when you select a program from that switch list is to change to the desktop that holds it, but you can hold down the Shift key while clicking to bring that program to the current desktop. The optional "larger desktop selection window" has more "grunt" than the small button dialog. It displays a graphical representation of all the desktops combined, including open windows. As you move the mouse pointer over the grid, it shows the name of the top window, if any, under the pointer. When you click on a grid square, that desktop is made the active desktop, and if any open window was under the pointer, that window is made the active window, as well. Hints: Hold down Shift while clicking, and the window under the mouse pointer (if any) is brought to the current desktop (the current desktop doesn't change). Requesting a context menu brings up the MSE switch list. You can drag fonts onto the window (both the main window and the tip window). Need smaller fonts in the main window? You can enter a smaller point size than is shown in the dropdown listbox for some fonts (try 6-point Helv, for example) in the font dialog. ═══ 5. MSE clipboard manager ═══ The MSE clipboard manager includes a clipboard viewer that displays text, bitmaps and metafiles. Context menus (also known as popup menus or button two menus) are available on all windows to let you save files, load files into the clipboard, adjust settings, etc. You can also drag files to the various windows to import them into the clipboard. The clipboard manager automatically saves the last twenty-five text entries in the clipboard for quick recall via context menu. The two arrow buttons to the right of the tip window let you cycle through those entries. The command line argument /n# can be used to increase or decrease the number of saved entries available. This argument is only valid when starting MSE -- you can't change it on-the-fly. The clipboard manager can be assigned to an MSE button command. Clicking the MSE icon on the MSE main window also displays the clipboard manager window. Note: To import pictures to the clipboard, they need to be in OS/2 bitmap format (.BMP). You can convert pictures in other formats to bitmap format using the OS/2 image viewer (ib.exe) or IMAGE.EXE from the FM/2 Utilities package, if desired. Also, don't forget that doing an Edit->Copy in most image manipulation packages places a bitmap in the clipboard. If you're already running a clipboard viewer (for example, CLIPOS2.EXE), MSE's clipboard manager won't install itself. Close the other clipboard viewer first. If you run the OS/2 clipboard viewer, MSE's clipboard manager will get knocked out of the loop (the OS/2 clipboard viewer is busted). If this happens, use the Settings dialog to turn the clipboard off and then back on. Hints: To save the clipboard manager's size and position, close (not minimize, but close -- F3 is the accelerator key) the window. This also saves any clipboard entries to disk if you have Autosave clipboards turned on. Don't overlook the context menu on the tip window itself. If you want to copy something to the clipboard and not have the clipboard manager save it, turn on the Scroll Lock light before copying (don't forget to turn it back off after). ═══ 6. MSE enhanced file dialog ═══ If you're tired of that dinky little file dialog that OS/2 uses -- you know, the one that makes you scroll around a lot in tiny listboxes looking for files and directories -- try enabling this enhancement in MSE's settings dialog. MSE alters the standard file dialog to be full screen height to cut down on scrolling, adds user-definable directory and file pulldowns, at-a-glance help, and even allows you to open files and directories from the dialog. Wave your mouse pointer around over the various fields in the dialog, and a quick description of the basic function of the fields will be shown at the top of the window as the pointer passes over them. Not every program uses the standard file dialog box. MSE tries to be intelligent about when it steps in and when it doesn't, but if you run into conflicts, you can exclude some programs from using this enhancement. Click the "FileDlg exclusions" button on the MSE settings dialog to do this. Hints: The File: and Directory: text fields are clickable -- they open the WPS object for the first highlighted file or current directory, respectively. Clicking the Directory text field with mouse button two (usually the right button) will let you create a directory. ═══ 7. Registration and license ═══ MSE isn't free, it's shareware. You can evaluate it for up to 30 days, after which you must either register it or discontinue its use and remove it from your system. You may redistribute the unregistered version of MSE only if the distribution archive is unaltered. You may not charge for distribution of the archive. There is no warranty for MSE. Support is not guaranteed to unregistered users. (Whew. Glad that's out of the way.) To register MSE, either fill out the registration form REGISTER.TXT, then print it, or run the internet registration program and email BMT Micro for a registration key. Cost is only $25/machine (site licenses are available for $2500). When you register MSE, your name appears in the About box, and "MSE -- Registered" (instead of "Unregistered") displays in the Window List. And it makes you feel good. Registrations ensure that the program will continue to be developed and improved, which is the real reason, aside from your conscience, of course, that you should always register the shareware you use -- it won't get any better if you don't. Thanks for the support! Mark (mkimes@ibm.net)