home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 2000 August
/
PCWorld_2000-08_cd.bin
/
Software
/
TemaCD
/
xbasic
/
xbpro.exe
/
xb
/
xxx
/
property.xyz
< prev
next >
Wrap
Text File
|
1999-05-22
|
6KB
|
113 lines
'
' property.xxx is the default name of this file
' property.xyz is the original contents of property.xxx
'
' property.xxx is the name of the default property database,
' automatically loaded at startup time. If no property.xxx
' file exists, then all grids have the nominal properties.
'
' This file contains a series of one line entries of the following form.
'
' program gridtype XuiSendMessage (gridname, message, v0, v1, v2, v3, kid, r1)
'
' program - name of the program in the PROGRAM statement
' gridtype - name of a gridtype or * to match any gridtype
' gridname - name of a grid or * to match any gridname
' message - message to send to grid to modify one or more properties
' v0 to r1 - message arguments appropriate for the message
'
' Programs can get and set the current property database with:
'
' XuiGetPropertyDatabase (@text$[])
' XuiSetPropertyDatabase (@text$[])
'
' At the very end of the create subroutine in most grid functions
' is XuiSendMessage (grid, #SetGridProperties, 0, 0, 0, 0, 0, 0).
' This ends up calling the XuiSetGridProperties() function that
' calls XuiGetGridProperties() to get those entries of the grid
' property database that apply to the specified grid. Then it
' sets those properties of the grid, as if the same lines were
' executed in the program at that point.
'
' This gives users a way to "customize" the grids in a program,
' either "individually" by grid name, or "generally" by grid type.
' Not every change is reasonable to be sure, and some may even
' cause programs to malfunction or become unreadable or unusable.
' Users should be warned of these possibilities and perhaps the
' most common reasonable entries should be put in the database
' and commented out. Users can then simply choose which lines
' to enable by removing the ' comment character.
'
' A ' character at the start of a line disables that entry.
' A line with improper form is almost always ignored.
'
' An * asterisk in the "program", "gridtype", or "gridname"
' field means match with any program, gridtype, or gridname.
' An * asterisk can appear in any mix of these three fields.
' The first three entries are separated by one or more tabs,
' while commas separate the XuiSendMessage() arguments.
'
' Not every property can be set, especially string and array
' properties. #SetTextString and #SetTextArray message will
' set the TextString and TextArray properties, however, but
' the final argument in the #SetTextArray message must be a
' literal string. The literal string is converted into a
' text array before the message is sent, so "\n" newline
' characters in the string separate elements in the array.
' Just as in normal programs, the TextString property may
' begin with "\xFF\xFF", in which case everything after the
' "\xFF\xFF" is taken as a filename to load and replace the
' contents of the literal string.
'
' The program name is set by XstSetProgramName(@program$).
' All GuiDesigner programs generated by GuiDesigner have
' the following code in the InitGui() function to set the
' program name automatically.
'
' program$ = PROGRAM$(0)
' XstSetProgramName (@program$)
'
' xb is the name of the program development environment.
'
'
' The following are some (not necessarily reasonable) examples:
'
' The first three lines would have the same effect, though the
' first two make sure the change applies only to the environment.
' The last example changes the color scheme of ALL XuiLabel grids
' in all programs. In general it is best to only specify changes
' to specific grids in specific programs.
'
' program gridtype XuiSendMessage (gridname, message, v0, v1, v2, v3, kid, r1)
'
' xb Toolkit XuiSendMessage (*, #SetBorder, $$BorderNone, $$BorderNone, $$BorderNone, $$BorderNone, 0, 0)
' xb * XuiSendMessage (Toolkit, #SetBorder, $$BorderNone, $$BorderNone, $$BorderNone, $$BorderNone, 0, 0)
' * * XuiSendMessage (Toolkit, #SetBorder, $$BorderNone, $$BorderNone, $$BorderNone, $$BorderNone, 0, 0)
' * * XuiSendMessage (Toolkit, #SetBorder, $$BorderResize, $$BorderNone, $$BorderNone, $$BorderNone, 0, 0)
' * * XuiSendMessage (Toolkit, #SetColor, $$Cyan, -1, -1, -1, 0, 0)
' * XuiLabel XuiSendMessage (*, #SetColor, $$BrightCyan, $$Black, $$Black, $$White, 0, 0)
' * XuiCheckBox XuiSendMessage (*, #SetColor, $$BrightGreen, $$Black, $$Black, $$White, 0, 0)
' * XuiTextArea XuiSendMessage (*, #SetColor, $$Cyan, $$LightGreen, $$Black, $$White, 0, 0)
' * XuiTextArea XuiSendMessage (*, #SetColorExtra, $$White, -1, -1, -1, 0, 0)
' * XuiTextLine XuiSendMessage (*, #SetColor, $$Blue, $$LightGreen, $$Black, $$White, 0, 0)
' * XuiTextLine XuiSendMessage (*, #SetColorExtra, $$LightYellow, -1, -1, -1, 0, 0)
' myprog XuiPushButton XuiSendMessage (*, #SetBorder, $$BorderNone, -1, -1, -1, 0, 0)
' myprog XuiPushButton XuiSendMessage (TouchedButton, #SetBorder, $$BorderNone, -1, -1, -1, 0, 0)
' xb XuiTextArea XuiSendMessage (*, #SetFont, 0, 0, 0, 0, 0, @"Fixedsys")
' xb XuiTextArea XuiSendMessage (TextUpper, #SetFont, 0, 0, 0, 0, 0, @"System")
' * XuiTextArea XuiSendMessage (*, #SetColor, $$Black, $$LightGreen, -1, -1, 0, 0)
' * XuiTextArea XuiSendMessage (*, #SetColorExtra, $$LightYellow, $$LightCyan, -1, -1, 0, 0)
' xb XuiToggleButton XuiSendMessage (*, #SetFont, 260, 600, 0, 0, 0, @"Comic Sans MS")
' xb XuiRadioButton XuiSendMessage (*, #SetFont, 260, 600, 0, 0, 0, @"Comic Sans MS")
' xb XuiPressButton XuiSendMessage (*, #SetFont, 260, 600, 0, 0, 0, @"Comic Sans MS")
' xb XuiPushButton XuiSendMessage (*, #SetFont, 260, 600, 0, 0, 0, @"Comic Sans MS")
' xb XuiRadioBox XuiSendMessage (*, #SetFont, 260, 600, 0, 0, 0, @"Comic Sans MS")
' xb XuiCheckBox XuiSendMessage (*, #SetFont, 260, 600, 0, 0, 0, @"Comic Sans MS")
' xb XuiLabel XuiSendMessage (*, #SetFont, 260, 600, 0, 0, 0, @"Comic Sans MS")
' xb XuiLabel XuiSendMessage (Message, #SetFont, 260, 600, 0, 0, @"Comic Sans MS")
' xb XuiLabel XuiSendMessage (*, #SetColor, 0x0060C000, -1, -1, -1, 0, 0)
' xb XuiPushButton XuiSendMessage (*, #SetColor, 0xFFA0A000, -1, -1, -1, 0, 0)
' xb XuiLabel XuiSendMessage (FileLabel, #SetColor, 0xE0604000, -1, -1, -1, 0, 0)
' xb XuiMenu XuiSendMessage (*, #SetFont, 240, 400, 0, 0, 0, @"MS Sans Serif")
' xb XuiMenu XuiSendMessage (*, #SetFont, 240, 400, 0, 0, 0, @"Comic Sans MS")