Square Rotation Program (SQROT)
Revision History
 
SQROT 5.33  (November 2018)  
is the latest version 
 SQROT Main Page  |  Online Purchase  |  Active Online Rotations     
 FAQ  |  Documentation  |  Technical Details  |  Revision History  |  Vic's To Do List 
 Download -->  Rotation Card Sets  |  Program Upgrade 
 Sample screens -->  Main  |  Dynamic  |  Tip Display by Couple  |  Tip Display by Square  |  Settings 
 Revision history -->  CSDS  |  SQROT  |  Feedback  |  add (admin)  |  view (admin) 

SQROT 5.33 was released on 26 November 2018 -- (changes shown below)

Miscellaneous:
   1) Minor changes
SQROT 5.32 was released on 22 November 2018 -- (changes shown below)

Help Database:
   1) Version changed from 2 to 3.
SQROT 5.31 was released on 16 November 2018 -- (changes shown below)

Dancer Table:
   1) Some notification messages (such as "N dancers added") are now
      non-modal, and clicking outside the notification box or otherwise 
      changing focus to another window will cause the notification box
      to close itself.

Main window:
   1) File menu:
      a) Added 'Update help database from web'.
      b) Removed 'Database Tools'.
   2) Fixed issues if no rotation database is open.
   3) Removed 'Tools' button.  Moved functionality into the grid for 
      'Select Database'.
   4) Select Database:
      a) Now contains all functionality from the removed 'Tools' button.
      b) Added option to 'Compact and Repair (Database)'.
   5) Tools menu:
      a) Removed 'Compact Database'.

Rotation window:
   1) File | New rotation:
      a) Fixed bug that creating a new rotation, the standard display always 
         defaulted to a minimal set of columns.  The set of colummns for a new
         rotation are not set to the current set of columns.
   2) Edit | Quick Update:
      a) Added Help Button (lower left).
      b) Now accepts the following types of names:
         i)   First And Last Name  (e.g., Mary Hutchinson)
         ii)  Short Name  (e.g., HUT,M)
         iii) Couple Name  (e.g., Les + Karen Hughes)
         iv)  Dancer ID preceded by an "L"  (e.g., L5)
         v)   Global ID preceded by a "G"  (e.g., G41)
   3) 'Dancer Info' popup window:
      a) Added 'ID:' and 'GID:' (if available) in upper right corner.

Tip Display:
   1) Fixed bug that if a dancer from a couple (the one assigned the girl role)
      has requested a sitout, and both dancers in the couple are sitting out,
      the 'Sitout by Request' indicator wasn't being shown.
   2) Menu 'Edit | Comment at top' now has 3 submenus:
      a) Text...
      b) Color...
      c) Font...      

Tip Generation:
   1) Fixed a couple of issues with determining forced sitouts.
SQROT 5.30 was released on 8 November 2018 -- (changes shown below)

Terminology change:
   Note: The term 'Master Database' has changed to 'Dancer Table'.
   'Database' now refers to the MDB database itself, which contains
   the Dancer Table, rotation tables, and other information.

Barcodes:
   1) Barcodes window (from main window, press the 'Barcode' button):
      a) Cosmetic changes
      b) Added tab control with 2 options:
         i)  Multiple Barcodes - to print several barcodes at once 
             to a standard printer.
         ii) Invididual Barcode - to print a single barcode to a
             (ZPL) barcode printer.
   2) Added function codes:
      a) Toggle Always Sqr N
      b) Cancel In N, Out M (i.e., Always Available)
      c) In 1, Out 1
      d) In 2, Out 1
      e) In 3, Out 1
      f) In 1, Out 2
      g) In 1, Out 3
      h) In 2, Out 2

Cards:
   1) Fixed bug that sqrot.crd had been deleted from the download folder.
      This caused new user not to be able to access the 'Cards' section.

Dancer Table:
   1) Global Database (downloadable from www.ceder.net):
      a) Added 'Tag' field.
   2) Global Database menu:
      a) Add Dancer(s) to Dancer Table:
         i) Added more columns to the selection grid.
      b) Added 'AACE - Print Barcode by AACE ID' which will download AACE 
         rotation data for a specific AACE ID, update the global database, 
         then allow printing the barcode(s) for the given dancer(s).
      c) Renamed 'Global Database - Download from Web' to 'Download from Web'.
   3) Tools menu:
      a) Import and Export to/from CSV or TSV now act upon all records and 
         fields in the Dancer Table:
         i)  'Import from CSV or TSV file', renamed from 'Import from CSV file'
         ii) 'Export to comma-separated values (CSV) file'
         iii) Added 'Export to tab-separated values (TSV) file'
   4) Edit selected dancer:
      a) If a change is made to the First Name or Last Name field,
         the Short Name field is updated accordingly.
      b) Preferences tab:  Renamed the first two lists.  Added two more.
         This section does not yet work.  Please do not use it at this time.
      c) Cosmetic changes
   5) Toolbar:
      a) Added 'Add from Global Db'.
   6) After a dancer that is in one or more rotations is edited, 
      a prompt appears whether to update this dancer's information in all rotations.

Database:
   1) Version increased from 18 to 23.

Help Database:
   1) File | Auto update from web: Fixed bugs.
   2) Cosmetic changes.
   3) Many changes to the help files themselves.  Please download the
      latest changes via the Help Database menu option: 'File | Auto
      update from web'.  Debbie is working on further enhancing the documentation.

Main Window:
   1) File menu and buttons to reflect name changes with respect
      to 'database' and 'dancer table'.
   2) Database Tools:
      a) Added 'Upload to ceder.net'.  This uploads the entire database to
         www.ceder.net for debugging purposes.
   3) File menu:
      a) Added 'Run previous version of program'.

Miscellaneous:
   1) "<" and ">" are no longer allowed as part of a dancer's name (e.g., 
      first name, last name, couple name, short name, etc.) since this messes
      up the Tip Display window, which is in HTML format.
   2) Uploaded global barcodes to the www.ceder.net online database.
      AACE dancers may now print their own barcodes and update some of their
      rotation preferences if desired.
   3) Dancer state data is now saved to the database before each tip is generated.  
      This is for future debugging purposes.

Preferences - Global:
   1) Added tab 'Scanner'
      a) Added 'Scanner terminator code' (previously on 'Miscellaneous' tab).
      b) Added 'Always On' option, to always enable the scanner.
      c) Added 'Popup fade out time', the time during which the Scanner Popup
         window will fade out and self-close.
   2) Changed background color of tab contents (from 'control' to 'window').  
   3) Tip Generation tab:
      a) Added 'Ignore In N Out M if more than X minutes' (since last tip was
         generated).  Setting this to a value such as 50 minutes makes it such
         that dancers with this attribute will be ready to dance the first tip
         of the next session.
    
Rotation window:
   1) Edit menu:
      a) Added new menu items:
         i)  Un-Optimize names
         ii) Add dancer by Global ID
      b) Print Barcode for selected dancer(s):
         i)  Renamed from 'Barcode for selected dancer'.
         ii) Can now be used if multiple dancers are selected.
      c) Added button 'Edit - in Dancer Table'.
   2) Display menu:
      a) Moved options 'All Fields', 'Default Fields', and 'Minimal Fields'
         up one level.  Renamed 'Fields' to 'Specific Fields'.
   3) Scanner Emulator:
      a) Cosmetic changes
      b) Added functions:
         i)    Toggle Always Sqr N
         ii)   Cancel In N, Out M (i.e., Always Available)
         iii)  In 1, Out 1
         iv)   In 2, Out 1
         v)    In 3, Out 1
         vi)   In 1, Out 2
         vii)  In 1, Out 3
         viii) In 2, Out 2
      c) Added access to dancers in Global Database.
   4) File menu:
      a) Added 'Scanner | How to use the Scanner - for Dancers'.  This item
         was also added to the popup menu invoked by clicking the 'Scanner'
         region on the status bar (lower right portion of Rotation window).
   5) Status bar (bottom of window):
      a) Ready and Sitout counts now take into account if dancers are In or Out
         for the next tip, dependent upon "In N, Out M".
   6) Standard Display:
      a) When a dancer is to be out next tip due to "In N, Out M", their status
         is now displayed as "Out Next" with an orange background.
   
