home *** CD-ROM | disk | FTP | other *** search
/ Enter 1998 December / ENTER12_1.iso / os2 / SmartWin / smartwin.txt < prev    next >
Encoding:
Text File  |  1998-09-01  |  25.8 KB  |  545 lines

  1.  
  2.  
  3.    Smart Windows V 0.81 beta * (c) 1998 Alessandro Cantatore - Team OS/2 Italy
  4.  
  5.   **************************************************************************
  6.  
  7.   NOTE:
  8.  
  9.   Under no circumstances the author is liable for any LOSS OR DAMAGE.
  10.  
  11.   You are FREE TO USE this version of the program on as many machines as you
  12.   like.
  13.  
  14.   You are FREE TO DISTRIBUTE the program provided that you include all the
  15.   files in the archive without any modification.
  16.  
  17.   YOU ARE NOT ALLOWED TO SELL THE PROGRAM, but can charge a reasonable amount
  18.   to cover the cost of the distribution media.
  19.  
  20.   You can use the original ARTWORKS included in the archive as bitmaps,
  21.   icons, or included in the executables as resources ONLY FOR PERSONAL USE!
  22.   You are forbidden to use any of the above mentioned artworks in your
  23.   programs without asking the author for permission.
  24.  
  25.   -------------------------------------------------------------------------
  26.   THE USE OF THE PROGRAM IMPLIES ACCEPTANCE OF THE CONDITIONS STATED ABOVE!
  27.   -------------------------------------------------------------------------
  28.  
  29.  
  30.   Alessandro Cantatore
  31.   alexcant@tin.it
  32.   FIDONET: 2:335/705.2
  33.   http://www.ghostbbs.ml.org/utenti/alcant/
  34.  
  35.   **************************************************************************
  36.  
  37. --[Contents]----------------------------------------------------------------
  38.  
  39.  - What's new
  40.  - Introduction
  41.  - Installation
  42.  - Features and settings
  43.  - Known problems
  44.  - Planned features
  45.  
  46.  
  47. --[What's new]--------------------------------------------------------------
  48.  
  49.  * The one hour limit has been removed! The program will be completely
  50.    functional for 45 days or 200 reboots, whichever comes first.
  51.    A new version will probably be available before 45 days and its
  52.    installation will extend the trial time.
  53.  * The registration remider dialog now pops-up a while after boot and
  54.    then about every ten hours.
  55.  * Both global exceptions and group-of-features exceptions have been
  56.    implemented.
  57.  * During installation you can choose if the first time the program
  58.    will start with all options disabled or with the default options.
  59.  * A "Windows" page has been added with various options to modify
  60.    dialog fonts.
  61.  * Settings have been added to the "Titlebar" pages for the titlebar
  62.    context menu and for disabling the titlebar enhancements when
  63.    the titlebar has a not-default background color.
  64.  * Disabled windows i.e. windows not disabled by a child dialog are
  65.    no longer activated by the autofocus feature.
  66.  * The "Push window behind all other windows" feature has been enabled.
  67.  * Various bug fixes have been made to the installation program 
  68.    (random hangs during uninstallation), the preferences application
  69.    (sys3175 with Program Commander/2, etc), SMARTWIN.DLL (PMMail hangs,
  70.    unrolled windows beeing rolled when clicking on the scrollbar or
  71.    titlebar buttons, rolled VIO windows disappearing from the screen
  72.    when getting focus, PMSEEK hangs, etc).
  73.  
  74.  
  75. --[Introduction]------------------------------------------------------------
  76.  
  77.   Smart Windows is an OS/2 user interface enhancer with both aesthetical
  78. and functional features.
  79.   This first public beta is time limited: you can test it for 45 days or
  80. 200 reboots, whichever comes first.
  81.   A registration reminder dialog will appear about every 10 hours (I haven't
  82. arranged yet registration stuff).
  83.  
  84.   The program modifies the default procedure of the frame windows and
  85. of various PM controls. In order to work it must be loaded during
  86. system startup. This make all the development process more difficult and
  87. longer since in order to test the smallest modification I have to reinstall
  88. the DLL and reboot and you can imagine how slow the reboot can be in the
  89. machine I use for testing: a P120 laptop with a quite slow hard disk and
  90. 24 MB of RAM. Sometimes it takes a whole day just to eliminate a small
  91. bug since debugging is much harder in these conditions.
  92.  
  93.   The program has not been tested very well on warp 3 yet.
  94.  
  95.   A beta version for registered users will probably be available soon.
  96. But I have to decide the price and what features to include yet.
  97.  
  98.  
  99. --[Installation]------------------------------------------------------------
  100.  
  101.   Unpack the zip file in a temporary directory and run install.exe.
  102. You can install it over the previous beta, but the old SMARTWIN.INI
  103. will be removed. In future I'll add an INI migration routine in order
  104. to save the previous settings migrating them in the new INI file.
  105.  
  106.   The installation program first looks for the flag file SMARTWIN.@ to
  107. enable the Install button, then looks in the \OS2\DLL directory and the
  108. OS2.INI file for any item from a previous installation.
  109.   If any trace of a previous installation is found (or if you run the
  110. "Smart Windows Installer" object later) the Refresh and Delete button will
  111. be enabled as well.
  112.   To install just click on the "Install" button. If a previous copy of
  113. SMARTWIN.DLL is found the program will ask if you want to overwrite it.
  114. If it comes from a previous installation of "Smart Windows" click on "Yes",
  115. if it comes from a different application click on the "No" button, exit
  116. installation and send me an email message.
  117.   Then the installer prompts you for the installation drive and path.
  118. You can select a drive from the dropdown list or just type the drive letter
  119. in the "Path:" entry field. If the selected path doesn't exists the
  120. installer will ask if you want to create it. The installer can create
  121. a full tree of not existing directories!
  122.   After that the installer will ask you if you want that, the first time,
  123. Smart Windows be started with the default options (click on the "Yes"
  124. button) or with all the options disabled (click on the "No" button).
  125.  
  126.   Two modifications are made to the OS2.INI file:
  127. - a "Smart Windows" application is added to store the installation path
  128. - the SMARTWIN module name is added to the list of the DLLs to be
  129.   loaded at boot time (SYS_DLLS - LoadPerProcess)
  130.  
  131.   Later all needed files are copied to the installation path while
  132. SMARTWIN.DLL is copied to the \OS2\DLL directory and a "Smart Windows"
  133. folder with the Installer, the Readme file and the Preferences notebook
  134. is created on the desktop.
  135.  
  136.   If some files cannot be processed because they are currently in use
  137. (this will happen if your are installing over a previous installation
  138. or if you click on the "Delete" button to uninstall "Smart Windows") some
  139. "CALL" statements with the appropriate commands are added to the
  140. CONFIG.SYS file and the original file will be saved as SMARTWIN.CFG.
  141. This file is also used as a flag file: if you install "Smart Windows"
  142. and then, without rebooting, try to install again, you'll get an error
  143. message!
  144.   When you reboot the computer, before the WPS is loaded, all locked
  145. files will be overwritten (or deleted if you are deinstalling) and the
  146. original CONFIG.SYS file will be restored.
  147.  
  148.   The "Refresh" button will allow you to restore "Smart Windows" desktop
  149. objects in case you have accidentally deleted them.
  150.   Just click on it and if the application is correctly installed, a
  151. "Smart Windows" folder containing the documentation, the installer and
  152. the preferences program will appear on the desktop.
  153.  
  154.   If you want completely remove the application from your system just
  155. click on the "Delete" button. All "Smart Windows" files will be removed
  156. as well as any trace of "Smart Windows" in the OS2.INI file. You will
  157. need to reboot your computer to complete the process of deinstallation.
  158.  
  159. In case of error (I got a couple of "Copy file" errors during my tests)
  160. read the log file and after restoring the original CONFIG.SYS if has
  161. been modified (see above) restart the Installation program and try again.
  162.  
  163.  
  164. --[Features and Settings]---------------------------------------------------
  165.  
  166.   The preferences application consists in a notebook window whose pages
  167. share a common area with a statusbar which provide contextual help and
  168. a five buttons toolbar. The preferences window is resizeable!!! If you
  169. cannot read some help message because it doesn't fit the statusbar
  170. control, you can resize the window making it wider!!!
  171.  
  172.   The toolbar buttons have the following functions:
  173. - the first button on the left ENABLES/DISABLES all Smart Windows features
  174. - the second button is required to APPLY the settings of the current
  175.   page. Most pages do not need it since the settings are effective as
  176.   soon as they are changed. When required, the button is enbled as soon
  177.   as a setting is modified.
  178. - the third button is an UNDO button. It will set the settings of the
  179.   current page to the values they held when the Preferences application
  180.   was started.
  181. - the forth button is the DEFAULT button and it resets the current page
  182.   preferences to the default values.
  183. - the fifth button is the HELP button. There is no SMARTWIN.HLP file yet
  184.   so it doesn't work yet.
  185.  
  186.   There are still a lot of features not yet implemented though the
  187. corresponding buttons/checkboxes are in the Preferences application.
  188.  
  189.   Starting from this release both global exceptions (all features
  190. disabled fot the listed programs) and group-of-features exceptions
  191. (only the features belonging to the group are disabled) have been
  192. implemented.
  193.   There are still some limitations since the program is not yet
  194. able to detect text mode programs or WIN-OS/2 programs but consider
  195. all of them just as PMSHELL.EXE processes.
  196.  
  197. Note: in the following list of features new features are introduced by
  198. a "*" character rather than by "-" and new pages have a leading and
  199. trailing "*".
  200.  
  201.   The Smart Windows Preferences notebook consists of the following pages:
  202.  
  203.   [Smart Windows - Product information]
  204.  
  205.   Just the logo with the version number.
  206.  
  207.   [Smart Windows - General]
  208.  
  209.   - Apply on exit : it applies all new settings when the program is closed.
  210.                     In the current version, sometimes it fails to work, so
  211.                     CLICK ON THE APPLY BUTTON in the toolbar to be sure to
  212.                     apply the new settings of the pages which require it.
  213.   - Save on exit  : if not checked the current settings are not saved in
  214.                     SMARTWIN.INI so when you reboot you'll get back the
  215.                     previous settings.
  216.   - Remeber last viewed page : allow to remeber which page is in the
  217.                     foreground when the notebook is closed. When the
  218.                     application is restarted the previous page is brought
  219.                     to the foreground.
  220.   - Apply all :     apply all the new settings in all pages.
  221.   - Undo all :      undo all modified settings in all pages.
  222.   - Default all :   the preferences are resetted to the default values
  223.                     in all pages.
  224.  
  225.   [*Exceptions*]
  226.  
  227.   * This page allows to fill a list of global exceptions. You can enter
  228.     the full name of an executable file (i.e. including the full path
  229.     or use the "Find" button to find it through the file dialog.
  230.     When a window which belongs to a process started by a listed
  231.     executable is opened, all Smart Windows features will be disabled
  232.     for it.
  233.  
  234.   [*Windows*]
  235.  
  236.   This page allows to select a font as substitute for the default
  237.   System Proprtional font without adding a "DefaultFont" key to OS2.INI
  238.   as some other application does. This way text clipping is usually
  239.   avoided.
  240.   Note: this option allow to set the font of "main" windows. The inner
  241.         controls, if no font is specified by the application, will
  242.         inherit the "main" window font.
  243.   * Use Smart Windows font : allows to substitute the default font
  244.                     with the selected one.
  245.   * Override Presentation Parameters : will force windows to use the
  246.                     selected font even if they do not normally use
  247.                     the default System Proportional font
  248.   * Ignore Presentation Parameters : won't allow to use any other font
  249.                     than the selected font. I.e. if you try to change
  250.                     the font used by a window by dragging and dropping
  251.                     a font from the font palette on the window border,
  252.                     you'll fail. This can be useful when application
  253.                     change the font not before window creation but at
  254.                     a later time.
  255.                     Warning! This feature hasn't been tested thouroghly.
  256.   * Dialogs only :  Only dialogs window will be forced to use the selected
  257.                     font.
  258.  
  259.   [*Windows - Exceptions*]
  260.  
  261.   Will disable all the previously described features for all listed
  262.   applications.
  263.  
  264.   [Titlebar - Active window/Inactive window]
  265.  
  266.   The preferences in this page require the Apply button (the second button)!
  267.   You can use any bitmap for the titlebar background or the window controls
  268.   with the following limitations:
  269.   - all bitmaps must be in warp 2.x format not RLE packed
  270.   - the titlebar bitmap file size must be less than 8 KB
  271.   - the titlebar bitmap must be at least 22 pixels high for screen
  272.     resolutions of 1024x768 pixels or better or 18 pixel for screen
  273.     resolutions fo 800x600 pixels or less
  274.   - the window controls bitmaps must be 16 colors bitmaps, 22x22 pixels
  275.     for high resolution screens and 18x18 pixels for low resolution screens
  276.  
  277.   - Enable titlebar enhancements : enable/disable all the controls in the
  278.                     page and the corresponding settings. When it is checked
  279.                     a titlebar sample will be displayed.
  280.   - Context menu :  a context menu event (right or left button click
  281.                     according to what you set in the system mouse
  282.                     preferences) on the titlebar will make the system menu
  283.                     popup next to the mouse pointer. 
  284.   - Titlebar sample : it is interactive! By clicking on the titlebar
  285.                     buttons you can modify the default buttons bitmaps or
  286.                     the close button position. By clicking on the titlebar
  287.                     you'll be able to select a different background color,
  288.                     shade direction or bitmap according to the selected
  289.                     background mode.
  290.   - Background group :
  291.      - Solid color : replicates the default titlebar style. The Background
  292.                     button allows to select the background color.
  293.                     The titlebar sample can be used like the color
  294.                     selection button.
  295.      - Shade :      allow the use of a shade as titlebar background.
  296.                     When selected will display four buttons to select the
  297.                     two different colors, swap them or change the shade
  298.                     direction. The titlebar sample can be used like the
  299.                     shade direction button.
  300.      - Bitmap :     allow to use a bitmap as titlebar background.
  301.                     When selected a bitmap selection button will be
  302.                     displayed. The titlebar sample can be used like
  303.                     the bitmap selection button.
  304.      * Override Presentation Parameters : when unchecked titlebars
  305.                     which do not use default colors for the active
  306.                     or inactive state, won't use the Smart Windows
  307.                     titlebar background settings.   
  308.   - 3D border :     allow to surround the titlebar with a 3D border.
  309.                     The buttons allow to select and swap the colors.
  310.   - Text style :
  311.      - 3D text :    when checked gives a 3D effect to the text. By 
  312.                     selecting the colors you can get a raised or depressed
  313.                     effect.
  314.      - Font:... :   the Font button allow to set the titlebar font.
  315.                     The same effect can be attained by dragging a font
  316.                     from the font palette and dropping it on the titlebar
  317.                     sample.
  318.  
  319.   Note:
  320.      -1) in titlebar buttons the same bitmap is used both for the button in
  321.          ordinary state and for the button in depressed state. The bitmap
  322.          is shifted one pixel left and down for user feedback when the
  323.          button is depressed. In a future version I'll try to use icons
  324.          i.e. transparent bitmaps so to extend the titlebar background
  325.          on the buttons bottom and different images for the different
  326.          states of the buttons.
  327.      -2) when moved to the left side the close buttons replicate the
  328.          system menu icon if present. The problem will be solved in
  329.          a future version.
  330.      -3) next version will allow more control on the titlebar settings
  331.          like text formatting (left, center, right) and opaque text
  332.          background in order to simulate Mac OS titlebars.
  333.  
  334.   [Titlebar - Exceptions]
  335.  
  336.   Will disable all the previously described features for all listed
  337.   applications.
  338.  
  339.   [Titlebar - Titlebar hiding]
  340.  
  341.   The options in this page allow to hide the titlebar and controls
  342. (optionally including the actionbar menu) of any window. The titlebar
  343. pops up again as soon as the mouse pointer moves on the upper window
  344. border and is hidden when the mouse pointer is moved away from the
  345. titlebar area downwards. 
  346.  
  347.   - Enable titlebar hiding : enable/disable all the titlebar hiding
  348.                     options.
  349.   - Hide by :
  350.      - System menu : add a "Titlebar hiding" item to the window system
  351.                     menu.
  352.      - Mouse :      select which mouse event, performed on the titlebar,
  353.                     toggles titlebar hiding on/off.
  354.      - Keyboard :   (not working yet) will allow to set a keyboard
  355.                     accelerator for toggling titlebar hiding on/off.
  356.      - Titlebar-hide button/unhide button : allow to use a titlebar
  357.                     button for toggling titlebar hiding on/off.
  358.                     Two different bitmaps are used for hiding/unhiding.
  359.   - Exclude rolled windows : disable titlebar hiding for rolled
  360.                     windows. This checkbox will probably be removed in
  361.                     future and the option will be permanently set
  362.                     since there is hardly any reason to hide the
  363.                     titlebar of a rolled window.
  364.   - Exclude dialog windows : disable titlebar hiding for dialog windows.
  365.                     Dialog windows without a sizing border are treated
  366.                     as OS/2-DOS command windows: the titlebar is removed
  367.                     by reducing the size of the window.
  368.   - Include menu :  hide the actionbar menu alongside the titlebar and
  369.                     window controls.
  370.   - Pop up delay :  set how long (hunredths of second) the mouse must
  371.                     stay on the upper window border to make the hidden
  372.                     titlebar be displayed.
  373.   - Hide delay :    set how long the mouse pointer must stay away from
  374.                     the titlebar area before the titlebar is hidden
  375.                     again.
  376.   Note: titlebars in hidden state are hidden again only when the mouse
  377.         pointer moves downwards!
  378.  
  379.   [Titlebar hiding - Exceptions]
  380.  
  381.   Will disable all the previously described features for all listed
  382.   applications.
  383.  
  384.   [Window rolling - General options]
  385.  
  386.   - Enable window rolling : enable/disable all the window rolling options.
  387.   - Roll by :
  388.      - System menu : add a "Roll/unroll" item to the window system menu.
  389.      - Mouse :      select which mouse event, performed on the titlebar,
  390.                     toggles window rolling on/off.
  391.      - Keyboard :   (not working yet) will allow to set a keyboard
  392.                     accelerator for toggling window rolling on/off.
  393.      - Titlebar-roll button/unroll button : allow to use a titlebar
  394.                     button for toggling window rolling on/off.
  395.                     Two different bitmaps are used for rolling/unrolling.
  396.   - Exclude hidden title windows : disable window rolling for hidden
  397.                     titlebar windows. This checkbox will probably be
  398.                     removed in future and the option will be permanently
  399.                     set. The hidden title state will be automatically
  400.                     unset when window rolling is toggled on.
  401.   - Auto-unroll when getting focus : rolled windows are automatically
  402.                     unrolled when getting focus.
  403.   - Auto-roll when losing focus : windows whose rolled state has been
  404.                     previously set, are losed as they lose focus.
  405.   - Allow vertical resizing of rolled windows : (not yet implemented -
  406.                     at the moment it is always unset). When checked
  407.                     should disable window resizing when in rolling state.
  408.   - Auto-unroll windows vertically resized : (not yet implemented)
  409.                     rolled windows will ne automatically unrlled when
  410.                     a size event is detected.
  411.   - Roll to the bottom : (not yet implemented) make window roll downwards:
  412.                     i.e. the left bottom corner of the window won't move.
  413.   - Store rolled state : (not yet implemented) will allow to remember
  414.                     the rolled state of window! It will be possible to
  415.                     unroll windows closed when in rolled state.
  416.   - Auto-unroll when closing window : Now it always works this way. It
  417.                     will probably be removed.
  418.  
  419.   [Window rolling - Exceptions]
  420.  
  421.   Will disable all the previously described features for all listed
  422.   applications.
  423.  
  424.   [Maximized windows - General options]
  425.  
  426.   not yet implemented
  427.  
  428.   [Maximized windows - Exceptions]
  429.  
  430.   Will disable all the previously described features for all listed
  431.   applications.
  432.  
  433.   [Sizing/moving - General options]
  434.  
  435.   only the "Frame drag"  and the "Push behind all other windows" features
  436.   work at the moment. The buttons allow to select the mouse-keyboard
  437.   combinations for executing frame drag or pushing the window at the boottom.
  438.  
  439.   [Sizing/moving - Exceptions]
  440.  
  441.   Will disable all the previously described features for all listed
  442.   applications.
  443.  
  444.   [Text controls - General options]
  445.  
  446.   only "Entry field automatic text selection" work at the moment. The
  447.   "Select by" button allow to chose the mouse/keyboard combination.
  448.  
  449.   [Text controls - Exceptions]
  450.  
  451.   Will disable all the previously described features for all listed
  452.   applications.
  453.  
  454.   [VIO windows]
  455.  
  456.   not yet implemented
  457.  
  458.   [VIO windows - Exceptions]
  459.  
  460.   Will disable all the previously described features for all listed
  461.   applications.
  462.  
  463.   [Mouse]
  464.  
  465.   - Automatic focus : main windows, child of nthe desktop, under the
  466.                     mouse pointer are automatically made active. The
  467.                     "Delay" spinbox allow to set how long the mouse must
  468.                     stay on a window before it becomes the active
  469.                     window.
  470.                     The option work for seamless WinOS2 windows as well.
  471.   - Ignore desktop : when checked the desktop window is not made active
  472.                     when the mouse pointer moves on it.
  473.   - Don't bring to top : activated window is not made the topmost window.
  474.                     This feature is disabled when moving to or from a
  475.                     seamless WinOS2 window.
  476.   - Ignore new windows : the autofocus feature is suspendend when a new
  477.                     window is opened and re-enabled after the mouse
  478.                     has been moved on the new window.
  479.   - Pointer hiding : the pointer is hidden when it stop moving. The                    
  480.                     "Delay" spinbox allow to set how long it must be
  481.                     still before it is hidden.
  482.       - Exclude buttons : disables pointer hiding when it is over a button.
  483.       - Exclude menu : disables pointer hiding when it is over a menu.
  484.   - Remap button 3 click as button 1 double click : works with most
  485.                     PM windows and applications (still problems with
  486.                     PMMail). It works randomly with seamless WinOS2 windows.
  487.                     This problems will be solved soon.
  488.   - Move the mouse pointer to the focus window and following :
  489.                     not yet implemented.
  490.  
  491.   [Mouse - Exceptions]
  492.  
  493.   Will disable all the previously described features for all listed
  494.   applications.
  495.  
  496.   [Mouse mappings / Keyboard mappings]
  497.  
  498.   only the previously mentioned features will work.
  499.  
  500.  
  501. --[Known problems]----------------------------------------------------------
  502.  
  503. - Do not use conflicting options when using other PM enhancers like Xit,
  504.   NPS WPS Enhancer, Program Commander/2, Object Desktop, etc.
  505. - Now PM Mail should really hang only when the middle mouse button is
  506.   clicked on any of its windows. I already know how can probably solve
  507.   the problem...
  508.   Just press Ctrl-Esc and wait for the application termination dialog.
  509. - The double click emulation works randomly with seamless WinOS2 windows.
  510. - Maximized VIO windows are not automatically re-rolled when they lose
  511.   focus and the Autoroll option is set. Sorry I know the cause of the
  512.   problem but didn't have enough time to solve it. The fix will be in
  513.   next release.
  514. - Problems have been reported with Communicator Beta and with Xfolder.
  515. - Sometimes the mouse pointer gets corrupted.
  516.   
  517. PLEASE REPORT OTHER PROBLEMS TO MY E-MAIL ADDRESS:
  518.  
  519. alexcant@tin.it
  520.  
  521.  
  522. --[Planned features]--------------------------------------------------------
  523.  
  524.   Correction of all bugs is of course the first planned feature ;-).
  525.  
  526. Other planned features are:
  527.   * completion of the features present on the preferences application
  528.   * more titlebar options (text formatting, Mac OS style, more titlebar
  529.     buttons, etc)
  530.   * warp 4 window style (border) for warp 3 users
  531.   * use of bitmap as dialog background
  532.   * various buttons, checkboxes and radiobuttons style
  533.   * various scrollbar style
  534.   * full control of the colors used by the various controls
  535.   * new style for selected menu item (warp 3 or unix style)
  536.   * selectable icons used by the standard messagebox dialogs.
  537.   * import/export of bitmap/color schemes
  538.   * more sliding focus options
  539.   * folder enhancements
  540.   * menu autoselection
  541.  
  542. The program will be distributed as shareware in different flavours
  543. (only aesthetic features, only functional fetures, mixed features,
  544. all available features).
  545.