Grigory Filatov

Contributed works of Grigory Filatov

Adaptation FiveWin TsBrowse class
Color Table
Center Window’s Title
Closes application when no activity
Copy Protection (Get BIOS Name)

GetFonts
Get list of all controls

GIF animation demo

Andrés González López

Contributed works of Andrés González López

Anchor Windows (ON MOUSEDRAG)
Bos Taurus – Incredible !!! 
DEFINE REPORT (with filtered data)
Demo Debug
Generate PDF files
Improved interfaces (Label Button)
My color list (i_color.ch)

SP Color functions

1. These are the functions that relate to entire color sets

  SATTCOLOR()         Sets up the the color set for color monitor
  SATTMONO()          Sets up the the color set for MONO
  SATTDIRECT()        Sets up the the color set directly
  SATTGET()           Sets up color set from COLORS.DBF
  SATTPICK()          Sets up color set by selecting from stored definitions
  SATTGETMEM()        Sets up color set from old colors.mem
  SATTPUT()           Stores current color set  to colors.dbf
  SATTPICKPUT()       Stores current SuperLib color set to
                      colors.dbf, with picklist selection of set
  SATTPICKDEL()       Picklist deletion of stored color sets
  SATTPUSH()          Pushes the current SuperLib color set
  SATTPOP()           Pops previously pushed color set
  SETCOLORS()         Interactive color setting -
                      save/restore/edit color sets
  COLPIK()            10 built in color sets to select
                      from a popup

 2. These are the functions that deal with individual color set items

  SLS_NORMCOL()       Normal screen output
  SLS_NORMMENU()      Normal MENU color
  SLS_POPCOL()        Popup screen output
  SLS_POPMENU()       Popup MENU color
  SLS_FRAME()         Box frames
  SLS_SHADATT()       Shadow attribute
  SLS_SHADPOS()       Shadow position
  SLS_XPLODE()        Explode/implode popups

 3. Other color related functions

  SLS_ISCOLOR( )      Is this a color monitor

SP Color Implementation

 This is not the perfect color scheme. It is the one
 this library runs on. The color scheme relates to SuperLib functions,
 and will not affect your other color usage.

 Basically, when a SuperLib metafunction is called, it
 will usually have a main screen, a menu, and a number of popups
 and other attached screens. Rather than have a burned-in color
 set, or use SETCOLOR() as the default, SuperLib has a dynamic
 color scheme, which may be changed and stored by both the
 programmer and the end-user.

 Several global color settings are used by SuperLib
 functions. The settings are accessed and set via a set of
 functions calls, which themselves access a set of STATIC
 variables. The functions are:

   <cSetting> := sls_normcol([cNew])      For normal output
   <cSetting> := sls_normmenu([cNew])     For normal 'menu to'
   <cSetting> := sls_popcol([cNew])       For popup  box colors
   <cSetting> := sls_popmenu([cNew])      For popup box menus
   <cSetting> := sls_frame([cNew])        Frame string
   <nSetting> := sls_shadatt([nNew])      Shadow color attribute
   <nSetting> := sls_shadpos([nNew])      Shadow  position
                 (0,1,3,7,9) to match the numeric keypad
   <lSetting> := sls_xplode([lNew])       Logical - explode
                                          popups

 All colors are of the format "fg/bg,fg/bg,,,fg/bg"

 (fg-foreground bg-background) except for shadow
 attribute, which is numeric.

 By default, a monochrome set of colors is used. You
 may call the function SATTCOLOR() to make the 'color' colors the
 default.

 The function SETCOLORS() allows interactive setting
 of these colors. The variables are stored in COLORS.DBF, which
 contains multiple sets of colors.

 You may override the Clipper ISCOLOR() by
 initializing another setting accessed via the function
 SLS_ISCOLOR(), and setting it to True or False. This is helpful
 in instances where ISCOLOR() sees a color card with a monochrome
 monitor, or some such combination.

 If you are upgrading from 2.50 or previous, see
 "Upgrading" in the appendix.

 

SP_XBXX

XBXX()

  Short:
  ------
  XBXX() Draws an exploding box on the screen of a given color

  Returns:
  --------
  Nothing

  Syntax:
  -------
  XBxx(nTop,nLeft,nBottom,nRight,[nColor],[nShadow];
                      [nShadowColor],[cFrame])

  Description:
  ------------
  <nTop >      - top row
  <nLeft>      - left col
  <nBottom>    - bottom row
  <nRight>     - right column
  [nColor]     - attribute to box default setcolor()
  [nShadow]    - numeric shadow type  (default 0)
                    follow numeric keypad
                        7 = upper left
                        1 = lower left
                        3 = lower right
                        9 = upper right
                        0 = no shadow

  [nShadowColor]   - shadow attribute (default 7 - grey on black)

  [cFrame ]    - frame string - MUST be 9 characters - default single line

  Examples:
  ---------
   XBXX(10,10,20,20,47,9,8)

  Notes:
  -------
  Previously a 'C' function, now Clipper 5.01.

  Source:
  -------
  S_XBXX.PRG

 

