---------------------------------------------------------------------03/08/2007
CommonNotes.swp                   Written by Leonard Kikstra,
                                  Copyright 2003-2007, Leonard Kikstra
                                  Downloaded from Lenny's SolidWorks Resources
                                       at http://www.lennyworks.com/solidworks
-------------------------------------------------------------------------------

INTRODUCTION:
CommonNotes is a highly configurable, user customizable, SolidWorks macro that 
provides a quick and consistent method for adding common/standardized notes to 
a SolidWorks drawing. Macro options and common/standardized notes are read from 
an external data file.  (If the external data file is not found, the user will 
be warned, and the default notes and settings, stored in the macro, will be 
used.)  See OPTIONS below for a list of configurable options that can be added 
to the data file.

The note groups and common/standardized notes are displayed to permit selection 
by the user.  The selected notes are immediately added to the 'Note Builder' 
where they can reordered or removed as needed.  Then user clicks 'Apply notes 
to drawing', the notes are sequentially numbered and added to the drawing.

To add a note without a line number, (useful for flagged notes) add a tilde "~" 
symbol as first character in note text within the ini file.  When using quotes 
around a note, the tilde "~" symbol must be inside the quotes.  Line numbers 
will not be placed in front of these notes to leave a space for a user symbol.

By default, the line numbering will continue in sequence.  An option has been
added to allow skipping of numbering for notes without line numbers.

This macro will not modify notes already in the drawing.

-------------------------------------------------------------------------------

Version   2.00  * Initial release
          2.10  * Added 'Number notes from the bottom up' option in form and
                        option preset to CommonNotes.ini file
          2.20  * Added code for handling notes without numbers.
                * Enhanced option settings and controls from ini file.
                * Added note number toggle button.
          2.25  * Enhanced handling notes without numbers.
                * Change ListBoxBuild to multi-select for selecting numbering
                  that also includes a preview of numbering scheme.
                * No longer handles notes with prefixed tilde "~" symbol.
02/08/05  2.30  * Added code for custom bullet divider and note padding.
          2.35  * Fixed "Stack Overflow error when editing note numbers.
                  This error can occur if note is selected in "Note Builder"
                  when user attempts to Edit Note Numbers.
06/16/05  2.40  * Features added to allow user to add custom note(s), and to
                  edit any note already in the note builder.
                * Corrected problem with manually sorting notes.  Problem
                  occurred when note numbering fdeature added.  Need to fix
                  note movement (column) in note builder.
09/01/06  2.50  * Added note Import/Export capabilities.
                * Added notepad style exiting capabilities.
03/08/07  2.55  * Added Lenny's SolidWorks Resources banner.

-------------------------------------------------------------------------------

DISCLAIMER:
* These macros are provided free of charge for personal use and/or reference. 
* These macros may be freely distributed, provided the original copyright 
  notices remain unchanged and intact. 
* All macros were written to work with SolidWorks 2003. Many will work with 
  later versions of SolidWorks with minimal or no changes.
* These macros, and corresponding files, are provided as is. 
* There are no warranties, expressed or implied, that these macros will perform 
  as indicated, perform to users expectations, or complete a specific task. 
* These macros will change the current SolidWorks document. Use these macros at 
  your own risk. Back up your data before using this macro on any SolidWorks 
  document. 

-------------------------------------------------------------------------------

CONFIGURING THE EXTERNAL DATA FILE:

GENERAL:
  * Data file must be in same directory as macro file.  
  * Data file must have same name as macro file with '.ini' extension.
  * Section names must be enclose with [] brackets. 
  * Section names are case sensitive and must match.  
  * An empty line must exist at the end of each section.
  * Data with special characters should be enclosed in "" quotes.
  * The section [NOTES] must exist in the data file.
  * Place notes in the [NOTES] section in the order most likely to be used.
  * Data should be enclosed in "" quotes to allow special characters to exist 
    within notes.

OPTIONS
* The [GLOBAL OPTIONS] section is uses to change default valued used by this 
  macro.  The following are options that can be defined in the data file.
* If options are not defined, defaults will be used.
* + These options can be over ridden while running the macro if the control has 
    not been disabled via the external data file.

  ColumnWidth=60                    + Column width for word wrap.
                                      Default value is 60

  PaddedSpaces=4                      The number of spaces to pad at beginning 
                                      of successive lines of multi-line notes 
                                      and all lines of notes without numbers.

  NoteDividerSym=)                    The symbol to be used to separate 
                                      the note number from the note.  For some
                                      characters such as comma and semi-colon,
                                      this whole line should be in quotes.

  HighlightTitle=True               + Title height is increased 50% and 
                                      underlined.
                                      Default value is FALSE

  DisableHighlightTitle=True          Disable on screen option for title 
                                      highlight.
                                      Default value is FALSE

  AllowCustomTitle=True		      Allow user defined titles when running 
                                      macro.
                                      Default value is TRUE

  LineSpacing=True                  + Add line spaces between notes.
                                      Default value is FALSE

  DisableLineSpacing=True             Disable on screen option for line 
                                      spacing.
                                      Default value is FALSE

  BottomUpOption=False              + Control direction of note numbering.
                                      True  = Number from the bottom up.
                                      False = Number from the top down.
                                      Default value is FALSE

  DisableBottomUpOption=True          Disable on screen option for bottom-up 
                                      note numbering.
                                      Default value is FALSE

  NoteNumberSkip=False              + Controls whether or not to skip 
                                      numbering for notes without line 
                                      numbers.
                                      Default value is FALSE

  DisableNoteNumberSkip=True          Disable on screen option for skipping 
                                      note numbering.
                                      Default value is FALSE

  DisableNoteNumberChange=False       Disables the ability for the user to 
                                      change the note numbering at runtime.

  ForceUpperCaseNotes=True            Forces output of all notes upper case.
                                      Default value is TRUE

  DisableForceUpperCaseNotes=False    Disable on screen option for upper case
                                      output.
                                      

TITLES:
* The [TITLES] section contains a list of acceptable note titles that can be 
  selected by the user.
* Title will be forced to upper case when inserted into the drawing.

GROUPS:
* The [GROUPS] section allows grouping of notes by topic.  Example, you can
  have a group of notes specific to welding, another group of notes specific
  to assemblies.
* Each group must have a section of the same name.  Section names and group 
  names are case sensitive and must match.

-------------------------------------------------------------------------------
