// appfram version ***************************************************************************** * 11-29-14 11:30 am * topdown.ch * * Top-Down Library 9.1 * Copyright (C) 1999-2014 Clayton Jones ***************************************************************************** ******* Row and column pixel values - used by all TD routines to translate ******* the row/Column coordinates and dimensions into pixel values. *** Beginning with TD 7.0 these are public variables, defined as MEMVAR *** here so that they don't have to be declared in all the prg files that *** use them. *** Values are assigned at startup and may be used for application scaling. MEMVAR ROW_PX,COL_PX *** Old way of handling these as defined constants, *** previous to TD 7.0 * #define COL_PX 10 * #define ROW_PX 20 ******* These should be True if using the 3rd party libraries they represent. ******* They control some flags in TD files. #define td_XBPPDF .T. // XbpPdf #define td_SQLEXP .T. // SQLExpress ******* Controls tdPshBtn() edge painting for rounded corner buttons ******* with Visual Styles/Manifest in 1.90.355 and later #define td_PaintEdge .T. ******* Misc #define CRLF chr(13) + chr(10) // useful when delineating #define CR chr(13) // multiple line text strings #define LF chr(10) // ******* Used by the tdcMenu class #define td_CHECK9_BMP 16101 // Resource id# for check-9.bmp ******* Used by tdcXget and keyhandlers of windows using tdXget #define tdK_TAB 1039734.56 #define tdK_SH_TAB 1039735.96 ******* nPT settings for printer class #define tdPT_DFLT 20.32 #define tdPT_NORM 25.41 #define tdPT_ELIT 21.18 #define tdPT_COND 15.25 ******* date picture #define td_DATE_PICT_CENTON '99/99/9999' // default date Picture used #define td_DATE_PICT_CENTOFF '99/99/99' // by some Top-Down routines #define td_DATE_PICTURE '99/99/9999' // for backward compatibility ******* Default font for Top-Down parts functions using ******* the old font system (not used in current font system). ******* "10.Alaska Crt" is a fixed-pitch font built into ******* an Xbase++ runtime DLL, so is always available. #define td_DEFAULT_FONT "10.Alaska Crt" ******* LANGUAGE SPECIFIC CONSTANTS ******* *** These are commonly used text strings in Top-Down routines, *** such as captions on buttons and error messages. *** Text strings in different languages may be substituted here. **** captions #define td_CANCEL "Cancel" #define td_CLOSE "Close" #define td_YES "Yes" #define td_NO "No" #define td_OK "OK" #define td_ESCAN "Esc=Cancel" #define td_ESCLOSE "Esc=Close" #define td_PGDNSAVE "PgDn=Save" #define td_ENTOK "Enter=OK" #define td_ENTACCPT "Enter=Accept" #define td_F9SAVE "F9=Save" #define td_PRINT "Print" #define td_FILE "File" #define td_FILES "Files" #define td_REFRESH "Refresh" #define td_ENTSEL "Enter = Select" #define td_INSERT "" #define td_OVERWRITE "" //#define td_CTRLSAVE "Ctrl-S = Save" #define td_CTRLSAVE "F10 = Save" #define td_PATH_ONLY "Path Only" #define td_NEW_DIR "New Dir" *** Hotkey Captions #define td_HKLOCFIRST "~Locate First" #define td_HKNEXT "~Next" #define td_HKCANCEL "~Cancel" #define td_HKLOCATE "~Locate" #define td_HKSEEK "~Seek" #define td_HKDELETE "~Delete" #define td_HKVIEW "~View" *********** Messages *** general #define td_WARN_MSG "Notify System Administrator" #define td_RUNTIME_ERR "A Runtime Error Has Occurred" #define td_TIMEOUT "Time Out" #define td_SUCCESS "Success" #define td_FAILED "Failed" #define td_DELREC_MSG "ARE YOU SURE YOU WANT TO DELETE THIS RECORD?" #define td_ISCORRECT "Is this correct?" #define td_INVALID_TXT_VALUE "Invalid value for text" #define td_PROCESSING "Processing..." #define td_CREATING_FILE "Creating file" #define td_CREATING_PDF "Creating PDF File" #define td_NO_PDF_OBJ "Not able to create PDF object" #define td_PDF_OK "PDF object created" *** user log #define td_LOG_WARN1 "Notify System Administrator" #define td_LOG_WARN2 "Can't append in user log" #define td_LOG_WARN3 "Can't open user log" #define td_LOG_WARN4 "Recover error in tdLog" #define td_LOG_WARN5 "Can't find user log" #define td_LOG_WARN6 "Can't create user log" *** locate #define td_LOCA_ERRMSG1 "No Expression Entered" #define td_LOCA_ERRMSG2 "Invalid Expression" #define td_LOCA_ERRMSG3 "Try again" #define td_LOCA_ERRMSG4 "Value not found" *** Locking #define td_CANTLOCK "Cannot lock record" #define td_RLOCK "Locking Record..." #define td_FLOCK "Locking File..." #define td_CANTRLOCK "Cannot lock record" #define td_CANTFLOCK "Cannot lock file" #define td_LOCKTIMEOUT "Sorry, timed out" *** files #define td_FILEISOPEN "File already open with alias" #define td_FILEOPENERR1 "File opening error" #define td_FILEOPENERR2 "Notify System Administrator" #define td_ISMISSING "is missing" #define td_CANNOTOPEN "cannot be opened" #define td_NDX_ERRMSG1 " cannot be opened for indexing" #define td_NDX_ERRMSG2 "File may be in use" #define td_OK_OVERWRITE "OK to Overwrite?" #define td_FILE_EXIST "This File Already exists!" *** tdSaveRpt.prg #define td_FILE_EXIST2 "This file name already exists" #define td_TRY_ANOTHER "Please try another" #define td_SAVED_RPT "Saved report to file" #define td_SAVE_FAILED "File save failed" #define td_EMPTY_DESC "Description cannot be empty" #define td_EMPTY_NAME "File name cannot be empty" #define td_OVERWRITE2 "Overwrite" #define td_CHANGE_NAME "Change Name" #define td_OVER_CHANGE "Overwrite or Change Name" #define td_TITLE " Saved Reports" #define td_DESC1 "Description: " #define td_DESC2 " Enter description of report" #define td_DESC3 "Description" #define td_FILENAME1 "File Name (without extension): " #define td_FILENAME2 " Enter file name for saved report" #define td_FILENAME3 "Enter Report Description and File name" #define td_FILENAME4 " Save Report To File" #define td_FILENAME5 "File Name" #define td_DATE "Date" #define td_DELETE1 "Delete this Saved Report?" #define td_DELETE2 "(the file will be erased)" #define td_ERASE_FAILED "Failed to erase Rpt file" #define td_NOT_DEL "This record will not be deleted" #define td_RPTFILE_NOT_FOUND " Rpt file not found" #define td_SAVED_RPTFILE " Deleted saved Rpt file record" #define td_CANT_LOCATE "Cannot locate report file" #define td_CANT_LOAD "Cannot load report file" *** tdPathPick.prg #define td_CREATE1 "Create new folder under" #define td_CREATE2 "Create New Folder" #define td_SEL_PATH " Select Path" *** date #define td_DRANGE_ERRMSG "Invalid Date Range" #define td_DRANGE_TEXT "Enter Date Range:" #define td_NO_BLANK_DATE "Date cannot be blank" *** image #define td_CHOOSE_NTP "Choose Name, Type and Path for image file" #define td_CREATE_IMG_FILE "Create image file" *** file names #define td_GOODNAME_1 "Sorry, no blanks allowed" #define td_GOODNAME_2 "Sorry, no hyphens allowed" #define td_GOODNAME_3 "Sorry, no underscores allowed" #define td_GOODNAME_4 "Name contains an invalid character" #define td_MULT_EXT "This file name has multiple extensions" *** Printer #define td_FINDPRNS "Finding printers..." #define td_NOPRNS "No printers found!" #define td_PRINTER_ERRMSG "Printer Not Initialized" *** Browse #define td_BROWERRMSG_1 "Data Replace Error occurred in tdGenBrow()." #define td_BROWERRMSG_2 "Data Replace Error occurred in tdAGenBrow()." *** AutoForm #define td_AUTOFORM_1 "while saving data" #define td_AUTOFORM_2 "Operation Cancelled" *** SQL Functions #define td_SQL_INDEX "Index" #define td_SQL_TABLE "Table" #define td_SQL_NO_TABLES_EXIST "No Tables Exist" #define td_SQL_DELETED "deleted" #define td_SQL_NOT_DELETED "not deleted" #define td_SQL_DELETE_WARNING "delete warning" #define td_SQL_DOES_NOT_EXIST "does not exist" #define td_SQL_RECOVER_ERROR_IN "Recover error in" #define td_SQL_SEEK_ERROR "A seek error has occurred" #define td_SQL_APPEND_FAILURE_IN "Append failure in" #define TD_SQL_SQL_DATA_TYPE "SQL data type" #define TD_SQL_NOT_FOUND "not found" #define td_SQL_LOCATE_FOR "Locate For" #define td_SQL_REST "REST" #define td_SQL_EXACT "EXACT" #define td_SQL_SEEK_FOR "Seek For" #define td_SQL_SOFT_SEEK "Soft Seek" #define td_SQL_FIELD "Field" #define td_SQL_EQUALS "Equals" #define td_SQL_CURSOR_UNSORTED "Cursor is unsorted" #define td_SQL_SEEK_NOT_POSSIBLE "Seek is not possible" #define td_SQL_ODBC_CONN_FAIL "ODBC Connection Failed" #define td_SQL_CURS_EXEC_ERROR "Cursor Execution Error" ************** For tdcPrv*.prg - Print Preview ******* Text for buttons, labels and messages #define cPrv_01 " Preview for " #define cPrv_02 "Zoom" #define cPrv_03 "Level" #define cPrv_04 "Page" #define cPrv_05 "Print" #define cPrv_06 "~All Pages" #define cPrv_07 "C~urrent Page" #define cPrv_08 "Rang~e" #define cPrv_09 "Pg" #define cPrv_10 "to" #define cPrv_11_1 "Copies:" #define cPrv_11_2 "~Print" #define cPrv_12 "Ref Row" #define cPrv_13 "Ref Col" #define cPrv_14 "~StayOnTop" #define cPrv_15 "Hide ~Margin" #define cPrv_16 "Show ~Margin" #define cPrv_17 "~Close" #define cPrv_18 "~Help" #define cPrv_19 "Con~Tinue" #define cPrv_20_1 " Copies" #define cPrv_20_2 " Copy" #define cPrv_20_3 "All Pages?" #define cPrv_20_4 "Print" #define cPrv_20_5 "of" #define cPrv_21 "Current Page?" #define cPrv_22 "page " #define cPrv_23 " through page " #define cPrv_24 "~Run" #define cPrv_25 "~Quit" #define cPrv_26 "First page # must be" #define cPrv_27 "less than second page #" #define cPrv_28 "A page # is out of Range" #define cPrv_29 "One or more Range values is empty" #define cPrv_30 "Go To Page:" ******* Prv Help Window #define cPrv_31 " Print Preview Help" #define cPrv_32 "Controls For Preview Window" #define cPrv_33_1 "Category" #define cPrv_33_2 "Keystroke/Mouse Action" #define cPrv_34 "Page Scrolling" #define cPrv_35 "Zooming" #define cPrv_36 "Page" #define cPrv_37 "Navigation" #define cPrv_38 "Print Options" #define cPrv_39 "Other Options" #define cPrv_40a "Bottom" #define cPrv_40b "Buttons" #define cPrv_41 "Sa~ve To File" #define cPrv_42 "Save To File" #define cPrv_43 "Save To P~DF" #define cPrv_44 "Save To PDF" #define cPrv_45 "Enter Filename without Extension" #define cPrv_46 " File Name For PDF" #define cPrv_47 "File name cannot contain blanks" #define cPrv_48 "Please try again" #define cPrv_49 "File already exists" #define cPrv_50 "Please use another name" #define cPrv_51 " Created PDF: " #define cPrv_52 "Display This File?" #define cPrv_53 "Create PDF Failed" #define cPrv_54 "No PDF Files Exist" ************** For tdcPrn*.prg - Print Class #define cPrn_01 "File: " #define cPrn_02 "Page " #define cPrn_03 "Closing File..." #define cPrn_04 "Done..." #define cPrvHelpTxt ; "Up/Down Arrow Scroll up/down 10 pixels " + chr(10)+ ; "CTRL+Up/Down Scroll up/down 100 pixels " + chr(10)+ ; "PgUp/PgDn Scroll up/down in big jumps " + chr(10)+ ; "Left/Right Arrow Scroll left/right 10 pixels " + chr(10)+ ; "CTRL+Left/Right Scroll left/right 100 pixels " + chr(10)+ ; "Mse Left Btn Hold Drag page in any direction " + chr(10)+ ; " " + chr(10)+ ; "+ keys Increase Zoom one level " + chr(10)+ ; "- keys Decrease Zoom one level " + chr(10)+ ; "Mouse Left Click Increase Zoom one level " + chr(10)+ ; "Mouse Right Click Decrease Zoom one level " + chr(10)+ ; " " + chr(10)+ ; "< > keys Go to previous/next page " + chr(10)+ ; "CTRL + < > Go to first/last page " + chr(10)+ ; "N Specify page number, then " + chr(10)+ ; " press Enter " + chr(10)+ ; " " + chr(10)+ ; "P Print specified pages " + chr(10)+ ; "A Specify All pages " + chr(10)+ ; "U Specify current page " + chr(10)+ ; "E Specify Range of pages (use " + chr(10)+ ; " TAB or SHIFT-TAB to navigate " + chr(10)+ ; " out of the Page numbers) " + chr(10)+ ; "V Save to File " + chr(10)+ ; "D Save to PDF " + chr(10)+ ; " " + chr(10)+ ; "M Show/Hide page margin " + chr(10)+ ; "S Toggle StayOnTop behavior " + chr(10)+ ; "SHIFT+Up/Down Adjust Number of Copies " + chr(10)+ ; "ALT+Spacebar Open system menu to Maximize, " + chr(10)+ ; " Minimize, Restore, Close window" + chr(10)+ ; "ESC Close window " + chr(10)+ ; " " + chr(10)+ ; "C Continue to next page " + chr(10)+ ; " (or Close, if window is " + chr(10)+ ; " on last page) " + chr(10)+ ; "R Run to last page " + chr(10)+ ; "Q Quit, close window " + chr(10)+ ; "H Help window " ************** End For tdcPrv4.prg ***************** End LANGUAGE SPECIFIC CONSTANTS ************** ******* Colors ******* #define tdWHI 33554431 // GRA_CLR_WHITE GraMakeRGBColor({255,255,255}) #define tdBLK 16777216 // GRA_CLR_BLACK GraMakeRGBColor({ 0, 0, 0}) #define tdBLU 33488896 // GRA_CLR_BLUE GraMakeRGBColor({ 0, 0,255}) #define tdRED 16777471 // GRA_CLR_RED GraMakeRGBColor({255, 0, 0}) #define tdPNK 33489151 // GRA_CLR_PINK GraMakeRGBColor({255, 0,255}) #define tdGRN 16842496 // GRA_CLR_GREEN GraMakeRGBColor({ 0,255, 0}) #define tdCYN 33554176 // GRA_CLR_CYAN GraMakeRGBColor({ 0,255,255}) #define tdYEL 16842751 // GRA_CLR_YELLOW GraMakeRGBColor({255,255, 0}) #define tdDGY 25198720 // GRA_CLR_DARKGRAY GraMakeRGBColor({128,128,128}) #define tdDBL 25165824 // GRA_CLR_DARKBLUE GraMakeRGBColor({ 0, 0,128}) #define tdDRD 16777344 // GRA_CLR_DARKRED GraMakeRGBColor({128, 0, 0}) #define tdDPK 25165952 // GRA_CLR_DARKPINK GraMakeRGBColor({128, 0,128}) #define tdDGN 16809984 // GRA_CLR_DARKGREEN GraMakeRGBColor({ 0,128, 0}) #define tdDCY 25198592 // GRA_CLR_DARKCYAN GraMakeRGBColor({ 0,128,128}) #define tdBRN 16810112 // GRA_CLR_BROWN GraMakeRGBColor({128,128, 0}) #define tdPGY 29409472 // GRA_CLR_PALEGRAY GraMakeRGBColor({192,192,192}) #define tdBGN GRA_CLR_BACKGROUND #define tdNEU GRA_CLR_NEUTRAL #define tdPPK 31903487 // Pale Pink GraMakeRGBColor({255,206,230}) #define tdPBL 33549276 // Pale Blue GraMakeRGBColor({220,235,255}) #define tdPGN 30275296 // Pale Green GraMakeRGBColor({230,246,205}) #define tdPMG 31901926 // Pale Magenta GraMakeRGBColor({200,200,255}) #define tdPYL 28311551 // Pale Yellow GraMakeRGBColor({255,255,175}) #define tdAMB 21745141 // Amber GraMakeRGBColor({245,205, 75}) #define tdTAN 24690388 // Tan GraMakeRGBColor({212,190,120}) #define tdPTN 30142196 // Pale Tan GraMakeRGBColor({244,238,203}) #define tdORN 16815871 // Orange GraMakeRGBColor({255,150, 0}) #define tdTTB 20066866 // Tooltip Black GraMakeRGBColor({ 50, 50, 50}) #define tdTTY 29949951 // Tooltip Yellow GraMakeRGBColor({255,255,200}) #define tdWGY 29937876 // Warm Gray GraMakeRGBColor({212,208,200}) XP Classic #define tdHGY 31058413 // Hot Gray GraMakeRGBColor({237,233,217}) XP Themes #define tdDFG 26847661 // Dis FG GraMakeRGBColor({173,169,153}) XP Disabled FG #define tdTNS XBPSYSCLR_TRANSPARENT // -255 /* GRA_CLR_BACKGROUND Background color of the presentation space GRA_CLR_NEUTRAL Contrast color to GRA_CLR_BACKGROUND */ ******* SYSTEM ICONS ******* #define tdINFO XBPSTATIC_SYSICON_ICONINFORMATION #define tdQUES XBPSTATIC_SYSICON_ICONQUESTION #define tdEROR XBPSTATIC_SYSICON_ICONERROR #define tdWARN XBPSTATIC_SYSICON_ICONWARNING ******* GROUP CONSTANTS FOR XBP PARTS ******* #define tdBG XBP_BEGIN_GROUP #define tdWG XBP_WITHIN_GROUP #define tdEG XBP_END_GROUP #define tdNG XBP_NO_GROUP ******* Constants for tdSysMets(), wrapper for GetSystemMetrics #define td_HBORDER 7 #define td_VBORDER 8 #define td_MENUBAR 15 #define td_TITLEBAR 4 #define td_VSCROLL 2 // SM_CXVSCROLL #define td_HSCROLL 3 // SM_CYHSCROLL #define td_CAPBTNWD 30 ********************* BROWSE ********************* ******* Default tdHiBrow Presentation Parameters array ******* This can be used to specify a different set of default colors ******* and Row/column separators #define tdBROW_PP {; {XBP_PP_HILITE_FGCLR,tdWHI} ,; // Hilite colors {XBP_PP_HILITE_BGCLR,tdBLU} ,; // White/Blue {XBP_PP_COL_DA_FGCLR,tdBLK} ,; // browse row colors {XBP_PP_COL_DA_BGCLR,tdRGB({240,240,240})} ,; // black/soft white {XBP_PP_COL_DA_ROWSEPARATOR,XBPCOL_SEP_LINE} ,; // {XBP_PP_COL_DA_COLSEPARATOR,XBPCOL_SEP_NONE} ,; // {XBP_PP_COL_DA_FRAMELAYOUT ,XBPFRAME_RECESSED} ,; // {XBP_PP_COL_HA_FGCLR ,tdBLK} ,; // Column Header colors {XBP_PP_COL_HA_BGCLR ,tdPBL} ,; // Black/Lt Blue {XBP_PP_COL_FA_FGCLR ,tdBLK} ,; // Column Footer colors {XBP_PP_COL_FA_BGCLR ,tdPTN} ; // Black/Pale Tan } ***************** SQL Data Types**************************** #define tdSQL_DATA_TYPES {; {-11,"GUID" ,"N"} ,; // Auto # {-10,"WLONGVARCHAR" ,"C"} ,; { -9,"WVARCHAR" ,"C"} ,; { -8,"WCHAR" ,"C"} ,; { -7,"BIT" ,"L"} ,; // Logical { -6,"TINYINT" ,"N"} ,; // Byte { -5,"BIGINT" ,"N"} ,; { -4,"LONGVARBINARY","B"} ,; // Ole Obj { -3,"VARBINARY" ,"B"} ,; { -2,"BINARY" ,"B"} ,; { -1,"LONGVARCHAR" ,"M"} ,; // Memo { 0,"UNKNOWN_TYPE" ,"U"} ,; { 1,"CHAR" ,"C"} ,; { 2,"NUMERIC" ,"N"} ,; { 3,"DECIMAL" ,"N"} ,; { 4,"INTEGER" ,"N"} ,; { 5,"SMALLINT" ,"N"} ,; { 6,"FLOAT" ,"N"} ,; { 7,"REAL" ,"N"} ,; { 8,"DOUBLE" ,"N"} ,; { 9,"DATETIME" ,"C"} ,; { 10,"TIME" ,"C"} ,; { 11,"TIMESTAMP" ,"C"} ,; { 12,"VARCHAR" ,"C"} ,; { 91,"DATE" ,"D"} ,; // Normal date { 93,"DATETIME" ,"C"} ; } ******* for tdPlayWav() flags (calls PlaySound) #define SND_SYNC 0x0000 // play synchronously (default) #define SND_ASYNC 0x0001 // play asynchronously (the call returns immediately // and the media is played in a background thread.) #define SND_NODEFAULT 0x0002 // silence if sound not found (not default) #define SND_MEMORY 0x0004 // pszSound points to a memory file #define SND_LOOP 0x0008 // loop the sound until next sndPlaySound #define SND_NOSTOP 0x0010 // don't stop any currently playing sound #define SND_NOWAIT 0x00002000 // don't wait if the driver is busy *** Three flags (SND_ALIAS, SND_FILENAME, and SND_RESOURCE) determine *** whether the name is interpreted as an alias for a system event, a file name, or *** a resource identifier. If none of these flags are specified, PlaySound searches *** the registry or the WIN.INI file for an association with the specified sound *** name. If an association is found, the sound event is played. If no association *** is found in the registry, the name is interpreted as a file name. #define SND_ALIAS 0x00010000 // name is a registry alias #define SND_FILENAME 0x00020000 // name is file name #define SND_RESOURCE 0x00040004 // name is resource name or atom #define SND_PURGE 0x0040 // purge non-static events for task #define SND_APPLICATION 0x0080 // look for application specific association #define SND_ALIAS_START 0 // alias base #define SND_ALIAS_ID 0x00110000 // alias is a predefined ID #define SND_SENTRY 0x00080000 // Generate a SoundSentry event with this sound #define SND_RING 0x00100000 // Treat this as a "ring" from a communications app #define SND_SYSTEM 0x00200000 // Treat this as a system sound ******* End for PlaySound ***** End of Defined items - Everything below is for reference ********** /* Configuration of the data area of a column Constant Description XBP_PP_COL_DA_FGCLR Foreground color XBP_PP_COL_DA_BGCLR Background color XBP_PP_COL_DA_HILITE_FGCLR Foreground color for highlight XBP_PP_COL_DA_HILITE_BGCLR Background color for highlight XBP_PP_COL_DA_COMPOUNDNAME Font compound name XBP_PP_COL_DA_ROWWIDTH Width of the frame in pixel XBP_PP_COL_DA_ROWHEIGHT Height of the frame in pixel XBP_PP_COL_DA_CELLWIDTH Width of the cell in pixel XBP_PP_COL_DA_CELLHEIGHT Height of the cell in pixel XBP_PP_COL_DA_CHARWIDTH Width of a cell in characters XBP_PP_COL_DA_CELLALIGNMENT Alignment of a cell within frame XBP_PP_COL_DA_ROWSEPARATOR Separating line between rows XBP_PP_COL_DA_COLSEPARATOR Separating line between columns XBP_PP_COL_DA_FRAMELAYOUT Frame type XBP_PP_COL_DA_CELLFRAMELAYOUT Border of cell within frame XBP_PP_COL_DA_HILITEFRAMELAYOUT Frame type of highlighted cell Constants for row and column separators Constant Description XBPCOL_SEP_NONE *) No separating line XBPCOL_SEP_LINE Normal line XBPCOL_SEP_DASHED Dashed line XBPCOL_SEP_DOTTED Dotted line Constants to configure the layout of frames Constant Description XBPFRAME_NONE *) No frame XBPFRAME_RECT Frame with no foreground XBPFRAME_BOX Frame with foreground XBPFRAME_RAISED Raised frame XBPFRAME_RECESSED Recessed frame XBPFRAME_THICK Thick frame XBPFRAME_DASHED Dashed frame XBPFRAME_DOTTED Dotted frame Constants for alignment Constant Description XBPALIGN_TOP Alignment at the top XBPALIGN_LEFT Alignment on the left XBPALIGN_BOTTOM Alignment at the bottom XBPALIGN_RIGHT Alignment on the right XBPALIGN_HCENTER Horizontally centered XBPALIGN_VCENTER Vertically centered Configuration of the footing area of a column Constant Description XBP_PP_COL_FA_CAPTION Text displayed in the footing XBP_PP_COL_FA_FGCLR Foreground color XBP_PP_COL_FA_BGCLR Background color XBP_PP_COL_FA_COMPOUNDNAME Font compound name XBP_PP_COL_FA_HEIGHT Height of the footing in pixel XBP_PP_COL_FA_ALIGNMENT Alignment of text XBP_PP_COL_FA_FRAMELAYOUT Frame type Configuration of the heading area of a column Constant Description XBP_PP_COL_HA_CAPTION Text displayed in the heading XBP_PP_COL_HA_FGCLR Foreground color XBP_PP_COL_HA_BGCLR Background color XBP_PP_COL_HA_COMPOUNDNAME Font compound name XBP_PP_COL_HA_HEIGHT Height of the heading in pixel XBP_PP_COL_HA_ALIGNMENT Alignment of text XBP_PP_COL_HA_FRAMELAYOUT Frame type */