Scanner:
   1) Scanning a barcode no longer brings up the 'Scanner trace'
      window with a history of all scans so far, but instead brings up a 
      'Last Scan' window with the scanned dancer's information
      in a large font.
   2) Scanning can now be done while the Tip Display window and a few
      other windows are active.  Barcode scans are immediately applied
      to the next tip (or the current tip if the tip is undone by the
      operator).

Tip Display:
   1) Display | Sitout by Request Text:
      a) Added option '' which causes no additional text
         to be displayed to the right of the dancer's name in the 
         square grid when the dancer requested a sitout.
   2) Fixed bug with '=== empty name ==='.  This text is no longer displayed.
   3) Popup menu invoked by clicking on a dancer name:
      a) Added 'Edit in Dancer Table'.
   4) Edit menu:
      a) Added 'Swap roles in a couple'.
   5) When first displaying tip data, program now checks to see if
      the entire contents of the page fit within the window.  If not,
      a message box appears saying "Rotation data does fit in window"
      and "Use controls in upper right to fix the issue".

Tip Generation:
   1) Error message 'Unable to generate tip - infinite loop 
      determining sitouts.':
      a) Improved the message by adding specific suggestions to correct 
         the issue.
SQROT 5.22 was released on 25 September 2018 -- (changes shown below)

Master Database:
   1) Version increased from 18 to 20.
   2) Added column: Global ID
   3) Added menu 'Global Database':
      a) Added 'Global Database - Download from Web'.
      b) Added 'Add from Global Database'.
      c) Added 'View on Web (admin)'.
   4) Tools menu:
      a) Added 'Set All Short Names to XXX,X format'.
   5) Edit Selected Dancer:
     a) Editing the First Name or the Last Name now updates 
        the Single Name accordingly.

Rotation window:
   1) Edit | Optimize names:
      a) Fixed a 'Error 9 - Index was outside the bounds of array'.
   2) Standard Display:
      a) Added field 'Short Name'.
   3) Display menu:
      a) Added 'Fields | Short Name'.

Statistics by Dancer:
   1) Double-clicking a row in the 'Tips per Dancer' grid will now
      select that dancer as the current dancer.
   2) Cosmetic changes.
   3) Tips per Dancer grid:
      a) Added column 'Last As Partner'.

Tip Display:
   1) Display | Customize...
      a) Grid:
         i) Added checkbox for 'Use Short Names'.

Tip Generation:
   1) Fixed inequity issues with determining sitouts.
   2) Fixed inequity issues with pairing up singles.
SQROT 5.21 was released on 6 August 2018 -- (changes shown below)

Barcode dialog box (for individual dancer):
   1) Invoked via the rotation window by right-clicking on a dancer
      and selecting the 'Barcode' button.  This dialog box allows a
      barcode for a dancer to be sent to either a normal or ZPL 
      (barcode) printer.  I use a Zebra GC420d label printer with
      2.5 by 1.5 inch labels.  

Remote Access:
   1) Changed timeout value from 100 seconds to 15 (or 20) seconds, so 
      that when a web-upload issue appears, the program responds
      quicker.  

Statistics by Dancer:
   1) Output to Text File:
      a) Cosmetic changes
   2) Same square in a row:
      a) Fixed bug that value was incorrect (i.e., Absent counted as 
         valid square number).
SQROT 5.20 was released on 20 July 2018 -- (changes shown below)

Barcodes:
   1) Simplified functions.
   2) Barcode function now work only upon individual dancers.  
      Each dancer must individually scan their barcode.
   3) Scanning a dancer barcode without preceding function barcode
      toggles the dancer's status between "Ready" and "Absent" 
      (previously between "Ready" and "Sitout")
   4) Fixed bugs with multiple sequential scannings of barcodes such
      as generate tip, undo last tip, view current tip, etc.
    
Database:
   1) Added field 'Short Name'.  At AACE, we will associate
      each name (e.g., "Debbie Ceder") with a shorter name (e.g.,
      "101G" or "CED,D").

Master Database:
   1) Edit menu:
      a)  Added 'Barcode for selected dancer'.
   2) Dancer popup window:
      a) Added button 'Barcode'.
   3) Loading database grid has been optimized for speed.

Main window:
   1) File | Change Master Database:
      a) Added 'Copy'.
   2) Name of master database is now shown above 'Master Database' button.

Rotation window:
   1) Scanner Emulator:
      a) Simplified functions.
      b) Cosmetic changes.
      c) Added 'View Current Tip'.
   2) 'Edit' menu split into 2 parts: 'Edit' and 'Status'.
   3) Display menu:
      a) Condensed display:
         i)  Added 'Partner name font size'.
         ii) Added 'Partner name color'.
   4) Dancer popup window:
      a) Window title is now 'Dancer Info'
      b) Removed button 'Edit Name' since 'Edit this Rotation' allows
         the name to be edited.
      c) Window background is now color-coded dependent upon status.
      d) Added button 'Barcode'.
   5) Edit menu:
      a) Added 'Barcode for selected dancer'.
      b) Removed 'Tweak sitout / absent'.
      c) Removed 'All to Sitout'.
      d) Removed 'All to Must Dance'.
   6) Join Two Dancers dialog box:
      a) Removed empty blank line from grid.
   7) Condensed Display:
      a) Increased maximum font size from 18 to 36.

Tip Display:
   1) Display menu:
      a) Added 'Combined Singles' (2 instances, one for Name grid, and
         one for Square grid).
SQROT 5.19 was released on 8 June 2018 -- (changes shown below)

Tip Display:
   1) Removed scroll bars from data display region.
   2) Fixed issue that resizing fonts (via upper right) didn't work.
SQROT 5.18 was released on 4 June 2018 -- (changes shown below)

Rotation window:
   1) Tip menu:
      a) Moved 'View current tip' to top of menu, and renamed to 'Current tip'.

Tip Display:
   1) Fixed display issues that happened on some computers:
      a) Changed margins from -12px to 0px.
      b) Removed 'overflow:auto;' from <BODY> tag.
      c) A side effect of these changes is that some computers now show a
         superfluous vertical scroll bar.
SQROT 5.17 was released on 24 May 2018 -- (changes shown below)

Main menu:
   1) System | Create shortcut:
      a) Now invokes a dialog box instead of 4 separate sub-menu items.

Miscellaneous:
   1) References to www.ceder.net changed from https to http. 

Rotation window:
   1) Condensed display:
      a) Fixed error messages generated when selecting all (Ctrl+A) then 
         changing status.
   2) Standard display:
      a) Fixed issues with 'Group by Couple' mode when multiple dancers
         are selected, and changing status.

Tip Display:
   1) Generate next tip:
      a) Fixed bug 'Object reference not set to an instance of an object'.
SQROT 5.16 was released on 1 January 2018 -- (changes shown below)

Barcodes:
  1) Added checkbox 'Use Full Names' to enable/disable 
     printing the dancer's full name (first name and last
     name from the master database) vs. the name (single name)
     from the current rotation.

Master Database:
   1) Tools | Import from CSV (or Text) file:
      a) Role (B, G, or A) can now optionally be followed by a third character:
         B if preferred role is Boy, or G is preferred role is Girl.
   2) Tools | Export to CSV file:
      a) Preferred role (B, G, or A) is now appended onto role.

Rotation window:
   1) File menu:
      a) Removed 'Remote Access | Web Page - Rotation List' as this is an
         administrator only function.

Scanner:
   1) Scanning a dancer's barcode now cycles from 'Ready' to 'Sitout' to 
      'Absent' (then back to 'Ready').
   2) Scanning barcode for 'Undo Last Tip' no longer prompts for confirmation.

