/*
   --------------------------------------------------------------//
   Filename.....: speedtext.cc
   ClassName....: speedtext
   Purpose......: Single/Multi-line Speedtip form.
                  One instance can be used for a form or an
                  application.
   Programmer...: Rick Miller
   Date.........: May 29, 2002
   Notes........: Some defines for a few other languages
                  can be found in speedtext.hlp.
                  Not all fonts will automatically size properly.
   Written for..: dB2K 0.1 and newer
   Rev. History.: See Revisions below.
   Dependencies.: applicationIni.cc,
                 :dUFLP:winattr32.cc
   Calls........: None
   Called by....: Any
   Limitations..: up to 30 lines for a Multi-line speedtip.
                  width is subject to getTextExtent().
   Usage........: set procedure to :dUFLP:speedtext.cc additive
   Example......: see below and sample file.
   SampleFile...: speedtext.wfm
   HelpFile.....: speedtext.hlp
   --------------------------------------------------------------//
   Example:
   --------------------------------------------------------
      form.speedtext = new speedtext()
      form.speedtext.open()
      see speedText.wfm for GUI object code.
   --------------------------------------------------------
   Properties:
   --------------------------------------------------------
      above             form relative to object    (default = false)
                           false = below, true = above
      align             form relative to object    (default = 0)
                           0 = Left, 1 = Center, 2 = Right
      inifile           _app.iniFile
                        or
                        _app.exeName - .exe + .ini
                        or
                        id() + ".ini"
      ismdi             use framewin or desktop    (default = true)
                           use framewin for boundary.
      timer.interval    length of display          (default = 2)
      usersave          use inifile ?              (default = true)
                           true = use, false = do not use
   --------------------------------------------------------
   Methods:
   --------------------------------------------------------
      close             close form,
                           remove object from memory
      get               return a property value
      help              display the helpfile when in IDE
      open              makes object able to be displayed
      set               assign a property,
                           return success/fail
      show              show/hide this form,
                           return success/fail
      user_setabove     adjust above via built-in msgbox,
                           return true/false (user made change)
      user_setalignment adjust align via built-in msgbox,
                           return true/false (user made change)
      user_setinterval  adjust timer.interval via built-in msgbox,
                           return true/false (user made change)
      user_setismdi     adjust boundary via built-in msgbox,
                           return true/false (user made change)
   --------------------------------------------------------
   Keywords used for get and set methods:
   --------------------------------------------------------
      above, align, alignh, alignv, fontname, fontsize,;
      gapheight, inifile, interval, ismdi, padcx, padcxfactor,
      padcy, padcyfactor, text, usersave
   --------------------------------------------------------
   Revisions:
   --------------------------------------------------------
      February 18, 2011
         1) default ini file adapted to following
            Windows security model and a standard User
            with the use of applicationIni.cc.
         2) added support for 2 monitors.
      April 08, 2005
         1) fixed bug in x_InitExterns method.
      March 11, 2005
         1) corrected distributed version.
         2) Revised speedtext.hlp (help file).
      February 10, 2005
         1) renamed all external functions.
         2) Revised speedtext.hlp (help file).
      May 14, 2004
         1) added font calls to get & set.
         2) added calculations for height and width when
            changing the default fontName or fontSize.
      December 22, 2003
         1) Revised Documentation.
      December 05, 2003
         1) added form_onMouseMove
         2) Revised speedtext.hlp (help file).
      November 14, 2003
         1) modified showform method.
         2) Added ismdi, padcx, padcy properties.
         3) Added user_setismdi method.
         4) SDI user's should assign the isMdi property to false.
         5) Revised speedtext.hlp (help file).
      October 07, 2003
         1) repair to show method.
*/