ProgramBar 2.20 --------------- Copyright 1995-96 Ian Jefferies. jeffers@teaching.physics.ox.ac.uk Shareware Inspired by the task bar found in Windows95, this program has been written so that the same kind of functionality and ease of use can be brought to Windows 3.1 and Windows For Work Groups. Windows was designed so that you might run several programs together. While doing this you quickly find that you run out of screen real estate. Reading a help file while writing and testing an Excel based macro for example, or more. Switching between applications now means using Alt-TAB, more often than not overshooting the application you want - very annoying. ProgramBar will help you switch between applications quickly, easily and with confidence. It's as easy as using the mouse! For most of the time you will not be aware that it is running on your system. It uses very little in the way of system resources and processor time as it sits in the background, quietly noticing when you load and close down programs. This file contains information on the features of ProgramBar, how to install ProgramBar, a legal disclaimer, version information about bugs fixed and new features, and a copy of FILE_ID.DIZ for BBS SysOps who lose the original. --------------------------------------------------------------------- Features --------------------------------------------------------------------- The following main features are implemented in this release: * Fast access menus for your most frequently used programs, documents and help files. * A `Start' button that gives access to much of the functionality of ProgramBar. * Access to, and running of, any program in your Program Manager groups. * A live desktop allowing frequently used documents to appear on the desktop as icon links. Documents may be dragged from File Manager and added to the desktop. A desktop system menu is available by right clicking on the desktop. * Access to all of the Control Panel configuration applets. * Each running application represented on the front panel as a button. A push of the button makes that application active. Iconic applications may be hidden so as to neaten the desktop. * Right clicking on the ProgramBar panel displays a list of active applications that can be closed. * Shutdown Windows, either returning to DOS, restarting Windows again, or rebooting your machine. * Fast search for files on your hard disk. They may be launched or added to the fast access menus or live desktop. * Run a program specifying the command arguments, or a data file with an association known to File Manager. * The current time and date displayed on the front panel. A calendar window helps you plan and set alarms. * Full configuration of ProgramBar via a popup dialog box. * Ability to run as a limited shell. No support for DDE. Other features that will help you use ProgramBar and Windows better: * Colourful icons help navigation through the main popup menu. * Flyby help hints when you let the mouse hover over part of the ProgramBar interface. * Quick access to this help file (click on the ProgramBar logo on the right hand side of the bar.) * Drag and drop of files from File Manager onto ProgramBar. Automatic separation into Applications, Documents and Help files. * The state of ProgramBar is saved between sessions. * When permanently visible maximized windows may be resized to accommodate the reduced desktop area. * Applications may be excluded from the front panel task switching buttons to reduce clogging up of the panel. * Task switching buttons on the front panel may be stacked onto more than one row. * ProgramBar may be triggered from any of the four edges of the screen. A convenient marker can be displayed on the last triggered edge, or all available triggering edges. * Applications/documents and help files added to the fast access menus may be edited to give more appropriate titles, run time arguments, or different working directories. * Better support for people who use cursor screen wrap: the size of the region that can be used to make ProgramBar popup may be adjusted. The time delay before ProgramBar hides again may be increase. Also a time delay before ProgramBar is displayed may be set, avoiding the `overshoot' problem associated with controls near the edge of the screen. * Menu and front panel fonts may be changed from within ProgramBar. A sample box also shows the suitability of the font for reproducing non-standard characters that may be used in titles. * 3D effect on all dialog boxes though the automatic use of CTL3DV2.DLL if present. Tabbed dialog boxes are adjusted to look more like their Windows 95 counterparts when used in conjunction with this DLL. * Better crash protection. ProgramBar interferes with or supersedes much of the functionality of Windows in order to implement its features. Should another application `fall over' or crash ProgramBar should not be affected. Neither should ProgramBar cause another application to crash. In the unlikely event that ProgramBar crashes it removes all of its hooks and cleans up after itself, thus minimizing the chance of another program crashing. * Hidden out of the way when you don't need it. May also be permanently visible on your desktop. * The Control Panel may be inhibited from running in order that a potential clash between ProgramBar and Control Panel is avoided. The clash arises because the same dialog box may be opened by both applications and different values set. This is a precautionary measure only. --------------------------------------------------------------------- Installation --------------------------------------------------------------------- There are four files required for the correct use of ProgramBar. They are: PROGBAR.EXE The executable that provides all of the functionality of ProgramBar. PBHOOK.DLL A DLL that is used by ProgramBar to monitor system activity, notify of programs being opened or closed. PROGBAR.HLP Help file describing the main features of ProgramBar. CONFIG.HLP Help file for the configuration dialog box. In addition, the following two files should also be present in the archive: README.TXT Text instructions on how to install the program plus additional information (this file). FILE_ID.DIZ A file that assists BBS operators in maintaining their archives. To install ProgramBar follow the steps below: 1. Create a new directory for ProgramBar. (e.g. C:\WINAPPS\PROGBAR) 2. Copy all the files listed above into this directory. 3. Then activate Program Manager and choose the program group that you want to place the ProgramBar launch icon into. 4. From Program Manager's menu chose File|New... 5. Select Program Item, then press the OK button. 6. Fill in the name of the icon and the path where the executable may be found. 7. If you want to have ProgramBar launch when you run Windows, place a copy of the icon in the StartUp group. This may be done by keeping the CTRL key pressed down while clicking on the ProgramBar icon and dragging it to the StartUp group. Clicking on the ProgramBar icon will now run the program. ProgramBar creates an initialisation file called PROGBAR.INI in the windows directory and a file in the same directory as its executable called PROGBAR.DAT. Details on alarms will be stored in PROGBAR.ALM, and information on the live desktop in DESKTOP.DT. The user may create additional desktop related files with the extension .DTL. ProgramBar assumes that both the Program Manager (progman.exe) and WinHelp (winhelp.exe) executables are available. Some default icons are taken from these files for display purposes. --------------------------------------------------------------------- About shareware and legal disclaimers --------------------------------------------------------------------- DISCLAIMER OF WARRANTY THIS SOFTWARE IS PROVIDED FREE AND "AS IS" WITHOUT WARRANTY OF ANY KIND. THE AUTHOR FURTHER DISCLAIMS ALL IMPLIED WARRANTIES INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR OF FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK ARISING OUT OF THE USE OR PERFORMANCE OF THE SOFTWARE AND DOCUMENTATION REMAINS WITH YOU. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE OR DOCUMENTATION EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. DISTRIBUTION You may distribute this software freely on any electronic based medium including but not limited to: uploading to a FTP site, uploading to a BBS, downloadable from a WWW page. May also be distributed as part of a CD-ROM collection of shareware/freeware. Any distribution should not limit my rights (either explicitly or implicitly) to distribute this software using the same medium or any other. The software should be distributed as received in the original archive file. The only charge a distributor may make shall be limited to the cost of the medium by which the software is delivered, and those incurred in handling/distribution. A small shipping and handling charge may be made if this software is distributed as part of a collection. OTHER NOTES ProgramBar is Copyright (C) 1995-96 Ian Jefferies. All rights reserved. All rights not explicitly licensed to the user are reserved to the developer. If you write or publish an editorial about ProgramBar then the author would appreciate receiving a copy via either conventional or electronic mail. Windows, Windows95 and MS-DOS are registered trademarks of Microsoft Corporation. All other product names may be copyrighted and registered or unregistered trademarks/trade names of their respective owners. --------------------------------------------------------------------- Version information --------------------------------------------------------------------- Version 2.20, released 24-Apr-96 -------------------------------- * If a file specified in control.ini did not exist then ProgramBar crashed during startup. Fixed. * ProgramBar refused to accept an existing file when editing the attributes of a file on the fast menu that was not on the current drive. Fixed. * ProgramBar crashed under certain circumstances when trying to obtain the date time stamp of a non-existent file during startup. Fixed. * Problems experienced by several users when loading ProgramBar: one or more DLL's complained of missing files or refused to be loaded a second time (warning messages only). Fixed. * Iconized apps locked down the active focus button, preventing switching to that task from the front panel. Fixed, iconic apps no longer lock the active focus button. * With ProgramBar permanently visible maximized windows may be resized to fill the available desktop. Multiple Document Interface (MDI) iconic windows may be forced to rearrange so that icon titles do not disappear off the bottom of the window area. * Iconized application windows may be hidden from view only if they appear on the button bar. This neatens up the desktop. Iconic applications that do not appear on the task switch bar are not hidden, they may use their icon to present the user with information. * Front panel task switch buttons incorrectly sized under certain circumstances. Fixed. * While entering the password for a screen saver it was possible to activate ProgramBar. Fixed. * When deleting the details of an application excluded from the button bar, sometimes the wrong item was deleted. Fixed. * Dragging of a file onto ProgramBar caused update problems when the configuration dialog box was open and an Application/Document/Help list box required updating. Only triggered when the dragged file was inserted immediately before the current selection. Fixed. * The fast access applications, documents and help files now use the directory associated with the executable/data file when no working directory is specified. * ProgramBar load time reduced by caching .GRP files in memory. Should be most noticeable for people who have lots of large groups. * Compatibility with Wayfarer shell introduced by popular request. The Wayfarer icon will now appear on the front panel as an application and it can be activated. One side effect of this is that all applications that only appear in iconic form will also appear on the task switching front panel (they can be excluded). If selected from the front panel these iconic applications may show their system menu. * Dialog boxes converted to use of a non-bold font - closer appearance to the Win95 dialog box style and more space in the text edit fields. * The last edge used to trigger ProgramBar, or all the edges that may be used to trigger ProgramBar may be indicated on the desktop, in the same fashion as the Win95 task bar. * By popular request the main menu may be configured to appear when the Start button is clicked instead of using the click-drag approach previously employed. * Popup delay now implemented so that the cursor can now `bounce' off the edge of the desktop when using corner controls without triggering ProgramBar. * The live desktop has its own popup menu (right click on the desktop) which includes the ability to arrange iconic windows, enable/disable the screen saver, run the screen saver, and bring up the configuration dialog box. * The clock now has a calendar and alarm capability. Click on the front panel clock for a calendar. Alarms may be set to play a sound, execute a program, and/or scroll a message across the title bar of a window. Alarms can repeat hourly, daily, weekly, weekdays, weekends, fortnightly, monthly, quarterly and yearly. An alarm that is delayed (because ProgramBar was not running when it was triggered) may be ignored, accumulated, deleted or set to trigger. * The live desktop may now store documents as icons. These files are stored as a link to the document and take up negligible system resources. Double clicking on the icon will run the associated application and load the document. The title of the document may be changed to a more appropriate long title. This is similar to the long file name system employed in Windows95. Documents are dragged from File Manager onto the desktop, or added using the desktop popup menu. A Document may be duplicated from its system menu or by pressing the CTRL key while selecting and moving the document icon. * Icons on the desktop may be separated into document and program types. Each type may be placed on a different edge of the screen. It is possible for the desktop to automatically arrange itself. * The groups present in Program Manager may now be rescanned while ProgramBar is running. This option is available from the configuration dialog. * The configuration dialog may now be minimized. It does not (and never has) appeared on the front panel application selection. Use the Start|Configuration|ProgramBar to find the window again. * Documents on the desktop may be saved individually or in groups to `layout' files. These layout files may appended to or override the desktop layout saved between sessions. * The Find Files dialog has been converted to a modeless dialog, in the same fashion as the configuration dialog. It may be left permanently on the desktop if required, rather than locking up ProgramBar. * ProgramBar no longer appears on the Alt-TAB list when permanently visible. Also it has been removed from the DOS box Alt-TAB list. * Intermittent interference with the activation of a screen saver. Fixed. * Restructured help file for better readability and to overcome a limitation of the Help compiler (HC31 v3.10.505). * Occasional truncation of the number of Program Manager groups (due to a discrepancy in the Program Manager INI file) fixed. * Removed remaining memory leaks using Borland CodeGuard. * Several controls in the configuration dialog that are disabled when the front panel is locked were freed again under certain circumstances. This protection ensures that ProgramBar is left in a safe state. Fixed. * Environment variables used as arguments to programs are now parsed and replaced. Literal substitution of % for %% also carried out. Available for Program Manager groups, the fast access menus, alarms, and in the Start|Run... dialog. * Left and right mouse clicking over a disabled window on the front panel no longer produces the system menu or close application menu. * When run as the shell application, ProgramBar failed to close down Windows when it is was closed itself. Fixed. * StartUp group now executed when ProgramBar is the shell. * Visible flyby hints failed to update with the new window text. Fixed. * History lists in Run... and Find Files... dialogs now saved between sessions. * Bug in font selection dialog box, failure to map font point sizes too far apart (e.g. 14pt to 10pt). Fixed. Version 2.11, released 1-Dec-95 ------------------------------- * ProgramBar failed to handle a large number of applications on the front panel, generating a `TaskBar overloaded' message. This message should now only appear under extreme unreasonable circumstances (ie when the buttons are so narrow that they cannot display their contents.) * Control Panel applets are now cached, significantly decreasing ProgramBar's load time. If any of the applets used by Control Panel are replaced, deleted or added to then ProgramBar will re-cache the data where required. Data is also re-cached if the screen driver is changed as the icon format may be different. * Control Panel applets in the [MMCPL] section of control.ini are now scanned as well as the [drivers.desc] section. * A peculiar window create/destroy/create cycle that assigned the same window handle in both cases resulted in two buttons being displayed on the ProgramBar front panel. E-mail Connection was the only application seen to exhibit this behaviour. Fixed. * Added a switch that allows the display of ellipsis (...) on the front panel task switch buttons to be turned off. Useful for when a large number of buttons are displayed. * Confirmation of closure of a DOS box via right clicking on the front panel is now required. A strongly worded message reminds the user that resources may be lost and Windows may be impaired. * The Find file dialog box now defaults to searching subdirectories. * Most error dialog box and menu message strings moved to the resource file for easier internationalisation of the executable. * Multiple arguments may now be specified for file wildcards and directories in the Find file dialog box. Each argument must be separated by a semicolon (;). * Button text colours on the front panel are now fixed to black regardless of the choice of personal colour scheme. * CTL3DV2.DLL now used for dialog boxes if it is installed. The 3D menus and front panel buttons are not and never have been provided using this DLL. Tab dialog boxes provide a Windows 95 look and feel when this DLL is detected. * ProgramBar crash protection code improved, now distinguishes between modules of the same name. * Annoying screen flicker caused by selecting a new dialog page on the configuration dialog removed. * Intermittant problem when switching from a DOS full screen app back to Windows caused the button indicating the active app to have a black background. Technique for drawing buttons changed, fixing problem. * Split menus crashed ProgramBar when sorted after an insertion. Most likely to occur on the fast access menus. Fixed. Version 2.1, released 21-Nov-95 ------------------------------- * Non-standard Windows colour schemes interfered with icon masking using monochrome bitmaps. Menu icons gained lurid clashing colour backgrounds. Fixed. * If both clock and date were not displayed on startup of ProgramBar then a recursive loop was entered, locking Windows. Ctrl-Alt-Del aborted ProgramBar, but Windows was left in an unstable state and running ProgramBar again returned the user to the DOS prompt without warning. Fixed. * Code has been installed to ensure that should ProgramBar crash for any reason, it is now safer to re-run the program. Due to the nature in which ProgramBar interacts with Windows it cannot be guaranteed to prevent further crashes/lockups/unexpected kickouts to DOS. * Browse buttons added to fast access configuration dialogs to complement the drag/drop addition of files. Version 2.0, released 18-Nov-95 ------------------------------- * Added full configuration to ProgramBar via a popup dialog box. Most changes to the configuration dialog are immediately reflected in the appearance of ProgramBar. All changes can be easily cancelled. * The Find File dialog box now provides a default search directory, it will be the root directory of the first fixed or remote disk on your system (most likely C:\). * When using the Find File dialog box to append a second set of files, the first file to be appended was incorrectly placed somewhere in the middle of the first list. Fixed. * Better handling of desktop applications that don't define class icons. * Ability to exclude applications parent windows from the front panel task switching based on module name and window class. Included ability to preview the criterion used to eliminate the parent windows. * Better display of front panel task switching buttons. They can now stack onto more than one row. User configurable. * Full editing of applications on the fast access menus. Entries may now be run minimized/maximized/normal, arguments can be appended, working directory may be changed, title displayed on the fast access menu can be edited. Settings saved to ini file are incompatible with v1.x, but upgrade performed automatically. * While finding the control panel applets, entries in the [drivers.desc] section of control.ini were assumed to be in the Windows system directory. ProgramBar could not find drivers that included a full path in their entry. Fixed. * Added a /d command line option to produce a debugging script during start up. Currently limited to examining loading of DLL's and opening files. * When switching to an application using the button bar, if the application had been disabled by a dialog box then the focus was incorrectly set to the application (not the dialog box). ProgramBar now searches for the most recent dialog box that has disabled the application and sets the input focus there. * ProgramBar may now be accessed from the left, right and top edges of the screen in addition to the bottom edge. * The size of the region that can activate ProgramBar may now be modified. Added for the benefit of those who use cursor wrap and can't hit the edge pixels reliably. * The time delay between moving the cursor off of the front panel and ProgramBar hiding itself may now be adjusted by the user. * Choice of font used on the front panel and in menus moved from progbar.ini to the configuration dialog box. Dynamic adjustment shows what the new front panel will look like (if visible on the desktop) before the change is committed. * Better handling of close down of Control Panel if it has a dialog box open. ProgramBar now attempts to close the dialog box before closing Control Panel. * ProgramBar front panel now appears briefly on startup to indicate an edge that may be used to access the front panel from. For the first time user the main window appears permanently on by default, several people failed to find ProgramBar once it had finished displaying the logo screen. * Enhanced detection of parent windows that may be switched to. ProgramBar failed to handle properly windows that had been hidden or had zero size. In several cases windows were not seen to close by ProgramBar and activating buttons were not removed from the front panel. * Closing an application with a right click now attempts to close dialog boxes associated with the application first. * Clock and date added to front panel. Either a digital or panel font clock may be displayed. If the clock uses the front panel font then the short date may also be displayed. The digital clock is not able to display the date. The fly-by hint associated with the clock displays the long date, as defined in Configuration|Control Panel|International. * Corrected several omissions and factual errors from the help file, as well as writing up all the new features. * Fixed a bug that crashed ProgramBar with a `Divide by Zero' error if there were no programs on the desktop when ProgramBar was run. * Reduced the chance of a text clipping problem occuring on the front panel buttons. Text clipping may still occur because of kerning by the GDI font driver. Version 1.2, released 23-Oct-95 ------------------------------- * Crashing bug. When a popup menu is closed and the cursor is at the very bottom edge of the screen, ProgramBar locks up. Fixed. This is the only improvement to this version, but warrants a new release to prevent data loss. Version 1.1, released 22-Oct-95 ------------------------------- * Task switching to full screen DOS application from the button bar failed, doing nothing. Fixed. * ProgramBar failed to popup if the cursor was at the bottom edge of the screen and sitting over an icon title or window resizing frame. Fixed. * ProgramBar became confused if another application forced ProgramBar to display/hide its main window, refusing to popup when hidden. Fixed. * An application that forced ProgramBar to minimize its main window succeeded. This should now not be possible. * Cursor now changes to an hourglass while ProgramBar loads or performs a time consuming operation. * All menus now display colourful icons to aid navigation. * A Program Manager item that specified a working directory different to the full path prepended to the executable file name could not be run. Items that did not specify a directory in which to find the executable were unaffected. Fixed. * The ProgramBar panel display font and point size may now be adjusted in the progbar.ini file for those people using high resolution display modes. * Flyby hints for the front panel give more information than the (possibly) truncated title text. * While scanning for the DLL's and drivers managed by Control Panel, a non-existant driver will no longer produce a `File not found' dialog box during start up. * Added ability to change fonts used on the front panel and in the menus by user request. * Menu handling improved, menu's now split when they are larger than the screen height rather than a fixed number of entries. The list of Program Manager groups will now split into two if you have an excessive number of groups. This is a hint that you should rationalize the number of groups in Program Manager :) * Added Maximized checkboxes to the file finder and program run dialog boxes. * FILE_ID.DIZ added for the benefit of BBS Sysops. Version 1.0, released 9-Oct-95 ------------------------------ * First public release. --------------------------------------------------------------------- FILE_ID.DIZ --------------------------------------------------------------------- Cut--------------------------- (2.20) ProgramBar - desktop enhancing taskbar ProgramBar brings much of the functionality, look and feel of the Win95 TaskBar to Win3.1. A button bar triggered from any edge of the screen displays active tasks for switching. All Program Manager groups may be accessed through a menu hierarchy. Control Panel applets may be run for easy configuration. Fast launch of commonly used applications, documents and help files. Live document links on the desktop. Desktop system menu. Automatic arrangement of icons on the desktop - to any edge. Full 100 year calendar and unlimited number of flexible alarms. Easy configuration of most aspects of usage. Limited shell replacement (no DDE support). Copyright 1995-96 Ian Jefferies. Shareware. jeffers@teaching.physics.ox.ac.uk End Cut-----------------------