Scanner Trace Window:
   1) Escape or Control+Q now closes the window.
   2) Added toolbar button:
      a) Generate Next Tip
   3) Ctrl+T will now view the current tip.
   4) Ctrl+U will now undo the current tip (after confirmation).
   5) Now active and enabled when Tip Display window is open.
      Tip Display window is no longer modal.  Barcode functions can
      now be invoked, and processed while the Tip Display window is open.
SQROT 5.15 was released on 29 December 2017 -- (changes shown below)

Barcodes:
  1) Added checkbox 'Draw Grid Lines' to enable/disable 
     drawing a grid table around the barcodes.

Main window:
  1) Added (small) button 'Change' (to change master database).
  2) Change Master Database:
     a) Added options 'Rename', 'Delete', and 'Open Database Folder'.

Rotation window:
   1) Edit menu:
      a) Quick Update: added shortcut key F5.
      b) Added menu option 'Optimize names' to remove last names 
         from dancers and couples.  Dancers with the same first 
         name will have the first letter of their last name appended 
         onto their name.

Scanner:
   1) Fixed issue that scanner was outputting superfluous "/".

Scanner Trace window:
   1) Error messsage is now output if scanned dancer is not found in
      Master Database.
   2) Clean up:
      a) 'Any, no preference' changed to 'Any'.
      b) 'partner is' changed to 'partner'.
      c) 'not partnered' changed to 'no partner'.
SQROT 5.14 was released on 28 December 2017 -- (changes shown below)

Master Database:
   1) Tools | Import from CSV (or Text) file:
      a) Role (B, G, or A) can now optionally be followed by a second character:
         Y if Ok w/Single or N if NOT Ok w/Single.
   2) Tools | Export to CSV file:
      a) Ok w/Single flag (Y or N) is now appended onto role (B, G, or A).

Preferences - Global:
   1) New Rotation tab:
      a) Removed check box 'Maximize couples together'.  This option is not
         needed, as the program always behaves this way.          

Preferences - this Rotation:
   1) Attributes frame:
      a) Removed check box Maximize couples together'.

Remote Access:
   1) Fixed bug that tip offset wasn't being used on web pages.
   2) Added (optional) password.

Tip Generation:
   1) Fixed bug that sometimes one dancer of a couple was in and the other 
      dancer was out, then for the next tip, the in dancer was out and the 
      out dancer was in. Hence the couple did not get to dance together 
      for at least two tips.  This happened when the singles are heavy with
      respect to one role, and the couple is willing to dance with singles
      and at least one of the couple is marked with role = any.
SQROT 5.13 was released on 17 December 2017 -- (changes shown below)

Barcode:
   1) Changed barcode representations.  Barcodes from a previous version 
      of SQROT will no longer work.

Main window:
   1) Added menu option:
      a) File | Change master database
         User can now change the master database.  The database must be
         in the application data folder under subfolder SQROT.
        
Bar Codes:
   1) Removed "Event Sound Files". 
   2) Function code printout is now 3 columns instead of 2.

Miscellaneous:
   1) Renamed 'Join two singles' to 'Join two dancers'.
 
Remote Access:
   1) Fixed bug uploading dancer information.
   2) If remote access is on and rotation window is closed, the
      next time rotation window is opened, a prompt appears whether
      to turn remote access on.
   3) Added 'Name Grid' and 'Square Grid' to available web pages.
   4) No longer displays the confirmation message when turned on.
   5) When on, Rotation window and Tip Display window now include the 
      following text in their title bar: 
           'remote access at https://www.ceder.net/rotation'

Rotation window:
   1) Fixed bug that condensed display wasn't retained between
      invocations.  I.e., if the rotation window was in condensed
      display mode, then closed, then re-opened, the display was 
      no longer in condensed display mode.
   2) Fixed display bug with Condensed Display.  Upon window resize, 
      the two small 'expand / collapse all' buttons for the standard 
      display grouping were visible.

Scanner:
   1) Fixed bug with scanners whose line terminator was Ctrl+J.
   2) If scanner is on and rotation window is closed, the next
      time rotation window is opened, a prompt appears whether
      to turn scanner on.
   
Scanner Trace window:
   1) Added toolbar button 'To Clipboard" to copy text to clipboard.
   2) Data for the current rotation is saved between invocations as
      long as the program hasn't been shut down.  That is, if the
      user closes the scanner trace window via the little x, it 
      doesn't lose data.

Tip Display:
   1) Added menu option 'Display | Sitout by Request Text' to allow 
      the user to change the text used to indicate a sitout by request.
   2) Fixed bug that Control key functions didn't work when scanner was on.
SQROT 5.12 was released on 9 November 2017 -- (changes shown below)

Barcode:
   1) Added barcode function  'Set All to Ready'.

Preferences - this Rotation:
   1) Added checkbox 'Display Star Tips'.

Rotation window:
   1) Added menu option 'Edit | Quick Update'.  The user can enter
      a list of single or couple names separated by semi-colons
      for each of the four statuses (ready, absent, sitout, or must dance).  
      Pressing the 'Apply' button then applies all changes at once.  This 
      option is intended to be a time saving convenience at conventions such 
      as AACE where operators are often bogged-down individually hunting and 
      pecking the ready and absent statuses from a written list.
   2) Condensed Display:
      a) Now shows partner names to the right of each name.  This feature 
         can be turned on/off via 'Display | Show partner names'.
      b) When condensed display is active, there are now controls immediately 
         to the right of the toolbar to scale font, number of columns, 
         and toggle whether partner is displayed.
   3) "Couple Name" and "Partner" are now displayed as blank if the 
      dancer's partner is not in the current rotation.
   4) Two dancers can now be selected in the grid, and the "Join Two Singles" 
      button defaults to joining those two dancers.
   5) Join Two Singles dialog box:
      a) Cosmetic changes.
      b) Added option to toggle between "Singles" and "All dancers"
         (all dancers whose role does not collide with the selected 
         dancer).  If a already-partnered dancer is selected, the 
         operator will be prompted to split them.
   6) Menu 'File | Scanner':
      a) Added 'Terminator Code'
   7) Add Dancers from Database:
      a) If user selects 'Add Dancer to Master Database', 'Add Couple by Name', or
         'Add Couple by Number', then user is now prompted whether to add the 
         newly added dancer(s) to the current rotation.
   8) Pop-up dialog box:
      a) If only one dancer is selected, and their Role = Any, then the pop-up
         box now displays buttons to change their 'Preferred Role'.
      b) Added section for 'Star Tip A' and 'Star Tip B' with buttons to set 
         status to 'Yes' or 'No'.

Scanner Emulator:
   1) Added second dancer dropdown list and 'Scan this Dancer' button.
   2) Joining two dancers will now split up their original couple(s).
   3) Added button 'Set All to Ready'.

Scanner Trace window:
   1) Made cosmetic changes to messages.

Tip Display:
   1) Added menu option 'Tip | Undo last tip'  Hot key = Ctrl+U.
SQROT 5.11 was released on 23 October 2017 -- (changes shown below)

Join Two Singles dialog box:
   1) Added role icon to immediate right of dancer's name.
   2) Replaced list with grid, and added 'Role' column.
   3) Removed both 'Clear' buttons.
   4) Window can now be vertically resized.

Rotation window:
   1) Pop-up window (right-click on grid)
      a) Fixed bug that window was sometimes partially off the screen.
      b) Window can now be moved (added title bar).
      c) Changed background color to white.
      d) Removed 'Edit - in Master Database'.
      e) Added button (upper right) "Edit Name".
   2) Toolbar:
      a) Added 'Open Tip'.
   3) The "Join Two Singles" function may now be invoked upon any dancer.
      If the dancer is already partnered, a message box allows the operator
      to split the dancer from their original partner.
SQROT 5.10 was released on 22 September 2017 -- (changes shown below)

Rotation window:
   1) Toolbar:
      a) Added 'Undo Last Tip'.
   2) Fixed bug that 'Scanner Trace Window' was popping up.
SQROT 5.09 was released on 8 September 2017 -- (changes shown below)

