home *** CD-ROM | disk | FTP | other *** search
/ Computerworld 1996 March / Computerworld_1996-03_cd.bin / idg_cd3 / utility / freedk25 / history.txt < prev    next >
Text File  |  1996-02-14  |  13KB  |  225 lines

  1. History of development of FreeDock
  2. ==================================
  3.  
  4. 1.01 alpha - First release to Angus, Neil & Martin
  5.  
  6. 1.02 alpha - Fixed 2 bugs discovered by Martin :
  7.              1) I windows directory is a SUBST'd drive, when the dock
  8.                 creates the path name to the program manager for files 
  9.                 which have no icons (.PIF, .COM etc.) the path was incorrect
  10.                 since it contained an extra \ i.e. p:\\progman.exe, this
  11.                 has been corrected by checking for the presence of a 
  12.                 trailing \ and only adding one if required.
  13.              2) When starting a DOS session from a .PIF file, with a 
  14.                 stored window position, the FreeDock window was moved to 
  15.                 the stored position & size, this was caused by getting the
  16.                 active window too soon. It was solved by adding a loop which
  17.                 retries 25 times to get the active window which is not the 
  18.                 dock window, if this fails it does not try to position the
  19.                 window.
  20.  
  21. 1.03       - Added the ability to drag slots around the dock, dropping a slot
  22.              in an empty position moves the slot to that position. Dropping
  23.              a slot in an occupied position swaps the location of the two
  24.              slots. Dragging a slot off the dock, indicated by the cursor
  25.              changing to a skull and crossbones removes the slot from the
  26.              dock.
  27.              Removed save option, .ini file now saved after any changes made.
  28.              Removed confirmation dialog from Exit Dock & remove slot options.
  29.  
  30. 1.04       - Fixed bug which was only partly fixed in 1.02 (1), the fix
  31.              prevoiusly provided correctly for .PIF, .COM & .BAT files, but
  32.              not for DOS .EXE files, this has now been corrected.
  33.  
  34.  
  35. 1.05       - Improved slot moving, icons do not now flicker when being moved,
  36.              and picking up a slot now causes it to be picked up from the dock
  37.              instead of only picking up a copy as was the case before.
  38.  
  39. 1.06       - Added Choose Icon option which displays all icons in a file in
  40.              pages of 50 icons at a time and allow the user to click on the 
  41.              icon they wish to choose.
  42.              Added Browse options to the App name and Iconfile fields, selecting
  43.              a new app results in the icon file being changed to match the app
  44.              ,if it contains any icons, otherwise the icons file is set to the
  45.              program manager & Icon 2 is selected. If the App contains icons, 
  46.              the first icon in the file is selected.
  47.  
  48. 1.06a      - Minor addition, when files are associated, in the program manager,
  49.              with an executable which is given as prog.exe (i.e. only the name
  50.              and not a full path) the dock would fail to find the exe correctly
  51.              and therefore be able to get the icon required. This has been 
  52.              solved by doing a searchpath() on all exe's for associated files.
  53.  
  54. 1.06b      - Minor modification to the logic which detects when a slot has been
  55.              dragged off the dock, to stop all slot redraws whilst it is not 
  56.              visible (i.e. outside the dock) this also had the effect of 
  57.              stopping the skull & crossbones (Slot Remove Cursor) from 
  58.              flickering.
  59.  
  60. 1.06c      - Minor modification to the logic for detecting the diference
  61.              between the first click of a double-click and a click or button
  62.              down prior to dragging. Problem was causing icon to jump around
  63.              in the dock when it was doubleclicked, this was caused by it
  64.              momentarily being picked up and then dropped as the first click
  65.              of the double click was processed. This has now been fixed.
  66.  
  67. 1.07       - Tidied up for first release.
  68.  
  69. 1.08       - Fixed a bug which meant that if multiple files were dropped on an app in 
  70.              FreeDock the filenames were cat'd together & passed to the app. Now separates
  71.              the filenames correctly with a space char.
  72.              Added feature which allows the user to right click on an empty slot & have
  73.              an empty slot dialog pop-up which can then be filled in with app details.
  74.              This version was only released to eff who promptly found a bug in it.
  75.  
  76. 1.09       - Fixed bug in 1.08 which resulted in the change dock position option not
  77.              working correctly. Rewrote positioning code so that the dock is now
  78.              repositioned as the user clicks the [top|bottom|left|right] radio buttons
  79.              on the main dock options dialog. Dock pos is also stored at this point to
  80.              allow it to be restored if the user selects cancel.
  81.              Fixed a minor bug which resulted in changes made in the main dock options
  82.              dialog not being saved (Spotted by Brian Duncan).
  83.  
  84. 1.10       - Dock can now be dragged around like any other window, position
  85.              is saved in .ini file. Dock position option in main options
  86.              dialog now only has 2 options (horizontal & Vertical) for the
  87.              orientation of the dock.
  88.              Dock Size can now be adjusted in the Main options Dialog, 
  89.              slots which are not displayed because the dock is too small are
  90.              not lost, they are still stored in the .ini file.
  91.              User can now select to launch an application in a slot with
  92.              a single click (in main options dialog).
  93.  
  94.  
  95. 1.11       - (Not Realeased, just an archive point)
  96.              Ported Freedock to NT, compiling with MS VC v1.5 & v2.0, Freedock
  97.              now comes in 2 forms, 16 & 32 Bit (FREEDK16.EXE, FREEDK32.EXE).
  98.              Tidied up the code a bit (not much :-) Added an entry to each slot
  99.              to allow it's icon to be stored in the slot, these are still
  100.              read from the original files at startup. 
  101.              Added a startup option to allow any application in the dock to be 
  102.              started as "Always On Top". Integrated the Choose Icon button
  103.              into the Icon display in the Application Options Window, now you
  104.              just click on the current icon in the Application Options dialog
  105.              to get the Choose an Icon dialog.
  106.              There is a minor problem with the way NT handles GetCapture which
  107.              means that to grab a window, you must keep the right mouse button
  108.              held down, position the grabber icon over the window to grab and 
  109.              then left click. This can be fixed by redoing the mechanism so 
  110.              that a grabber tool is dragged from the Application Options window
  111.              and dropped on the desired window. Ala MSVC v2.0 Spy++ grabber.
  112.  
  113.  
  114. 1.20       - Reworked the mechanism for Caching Icons, there is now only a
  115.              single bitmap and hdc into which all the icons are stored at 
  116.              various locations (Slot.IconIndex is the X coordinate of the Icon
  117.              within the IconCache with Y always 0). This method saves on
  118.              resources (handles the DC's & Bitmaps).
  119.              Reworked the Window Grabber tool so that it is now dragged from
  120.              the Application Options dialog box (which automatically hides
  121.              itself) onto the window whose size and location is to be grabbed.
  122.              This gets around NT's method of handling the GetCapture() call.
  123.              I suspect there may still be a resource leak of some kind in
  124.              Freedock, but I cannot track it down at present.
  125.  
  126. 1.20a      - Added OS dependent Title Icon, now shows which version of Freedock
  127.              is running (16 or 32 bit)
  128.  
  129. 1.20b      - Fixed a problem with the spawning of programs which had command
  130.              lines (NT Only). Speeded up saving code by making it only update
  131.              the slot which had changed. Tried to solve resource leak problem
  132.              but it still seems to be present, still minor at the moment.
  133.  
  134. 1.21       - Added conditional code for positioning of stored window positions
  135.              under NT, fixed a bug in the reading of the .ini file which meant
  136.              that the dock orientaion was always horizontal. Added calls to 
  137.              FindExecutable to resolve location of progman.exe when searching
  138.              for it to load the default icon from it.
  139.  
  140.  
  141. 1.21a      - Added a debug window which displays the IconCache, since this
  142.              cannot be viewed in a debugger, the window also shows the 
  143.              contents of the DockOptions and Slot[] data structures. The code
  144.              for the debug window can be conditionally compiled by setting or
  145.              commenting out the #define DEBUGGING_ON line in debug.h. When the
  146.              code is compiled in, the debugging window is activated by starting
  147.              Freedock with a /DEBUG command line option. Added code to update
  148.              slot's entry in the ini file when they are dragged about the dock
  149.              this was missed when I changed the method of updating the Ini file
  150.              to selectively update changed slots instead of just saving the
  151.              entire data structure. The debugging window is a hack and can
  152.              have side effects so don't use it unless you have to.
  153.  
  154. 1.30       - Added a preview button to the Application Options dialog, this
  155.              allows the user to preview or edit the stored window position /
  156.              size for an application in the dock.
  157.  
  158. 1.40       - Bug fixes to slot dragging/saving code and some conditional 
  159.              NT code
  160.  
  161. 2.00       - Debugged code ready for release.
  162.  
  163. 2.01       - Not quite debugged enough yet....
  164.  
  165. 2.02       - Tidied up NT Application execution code, made it easier to add
  166.              applications to the dock by right clicking on an empty slot, 
  167.              entering the app name (with or without path) an select OK. The
  168.              Runtime Dir, Icon File and full pathname are setup automatically.
  169.              Added an About button to the Main Application Options Dialog.
  170.              Runtime dir is checked for existance before an application is 
  171.              started.
  172.  
  173. 2.03       - Corrected wrong text in an error message.
  174.  
  175. 2.03a      - Oops, I had an incorrect definition in the resource file which
  176.              effectively stopped the Main Options "Always on Top" option
  177.              from working.
  178.  
  179. 2.05       - Added ability to scale the entire dock from x2 down to 8th size.
  180.              Maximum Dock size is now controlled via the MaxDockSize variable
  181.              in the [Main Options] section of the .ini file.
  182.              Added an NT application start-up option for "Start in separate
  183.              memory".
  184.  
  185. 2.05a      - Added hand cursor when dragging slots around in the dock.
  186.              Grabber Tool is now "Dragged-off" the Grabber Button & the user
  187.              has the option to hide the Application Options Dialog during the 
  188.              grabbing.
  189.              Added support for separate .INI files for the 16 & 32 bit versions
  190.              of FreeDock, these are called FreeDK16.ini & FreeDK32.ini.
  191.  
  192. 2.5        - Restuctured all internal data to facilitate incorporation of
  193.              sub-dock feature at a later date.
  194.              Added ability to lock the dock to stop slots accidentally being
  195.              dragged off the dock.
  196.              fixed a few bugs in the 2.5beta.
  197.  
  198. 2.5a       - Ooops, a few bugs crept into the last set of changes, these were
  199.              1) dock failed to save main options when OK clicked,
  200.              2) dragging a slot around a magnified dock didn't work properly
  201.                 (Error in size of bitmap cache)
  202.              3) Options for Exit Windows & Mail box didn't appear.
  203.  
  204.  
  205. Things still to be done
  206. =======================
  207.  
  208. 1) [Most important] Write the manual !
  209.  
  210. 2) Consider idea for having slots which are groups, this causes the associated 
  211.    icons to pop out at 90 degrees to the dock when the slot is selected.
  212.    Problems : How to add/move/remove slots in a group ?
  213.    I have tinkered around with this problem and I think that inorder to do
  214.    it properly it will probably take a while & may be best written in C++.
  215.  
  216. 3) Addability to add/remove special built-in slots in the current session, 
  217.    i.e. don't need to restart FreeDock to get built-ins to appear. 
  218.    [Not terribly important]
  219.  
  220. 4) Discover how to implement the Max View option which would allow the dock 
  221.    to control the maximising of other windows to enable it always to be
  222.    visible (if selected by user).
  223.  
  224.  
  225.