coolTip - Core Module v2.0 - Copyright Robert E Boughner 2004. All rights reserved.

Initial: February 28, 2003 - Last Revised: March 25, 2012, April 24, 2012, May 2, 2012, June 6, 2012, December 20, 2012
removed references to NS4 and IE4 and modified so that it is compatible with modern browsers
which support the W3C recommendations, i.e., this means greater than 8.

Changes made are:

  1. Unlike overLIB and the earlier version of coolTip, this version does away with internal tables and makes use of block level DIV containers for holding content. See the file cPopupLayout for more details.
  2. Removed support for inarray && caparray - not used much
  3. Removed support for background - replaced by fgbackground and/or bgbackground or via the class parameters
  4. Removed support for fixx,fixy - now obselete
  5. Removed support for padx,pady - can be obtained via CSS
  6. Removed support for fullhtml - can be done now by feeding the full html code as a text string
  7. closecolor changed to #FFC200 to improve visibility
  8. No more plain numbers on font sizes - obselete. All font sizes are now pixels.
    1. textsize - 11px
    2. captionsize - 10px
    3. closesize - 9px
  9. Removed support for cssoff && compatmode - No longer required
  10. Removed cssclass command - since can be accomodated via the textclass,captionclass and closeclass parameters
  11. Commands textfontclass,captionfontclass,closefontclass changed to textclass,captionclass,closeclass to reflect the fact that these special classes can now do more than just change fonts and font sizes
  12. The lyr object is now passed explicitly to the following routines:
    1. ctContentBackground
    2. ctContentSimple
    3. ctContentCaption
    4. ctCreatePopup
    5. disp
    6. set_background
    7. ctInnerContent
    8. layerWrite
    9. containerStyle
    10. parseTokens
    11. repositionTo
    12. cursorOff
    13. nbspCleanup
    14. wrapStr
    15. setPosition
    16. positionDiv
    17. horizontalPlacement
    18. verticalPlacement
    19. placeLayer
    20. setRunTimeVariables
    21. parseCmdLine
    22. postParseChecks
    23. isCloseAllLyr
    24. deletePopup
    25. PopObject
  13. Modified the following routines to see if an object is passed as an argument. If there is, it is taken as the lyr object being worked on:
    1. cClick
    2. ctMain
    3. showObject
    4. hideObject
  14. Passed the lyr working on explicitly in the routine getAnchorLocation in the Anchor plugin and removed explicit code references pertinent to Ns4.
  15. Added cLoaded=0 to the beginning of each plugin and cLoaded=1 at the end.
  16. Modified the cmdLine parser routine so that now an array object, containing the index where the match occurred and the passed in lyr object, is returned. So far only the cCrossFrame.js makes use of this capability.
  17. The runHook routine code has been simplified. For FALTERNATE and FCHAIN, more than one routine can be called. These routines are saved in anray and are called in the order of last to first. If a routine just wants to process information and pass on to the next routine in the stack, then return a void(0) value. Any other value returned stops the downward progression of the routines in the stack and it stops at that routine.
  18. Any class parameters specified will take precedence over normal styling rules. This means that these special classes may need to specify additional rules to obtain a certain visual look.
  19. The check for NOCLOSE is now made at the end of the parseTokens routine in the core module so that it works better with the cross frame module. Also several minor errors in code were corrected.
  20. The cross frame module has been re-written extensively so that if no commands or subroutines from the core module are loaded they will be made available in the targeted frame. This happens when the user mouses over the targeted frame. In addition, an additional command, CPY2TARGET (see the file cCrossframeCommands.html) with a default value of on (1), has been added. If this command shows that it is off and there is no close text, then the close text is set to its default setting.
  21. Reinserted code in the hideObject subroutine to move the popup off screen.
  22. Revised "runHook" routine to correct some inconsistencies in it.
  23. Removed the NODRAGKEY command from the cDraggable.js module since its functionality was replaced by setting DRAGKEY to the null string ('').
  24. Added a function to generate an unique div id that is based on 'ctdiv'. Numbers start at 1. Also PUID command has been modified so that if the parameter value is not a string value, then a unique id of is ctDivX is returned.
  25. In the parsing routine, changed all occurences of ++i [or ++k] to (++i) [or (++k)] since an user has reported problems with the corect incrementing in recent versions of FireFox.
  26. Removed most calls to the eval() function in the parsing routine and removed all references to the with() wrapping