Barcodes | Print Barcodes | Selected Dancers from Master Database:
   1) Fixed bug that one fewer dancer than selected was being printed.

Master Database window:
   1) Added a 'List Display', analogous to the 'Condensed Display' of
      the Rotation window.
   2) Tools | Export to ...:
      a) If one or more items are selected, an additional prompt appears
         to determine if the entire database or only the selected items 
         are to be exported.

Rotation window:
   1) File | Scanner:
      a) Added 'Scanner Emulator'.
   2) Add Dancers from Database:
      a) Button "Add Selected Dancer(s) to Rotation" no longer
         closes the "Add Dancers from Database" window. 
   3) Changed popup menu (on grid) to a non-modal dialog box, automatically
      closed if option is selected or focus is changed.

Scanner:
   1) Trace Window:
      a) Upper left corner: added standard windows buttons for Min/Max and Close.
      b) Now outputs role, ok w/single, and partner info if available.
SQROT 5.08 was released on 31 July 2017 -- (changes shown below)

Rotation window:
   1) Removed less-frequently used items from toolbars.
   2) Combined the two toolbars into one toolbar.
   3) Scanner on:
      a) Fixed bug that control key combinations were not processed.  
         E.g., Ctrl+A to select all, Ctrl+G to generate next tip.
SQROT 5.07 was released on 3 June 2017 -- (changes shown below)

Remote Access:
   1) Fixed issues with non-English characters such as "ø" and "ü".

Tip Display:
   1) Edit | Swap two boys | girls:
      a) Now also allows swapping with an 'out' dancer.

Tip Generation:
   1) Fixed issues with "Always in Square N"
SQROT 5.06 was released on 25 May 2017 -- (changes shown below)

Generate Tip:
   1) Fixed issue with singles always dancing with the same dancer!

Miscellaneous:
   1) Changed all internal references to http://www.ceder.net to https:

Tools | Error Log Viewer:
   1) Now in grid format.
SQROT 5.05 was released on 27 January 2017 -- (changes shown below)

Generate Tip:
   1) Fixed issue with ANGELS and ANGELS HAVE SITOUT PRIORITY, that angels weren't sitting
      out an equal number times.
   2) Fixed major bugs... rotation generation wasn't working as designed.

Miscellaneous:
   1) Added database kludge to try to fix Kip Garvey's issue.

Preferences:
   1) Colors:
      a) Replaced 'Toolbar' with a single button.
      b) Replaced 'Grids' with a single button.
SQROT 5.04 was released on 13 November 2016 -- (changes shown below)

Cards:
   1) Fixed bug with landscape printing - page height and width incorrectly calculated.
   2) Fixed bug with printing to XPS Document Writer.

Edit - Master Database:
   1) Fixed "Error 91 - Object reference not set...", that occurred after editing a dancer, 
      if that dancer's desired partner was not in the list, either before or after the edit.

Generate Tip:
   1) Fixed issue with "PairIntoCouples Sanity Check #2"
   2) Fixed issue with "Unable to generate rotation - infinite loop in determining sitouts"

Rotation window:
   1) Fixed issues with selected dancers after dancers are added to rotation.  The newly
      added dancers and only those dancers should be selected.
SQROT 5.03 was released on 16 September 2016 -- (changes shown below)

Edit - Master Database:
   1) Added 'Preferences' tab with fields 'Preferred Partners' and 
      'Partners to Avoid'.  
      *** This is not yet used in the Tip Generation portion of the program ***

Generate Tip:
   1) Fixed bugs with square location mixing (Secondary Optimization).
   2) Fixed issue with splitting up a couple where the number of single boys 
      does not match the number of single girls, and where one or more singles has
      a role of ANY.
   3) Single dancers are no longer randomly combined.  An attempt is made
      to have them dance with the single who they least recently danced with.

Help | About Sqrot:
   1) Added button 'Open Database Folder'.

Master Database:
   1) Version increased from 15 to 16.
   2) Tools | Import from CSV File:
      a) Fixed issues caused by trailing blank fields.

Open Tip:
   1) The 'Open Tip' window can be resized (and moved to a second monitor if desired).
      The window.  The window, however upon open will always maximized on the primary 
      monitor.

Preferences - Global:
   1) Tip Generation:
      a) Limit optimization - fixed bug that a value greater than 20 seconds, reverted back
         to 180 seconds when the program restarted.

Statistics by Dancer:
   1) Added button 'Edit in Master Database'.
   2) Added field 'Same Square in a Row', the maximum number of consecutive 
      times in same square.
   3) Tips by Dancer:
      a) Added field 'Last Danced', the number of tips since the dancer danced
         with every other dancer.  
            null --> current dancer has never danced with this dancer
               0 --> current dancer danced the last tip with this dancer
               1 --> current dancer danced with this dancer 1 tip ago
               N --> current dancer danced with this dancer N tips ago
   4) Tips per Square
      a) Added field 'Last Danced', the number of tips since the dancer was 
         in each square.  
            null --> current dancer has never danced in this square
               0 --> current dancer danced the last tip in this square
               1 --> current dancer danced in this square 1 tip ago
               N --> current dancer danced in this square dancer N tips ago

Statistics Grid:
   1) Double-clicking on a row now brings up the 'Statistics by Dancer' window 
      for the selected dancer.

Tip Display
   1) Added menu item 'Tip | Regenerate last tip'.
SQROT 5.02 was released on 2 February 2016 -- (changes shown below)

Edit - in this Rotation:
   1) Paid: changed hot key from F3 to F2.

Join Two Singles:
   1) Potential partners are now shown in a listbox, instead of a dropdown list.

Generate Tip:
   1) Cleaned up code that selected sitouts for next tip.  This probably fixed
      the 'infinite loop' problem.
   2) Fixed issues with pairing dancers into couples.  Fixed bug that caused 
      invalid tip generation.
   3) Optimized dancer mixing (Primary Optimization).
   4) Optimized square location mixing (Secondary Optimization).

Miscellaneous:
   1) Added option for "In 2, Out 2".  
   2) Renamed "out every Nth tip" to "In N, Out 1".
   3) Changed 'Dancer Optimization' to 'Primary Optimization'.
   4) Changed 'Square Optimization' to 'Secondary Optimization'.

Remote Access:
   1) Fixed bugs.  Remote access should now work.

Rotation window:
   1) Condensed display:
      a) Ctrl+A now selects all
   2) Undo Current Tip:
      a) Optimized for speed.
   3) Standard Display:
      a) Removed 3 fields: Danced, Sitout, and Absent.  
         If needed, these values can be found on the Statistics Grid.
   4) Undo All Tips:
      a) Added secondary confirmation prompt.

Statistics by Dancer:
   1) Added button, upper left, for 'Statistics Grid'.
   2) Added table 'Tips per Role'.
   3) Added 'preferred role'.
   4) Tips per Dancer:
      a) Added column 'Ptr' to indicate how many times dancer was
         partnered with each dancer.

Statistics Grid:
   1) Added legend, bottom left, to explain A,R,S,P.
   2) Added in-progress window while data is loading.

Tip Display
   1) Both grids
      a) Clicking on a name now invokes a popup menu, with options:
         i)  Statistics for dancer
         ii) Edit this rotation
   2) Added menu item 'Statistics' with sub items:
      a) Statistics by Dancer
      b) Statistics Grid
SQROT 5.01 was released on 1 January 2016 -- (changes shown below)

Master Database:
   1) Added attribute "In 1, Out 3".
   2) Fixed error messages that occurred after delete followed by add or edit.

Rotation window:
   1) Added menu option:
      a) Edit | Remove all dancers who have always been absent

Statistics Grid:
   1) Added checkbox 'Show Absent Dancers'.

Tip Display
   1) Both grids
      a) Fixed issues with couples listed twice, or not listed at all.
   2) Added menu option:
      a) Display | Dancer Data
SQROT 4.04 was released on 30 March 2009 -- (changes shown below)