SP_UNSELECTED

UNSELECTED()

  Short:
  ------
  UNSELECTED() Returns color integer for UNSELECTED setting

  Returns:
  --------
  <nColor> => numeric color integer for unselected
  color setting

  Syntax:
  -------
  UNSELECTED()

  Description:
  ------------
  Returns numeric color integer for use with functions
  which require it

  like ATT(), PRNT().

  Examples:
  ---------
   nUnsel = UNSELECTED()

   PRNT(10,10,"Waiting...",nUnsel)

  Notes:
  -------

  Source:
  -------
  S_UNSEL.PRG

 

SP_PRNTFRML

PRNTFRML()

  Short:
  ------
  PRNTFRML() Prints a formletter created by formletr()

  Returns:
  --------
  Nothing

  Syntax:
  -------
  PRNTFRML(cForm,[nPageWidth],[nLeftMargin])

  Description:
  ------------
  Prints the form <cForm> from FORMS.DBF with a
  pagewidth of [nPageWidth] and a left margin of [nLeftMargin]

  <cForm> is normally the contents of the template stored in FORMS.DBF
  (previous documentation refered to this parameter as the NAME of the
  form, which is incorrect.

  Examples:
  ---------
  This is used internally by FORMLETR() and FASTFORM().
  Refer to its usage there.

  SELECT 0
  USE FORM
  locate for descript = "MY FORM LETTER" // find letter
  cForm = form->memo_orig      // load contents
  USE
  SELECT MYDBF
  PRNTFRML(cForm,79)


  Source:
  -------
  S_PRNTF.PRG


 

 

SP_PRNT

PRNT()

  Short:
  ------
  PRNT() Writes a string of a given color at row, column

  Returns:
  --------
  Nothing

  Syntax:
  -------
  PRNT(nRow, nColumn, cString, nColor)

  Description:
  ------------
  <nRow>       row

  <nColumn>    column

  <cString>    string

  <nColor>     color attribute

  Examples:
  ---------
   PRNT(10,10,"Hello there",47)  // +W/G

  Notes:
  -------
  Here mainly for compatibility with older version. Was
  previously a C function.

  Source:
  -------
  S_PRNT.PRG

 

 

SP_INITSUP

INITSUP()

  Short:
  ------
  INITSUP() Sets SuperLib system interface vars for MONO or COLOR

  Returns:
  --------
  Nothing

  Syntax:
  -------
  INITSUP([lMakePublic])

  Description:
  ------------
  Checks SLS_ISCOLOR(), and calls SATTCOLOR() or
  SATTMONO() appropriately, to set to default color or mono color
  sets. This is only done the first time INITSUP() is called.

  If [lMakePublic] is True (default), the old style
  SuperLib PUBLIC variables are declared and set to their
  corresponding values based on the new SLS_*() and SLSF_*()
  functions. This is to help with conversion, but be sure to
  change any reference to the old style PUBLIC variables to the
  new function calls, as the PUBLICs will not be an option in the
  next SuperLib.

  Each time INITSUP() is called with (True), the values
  in the PUBLIC variables are reset from their SLS_*() and
  SLSF_*() counterparts. The PUBLIC declaration is only done
  once.

  Examples:
  ---------
   INITSUP(.f.)  // do not initialize publics

  Notes:
  -------
  This is mainly here for compatibility with older
  versions, where INITSUP() was everywhere. INITSUP() previously
  set up the PUBLIC variables for use by SuperLib. The PUBLIC
  variable set have now been replaced by the SET/ACCESS function
  scheme in S_ATTRIB.PRG. INITSUP()'s previous duties have been
  replaced by the functions:

    SLSF_*()
    SLS_*()
    SATT*()

  See the APPENDIX for upgrading guidance.

  Source:
  -------
  S_INIT.PRG

 

SP_COLPIK

COLPIK()

  Short:
  ------
  COLPIK() Allows selection of colors from a list

  Returns:
  --------
  Nothing

  Syntax:
  -------
  COLPIK()

  Description:
  ------------
  Gives the user a choice of 12 pre-defined color
  combinations to choose from

  Examples:
  ---------
   COLPIK()

  Notes:
  -------
  Color combo is stored to COLORS.DBF (or whatever name
  is assigned - see SLSF_COLOR()  ).

  See appendix for more info on colors usage by the
  library.

  Source:
  -------
  S_COLPIK.PRG