README for Desktop release 20000826
------------------------------------------------------------------------------
 
What's new in this build: ----------------------------------------------------
*  New logos in authors dialog
*  Fixed View as Text bug
*  Applications group
*  Added a trashcan and applications icon to the skeleton DESKTOP.INF
*  Close button can now close window
*  Desktop icons

What was new in the last build: ----------------------------------------------
*  Ability to change the colour of or hide dialog title underbars
*  Splash screen over windows removed
*  Some bugfixes

Notes on new features: -------------------------------------------------------

This release is going to be the last major release for a considerable time -
around a year, give or take a few months.  There'll probably be the odd
bug-fix release here and there though - I intend to make this Desktop as
stable as possible.

I've added the FreeGEM logo to the Authors dialog box, on the GPL page of
the scroller.  Although the Desktop is called the FreeGEM Desktop, it runs
fine on GEM/3 - it'll even run on GEM/2 if you put up with the odd 'Illegal
Function #' alert due to GEM/3's 'Drop Menus On Click' feature.  I think
it'll work on GEM/1 if you're really desperate.

This release sees a number of little bugfixes, with the most important being
the 'Show As Text' feature.  For some reason, the fix Ken included in his
releases and had sent me never made it into my build tree, although I'd
commented that it had.  Odd.  Anyway, it no longer crashes when you switch
to text mode with the 'Fit to Window' option on.

I've reimplemented an Application group, in the same manner as my 1005 public
beta release.  By changing to drive #:, Desktop will list all applications.
This can be done using a Shortcut or a disk drive icon.  Icon #8 is a program
group icon. Originally, I had this rigged so it would store a 'friendly' label
for each application, and would only show applications you specified.
However, due to space constraints I removed this functionality - only by
disabling the Send To menu and the icon colouring would it fit.  I personally
find those features more useful, but if anyone wants to implement a better
group:
  * Add a field to the ANODE structure in DESKAPP.H to store the name.
  * Add code to save/restore the names in DESKAPP.C.
  * Change the pn_desktop() routine in DESKFPD.C to copy that name in
      instead of the pa->a_pappl string.
  * Add a field and associated code to ADINSAP/ins_app() in DESKINS.C.

The Preferences dialog now has an extra icons page, to spread some settings
out and make way for a new one.  The DESKTOP.INF skeleton used when repairing
a corrupt file now contains an icon for the Trashcan and the Applications
group.

But the biggest new feature in this release finally brings us back to curing
the damage done by the Apple lawsuit.  Drive icons, shortcuts, the trashcan
and the application group icon now appear on the desktop.  There wasn't space
to reimplement the auto-arrange feature found in GEM/1, but you can drag the
icons about on the desktop as you see fit.  Double-clicking an icon (or just
single-clicking and selecting File->Open) opens a new window to that icon -
however, as this uses the same code as the New Window/Close Window options,
it can occasionally crash.  Don't use them too freqeuntly in one session.
If a window is at the Disk Drives: view, clicking the close button will also
close the window again.

All usual caveats apply to this release.  The code may contain bugs, warts or
any other "features", and is supplied AS IS with no assurances, either
explicit or implied, of particular fitness for purpose.  I'd be grateful for
any suggestions, comments or bug reports you may have.

Ben A L Jemmett
(ben.jemmett@ukonline.co.uk)
26th August, 2000.
------------------------------------------------------------------------------