Dynamic:
   1) Reinstated F5 key to toggle 'Paid Status' of highlighted couple.
   2) Pop-up menu invoked by right-clicking on row:
      a) Added 'Paid'.  (only shown if paid column is visible in grid)
   3) Fixed bug that 'Status' and 'Paid' icons in grid had a white background.
   4) Edit Name dialog box:
      a) F5 now toggles 'Paid' status.   
      b) Added two checkboxes (for future use)
         i)  Boy willing to dance with single when out
         ii) Girl willing to dance with single when out
   5) 'Display' menu:
      a) Added 'Auto width'.
      b) Added 'Column position and sizes'.
      c) Added 'Grid font size'.  
      d) Added 'w/Single'.  
   6) Remove:
      a) Fixed multiple confirmation prompts when removing several names at once.               

Settings:
   1) Colors tab:
      a) Added 'Default' button.
      b) Added capability to change background colors for cells in the 
         Dynamic Rotation Names Only display.
   2) Miscellaneous tab:
      a) Added 'Monetary symbol' (for Paid status).
      
Statistics:
   1) Added row for 'w/Single'.
   2) Squares:
      a) Added small button 'Show squares (large window)'.  This opens a new
         window with the square information for the current couple.
         i) Double-clicking within text region also invokes the large window.
SQROT 4.03 was released on 18 November 2008 -- (changes shown below)

Dynamic:
   1) Initial settings changed (first time program is run)
      a) Display | Category --> true
      b) Display | Paid --> true
   2) Edit menu:
      a) Moved 'Add N couples' after 'Add new name'.
      b) Renamed 'Remove name from rotation' to 'Remove selected name(s)'.    
      
FAQ Database:
   1) File menu:
      a) Added 'Auto update from web'.
      
Manually set next tip:
   1) Fixed bug that if students or angels were placed in a square, they might
      change squares if the corresponding 'evenly distribute' flag was set.
   2) Displays category icon before the name.
   3) Fixed minor display bugs.            

Miscellaneous:
   1) Initial settings changed: (first time program is run)
      a) DynamicHotKeyEnabledFlag --> true
      b) CategoryHideFlag --> true
         
Settings:
   1) Students + Angels tab:
      a) Renamed to 'Categories' to be consistent with the rest of the program.
      
Tip Display:
   1) 'Square' display:
      a) Fixed bug that category icons were not displayed next to the correct name.
   2) Added 'Manually set next tip' to toolbar and to 'Tip' menu.
SQROT 4.02 was released on 8 November 2008 -- (changes shown below)

Dynamic:
   1) Manually set next tip:
      a) Bug fixes.
   2) Open Existing Rotation:
      a) Added column 'Comment at top'.
   3) Edit | Add (or Edit) Name:
      a) Added another 'Flag':
         i) Out every 4th tip      

List of Names:
   1) Edit:
      a) New:
         i) Added button to save current name then add another new name

Miscellaneous:
   1) Replaced all references to QPRO32.DLL with ALTQPRO.DLL.                                     

Open Tip:
   1) Dialog box can now be resized.
   
Settings:
   1) Students + Angels tab:
      a) Added checkbox for 'Hide category icons in tip display'.

Tip Display:
   1) 'Name' display:
      a) Fixed bug with retaining scaling. 
      b) Fixed intermittent bug with column sizing way too large.
   2) Upper right corner:
      a) 'weighted' is now displayed in the upper right if the tip was generated 
         using weighting (i.e., students or angels were evenly distributed).
      b) 'edited' is now displayed if tip was manually generated or operatorr 
         swapped names or squares.
   3) Added comment at top (immediately below Tip # in name and square grid).
      E.g., 'Square 1 is to the caller's left  -  3 squares across'.
      This comment can be edited, and is saved in the rotation file.     
   4) Time and date generated is now displayed time first, then date.
   5) Added toolbar buttons:
      a) Edit comment at top
      b) Swap two names
      c) Swap two squares
   6) Added 'Edit' menu:
      a) Added 'Comment at top'
      b) Added 'Swap two names'
      c) Added 'Swap two squares'
SQROT 4.01 was released on 15 September 2008 -- (changes shown below)

Dynamic:
   1) New Name:
      a) Fixed bug that button 'Save then Add Another New Name' wasn't implemented.
   2) Generate next tip:
      a) Fixed crash (Run-time error 30010: Invalid Column) that occurred if
         tip display screen was previously in a statistic display.    
   3) Grid:
      a) Now defaults to spanning available width.  I.e., columns are automatically
         resized to fit grid width.
      b) Fixed display bug that images in category field didn't have a transparent
         background.         
   4) Fixed bug that if grid is grouped, changing status on multiple names didn't
      retain the selected names.                  
   5) If display is in 'Standard mode' grouped by a column, and an attempt is
      made to change to 'Names only mode', a prompt now appears indicating 
      grouping will be cancelled.
   6) In 'Names only mode', toolbar options that apply only to 'Standard mode'
      are now disabled.
   7) Status button toolbar:
      a) Moved from (bottom) far right to immediately after add/edit toolbar.                    
         
Settings:
   1) Tip Generation tab:
      a) Enable hot key to Generate Next Tip:
         i) Removed Ctrl+A from available keys.

Tip Display:
   1) Fixed vertical scroll bar display bug with statistic display.   
   2) Name display:
      a) Pop-up menu for 'Edit Name' no longer allows a duplicate name to be 
         specified.
      b) Now uses new (XpressQuantumGrid) grid.
      c) Now displays student and angel icons.
   3) Removed menu options and toolbar buttons for 'sort by name' and 
      'sort by index'.  Grids are now always sorted by name.    
   4) Fixed bug that if Grid or Statistics display had already been
      viewed, and name was changed via popup menu in Name Display, the name
      didn't get updated in the Grid or Statistics display.   
   5) Grid display:
      a) Now uses new (XpressQuantumGrid) grid.  
      b) Right-clicking on name now invokes a pop-up menu to allow edit name
         and view statistics.            
   6) Square display:
      a) Now uses new (XpressQuantumGrid) grid.
      b) Now displays student and angel icons.        
     
Tip Generation:
   1) Fixed bugs with students and angels:  
      a) Students and angels are now evenly distributed.
      b) Students and angels are now properly mixed.
SQROT 4.00 was released on 6 August 2008 -- (changes shown below)

Cards:
   1) Cosmetic changes.
   2) Fixed display bugs with setting minimum and maximum number of couples.
   3) Fixed bug that changing number of tips via the up/down arrows
      didn't actually change the value used when printing cards.
   4) Added 'Process | Specified Couples' so that only cards for specific
      couples will be printed.  For example, if card #6 was lost, you can
      now just print card #6 by specifying a '6' in this field.         

Dynamic:
   1) Undo Current Tip:
      a) Fixed bug that confirmation dialog box displayed the wrong tip 
         number if the tip offset was non-zero.
      b) Cosmetic changes to confirmation dialog box.
   2) Delete a square from a tip:
      a) Cosmetic changes.
   3) Open Tip:
      a) Pop-up menu (invoked by right-clicking within the window) now
         allows caption position to be changed (top, center, bottom).
   4) Removed hot keys:
      a) M for manual set tip.
      b) P for print.
   5) Edit | Import names from a list:
      a) If dance hasn't been named, the dance name is set to the description 
         of the selected list.
   6) Tip | Tweak tip offset:
      a) Now allows negative tip offsets.
   7) Fixed bug that 'students are evenly distributed' flag was ignored
      for first tip.
   8) Open Existing Rotation:
      a) Major rewrite.
   9) Edit box:
      a) Added new fields:
         i)  Role
         ii) Notes              
   10) Grid:
       a) Added new fields:
          i)  Role
          ii) Notes                   
   11) Replaced 'Student' field with 'Category' field.
   12) Toolbar:
       a) Removed 'Report...' button.
       b) Added 'Output to...' button.      
       c) Added 'Grid columns' button.
   13) Menu:
       a) Removed 'File | Report...'.
       b) Removed 'Edit | Cycle status of current name (Ctrl+C)'.
   14) Manually set next tip
       a) Many changes.
       b) This section is now accessible.  Previous versions of the program
          had this section disabled.  
   15) Pop-up menu: (invoked by right-clicking within grid)
       a) Added 'Remove'.
       b) Added 'Statistics'.
   16) Grid now allows selection of multiple rows.  When multiple rows are
       selected, the following functions are available:
       a) Ready
       b) Sitout
       c) Absent
       d) Must Dance         
   17) Names only grid
       a) Major rewrite.
       b) Removed user-specified 'number of columns' and 'sort by'.
          (grid is auto-sized, and always sorted by name)
       c) Added role.
       d) Now allows multi-select.  
   18) Double-click on name now does an' edit name' instead of 'cycle status'.
   19) Removed edit fields and added an edit button to invoke a dialog box
       with those fields.
       a) Editor now allows reset.
       b) Now checks for empty or duplicate name.                                                                                        

Help menu:
   1) Added 'FAQ Database'.
   2) Added 'Alan Jackson's User Manual'.
   3) Added 'Pam Clasper's AACE Handout'.
    
List of Names:
   1) Edit:
      a) Major rewrite.
      b) Export:
         i)  Now also exports the description.
         ii) Now also exports role and notes for each name.
      c) Import:
         i)  Now reads the description.
         ii) Now reads role and notes for each name.
      d) Replaced save and cancel buttons with a single close button.
      e) Added large toolbar with several new functions.
   
Main Window:
   1) Added menu options:
      a) File | Create shortcut | on Desktop.
      b) File | Create shortcut | on Start Menu.
      c) Tools | Registry | Export.      
      d) Tools | Registry | Import.      
      e) Tools | Registry | Clear.      
      
Miscellaneous:
   1) Program name changed from 'Couple Rotation Program' to 'Square Rotation
      Program'.
   2) Windows behave better when saving their size and location between
      invocations (e.g., the Dynamic window previously re-centered itself).
   3) Tip Display, Manually Set Next Tip, and Select Dynamic Rotation
      windows now save their size and location between invocations.
   4) Now uses system registry instead of INI file for saved settings.
   5) Renamed the 'About' button to 'Help', which now invokes a pop-up menu.          
            
Print Rotation:
   1) Headers... (Tip Headers):
      a) Now uses new (XpressQuantumGrid) grid.
                  
Settings:
   1) Added 'Colors' tab.
      a) Added change colors for new (XpressQuantumGrid) grids.
   2) Added 'Folders' tab.   
   3) Added icons to tab headers.
   4) Tip Generation tab:
      a) Enable hot key to Generate Next Tip:
         i)  The selected hot key now also works in the Dynamic Rotation window
             (as well as in the Tip Display window).
         ii) Removed Ctrl+N, Ctrl+O, Ctrl+T, and Ctrl+U from available keys.
   5) Miscellaneous tab:
      a) Added 'Date format (in grid)' to control how dates are displayed in
         the new (XpressQuantumGrid) grids.
   6) Now retains the selected tab between invocations.
   7) Added 'Students + Angels' tab.
      a) Added checkbox 'Angels have sitout priority'.
         'Angels' will be selected for sitouts prior to non-'Angels'.  
         When checked, 'Angels' only dance if needed to fill a square.
      b) Added checkbox 'Angels evenly distributed'.
         'Angels' will be evenly distributed amongst the squares.
   8) The following settings are now saved per dynamic rotation:
      a) StudentsMustDanceFlag
      b) StudentsEvenDistributionFlag
      c) AngelsWillSitoutFlag
      d) AngelsEvenDistributionFlag
      e) SetFourCouplesOutFlag
      f) LimitSquaresFlag
      g)LimitSquaresVal                                                            
      
Select list of names:
   1) Cosmetic changes.
   2) Added toolbar.
   3) Now uses new (XpressQuantumGrid) grid.               

Statistics:
   1) Cosmetic changes.
   2) Added new fields:
      a) Role 
      b) Tag
      c) Notes
      d) Flags
      
Tip Display:
   1) Couple display:
      a) When protected mode is off, right-clicking on a name allows
         the name to be edited.
   2) Toobar and menu:
      a) Added 'Next tip is OPEN' (dynamic mode only).
   3) Moved time of day from top right to bottom right.
   4) Popup menu during 'Name' display:
      a) Added 'Statistics'.
SQROT 3.81 was released on 14 October 2007 -- (changes shown below)

Dynamic:
   1) Tip menu:
      a) Moved all items under 'Advanced' up one level and deleted the 
         'Advanced' menu. 
   2) Edit menu:
      a) Add N Couples:
         i) Added field for 'Start couple number'.           
   
Miscellaneous:
   1) Fixed bug that icon for sqrot.exe was incorrect (when viewed by File Explorer).

Open Tip:
   1) Pressing the Enter key now invokes the 'OK' button.
   
Tip Display:
   1) Date and time when tip was generated is now displayed
      at bottom of window, to the immediate left of the 
      'This tip was generated N minutes ago' label.
   2) Fixed bug that the program might crash if F11 or F12 was held down for
      an extended period of time.
SQROT 3.80 was released on 17 June 2007 -- (changes shown below)

Cards:
   1) Printer frame:
      a) Added dropdown list to select 'Pagesize'. 
    
Dynamic:
   1) Fixed bug that the 'Statistics' button was sometimes improperly 
      disabled or enabled.
   2) Couple names only grid:
      a) Added 'Sort by' dropdown list to sort by couple name or index.      

Miscellaneous:
   1) Replaced 'spin32.ocx' (SpinButton control) with 'UpDown' control.
   2) Added 'tabctl32.ocx' (SSTab control).
   3) Edit Dance Name (via Static or Dynamic):
      a) Added 'Reset' button.

Open Tip:
   1) User is now prompted for caption prior to opening window. 
   2) Pop-up menu:
      i) Added option 'Edit caption'.
      
Settings:
   1) Added two tabs:  'Tip Generation' and 'Miscellaneous'.
   2) Miscellaneous tab:
      a) Added 'Output files' folder.
SQROT 3.74 was released on 5 January 2007 -- (changes shown below)

Miscellaneous
   1) User info file is handled differently during program upgrade.
SQROT 3.73 was released on 1 August 2006 -- (changes shown below)

Dynamic:
   1) Immediately below the dance header (top center) is a small label that
      contained the phrase 'Four couples sitout if even squares' or
      '<N> square limit'.  This label has been changed to display all settings
      (other than 'Enable hot key...') that are set.   Double-clicking on 
      this label now invokes the 'Settings...' dialog box.
   2) Couple names only display:
      a) Maximum number of columns changed from 20 to 30.  
      b) Fixed display bugs.  For example, when returning from the Tip
         Display, sitouts were not displayed as ready.
   3) Standard display:        
      a) Added column for 'Index'.  This column is initially hidden. 
   4) 'Display' menu:
      a) Re-ordered items to match order in standard display.
      b) Added 'Index'.        
   5) Toolbar:
      a) Added button for 'Report...', which creates a text file or MS Excel
         file with all data in the standard display.        

Settings:
   1) Added 'Default Couple Name Format'.
   
Tip Display:
   1) Font, Color, and Scaling:
      a) Fixed bug that clicking on 'Color 2' initialized the resultant
         dialog box with the values for 'Color 1'.
   2) 'Autoscale' button:
      a) Fixed bug that if no couple name was longer in length than the
         word 'Couple', the 'Couple' header was truncated.
   3) Added menu item 'Display | Autoscale'.
SQROT 3.72 was released on 18 March 2006 -- (changes shown below)