New features from older builds:-----------------------------------------------
*  Integration of Ken's multiple window support and info line code.
*  Window menu.
*  Selection of icon wrap to screen or window.
*  3D dialogs - try it under John Elliott's AES!
*  Shortcuts - links to commonly used directories.
*  Trashcan and trashcan info.
*  The Info... box returns the description string of a new AES (at the moment,
     just John Elliott's Pacific C version).
*  Colour support for modern AESes (again, restricted to John's version until
     someone writes another one that returns the same X_BUF_V1 structure from
     appl_init() )
*  Redesigned Authors dialog and rebuilt resource tree (for some reason
     RCS.APP started including hundreds of useless tree and object #defines,
     so Desktop kept crashing when new trees were added...)
*  Worked around bug that caused extra line in DESKTOP.INF and 'out of
     applications' error.
*  Fixed radio buttons in Install Disk Drives dialog.
*  Disk drive autodetection.
*  Win95-aware startup code tries to set the window title if running under
     the GUI.
*  Moved authors dialog about slightly.
*  Splash screen now displays while loading under John's AES - not sure if
     the bug was with the AES or Desktop, as it worked fine under DRI AESes,
     but only displayed after running through app_start() on new ones.
*  Load status is displayed in the splash screen - added just in case slow
     drives are present or something causes Desktop to pause briefly while
     detecting disks.
*  Moved every string used by DESKTOP.APP into DESKTOP.RSC (except some paths
     (:\*.*, \*.*, *.*), the window title and the copyright information in
     the binary itself).  This is meant to help with any future attempts at
     i18n.
*  New source files (DESKCDS.C, .H) containing CD/DVD support code.
*  Shortcut deletion
*  Send To menu
*  New icon set
*  Tabbed preferences dialog
*  Folder renaming
*  GEM/XM resources merged
*  Icon colouring
*  FreeGEM specific settings removed
*  CD-ROM/Network detection now works
*  Trashcans in every window
*  Y2K fix


KNOWN BUGS IN THIS RELEASE (20000311)
-------------------------------------

*  Problems with the 'Close Window' option - for some obscure reason,
probably to do with resource allocation and deallocation, using this
too many times crashes the system.  On my machine I can open/close a
window four times until a crash, which leads me to believe it's got
something to do with NUM_WNODES and the global G structure.  On a
related subject, Ken Mauro and various others have noticed a bug with
new Desktops and Desktop 1.2 running under GEM/3.  If four windows
have been allocated, dialogs no longer respond to mouse click.  A
workaround for the Desktop was to include a >=150ms delay before
calling form_do(), but other applications will suffer from the problem.
( Current workaround:  #define SAFE in DESKWIN.H )


VERSION HISTORY
---------------

This file contains a history of each build of my Desktop.
More detailed information about each build may be available
in the README.TXT files in the source distribution.

Build: 20000826
Comments: Trimmed code down a lot - removed colour changes, easter
  egg, unused routines and variables.  Added applications view on
  drive '#', although full program group functionality made the
  executable too large.  Fixed View As Text bug.  Put drive icons
  back on the desktop.  Close button closes window.

Build: 20000422
Comments: Added option to change colour of or hide title underbars.
  Added extensible tree scanning/modification code for above - see
  DESKCLRS.C.  Some work on window open/close code - now cascades
  opened windows by default, but still doesn't like closing them.

Build: 20000311
Comments: Added icon colouring.  Removed 'Set colours' and
  replaced with SETTINGS.APP call.  Fixed CD/Net detection code.
  Added option to place trashcan in every window.  Y2K fixes.

Build: 19991223
Comments: Rebuild from 19990831.  Obviously, 0928/1005's Quality
  Control procedure was somewhat akin to Rentokil's pest control
  (Look!  Quality!  Kill it!)...  Added shortcut deletion and
  folder renaming - use the same options you would for files.
  Added the Send To menu.  Also integrated the GEM/XM and FreeGEM
  resource files and some code (most of it won't work under
  FreeGEM so don't switch modes yet).  Tabbed properties redone.
  Some delinting of source - HC seems quieter now :)  Adjusted
  some .RSCs.

Build: 19991005
Comments:  First public outing of the tabbed dialog.  Added the
   Installed Applications window.

Build: 19990928 (Non-public - basically, I sent it to Ken :) )
Comments:  Completed tabbed dialog for preferences.  Added the
   compatability options to skip drive detection.  Added the
   DESKTOP.INF repair function.

Build: 19990914 (Only released as patch to gem-dev@egroups.com)
Comments:  Now opens a window if none open in DESKTOP.INF.

Build: 19990831
Comments:  Set 'Radio Button' flags correctly in the ADINSDSK
   (Install Disk Drive) dialog box.  Worked around bug that
   caused extra lines in DESKTOP.INF and out of applications
   errors. Added drive autodetection code.  Added Win95 title
   change.  Fixed splash screen, and added load status code to
   splash screen.  Some changes to help i18n.  Added source
   files DESKCDS.[CH].

Build: 19990805
Comments:  For Deltasoft site update.  Checked everything.
   Panicked.  Recreated resources.  Panicked.  Reverted to
   older version.  Panicked.  Found old DESKTOP.APP in path
   being executed in preference to new code.  Bashed head
   against keyboard.  Packaged for upload.

Build: 19990723
Comments:  Uncommented Trashcan support and got it working -
   thanks Ken for the app_alloc() tip!

Build: 19990722
Comments:  Added Shortcut Info... dialog, fixed bug causing
   crash when do_bldall() called with closed windows in the
   G.g_wlist[].  Added New Shortcut... option.

Build: 19990721
Comments:  Added CD/Net icon support.  Began shortcut support.

Build: 19990715
Comments:  Added Window menu and 3D dialogs.  Incorporated
   Ken's multiple window support and reimplementation of
   Info lines.  Altered the copyright information in
   DESKSTAR.A86 to reflect the GPL.

Build: 19990522
Comments:  Added colour scheme support to Desktop and the
   DESKTOP.INF file.  Added support for newer AESes and the
   'Running under: ' line in the Info... dialog.

Build: 19990519
Comments:  Fixed the icon display in the Authors dialog box.
   Added the 'Save Desktop on exit' feature.  Corrupted the
   'ICONS' subdirectory... oops.

Build: 19990503
Comments:  Reimplemented the easter egg.  Added the Authors
   dialog box.
             