Dynamic:
   1) Edit | Import couple names from a list:
      a) Now also process files with lines delimited by 
         LineFeeds only (instead of CarriageReturn+LineFeed).  
      b) Fixed bug that adding couples to a dance via 'Edit | Import couple
         names from a list' after the dance has already started
         (i.e., number of tips > 0), had the added couples marked as 
         dancing all tips so far, but in square #0.  Added couples are now 
         marked as absent for all tips so far.
  2) Student checkbox may now be toggled by pressing the 'U' key.   
  3) Student help button:
     a) Message text re-written.
     b) Changed reponse from 'OK' to 'Yes / No'.  Selecting 'Yes' invokes
        the 'Settings' dialog box. 
  4) Fixed infinite loop bug (program hangs) in generating next tip when
     several couples are marked as 'Must Dance', and there are also several 
     'Student' couples. 
  5) Tip | Advanced:
     a) Added 'Tweak tip offset'.  This allows specification of a number to 
        be added to the displayed tip number.  The specified number must be 
        a non-negative integer.
     b) Added 'Delete a tip'.  This allows a previously generated tip to
        be deleted.
     c) Added 'Delete a square from a tip'.  This allows a selected square 
        to be deleted from a previously generated tip.  Couples from the
        deleted square can be individually marked as either 'Sitout' or
        'Absent' for that tip.            
         
List of Names:
   1) Edit
      a) The prompt received after pressing the 'Cancel' button has been 
         reworded from 'Cancel edits made to this list?' to 'Save edits made 
         to this list?'.
      b) Import:
         i) Now also process files with lines delimited by
            LineFeeds only (instead of CarriageReturn+LineFeed).
            
Settings:
   1) Added check box entitled 'Students evenly distributed'.  When checked, 
      couples marked as 'Students' will be evenly distributed amongst the 
      squares.  (note: this was previously the default program behaviour)
SQROT 3.71 was released on 3 February 2006 -- (changes shown below)

Dynamic:
   1) Tip | Undo all tips:
      a) The value for check box "Set all couples to 'Absent'" is now
         retained between invocations. 
   2) The size and location of the (Dynamic) window is now retained after 
      entering then exiting the 'Tip Display' window.         
   
Open Tip:
   1) Pop-up menu invoked by right-clicking the mouse:
      a) Added 'Clear background picture'.
      b) Added "Show 'Open Tip' bubble".

Settings:
   1) Added check box entitled 'Students must dance each tip'.  When checked, 
      couples marked as 'Students' will be treated as 'Must Dance' whenever 
      they are marked as 'Ready'.
SQROT 3.70 was released on 2 September 2005 -- (changes shown below)

Dynamic:
   1) Status bar (bottom of window)
      a) Increased width of Time field.
      b) Clicking on Time field now invokes the 'Date and Time Properties'
         dialog box, allowing the Windows date and/or time to be changed.
   2) Window size and location is now retained between invocations.
   3) Fixed bugs with 'Optimization' (in progress) dialog box.
   4) Tip | Undo current tip:
      a) Fixed bug that tab button needed to be pressed twice to select 
         the 'Yes' button.      
   5) If even squares and if 'four couples sitout' is enabled:
      a) If 1 to 4 couples are marked to sitout, the warning prompt is 
         no longer displayed.
      b) Fixed bug that if 4 couples were marked to sitout, the program
         selected 4 additional couples (a total of 8) to sitout.  
   6) If the standard grid is sorted by 'Couple', then whenever a couple
      name is changed, the grid is now automatically re-sorted.
   7) Added new grid columns (described below under 'Added menu options'):
      a) Tag
      b) Flags        
   8) Added menu options:
      a) Edit | Tweak absent / sitout.  This allows the operator to change 
         the number of tips absent and sitout for a given couple.  Useful 
         for when a couple sat out a tip because the operator forgot to 
         change their status from 'Absent' to 'Ready'.  This option has 
         also been added to the context-sensitive pop-up menu.
      b) Display | Flags.  When checked, the 'Flags' field is displayed
         in the standard grid.  This field displays attributes such as: 
         i)   'Square 1'      -- couple will always be in square #1.
         ii)  'Out every 2nd' -- couple will be out every 2nd tip.                 
         iii) 'Out every 3rd' -- couple will be out every 3rd tip.      
         In addition, a frame is displayed in the lower right portion
         of the window with 3 checkboxes:
         i)   'Always in square 1'.  When checked, the couple will always
              be in square 1.  This is useful for dance leaders (tape
              group leaders, dance organizers, etc.) who need to always
              be in the front square.  ONLY ONE (ACTIVE) COUPLE MAY BE 
              MARKED WITH THIS ATTRIBUTE.
         ii)  'Out every 2nd tip'.  When checked, the couple will not be
              in 2 tips in a row.
         iii) 'Out every 3rd tip'.  When checked, the couple will not be
              in 3 tips in a row.
      c) Display | Tag.  When checked, the 'Tag' field is displayed
         in the standard grid.  This field may be used by the operator
         for any purpose.  For example, the 'Tag' field may contain the 
         couple's highest dance level, or a character indicating that the 
         couple wishes to dance the star tips.                                                     
   9) Added small help button to the left of the student icon.  Pressing
      this button displays an explanation of a 'student'.
  10) Disabled the 'Manually Set Next Tip' option.                                       

List of Names:
   1) Cosmetic changes.
   2) Removed the 'View' button since this functionality can be done via
      the 'Edit' button.      

Main Window:
   1) Window size and location is now retained between invocations.
       
Miscellaneous:
   1) Lots of internal code clean up.
   
Open Tip:
   1) Right-clicking the mouse within the window now invokes a popup menu 
      with option 'Set background picture...'.  This allows a background 
      picture to be displayed in the open tip window.
      
Settings:
   1) Cosmetic changes.

Static:
   1) Cosmetic changes.
      
Statistics:
   1) Cosmetic changes.
   2) Fixed coloring bug in 'Square configuration(s)'.

Tip Display:
   1) Font, Color, and Scaling:
      a) Now displays the font name, size, bold and italic attributes
         beneath the sample font.
      b) Now shows the RGB (red, green, blue) intensity values beneath the 
         two color fields.
      c) Removed the checkbox entitled 'Enable font, color, and scaling',
         since font, color, and scaling are now always enabled.
      d) Pattern frame:
         i) Added 'None  (color=white)' to disable color coding.         
   2) Added toolbar button:
      a) Autoscale.  This button is enabled only during the 'Couple' display.  
         When pressed, the program automatically scales the fontsize to 
         the largest possible font which still displays all couple names 
         in the visible portion of the grid.
SQROT 3.63 was released on 25 June 2005 -- (changes shown below)

Cards:
   1) Fixed bug that checkbox 'Print first page only' was not displayed
      when both the 'Printer' and 'Text file' boxes were checked.

Dynamic:
   1) Cosmetic changes.
      a) 'Add' button: added hotkey Ctrl+A.
      b) 'Remove' button: added hotkey Ctrl+R.
      c) 'Statistics' button: added hotkey Ctrl+S.      
      d) Tweaked the 'Add' and 'Student' icons.  
   2) Removed the dropdown list for 'Status'.
   3) Status buttons now have captions.      

Main Window:
   1) Fixed display bug that the check mark on menu item 'Help | Show Hints'
      was not cleared when the hints sub-window was closed via its
      'close' button.       
   
Statistics:
   1) Cosmetic changes.
   2) Couple / N Tips table:
      a) Removed horizontal scroll bar when initially displayed.
      b) Left-justified the 'Couple' column.
   3) Square configuration(s):
      a) Fixed bug that only the first couple name in each square was
         shown in blue.
SQROT 3.62 was released on 12 June 2005 -- (changes shown below)

About:
   1) The address + phone number field can now be copied to the clipboard
      via a mouse select then copy (Ctrl+C).

Cards:
   1) Fixed bug that printing in Landscape didn't work.
   2) Changed window caption from 'Print Cards' to 'Cards'.
   3) Removed the 'Properties' button.
   4) Right-justified the 'Close' button.
   5) Added 'Printer Orientation' frame for selection of portrait or landscape.
   6) Now saves values between invocations:
      a) Printer Orientation.
      b) Min Couples.
      c) Max Couples.
      d) Number of Tips.

Dynamic:
   1) Changed icon for 'Open Tip'.
   2) Changed icon for 'View Current Tip'
   
Main Window:
   1) The program revision section now shows the Month and Year.
   
Tip Display:
   1) Font, Color, and Scaling:
      a) Color dialog box for 'Color 1' and 'Color 2' is now displayed
         in full mode, allowing selection of any color.
SQROT 3.61 was released on 12 January 2005 -- (changes shown below)

Dynamic:
  1) Fixed bug that minimizing the Dynamic window  made it very difficult 
     to restore the SQROT program via the Windows Taskbar.
     
Main Window:
   1) The main window is now resizable, and can be minimized and
      maximized.
   2) Hints:
      a) Fixed right-margin bug that caused the vertical scroll bar
         to be on top of some text.
SQROT 3.60 was released on 15 December 2004 -- (changes shown below)

Dynamic:
   1) Renamed menu options:
      a) Old = Edit | Add couple names from list
         New = Edit | Import couple names from a list
      b) Old = Edit | Save couple names to list
         New = Edit | Import couple names to a list  
   2) By default, new dynamic rotations now use the saved default 
      font, color, and scaling for the Couple 'Tip Display'.
   3) Added a 'warning' label immediately under the dance name
      that indicates if 'Four couples sitout if even squares' or
      'Limited to N squares'.      
   4) Right-clicking on the list now displays a popup menu that 
      allows the 'Status' of the clicked item to be changed.      
   
Edit Session Headers (via Print Rotation | Headers):
   1) Many cosmetic changes and bug fixes.
   
Miscellaneous:
   1) Increased maximum number of couples from 200 to 300.
   2) Increased maximum number of tips from 99 to 500.
   3) System registry (install section) is now purged of 
      old SQROT releases whenever the SQROT version changes.
   4) Copy-protection scheme added (same as CSDS) so upgrades 
      can be placed on the web without worry of piracy.
   5) No longer requires library CSLIST32.OCX.      
      
Main menu:
   1) Added 'File | Enter user key'.            

Settings:
   1) Added option to 'Limit number of squares'.  When checked, the 
      number of squares is limited to a selected number.  Useful for 
      when the hall only holds N squares, but there are more than 
      N squares of dancers.  (Applies to Dynamic and Static rotations)   
   
Static:
   1) Fixed bug that after creating a new rotation, the dance name 
      was always "txtDanceName".
   2) Major overhaul in user-interface.  
      a) Right-side buttons removed.
      b) Menu added.
      c) Toolbar added.
      d) Add 'Settings...' to menu and toolbar.            
   3) Added a 'warning' label immediately under the dance name
      that indicates if 'Four couples sitout if even squares' or
      'Limited to N squares'.
   4) Edit | List of couple names | Import list of names:
      a) Added prompt 'Clear the list before importing names?'.
      b) Now displays a message box indicating the number of names
         imported.          
      
Tip Display:
   1) Font, Color, and Scaling dialog box:
      a) Changes made within this dialog box are now immediately
         shown in the underlying 'Tip Display' window.
      b) When the 'Enable font, color, and scaling' checkbox is
         not checked, most other controls on the window are now hidden.
      c) Removed the 'Apply' button.
      d) Added a 'Reset' button.
      e) Added radio buttons, 'Square' and 'Sqr', to set the header 
         for the 'Square #' column.           
   2) Fixed bug that generating the next tip sometimes didn't update 
      the display with the newly-generated tip.
   3) When generating the next tip, the screen no longer flashes back 
      to the 'Dynamic' window while the tip is generated.
SQROT 3.51 was released on 27 September 2004 -- (changes shown below)

Dynamic:
   1) Display changes:
      a) "Next tip # is XX"
         i)   panel size now fits the caption.
         ii)  color changed.
         iii) panel has a double-border. 
      b) Status bar:
         i)   slightly taller.        
         ii)  icons better sized.
      c) Student checkbox:
         i)   added an icon.         
         
List of Names:
   1) Bug fix: pressing the 'Delete' button followed by selecting 'No'
      caused a runtime error 5.
     
Static:
   1) Slightly changed captions on buttons.
SQROT 3.50 was released on 18 September 2004 -- (changes shown below)

Miscellaneous:
   1) Converted all buttons to use a new ActiveX control, ButtonVdc.ocx.  
      This was done to remove all references to cscmd32.ocx,
      which was causing problems under Windows XP Service Pack 2.  
      There should be little or no change in how the buttons look, act, or feel.
SQROT 3.40 was released on 19 October 2003 -- (changes shown below)

Dynamic:
   1) Moved 'View Current Tip' menu item and toolbar button before the
      corresponding 'Generate Next Tip' item or button.
   2) This window may now be minimized.
   3) Added toolbar button for 'Undo all tips'.
   4) Added a 'Student' status field.  This causes the program to 
      more or less equalize the number of student couples per square.  
      The program behaves as follows for each tip:
         A rotation is generated normally;
         Some couples are swapped so that the number of student couples 
         per square is more or less equal;
         The student couples are set to 'fixed' status;
         The rotation is re-generated.

Miscellaneous:
   1) Internal code clean-up and minor display changes.
   2) No longer requires libraries CSCLOK32.OCX and CSHT32.OCX.

Tip Display:
   1) This window may now be minimized.
   2) Added toolbar buttons for
      a) Sort by Name
      b) Sort by Index
SQROT 3.35 was released on 1 February 2003 -- (changes shown below)

Tip Display:
   1) The 'Couple' display and 'Square' display now have a line at the bottom
      of the screen indicating the number of minutes since the tip was generated.

SQROT versions 3.34 and 3.35 are the same!
SQROT 3.33 was released on 20 June 2002 -- (changes shown below)

Dynamic:
   1) Fixed display bug in toolbar with 'File Open'.  The background was green
      on some computers.
SQROT 3.31 was released on 10 June 2002 -- (changes shown below)

Dynamic:
   1) Added menu option 'Tip | Undo all tips'.
SQROT 3.30 was released on 1 June 2002 -- (changes shown below)

Dynamic:
   1) Added a 'History List' to save the last 4 dances.
   2) Added menu option 'Edit | Add N Couples' to quickly add many couples at once.
   3) Fixed bug in that sitout and must dance requests were not reset if 'Generate
      Next Tip' was selected from the 'Tip Display'.
   4) The 'Optimization' in-progress box now displays the elapsed time.

Miscellaneous
   1) User-interface overhaul, primarily the 'Dynamic' and 'Tip Display' windows.
   2) Added 'Hints' to the main window.
SQROT 3.20 was released on 8 July 2001 -- (changes shown below)

Main screen:
   1) Removed the confirmation message for 'Exit program'.
   2) Ctrl+Q now exits the program.
			
Dynamic:
   1) Added toolbar-style buttons to change the status of the current couple.
   2) Added a new grid display, the 'Couple names only'.  This grid displays
      all the couples in the rotation, with the names color coded as a way
      to quickly see the status of each couple.
   3) Renamed menu header 'View' to 'Display'.  
   4) Added two menu items to the 'Display' menu:
      a) Standard display
      b) Couple names only
   5) Added command for 'Next tip OPEN'.
   6) Renamed menu items under 'Tip'.
   7) Fixed problem with PgUp and PgDn in that grid was not scrolling to 
      the currently highlighted couple.	 		 
			
Tip Display:
   1) Added 'Color Pattern' to set the color fill pattern (i.e., line, column, or checker).
   2) Replaced 'Couple name' with 'Couple' in headers.
SQROT 3.10 was released on 1 June 2001 -- (changes shown below)

Tip Display:
   1) Added 'Display | Font and Scaling...' to allow the user to control the font size, 
      font name, colors, and number of columns used in the 'Couple' tip display.  The
      display information is saved in the rotation file, so different rotations can 
      have different displays.

https://www.ceder.net/revision_history/view.php?ProgramId=2
14-December-2018 22:25:54
Copyright © Vic Ceder.  All Rights Reserved.