gui.dll

Classes:

Functions:

Index

Common index


Class CommentFilter

#module root.system.parsers
Comments filter of the // ... and /* ... */ types that supports nested 
and intersected comments.

Methods:


CommentFilter::CommentFilter(void)

Creates a comments filter.

Class CustomControlBase

#module root.system.windows.controls
Базовый класс для органов управления типа custom.

Methods:


CustomControlBase::SetNotifyHandler(pointer any)

param hnd;

Устанавливает объект, который будет получать уведомления от данного органа
управления.
hnd			Указатель на объект, у которого должны вызываться методы.

Class GCaret

#module root.system.windows.tools
The GCaret class represents objects, each of which is a window caret. An 
application may create only one GCaret class object, since the caret is a 
shareable system resource.

Methods:


GCaret::GCaret(number, number, refer object GWnd)

param width, height, wnd;

Creates the window caret.
width		The caret width in logical units.
height		The caret height in logical units.
wnd			The window for which the caret must be created.
Comments
This method creates the caret of the specified size for the specified window. 
The current caret is destroyed, no matter in which window it is situated. An 
application may create only one GCaret class object, since the caret is a 
shareable system resource. The caret should be created when the window receives 
the input focus or is activated. The caret should be destroyed when the window 
loses the input focus or is deactivated. Initially the caret is invisible. To 
make the caret visible an application should call the GCaret::Show method.

GCaret::GetPos(void)

Retrieves the window caret position.
Returns a two element vector. The first element is the x-coordinate of the caret 
position. The second element is the y-coordinate of the caret position.
Comments
The caret position is always considered in the coordinates of the window client 
area.

GCaret::Hide(void)

Makes the caret invisible on the screen.

GCaret::SetPos(number, number)

Param x, y;
Sets the window caret position.
x			x-coordinate of the caret position.
y			y-coordinate of the caret position.
Comments
The caret position is always considered in the coordinates of the window client 
area.

GCaret::Show(void)

Shows the window caret on the screen in its current position.

GCaret::~GCaret(void)

Destroys the window caret.
Comments
Since the caret is a shareable system resource, it should be destroyed by an 
application when the window loses the input focus or is deactivated.

Class GColorDialog : GStdDialog

#module root.system.windows.dialogs.sysnative
The GColoDialogf class represents objects that are standard color selection 
dialog windows.

Methods:


GColorDialog::GColorDialog(refer object GWnd)

param parentWnd;

Creates a standard color selection dialog window.
ParentWnd		The parent window.
Comments
This method form creates an object that matches a standard dialog window with a 
parent. The window does not exist in the system before the GColorDialog::Open 
method is called. This allows an application to call additional methods that set 
the window state before it is opened.

GColorDialog::GColorDialog(void)

Creates a standard color selection dialog window.
Comments
This method form creates an object that matches a standard top level dialog 
window. The window does not exist in the system before the GColorDialog::Open 
method is called. This allows an application to call additional methods that set 
the window state before it is opened.

GColorDialog::Open(void)

Creates an object-matching window in the system.
Returns the color (ColorRef class object) selected by the user. If the user has 
pressed the Cancel button, the method returns nothing.
Comments
When this method is called the control is not returned by the sytem until the 
window is closed by the user.

GColorDialog::SelectColor(refer object ColorRef)

param color;

Selcts a color among the available colors of the color selection dialog window.
color			The color that must be selected in the window before it is created.

GColorDialog::SetCaption(refer object BaseString)

param caption;

Sets the standard color selection dialog window caption
caption			Text to be placed into the window caption.

GColorDialog::~GColorDialog(void)

Destroys a standard color selection dialog window.

Class GComboBox : GControl

#module root.system.windows.controls
The GComboBox class represents objects associated with controls of a list box 
combined with the edit box type (a combo box).

Methods:


GComboBox::Add(refer object BaseString)

param str;

Adds an item to the list.
str			A string to add.
Comments
This method adds a string to the end of the list, if the list is unsorted. If 
the list is sorted, then the string is inserted into it and then the list is 
sorted.

GComboBox::Add(refer object Vector)

param strs;

Adds a group of elements to the list.
str			A vector of strings to add.
Comments
This method adds a string to the end of the list, if the list is unsorted. If 
the list is sorted, then the string is inserted into it and then the list is 
sorted.

GComboBox::DropDown(boolean)

param state;

Shows the list in the droppoed down or collapsed view.
state		TRUE if the list must drop down. FALSE if the list must collapse.
Comments
This method works only for drop-down list boxes.

GComboBox::Find(refer object BaseString)

param str;

Searches for the list item
str			A string to find.
Returns the index of the list item found. The method returns nothing, if there 
is no item to find in the list.
Comments
This method searches for the first item matching the string specified. The 
search is not case sensitive.

GComboBox::GComboBox(int, refer object GTabWnd)

#rus См. конструктор со вторым параметром типа GWnd.

GComboBox::GComboBox(int, refer object GWnd)

param id, wnd;

Creates an object associated with a list.
id			List identifier.
wnd			The list-owning window.
Comments
The method associates an object with the list that must already exist in the 
system.

GComboBox::GetCount(void)

Retrieves the number of items in the list.
Returns the number of items in the list. This value is greater by one than the 
last item index (indexes are zero-based).

GComboBox::GetSel(void)

Retrieves the selected list item in the index form.
Returns the index of the selected list item. The method returns nothing, if no 
list item is selected.

GComboBox::GetStr(number)

param index;

Retrieves the list item.
index		Index of the list item that is to be retrieved.
Returns a string corresponding to the list item.

GComboBox::GetText(void)

Retrieves the text in the edit box. 
Returns a string corresponding to the text in the edit box.

GComboBox::GetTextSel(void)

Retrieves the position of the selected text portion in the edit box.
Returns a vector, which consists of the starting and the ending positions of the 
selected text portion in the edit box.

GComboBox::Insert(refer object BaseString, number)

param str, index;

Inserts an item into the specified position in the list.
str			A string to insert.
index		Index of the list position, into which the string is to be inserted. If 
			this argument equals -1, then the string is added to the end of the list.
Comments
This method inserts a string into the specified position. No sorting takes 
place, even if the list is sorted. 

GComboBox::LimitText(int)

param numChars;

Sets the limit for the length of the text that a user may enter into the edit 
box.
numChars	Length (in bytes) of the text that a user may enter into the edit 
			box. If this argument value is 0, then the default text length is set.
Comments
This method limits only the text that a user may enter. It doesn't limit the 
text that is already in the edit box or is set with the GComboBox::SetText 
method.

GComboBox::Remove(number)

param index;

Removes an item from the list.
index		Index of the element to be removed.
Comments
This method form removes the item with the specified index.

GComboBox::Remove(refer object BaseString)

param str;

Removes an item from the list.
str			The string to be removed.
Comments
This method form removes the first item that matches the string specified.

GComboBox::Reset(void)

Removes all the items from the list and all the text from the edit box.

GComboBox::SetOverrideState(boolean)

param state;

Toggles the text overwrite mode.
state		TRUE if the text overwrite mode must be swiched on. FALSE if the text 
			overwrite mode must be swiched off.

GComboBox::SetStr(refer object BaseString, number)

param str, index;

Sets the list item.
str			A string that is to be set.
index		Index of the list string, that is to be set.

GComboBox::SetText(refer object BaseString)

param str;

Sets the text in the edit box
str			The string that is to be set.
Comments
If an application calls this method for a list, that has a modifiable edit box, 
then the str argument must be equal to one of the strings from the list or to an 
empty string.

GComboBox::SetTextSel(number, number)

param beginCharIndex, endCharIndex;

Selects a part of the text in the edit box.
beginCharIndex	The starting position of the selected part.
endCharIndex	The ending position of the selected part.
Comments
If the beginCharIndex argument value is 0, and the endCharIndex argument value 
is -1 then the selection of the text is removed.

GComboBox::~GComboBox(void)

Destroys an object associated with the list.

Class GContextMenu : GMenu

#module root.system.windows.controls
The GContextMenu class represents objects associated with the window context 
menu.

Methods:


GContextMenu::GContextMenu(refer object GWnd)

param wnd;

Creates an object associated with the window context menu.
wnd			The window owning the context menu.
Comments
This method associates the object with the context menu that the window owns. 
This menu is the top level context menu for the window. The menu must already 
exist in the system.

Class GControl

#module root.system.windows.controls
The Gcontrol class represents objects associated with controls. This class 
serves as a base class for other classes, which represent controls of concrete 
types (e.g. for the GListBox class, which represents a list box). Therefore, it 
creating objects of GControl class is not meaningful.

Methods:


GControl::GetID(void)

Retrieves the control identifier.
Returns the integer identifier.

GControl::GetParent(void)

Retrieves the parent window, which owns the control.
Returns a pointer to a GWnd type object, which is a parent window.

GControl::OnCommand(refer object GWnd, int, int)

param wnd, id, notifyCode;

A handler of an event, which occured in the control due to default handling of 
the WND_COMMAND event, which is sent to the the control-owning window.
wnd			The control-owning window.
id			The control identifier.
notifyCode	Notification code.
Returns -1 if default handling is required.
Comments
In the GControl class this method generates a new command event with the number 
equal to CMD_FIRST + id and the same wnd, id and notifyCode arguments. 
Therefore, if an application needs to overwrite this method in a derived class, 
it must call the method of the base class from there. In the GControl class this 
method returns the value, which the handler of the generated command event 
returns.

Class GControlToolTip : GToolTip

#module root.system.windows.tools
The control popup hint access object.
Comments
The user may create an object of this class, then create the hint with the 
GToolTip::Create method and manipulate with the hint through the methods of the 
object, created with specification of the control identifier, until the hint is 
not destroyed with the GToolTip::Delete method.

Methods:


GControlToolTip::GControlToolTip(int, refer object GWnd)

param id, wnd;

Creates the window control popup hint access object.
id			The window control identifier.
wnd			The window.

Class GCustomControl

#module root.system.windows.controls
Орган управления типа custom.
В классе определены следующие поля:
ParentWnd		Указатель на родительское окно.
RescaleFromDef	Вектор из двух чисел, являющихся
				коэффициентами преобразования соответственно
				x- и y-координаты из системы координат по
				умолчанию в текущую систему координат.
InitPos			Начальная позиция для метода Open.
InitSize		Начальный размер для метода Open.
ID				Системный идентификатор, который метод Open
				должен установить.

Methods:


GCustomControl::GCustomControl(refer object GWnd)

param parentWnd;

Создает орган управления типа custom.
parentWnd		Родительское окно.
Комментарии
До вызова метода Open орган управления в системе не существует.
Это позволяет приложению после создания объекта установить
его начальное состояние.

GCustomControl::GetID(void)

Получает системный идентификатор.
Возвращает целое значение, идентифицирующее открытое окно в системе.

GCustomControl::SetCustomRsc(refer object String, refer any)

param attrName, attrValue;

Устанавливает атрибут окна из ресурса. Данный метод вызывается только,
если окно создано из ресурса типа custom (см. класс PIRCustomControl).
attrName		Имя атрибута.
attrValue		Значение атрибута.
Комментарии
Метод вызывается после создания объекта, но до открытия окна.
В данном классе метод просто присваивает значение attrValue в поле с
именем, совпадающим с attrName, за исключением следующих атрибутов:
FgColor, BgColor, Font.
В производном классе можно переопределить данный метод, чтобы вызывать
какой-то код вместо присвоения поля.

GCustomControl::SetPos(int, int)

param x, y;

Устанавливает позицию.
x				x-координата.
y				y-координата.

GCustomControl::SetSize(int, int)

param widht, height;

Устанавливает размер.
width			Ширина.
height			Высота.

Class GDateComboBox : GRegExprComboBox, GDateControl

#module root.system.windows.controls
This is a list combined with a string editing control that meets the 
string representation of date. 
For more information see the GDateControl class description.

Methods:


GDateComboBox::GDateComboBox(int, refer object GWnd, refer ...)

param id, wnd, [format, is2DigitYear];

#rus Создает объект, ассоциированный со списком, комбинированным
#rus с органом редактирования.
#rus id				Идентификатор списка.
#rus wnd				Окно, владеющее списком.
#rus format			Формат представления даты. Может быть равен
#rus 				"DMY" - представление в виде DD/MM/YYYY или
#rus 				"MDY" - представление в виде MM/DD/YYYY или
#rus 				"YMD" - представление в виде YYYY/MM/DD.
#rus 				Если не задано, то используется формат
#rus 				представления даты по умолчанию.
#rus is2DigitYear	Если равно TRUE, то пользователь вводит год в
#rus  				виде двух цифр. Если не задано, то пользователь
#rus  				вводит год в виде четырех цифр.
#rus Комментарии
#rus Метод связывает объект со списком, который должен
#rus существовать в системе.

Class GDateControl : GRegExprControl

#module root.system.windows.controls
This is an abstract control that works with a string representation 
of date.
This is an abstract class and it is designed for deriving certain 
controls from the current class and from any descendant of the 
GControl class (for instance, from the GEdit class).

Methods:


GDateControl::Check(refer object String, boolean)

param text, isComplete;

Checks the text for the date representation accordance.
text			Text.
isComplete		Specifies whether to treat this text as completed.
Returns TRUE if the text if text meets date representation, FALSE if not.

GDateControl::GDateControl(boolean)

param is2DigitYear;

#rus Создает объект. Используется формат представления даты по умолчанию.
#rus is2DigitYear	Если равно TRUE, то пользователь вводит год в
#rus 				виде двух цифр.

GDateControl::GDateControl(object String)

param format;

Creates an object.
format			Date representation format. It can be equal to
				"DMY" - DD/MM/YYYY representation or
				"MDY" - MM/DD/YYYY representation .

GDateControl::GDateControl(object String, boolean)

param format, is2DigitYear;

#rus Создает объект.
#rus format			Формат представления даты. Может быть равен
#rus 				"DMY" - представление в виде DD/MM/YYYY или
#rus 				"MDY" - представление в виде MM/DD/YYYY или
#rus 				"YMD" - представление в виде YYYY/MM/DD.
#rus is2DigitYear	Если равно TRUE, то пользователь вводит год в
#rus 				виде двух цифр.

GDateControl::GDateControl(void)

#rus Создает объект. Используется формат представления даты по умолчанию.

Class GDateEdit : GRegExprEdit, GDateControl

#module root.system.windows.controls
This is a string editing control that meets the string representation 
of date. 
For more information see the GDateControl class description.

Methods:


GDateEdit::GDateEdit(int, refer object GWnd, refer ...)

param id, wnd, [format, is2DigitYear];

#rus Создает объект, ассоциированный с органом редактирования.
#rus id				Идентификатор органа редактирования.
#rus wnd				Окно, владеющее органом редактирования.
#rus format			Формат представления даты. Может быть равен
#rus 				"DMY" - представление в виде DD/MM/YYYY или
#rus 				"MDY" - представление в виде MM/DD/YYYY или
#rus 				"YMD" - представление в виде YYYY/MM/DD.
#rus 				Если не задано, то используется формат
#rus 				представления даты по умолчанию.
#rus is2DigitYear	Если равно TRUE, то пользователь вводит год в
#rus  				виде двух цифр. Если не задано, то пользователь
#rus  				вводит год в виде четырех цифр.
#rus Комментарии
#rus Метод связывает объект с органом редактирования, который должен
#rus существовать в системе.

Class GDatePicker : GCustomControl

#module root.system.windows.controls
Орган редактирования даты.

Methods:


Class GDialog : GModalWnd

#module root.system.windows.dialogs
This is a dialog of a common type for servicing relatively simple 
modal dialogs.

Methods:


GDialog::GDialog(object String, object Vector, object Vector, object Vector, refer object GWnd)

param Template, InData, IDE, ExitCode, Parent;

Creates a dialog of a common type.
Template		Dialog resource name.
InData		Vector of initial field values in the following 
			represenatation<<id, ...>>, as in the GWnd::SetItems.
IDE			Vector of field identifiers from where the final 
			values are obtained.
ExitCode		Vector of codes which are used for closing a dialog.
Parent		Parent window.
Comments
After completion of a dialog work there is a vector in the Data field 
which contains field values enumerated in the IDE parameter. If the 
IDE parameter represents as empty vector then the Data field contains 
values enumerated in the InData parameter.

GDialog::GDialog(object String, object Vector, object Vector, object Vector, refer object GWnd, object String)

param Template, InData, IDE, ExitCode, Parent, LibName;

Creates a dialog of a common type. Resources are obtained from a 
library.
Template		Dialog resource name.
InData		Vector of initial field values in the following 
			represenatation <<id, ...>>, as in the GWnd::SetItems.
IDE			Vector of field identifiers from where the final 
			values are obtained.
ExitCode		Vector of codes which are used for closing a dialog.
Parent		Parent window.
LibName		Library name.
Comments
After completion of a dialog work there is a vector in the Data field 
which contains field values enumerated in the IDE parameter. If the 
IDE parameter represents as empty vector then the Data field contains 
values enumerated in the InData parameter.

GDialog::SetMessageHandler(int, func)

param id, hnd;

Sets a command event handler.
id				Identifier of the control for which a handler 
				should be set.
hnd				Handler.
Comments
The handler specified via the hnd parameter should represent a function that receives the following parameters:
id 			Control identifier of the int type.
notifyCode		Notification code of the int type.
wnd			Window of the refer object GDialog type.

GDialog::SetSetupFunc(refer func)

param setupFunc;

Sets a function that is executed on the window opening.
setupFunc		Function that receives the following parameters:
wnd			Form of the refer object Form type.

Class GDragDropWnd : GWnd

#module root.system.windows
This is a window that supports the drag-and-drop protocol.
Comments
The current realization supports the drag-and-drop protocol not 
only between windows of one application but also between windows 
of different applications.

Methods:


GDragDropWnd::GDragDropWnd(refer ...)

Creates a window that supports the drag-and-drop protocol .
Comments 
For more information see the GWnd::GWnd.

GDragDropWnd::GetDragMode(void)

Gets dragging type.
This method returns dragging type if dragging is being performed.
This method returns nothing if there is no dragging.
Comments
Available Dragging types include:
DRAG_MOVE		Objects moving.
DRAG_COPY		Objects copying.
DRAG_NODROP		Barring on objects moving/copying.

GDragDropWnd::OnCopyObjects(object Vector)

param v;

Notifies a window that objects has now copies according to the
drag-and-drop protocol.
v				Vector that contains pointers to the objects 
				that were copied.
Comments
The v parameter has the following type: <<ptr1, ptr2, ... >>, where 
the ptr1, ptr2, ... elements represent object pointers.
An application has to override this method to ascertain about copying 
of the objects pointers to which are passed by the v parameter.
This method does nothing in this class 

GDragDropWnd::OnCreateObjects(object Vector)

param v;

Notifies a window about objects creation according to the 
drag-and-drop protocol.
v				Vector that contains pointers to the objects 
				to be created and new object locations.
Comments
The v parameter has the following type: << <<ptr1, rect1>>, <<ptr2, 
rect2>>, ... >>, where the ptr1, ptr2, ... elements represent object 
pointers and the rect1, rect2, ... elements represent objects of the 
RECT class that set objects location within the window client region.
An application has to override this method to create objects that are 
the copies of objects whose pointer are passed in the v parameter and 
set new object locations at that.
The application should not change the objects to which the v parameter points.
This method does nothing in this class 

GDragDropWnd::OnDeleteObjects(object Vector)

param v;

Notifies a window about objects deletion according to the 
drag-and-drop protocol.
v				Vector that contains pointers to the objects 
				to be deleted.
Comments
The v parameter has the following type: <<ptr1, ptr2, ... >>, where the ptr1, ptr2, ... elements represent object pointers.
An application has to override this method to delete objects whose 
pointer are passed in the v parameter.
This method does nothing in this class 

GDragDropWnd::OnDragObjects(object POINT, refer object Vector)

param pt, rects;

Notifies a window dragging operation.
pt			Point on the window client region where a mouse is 
located.
rects			Location of frames (on the window client region) 
that demonstrate objects dragging process. 
Represents a vector of the RECT type objects.
			An application can change these objects in order to 
control frame locations.
Returns dragging type (see Comments).
Comments
Available Dragging types include:
DRAG_MOVE		Objects moving.
DRAG_COPY		Objects copying.
DRAG_NODROP		Barring on objects moving/copying.
DRAG_ABORT		Dragging termination (as of the left mouse button is 
depressed).
EMPTY			Default.
Default dragging type means the following:
1. Objects dragging, if a mouse is in the window client region of a certain class and Ctrl button is depressed.
2. Objects copying, if a mouse is in the window client region of a certain class and Ctrl button is pressed .
3. Barring on objects moving/copying, if a mouse is any other place.
The rects parameter contains object locations as if a user has ended 
dragging at the moment of method calling.
An application has to override this method to set dragging type 
different from the default one or to adjust dragging object locations.
This method does nothing in this class that is the default dragging type is set and object locations are not changed.

GDragDropWnd::OnGetObjects(object POINT)

param pt;

Notifies a window about objects availability and their locations to start dragging operation.
pt			Point on the window client region where a user 
			pressed the left mouse button.
Returns a vector that contains pointers to the objects to be dragged 
and object locations. This method returns nothing if an application 
does not need to drag any object.
Comments
An application has to override this method to find application objects 
that correspond to the pt parameter value and return the << <<ptr1, 
rect1>>, <<ptr2, rect2>>, ... >> vector where the ptr1, ptr2, ... 
elements represent object pointers and the rect1, rect2,
... elements represent objects of the RECT class that set objects 
location within the window client region.
The dragged objects should meet the serialization capabilities.
This method does nothing in this class that is does not require 
dragging.

GDragDropWnd::OnMoveObjects(object Vector)

param v;

Notifies a window about objects moving according to the 
drag-and-drop protocol.
v				Vector that contains pointers to the objects 
				to be moved and new object locations.
Comments
The v parameter has the following type: << <<ptr1, rect1>>, <<ptr2, 
rect2>>, ... >>, where the ptr1, ptr2, ... elements represent object 
pointers and the rect1, rect2, ... elements represent objects of the 
RECT class that set objects location within the window client region.
An application has to override this method to move objects whose 
pointer are passed in the v parameter by setting new object locations.
This method does nothing in this class 

GDragDropWnd::SetStartDelta(int)

Sets the precision of dragging start: mouse displacement after 
pressing and holding left button necessary to begin dragging.
delta		Displacement which is set in pixels.
Comments
After creation of an object of this type the displacement is equal to 0 that is each mouse movement when left button is pressed and held results in dragging start.

Class GEdit : GControl

#module root.system.windows.controls
The GEdit class represents objects, associated with edit boxes.

Methods:


GEdit::CharToLine(number)

param charIndex;

Retrieves the line index of the character from the edit box.
charIndex	Index of the character, which line index must be retrieved. If this 
			argument equals -1, then the current character is considered, i.e. the character 
			at which position the caret is placed.
Returns the line index of the character, i.e. the number of lines from the 
beginning of the edit box to the character specified.

GEdit::Copy(void)

If any text is selected copies the selection into the system clipboard

GEdit::GEdit(int, refer object GTabWnd)

#rus См. конструктор со вторым параметром типа GWnd.

GEdit::GEdit(int, refer object GWnd)

param id, wnd;

Creates an object associated with an edit box.
id			An identifier of the edit box.
wnd			A window owning the edit box.
Comments
This method associates an object with the edit box, that must already exist in 
the system.

GEdit::GetLine(number)

param lineIndex;

Retrieves a line from the edit box. 
lineIndex	Index of the line to retrieve. If this argument equals -1, then the 
			current line is considered, i.e. the line containing the caret.
Returns the line matching the specified index without return characters at the 
end.

GEdit::GetLineCount(void)

Retrieves the number of lines in the edit box. Returns the number of lines in 
the edit box. This value is greater by one than the index of the last line 
(indexes are zero-based). If there is no text in the edit box, then 1 is 
returned.

GEdit::GetLineLength(number)

param lineIndex;

Retrieves the line length of the edit box.
lineIndex	Index of the line which length is to be retrieved. If the argument 
			equals -1, then the current line is considered, i.e. the line which contains the 
			caret.
Returns the length of the line matching the specified index without return 
characters at the end.

GEdit::GetModifyState(void)

Checks if the edit box contents was modified. Returns a boolean value. TRUE if 
the edit box contents was modified. FALSE if not.
Comments
System supports for an edit box an internal flag of modification of its 
contents. Thif flag is removed after the edit box is created or after the 
GEdit::SetText is called. Any modification of the text in the edit box sets the 
flag. An application may remove the flag by calling the GEdit::SetModifyState 
method.

GEdit::GetSel(void)

Retrieves the position of the selected text portion in the edit box. 
Returns a vector containing the starting and the ending positions of the 
selected text portion in the edit box.

GEdit::GetText(void)

Retrieves the text in the edit box. Returns a string matching the text in the 
edit box.

GEdit::GetTextLength(void)

Retrieves the length of the text in the edit box. Returns the length of the text 
in the edit box.

GEdit::GetVisLineIndex(void)

Retrieves the index of the topmost visible line of the edit box.
Returns the index of the topmost visible line of the edit box.

GEdit::Insert(refer object BaseString)

param newStr;

Inserts text instead of the selected text portion.
newStr			A string to insert.
Comments
To replace all the text in the edit box the GEdit::SetText method should be 
used. If the selection is absent in the edit box, then the text is inserted into 
the cursor position.

GEdit::LimitText(int)

param numChars;

Limits the length of the text the user may enter into the edit box. 
numChars		Length in bytes of the text the user may enter into the edit box. If 
				this argument equals 0, then the default text length is set.
Comments
This method limits only the text the user may enter. It doesn't limit the text 
that already was in the edit box or the text which is set with the 
GEdit::SetText method.

GEdit::LineToChar(number)

Retrieves the character index of the line from the edit box.
lineIndex	Index of the line, which character index must be retrieved. If this 
			argument equals -1, then the current line is considered, i.e. the line 
			containing the caret.
Returns the character index of the line, i.e. the number of characters from the 
beginning of the edit box to the line specified.

GEdit::Paste(void)

If there is any text in the system clipboard, pastes it instead of the selction.

GEdit::Scroll(number, number)

param numLines, numChars;

Scrolls the text in the edit box.
numLines		Specifies the number of lines to scroll vertically. This argument may 
				be negative for scrolling upwards.
numChars		Specifies the number of characters to scroll horizontally. This 
				argument may be negative for scrolling leftwards.
Comments
This method is sensible only for a multiline edit box.

GEdit::SetCaretPos(number)

param charIndex;

Sets the caret position in the edit box.
charIndex		The caret position in the edit box.
Comments
When this method is called the selection is removed from the text.

GEdit::SetModifyState(boolean)

param state;

Sets or removes the flag of modification of the edit box contents.
state			TRUE if the modification flag should be set. FALSE if it should be 
				removed.
Comments
See the GEdit::GetModifyState method comments.

GEdit::SetOverrideState(boolean)

param state;

Sets or removes the text overwrite mode.
state			TRUE if the text overwrite mode must be set. FALSE if the text overwrite 
				mode must be removed.

GEdit::SetReadOnlyState(boolean)

param state;

Sets or removes the readonly state of the edit box.
state			TRUE if the readonly state must be set. FALSE if the readonly state must 
				be removed.

GEdit::SetSel(number, number)

param beginCharIndex, endCharIndex;

Selects a part of the text in the edit box. 
beginCharIndex	The starting position of the selected text part.
endCharIndex	The ending position of the selected text part.
Comments
When this method is called, the caret is shifted to the position specified in 
the endCharIndex argument. If the beginCharIndex argument equals -1, then the 
text selection is removed without changing the caret position. If the the 
endCharIndex argument equals -1, then the text is selected from the position 
specified in the beginCharIndex argument to the end of the text and the caret is 
shifted to the end of the text. When this method is called the control is 
scrolled so that the selected text portion is visible.

GEdit::SetSel(number, number, boolean)

param beginCharIndex, endCharIndex, isNoScroll;

Selects a part of the text in the edit box. 
beginCharIndex	The starting position of the selected text part.
endCharIndex	The ending position of the selected text part.
isNoScroll		TRUE if the control must not be scrolled so that the selected part 
				is visible, FALSE if it must be scrolled.
Comments
When this method is called, the caret is shifted to the position specified in 
the endCharIndex argument. If the beginCharIndex argument equals -1, then the 
text selection is removed without changing the caret position. If the the 
endCharIndex argument equals -1, then the text is selected from the position 
specified in the beginCharIndex argument to the end of the text and the caret is 
shifted to the end of the text. This method form is sensible only for a 
multiline edit box, since the isNoScroll argument is ignored in a single line 
edit box.

GEdit::SetTab(int)

param width;

Sets the width of the tab character.
width			The width of the tab character.
Comments
If an application has called this method, then the tab character is mapped to 
the edit box as skipping of number of characters specified in the width 
argument. This method is sencible only for a multiline edit box.

GEdit::SetText(refer object BaseString)

param str;

Sets the text in the edit box.
str			A string to set.

GEdit::~GEdit(void)

Destroys an object associated with an edit box.

Class GFileDialog : GStdDialog

#module root.system.windows.dialogs.sysnative
The GFileDialog class represents objects which are standard file selection 
dialog windows. The GOpenDialog and GSaveDialog derived classes represent a file 
open and file save stsndard dialogs respectively. An application may create 
objects only of GOpenDialog and GSaveDialog classes, since the GFileDialog class 
has only an exception raising constructor. 
The class has the following fields specified:
Filter			The filter index (one based).

Methods:


GFileDialog::AllowMultiSelect(void)

Allows multiple file selection in the window.

GFileDialog::Open(void)

Creates a window matching the object in the system.
Returns a path to the file the user has chosen, if the window allows only single 
file selection, or a vector of paths the files the user has chosen, if the 
window allows selection of multiple files. If the user has clicked the cancel 
button, then this method returns nothing.
Comments
When this method is called the control is not returned until the user closes the 
window.

GFileDialog::SelectFilter(int)

param index;

Select a filter from the list of filters of a standard file selection dialog 
window.
index			Index of the filter (one based), that must be selected in the window 
				before it is created.

GFileDialog::SetCaption(refer object BaseString)

param caption;

Sets a standard file selection dialog window caption.
caption			The text to place into a window caption.

GFileDialog::~GFileDialog(void)

Destroys a standard file selection dialog window.

Class GFontDialog : GStdDialog

#module root.system.windows.dialogs.sysnative
The GFontDialog class represents objects which are standard font selection 
dialog windows.

Methods:


GFontDialog::GFontDialog(object String, number, int)

param faceName, size, attr;

Creates a standard font selection dialog window. Font parameters are: name 
(e.g., System), style (e.g., bold), vertical size, efect (e.g., underline) and 
color.
faceName		Font name.
size			Font vertical size in 1/72's of inch.
attr			Font attributes.
Comments
This method form creates an object correspondong to a standard top level dialog 
window. The attr argument is a combination of the following values:
FT_BOLD			Bold font style.
FT_ITALIC		Italic font style.
FT_UNDERLINE	Underlined font.
FT_STRIKEOUT	Striked out font.
The window does not exist in the system before the GFontDialog::Open method is 
called. This allows an application to call additional methods that set the 
window state before it is opened.

GFontDialog::GFontDialog(object String, number, int, refer object GWnd)

param faceName, size, attr, parentWnd;

Creates a standard font selection dialog window. Font parameters are: name 
(e.g., System), style (e.g., bold), vertical size, efect (e.g., underline) and 
color.
faceName		Font name.
size			Font vertical size in 1/72's of inch.
attr			Font attributes.
Comments
This method form creates an object correspondong to a standard dialog window 
with a parent. The attr argument is a combination of the following values:
FT_BOLD			Bold font style.
FT_ITALIC		Italic font style.
FT_UNDERLINE	Underlined font.
FT_STRIKEOUT	Striked out font.
The window does not exist in the system before the GFontDialog::Open method is 
called. This allows an application to call additional methods that set the 
window state before it is opened.

GFontDialog::Open(void)

Creates a window matching the object in the system.
Returns a vector of five items, which are user-chosen font parameters. If the 
user has clicked the Cancel button, then the method returns nothing.
Comments
The first element of the returned vector is a string which contains the font 
name. The second element is a floating-point decimal - the font vertical size in 
1/72's of inch. The third element is a whole number - the font attribute (see 
GFontDialog::GFontDialog comments). The fourth is a ColorRef class object - the 
font color. The fifth is whole number - code of the font character set (for 
Unocode fonts supporting Wndows 95 and WindowsNT). When this method is called 
the control is not returned until the user closes the window.

GFontDialog::SelectCharSet(int)

param charSet;

Selects a charset among the available charsets of the font selection dialog 
window.
charSet			Charset code.

GFontDialog::SelectColor(refer object ColorRef)

param color;

Selects a color among the available colors of the font selection dialog window.
color			Font color that must be selected in the window before it is created.

GFontDialog::SetCaption(refer object BaseString)

param caption;

Sets the standard font selection dialog window caption
caption			Text to be placed into the window caption.

GFontDialog::~GFontDialog(void)

Destroys a standard font selection dialog window.

Class GListBox : GControl

#module root.system.windows.controls
The GListBox class represents objects associated with list box type controls.

Methods:


GListBox::Add(refer object BaseString)

param str;

Adds an element to the list box.
str			A string that is to be added.
Comments
This method adds the string to the end of the list box, if the list box is 
unsorted. If the list is sorted, then the string is added to the list box and 
then the list box is sorted.

GListBox::Add(refer object Vector)

param strs;

Adds a group of elements to the list box.
strs		A vector of strings that are to be added.
Comments
This method adds a string to the end of the list box, if the list box is 
unsorted. If the list is sorted, then the string is added to the list box and 
then the list box is sorted.

GListBox::Find(refer object BaseString)

param str;

Searches for a list item.
str			A string to find.
Returns the index of the list item found. The method returns nothing, if there 
is no item that is to be found in the list.
Comments
This method searches for the first item coinciding with the string specified. 
The search is not case sensitive.

GListBox::GListBox(int, refer object GTabWnd)

#rus См. конструктор со вторым параметром типа GWnd.

GListBox::GListBox(int, refer object GWnd)

param id, wnd;

Creates an object associated with a list box.
id			List box identifier.
wnd			The window owning the list box.
Comments
This method associates an object with the list box that must already exist in 
the system.

GListBox::GetCaretPos(void)

Returns the caret position, i.e. an element, containing the focus rectangle. 
This element may be selected or may be not. 
Returns the caret position. The method returns 0, if there are no elements in 
the list.

GListBox::GetCount(void)

Retrieves the number of items in the list box.
Returns the number of items in the list box. This value is greater than the last 
element index by one (indexes are zero-based).

GListBox::GetSel(void)

Retrieves the selected list items in the index form. Returns the index of the 
selected list item, if this is a single selection list box, or a vector of 
indexes of selected items, if this is a multiple selection list box. The method 
returns nothing, if no element is selected in the list box.

GListBox::GetStr(number)

param index;

Retrieves the list box element.
index		The index of the list box element that is to be retrieved.
Returns a string, matching the list box element.

GListBox::GetStrSel(void)

Retrieves the selected list items in the string form. Returns the string of the 
selected list item. The method returns nothing, if no item is selected in the 
list box.

GListBox::GetVisIndex(void)

Retrieves the index of the topmost visible list item. 
Returns the index of the topmost visible list item. 

GListBox::Insert(refer object BaseString, number)

param str, index;

Inserts an element into the given position in the list.
str			A string that is to be inserted.
index		Index of the list position where the string is to be inserted. If this 
argument equals -1, then the string is added to the end of the list.
Comments
This method inserts a string into the specified position. Even if the list box 
is sorted, no sorting takes place.

GListBox::Remove(number)

param index;

Removes an item from the list box. 
Index		An index of the list item which is to be removed.
Comments
This method form removes an item with the specified index.

GListBox::Remove(refer object BaseString)

param str;

Removes an item from the list box.
str			A string which is to be removed.
Comments
This method form removes the first item coinciding with the string specified.

GListBox::Reset(void)

Removes all the elements from the list box.

GListBox::SetCaretPos(number)

param index;

Sets the caret position, i.e. an element, containing the focus rectangle. This 
element may be selected or may be not. 
index		Index of the list element, for which the caret is to be set.

GListBox::SetSel(number)

param index;

Sets the selection of the list item. The item is specified in the index form.
index		Index of the item for which the selection is to be set.
Comments
This method sets the selection for an item and scrolls the list to ensure that 
the item is visible, if necessary. The selection is removed from the previously 
seelcted elements. If -1 is specified as the index argument value, then the 
selection is reset and the edit box is cleared.

GListBox::SetSel(number, boolean)

param index, isSelect;

Sets or removes the selection of the list item. The item is specified in the 
index form.
index		Index of the item for which the selection is to be set or removed.
isSelect	A boolean value. TRUE if the selection is to be set. FALSE if the 
			selection is to be removed.
Comments
This method form sets or removes the selection of an item and scrolls the list 
(in case of setting the selection) to ensure that the item is visible, if 
necessary. The selection is not removed from the previously selected elements. 
This method form may be called only for multiple selection list boxes. If -1 is 
specified as the index argument value, then the selection is set or removed for 
all the list box items, depending on the isSelect argument value.

GListBox::SetStr(refer object BaseString, number)

param str, index;

Sets an element in the list box
str			A string that must be set.
index		The index of the list box line, which must be set.

GListBox::SetStrSel(refer object BaseString)

param str;

Sets the selection of the list item. The item is specified in the string form.
str			String from the list for which the selection is to be set.
Comments
This method sets or removes the selection for the first item with the specified 
string. This method form sets the selection for an item and scrolls the list to 
ensure that the item is visible, if necessary. The selection is removed from the 
previously selected item. 

GListBox::SetStrSel(refer object BaseString, boolean)

param str, isSelect;

Sets or removes the selection of the list item. The item is specified in the 
string form.
str			String of the item for which the selection is to be set or removed.
isSelect	A boolean value. TRUE if the selection is to be set. FALSE if the 
			selection is to be removed.
Comments
This method sets or removes the selection for the first item with the specified 
string. This method form sets or removes the selection of an item and scrolls 
the list (in case of setting the selection) to ensure that the item is visible, 
if necessary. The selection is not removed from the previously selected 
elements. This method form may be called only for multiple selection list boxes. 

GListBox::~GListBox(void)

Destroys an object associated with the list box.

Class GMenu

#module root.system.windows.controls
The GMenu class represents objects associated with the window menu.

Methods:


GMenu::BreakItem(int, boolean)

param id, state;

Brings the menu item to the new line (new column) or connects the menu item with 
the preceding one according to the identifier value.
id			Menu item identifier.
state		TRUE if the menu item must be brought to the new line (in case of a 
			horisontal menu) or to the new column (in case of a vertical menu). FALSE if 
			the item must be connected with the preceding one.
Comments
An application must pass as the id argument value an identifier, which is unique 
among all the menu items. This manipulating with any level menu item by calling 
this method for a top level menu.

GMenu::BreakItemByPos(int, boolean)

param pos, state;

Brings the menu item to the new line (new column) or connects the menu item with 
the preceding one according to the position value.
pos			Menu or menu item position.
state		TRUE if the menu item must be brought to the new line (in case of a 
			horisontal menu) or to the new column (in case of a vertical menu). FALSE if 
			thte item must be connected with the preceding one.
Comments
This method allows manipulating with a menu or a menu item only at the level of 
the menu itself.

GMenu::CheckItem(int, boolean)

param id, state;

Adds or removes a label for the item according to the identifier value.
id			Menu item identifier.
state		TRUE if a label must be added. FALSE if a label must be removed.
Comments
An application must pass as the id argument value an identifier, which is unique 
among all the menu items. This allows adding or removing a label for any level 
menu by calling this method for a top level menu. A top level menu item cannot 
be labeled. To add or remove a label for an entire menu an application must use 
the GMenu::CheckItemByPos method.

GMenu::CheckItemByPos(int, boolean)

param pos, state;

Adds or removes a label for the item according to the position value.
pos			Menu position or menu item position.
state		TRUE if a label must be added. FALSE if a label must be removed.
Comments
This method allows adding or removing a label for a menu or menu item only at 
the level of the menu itself. A top level menu item cannot be labeled.

GMenu::EnableItem(int, boolean)

param id, state;

Enables or disables the menu item according to the identifier value.
id			Menu item identifier.
state		TRUE if the item must be enabled, FALSE if the item must be disabled.
Comments
An application must pass as the id argument value an identifier, which is unique 
among all the menu items. This allows enabling or disabling any level menu item 
by calling this method for a top level menu. To enable or disable an entire menu 
an application must use the GMenu::EnableItemByPos method.

GMenu::EnableItemByPos(int, boolean)

param pos, state;

Enables or disables the menu item according to the position value.
pos			Menu position or menu item position.
state		TRUE if the item must be enabled, FALSE if the item must be disabled.
Comments
This method allows enabling or disabling a menu or a menu item only at the level 
of the menu itself.

GMenu::FindItem(int)

param id;

Searches for a menu item with the specified identifier.
id			The identifier that must be specified in the required menu item.
Returns the position of the first menu item found where the specified identifier 
is set. The method returns nothing if the menu item with the specified 
identifier does not exist.

GMenu::FindItem(refer object BaseString)

param text;

Searches for a menu or a menu item with the specified text.
text		The text that the required menu or menu item must contain.
Returns the position of the first menu or menu item found, that contain the text 
specified. The method returns nothing if the menu or menu item with the 
specified text does not exist.

GMenu::GMenu(int, refer object GMenu)

param pos, parentMenu;

Creates an object associated with the menu. The menu is owned by another menu 
(parent menu).
pos			Position of the menu in the parent menu.
parentMenu	The parent menu.
Comments
This method form associates an object with the menu owned by another menu 
(parent menu). The pos argument specifies the position of the menu in the parent 
menu (it is zero-based). The menu must already exist in the system.

GMenu::GMenu(object String)

param name;

Creates an object associated with the menu. It does not belong anywhere.
name		Menu name in the resources.
Comments
This method form creates the menu from the resources of the executable.

GMenu::GMenu(object String, object String)

param name, libName;

Creates an object associated with the menu. It does not belong anywhere.
name		Menu name in the resources.
libName		Name of the library from which the resources are taken.
Comments
This method form creates the menu from the resources of the library specified in 
the libName argument. If the libName argument equals an empty string, then the 
resources are taken from the executable.

GMenu::GMenu(refer object GWnd)

param wnd;

Creates an object associated with the menu. The menu is owned by a window.
wnd			A window owning the menu.
Comments
This method form associates an object with the menu owned by the window. Such a 
menu is the upper level menu for the window. The menu must already exist in the 
system.

GMenu::GMenu(void)

Creates an object associated with the menu. It does not belong anywhere.
Comments
This method form creates an empty menu.

GMenu::GetItemCount(void)

Retrieves the number of items in the menu. Returns the number of items in the 
menu.

GMenu::GetItemStr(int)

param pos;

Retrieves the text from the menu or menu item.
pos			Position of the menu or menu item.
Returns a string.

GMenu::InsertItem(int, int, refer object BaseString)

param pos, id, text;

Inserts a menu item.
pos			Position of the menu item, before which the new item is to be inserted.
id			Identifier of the menu item to be inserted.
text		Text of the menu item to be inserted.
Comments
An application may insert into the menu only a menu which is not inserted into 
another menu. A menu may be already inserted due to the following reasons:
1. The menu was created as an object associated with an existing menu; and the 
menu was not removed from its owner with the Gmenu::RemoveItem method.
2. The menu was created as an object associated with no existing menu; and the 
menu was inserted into some owner with the GMenu::InsertItem method.
Therefore, an application can insert the menu using the following ways:
1. Create an object associated with an existing menu; remove it from its owner 
with the GMenu::RemoveItem method; insert the menu into a new menu (probably, 
with a new text).
2. Create an object associated with no existing menu; insert the menu into a 
menu.
If an application specifies -1 as the pos argument value, then the menu or the 
menu item is inserted into the end of a menu.

GMenu::InsertItem(int, refer object GMenu, refer object BaseString)

param pos, menu, text;

Inserts a menu item.
pos			Position of the menu item, before which the new item is to be inserted.
menu		The menu to be inserted.
text		Text of the menu to be inserted.
Comments
An application may insert into the menu only a menu which is not inserted into 
another menu. A menu may be already inserted due to the following reasons:
1.The menu was created as an object associated with an existing menu; and the 
menu was not removed from its owner with the Gmenu::RemoveItem method.
2.The menu was created as an object associated with no existing menu; and the 
menu was inserted into some owner with the GMenu::InsertItem method.
Therefore, an application can insert the menu using the following ways:
1. Create an object associated with an existing menu; remove it from its owner 
with the GMenu::RemoveItem method; insert the menu into a new menu (probably, 
with a new text).
2. Create an object associated with no existing menu; insert the menu into a 
menu.
If an application specifies -1 as the pos argument value, then the menu or the 
menu item is inserted into the end of a menu.

GMenu::InsertSeparator(int)

param pos;

Inserts a seperator.
pos			Position of the menu item before which the separator is to be inserted.

GMenu::IsItem(int)

param id;

Checks if the menu contains a specific item.
id			Menu item identifier.
Returns a boolean value. TRUE if the menu contains the item with the specified 
identifier. FALSE if it doesn't.

GMenu::Popup(number, number, refer object GWnd)

param x, y, owner;

Shows the menu in the form of a popup menu.
x			The x-coordinate of the upper left corner of the popup menu.
y			The y-coordinate of the upper left corner of the popup menu.
owner		The window that owns the menu and receives all the events from it.

GMenu::PopupBelowItem(int, refer object GWnd)

param id, owner;

Shows the menu in the form of a popup menu in the position below the window 
control.
id			Identifier of the control below which the menu must be shown.
owner		The window that owns the menu and receives all the events from it.

GMenu::RemoveItem(int)

param pos;

Removes a menu or a menu item
pos			Position of the menu or menu item which must be removed.
Comments
If an application removes a menu, then a menu loses its owner and may be 
inserted into another menu.

GMenu::ShowItem(int, refer object String, boolean)

метод прячет и показывает элементы меню

GMenu::~GMenu(void)

Destroys an object associated with the menu.

Class GModalTabWnd : GModalWnd, GTabWnd

#module root.system.windows
This is a modal window with tabs as in the office organizer.

Methods:


GModalTabWnd::GModalTabWnd(object String)

param templateName;

Creates a modal window with top level tabs.
templateName	Dialog template name in resources.

GModalTabWnd::GModalTabWnd(object String, object String)

param templateName, libName;

Creates a modal window with top level tabs. 
Resources are obtained from a library.
templateName	Dialog template name in resources.
libName		Library name from which the resources are obtained.

GModalTabWnd::GModalTabWnd(object String, refer object GWnd)

param templateName, parentWnd;

#rus Создает модальное окно с закладками.
#rus templateName	Имя шаблона диалога в ресурсах.
#rus parentWnd		Родительское окно.

GModalTabWnd::GModalTabWnd(object String, refer object GWnd, object String)

param templateName, parentWnd, libName;

Creates a modal window with tabs. 
Resources are obtained from a library.
templateName	Dialog template name in resources.
parentWnd		Parent window.
libName		Library name from which the resources are obtained.

Class GModalWnd : GWnd

#module root.system.windows
The GmodalWnd class represents objects, which are basic modal windows.

Methods:


GModalWnd::Close(int)

param retCode;

Destroys the modal window, corresponding to the object in the system.
retCode			The return code, which is then returned by the GModalWnd::Open method.
Comments
This method form closes the window with the return code specified in the retCode 
argument. If an application needs to close the window in the IDCLOSE, IDOK or 
IDCANCEL button handler, and it does not call the default handler, then it must 
call this method with the retCode parameter equal to the button identifier. This 
is true for the handlers of other buttons, in which the window is closed, too. 
Otherwise an application will not be able to determine, which button click made 
the window close. Destroying the window does not mean calling the object 
destructor. This allows an application to retrieve the object's final state 
after the window is closed.

GModalWnd::Close(void)

Destroys the modal window, corresponding to the object in the system.
Comments
This method form closes the window with the IDCANCEL return code. If an 
application needs to close the window in the IDCLOSE, IDOK or IDCANCEL button 
handler, and it does not call the default handler, then it must call this method 
with the retCode parameter equal to the button identifier. This is true for the 
handlers of other buttons, in which the window is closed, too. Otherwise an 
application will not be able to determine, which button click made the window 
close. Destroying the window does not mean calling the object destructor. This 
allows an application to retrieve the object's final state after the window is 
closed.

GModalWnd::GModalWnd(object String)

param templateName;

Creates a basic modal GUI window. 
templateName	The dialog template name in the resources.
Comments
This method form creates an object, corresponding to the top level modal window. 
Before a call to the GModalWnd::Open method, the window does not exist in the 
system. This allows an application to specify the initial state of an object 
after it is created.

GModalWnd::GModalWnd(object String, object String)

param templateName, libName;

Creates a basic modal GUI window. 
templateName	The dialog template name in the resources.
libName			The name of the library, from which the resources are taken.
Comments
This method form also creates an object, corresponding to the top level modal 
window. However, in this case the resources are taken from the library, 
specified in the libName argument, not from the executable. If the libName 
argument equals an empty string, the resources are taken from the executable. 
Before a call to the GModalWnd::Open method, the window does not exist in the 
system. This allows an application to specify the initial state of an object 
after it is created.

GModalWnd::GModalWnd(object String, refer object GWnd)

param templateName, parentWnd;

Creates a basic modal GUI window. 
templateName	The dialog template name in the resources.
parentWnd		The parent window.
Comments
This method form creates an object, corresponding to the modal window with a 
parent. Before a call to the GModalWnd::Open method, the window does not exist 
in the system. This allows an application to specify the initial state of an 
object after it is created.

GModalWnd::GModalWnd(object String, refer object GWnd, object String)

param templateName, parentWnd, libName;

Creates a basic modal GUI window. 
templateName	The dialog template name in the resources.
parentWnd		The parent window.
libName			The name of the library, from which the resources are taken.
Comments
This method form also creates an object, corresponding to the modal window with 
a parent. However, in this case the resources are taken from the library, 
specified in the libName argument, not from the executable. If the libName 
argument equals an empty string, the resources are taken from the executable. 
Before a call to the GModalWnd::Open method, the window does not exist in the 
system. This allows an application to specify the initial state of an object 
after it is created.

GModalWnd::GModalWnd(refer object GWnd)

param parentWnd;

Creates a basic modal GUI window.
parentWnd		The parent window.
Comments
This method form also creates an object, corresponding to the modal window with 
a parent. However, in this case a predefined dialog template is used with 
default visual parameters (a popup invisible window with a system menu, 
minimization and maximization buttons and zero position coordinates). Before a 
call to the GModalWnd::Open method, the window does not exist in the system. 
This allows an application to specify the initial state of an object after it is 
created.

GModalWnd::GModalWnd(void)

Creates a basic modal GUI window. 
Comments
This method form also creates an object, corresponding to the top level modal 
window. However, in this case a predefined dialog template is used with default 
visual parameters (a popup invisible window with a system menu, minimization 
and maximization buttons and zero position coordinates). Before a call to the 
GModalWnd::Open method, the window does not exist in the system. This allows an 
application to specify the initial state of an object after it is created.

GModalWnd::OnCancel(int, int)

param id, notifyCode;

A handler of the command event from the Cancel button.
id				The control identifier. Is equal to IDCANCEL.
notifyCode		Notification Code.
Returns -1, if the default handling is required.
Comments
On contrary to the GWnd class, where this method does nothing, in the GModalWnd 
class this method closes the window. If an application needs to close the 
window, it mus either overwrite this method and return -1 in it, or close the 
window explicitly in the rewritten method by calling the GModalWnd::Close method 
with the retCode argument equal to to IDCANCEL. Otherwise an application will 
not be able to determine, which button click made the window close.

GModalWnd::OnOK(int, int)

param id, notifyCode;

A handler of the command event from the OK button.
id				The control identifier. Is equal to IDOK.
notifyCode		Notification Code.
Returns -1, if the default handling is required.
Comments
On contrary to the GWnd class, where this method does nothing, in the GModalWnd 
class this method closes the window. If an application needs to close the 
window, it mus either overwrite this method and return -1 in it, or close the 
window explicitly in the rewritten method by calling the GModalWnd::Close method 
with the retCode argument equal to to IDOK. Otherwise an application will not be 
able to determine, which button click made the window close.

GModalWnd::Open(void)

Creates a modal window corresponding to the object in the system. Returns the 
modal window return code.
Comments
If an application calls the default handler of the IDCLOSE, IDOK or IDCANCEL 
buttons, then the window is closed in that handler and the return code, that is 
equal to IDCLOSE, IDOK or IDCANCEL, is returned. If an application calls the 
GModalWnd::Close method with no arguments, then the IDCANCEL return code is 
returned. If an application calls the GModalWnd::Close method with an argument, 
then the return code matching the argument (usually, it is the identifier of the 
button which made the window close) is returned. When this method is called, the 
system will not return the control before a user closes the window.

Class GMoneyComboBox : GRegExprComboBox, GMoneyControl

#module root.system.windows.controls
This is a list combined with a string editing control that meets the 
string representation of currency. 
For more information see the GMoneyControl class description.

Methods:


GMoneyComboBox::GMoneyComboBox(int, refer object GWnd, refer ...)

param id, wnd, [isEuro];

#rus Создает объект, ассоциированный со списком, комбинированным
#rus с органом редактирования.
#rus id				Идентификатор списка.
#rus wnd				Окно, владеющее списком.
#rus isEuro			Формат представления денежной суммы. Может быть
#rus 				равен TRUE - представление в европейской нотации
#rus 				(1.234,56) или FALSE - представление в
#rus 				американской нотации (1,234.56). Если не задано,
#rus 				то используется формат представления денежной суммы
#rus 				по умолчанию.
#rus Комментарии
#rus Метод связывает объект со списком, который должен
#rus существовать в системе.

Class GMoneyControl : GRegExprControl

#module root.system.windows.controls
This is an abstract control that works with a string representation 
of currency.
This is an abstract class and it is designed for deriving certain 
controls from the current class and from any descendant of the 
GControl class (for instance, from the GEdit class).

Methods:


GMoneyControl::GMoneyControl(boolean)

param isEuro;

Creates an object.
isEuro		Currency representation format. It can be equal 
			to TRUE - European notation representation
			(1.234,56) or FALSE - American notation 
representation (1,234.56).

GMoneyControl::GMoneyControl(void)

#rus Создает объект. Используется формат представления денежной
#rus суммы по умолчанию.

Class GMoneyEdit : GRegExprEdit, GMoneyControl

#module root.system.windows.controls
This is a string editing control that meets the string representation 
of amount. 
For more information see the GMoneyControl class description.

Methods:


GMoneyEdit::GMoneyEdit(int, refer object GWnd, refer ...)

param id, wnd, [isEuro];

#rus Создает объект, ассоциированный с органом редактирования.
#rus id				Идентификатор органа редактирования.
#rus wnd				Окно, владеющее органом редактирования.
#rus isEuro			Формат представления денежной суммы. Может быть
#rus 				равен TRUE - представление в европейской нотации
#rus 				(1.234,56) или FALSE - представление в
#rus 				американской нотации (1,234.56). Если не задано,
#rus 				то используется формат представления денежной суммы
#rus 				по умолчанию.
#rus Комментарии
#rus Метод связывает объект с органом редактирования, который должен
#rus существовать в системе.

Class GOpenDialog : GFileDialog

#module root.system.windows.dialogs.sysnative
The GOpenDialog class represents objects which are standard file open dialog 
windows.

Methods:


GOpenDialog::GOpenDialog(object BaseString, refer object BaseString, refer object BaseString)

param defExt, fileName, filterList;

Creates a standard file open dialog window.
defExt		Default file extension. If the user hasn't specified the file extension 
in the edit box, then the extension specified in the defExt argument is 
automatically added to the file name.
fileName	The file name that must appear in the edit box.
filterList	A string specifying a list of filters (see comments).
Comments
This method form creates an object which matches a standard top level dialog 
window. Before a call to the GFileDialog::Open method the window does not exist 
in the system. This allows an application to call additional methods which set 
the window sate before it is opened. The filterList argument is used to define 
the elements of the list, which filters files by extension. This argument is a 
string made up of substrings divided with the '|' character. Each pair of 
substrings specifies a filter: the first substring defines the filter 
description, which appears in the list, the second substring sets the meaning of 
the filter itself. If the filter List argument equals an empty string, then the 
window uses a list with one filter for all files.

GOpenDialog::GOpenDialog(object BaseString, refer object BaseString, refer object BaseString, refer object GWnd)

param defExt, fileName, filterList, parentWnd;

Creates a standard file open dialog window.
defExt		Default file extension. If the user hasn't specified the file extension 
			in the edit box, then the extension specified in the defExt argument is 
			automatically added to the file name.
fileName	The file name that must appear in the edit box.
filterList	A string specifying a list of filters (see comments).
parentWnd	The parent window.
Comments
This method form creates an object which matches a standard dialog window with a 
parent. Before a call to the GFileDialog::Open method the window does not exist 
in the system. This allows an application to call additional methods which set 
the window sate before it is opened. The filterList argument is used to define 
the elements of the list, which filters files by extension. This argument is a 
string made up of substrings divided with the '|' character. Each pair of 
substrings specifies a filter: the first substring defines the filter 
description, which appears in the list, the second substring sets the meaning of 
the filter itself. If the filter List argument equals an empty string, then the 
window uses a list with one filter for all files.

Class GRadioGroup

#module root.system.windows.controls
GradioGroup class represents objects associated with groups of buttons with 
dependant fixation. Amonng the buttons with dependant fixation from the same 
group only one button can be pressed. When a user clicks on an unpressed button, 
the button that was pressed at that moment becomes unpressed.

Methods:


GRadioGroup::GRadioGroup(int, refer object GTabWnd)

#rus См. конструктор со вторым параметром типа GWnd.

GRadioGroup::GRadioGroup(int, refer object GWnd)

param id, wnd;

Creates an object associated with a group of buttons with dependant fixation.
id			The identifier of the control, which is the beginning of the group.
wnd			The window that owns the group.
Comments
This method associates the object with the group, which starting control must 
already exist in the system.

GRadioGroup::GetCount(void)

Retrieves the number of buttons in the group group of buttons with dependant 
fixation. Returns the number of buttons.

GRadioGroup::GetIDs(void)

Retrieves the identifiers of the buttons from the group of buttons with 
dependant fixation. Returns a vector of identifiers.

GRadioGroup::GetSel(void)

Retrieves the pressed button for the group of buttons with dependant fixation. 
Returns the index of the pressed button in the group. Returns nothing, if no 
button is pressed.

GRadioGroup::SetSel(number)

Presses a button for the group of buttons with dependant fixation. 
index		The index of the button which must be pressed.
Comments
If -1 is specified as the argument value, then all the buttons in the group 
become unpressed.

GRadioGroup::~GRadioGroup(void)

Destroys an object associated with a group of buttons with dependant fixation.

Class GRegExprComboBox : GComboBox, GRegExprControl

#module root.system.windows.controls
This is a list combined with a string editing control that meets the 
regular expression. 
For more information see the GRegExprControl class description.

Methods:


GRegExprComboBox::Check(void)

Checks the text within a control for the regular expression accordance.
text			Text.
isComplete		Specifies whether to treat this text as completed.
Returns TRUE if the text if text meets regular expression, FALSE if not.

GRegExprComboBox::GRegExprComboBox(int, refer object GWnd, object String)

param id, wnd, expr;

Creates an object which is associated with a list combined with an 
editing control.
id			List identifier.
wnd			Window (list owner).
expr			Regular expression.
Comments
This method binds an object to a list which must exist in the 
system.
A regular expression is defined in the format which is recognized 
by the LexScanner class. For instance, the following regular expression can be defined via an application to enter a phone number into a control:
[0-9]{3}-[0-9]{2}-[0-9]{2}

GRegExprComboBox::SetText(refer object BaseString)

#rus См. GComboBox::SetText.

Class GRegExprControl

#module root.system.windows.controls
This is an abstract control that works with a string that meets the 
regular expression. By default, a string which is not completely typed 
is automatically added with characters that are uniquely defined in 
the regular expression.
This is an abstract class and it is designed for deriving certain 
controls from the current class and from any descendant of the 
GControl class (for instance, from the GEdit class).

Methods:


GRegExprControl::Check(refer object String, boolean)

param text, isComplete;

Checks the text for the regular expression accordance.
text			Text.
isComplete		Specifies whether to treat this text as completed.
Returns TRUE if the text if text meets regular expression, FALSE if not.

GRegExprControl::Check(refer object WString, boolean)

param text, isComplete;

#rus Проверяет текст на соответствие регулярному выражению.
#rus text			Текст.
#rus isComplete		Рассматривать ли текст, как законченный.
#rus Возвращает TRUE - текст удовлетворяет, FALSE - текст не
#rus удовлетворяет.

GRegExprControl::GRegExprControl(object String)

param expr;

Creates an object.
expr			Regular expression.
Comments
A regular expression is defined in the format which is recognized 
by the LexScanner class. For instance, the following regular expression can be defined via an application to enter a phone number into a control:
[0-9]{3}-[0-9]{2}-[0-9]{2}

GRegExprControl::SetContinueMode(boolean)

param toContinue;

Sets/discards the mode when the typed string is automatically is 
automatically filled with the characters that are uniquely defined 
in the regular expression.
toContinue		TRUE - enables the mode (by default),
			FALSE - discards the mode.

Class GRegExprEdit : GEdit, GRegExprControl

#module root.system.windows.controls
This is a string editing control that meets the regular expression. 
For more information see the GRegExprControl class description.

Methods:


GRegExprEdit::Check(void)

Checks the text within a control for the regular expression accordance.
text			Text.
isComplete		Specifies whether to treat this text as completed.
Returns TRUE if the text if text meets regular expression, FALSE if not.

GRegExprEdit::GRegExprEdit(int, refer object GWnd, object String)

param id, wnd, expr;

Creates an object which is associated with an editing control.
id			Editing control identifier.
wnd			Window (editing control owner).
expr			Regular expression.
Comments
This method binds an object to an editing control which must exist 
in the system.
A regular expression is defined in the format which is recognized 
by the LexScanner class. For instance, the following regular expression can be defined via an application to enter a phone number into a control:
[0-9]{3}-[0-9]{2}-[0-9]{2}

GRegExprEdit::Insert(refer object BaseString)

#rus См. GEdit::Insert.

GRegExprEdit::SetText(refer object BaseString)

#rus См. GEdit::SetText.

Class GRichEdit : GControl

#module root.system.windows.controls

Methods:


Class GSaveDialog : GFileDialog

#module root.system.windows.dialogs.sysnative
The GSaveDialog class represents objects which are standard file save dialog 
windows.

Methods:


GSaveDialog::GSaveDialog(object BaseString, refer object BaseString, refer object BaseString)

param defExt, fileName, filterList;

Creates a standard file save dialog window.
defExt		Default file extension. If the user hasn't specified the file extension 
			in the edit box, then the extension specified in the defExt argument is 
			automatically added to the file name.
fileName	The file name that must appear in the edit box.
filterList	A string specifying a list of filters (see comments).
Comments
See the GOpenDialog::GOpenDialog method comments.

GSaveDialog::GSaveDialog(object BaseString, refer object BaseString, refer object BaseString, refer object GWnd)

param defExt, fileName, filterList, parentWnd;

Creates a standard file save dialog window.
defExt		Default file extension. If the user hasn't specified the file extension 
			in the edit box, then the extension specified in the defExt argument is 
			automatically added to the file name.
fileName	The file name that must appear in the edit box.
filterList	A string specifying a list of filters (see comments).
parentWnd	The parent window.
Comments
See the GOpenDialog::GOpenDialog method comments.

Class GStdDialog

#module root.system.windows.dialogs
The GstdDialog class represents objects that are standard dialog windows. If a 
window is implemented in the system windowing environment (e.g. a file selection 
window), then it is a descendant only of this class. If the window is 
implemented in the GUI (e.g., a list item selection window), then it is a 
descendant as of this class, as of the GWnd class.

Methods:


GStdDialog::SetHelpFunc(refer func)

param helpFunc;

Sets the help handler for a standard dialog window.
helpFunc		A function that must be called when the "Help" button is clicked by 
				the user.
Comments
If this method of the object has been called, then the "Help" button will appear 
after the window is opened. If this method has not been called, then there will 
be no such button.

Class GTabDialog : GDialog, GModalTabWnd

#module root.system.windows.dialogs
This is a dialog of a common type with tabs.

Methods:


GTabDialog::GTabDialog(object String, object Vector, object Vector, object Vector, refer object GWnd)

For more information see the Dialog::Dialog.

GTabDialog::GTabDialog(object String, object Vector, object Vector, object Vector, refer object GWnd, object String)

For more information see the Dialog::Dialog.

Class GTabItem : GWnd

#module root.system.windows
This is a window with tabs as in the office organizer.
Objects of a current class are included in the object of the GTabWnd class.

Methods:


GTabItem::Enable(boolean)

param state;

Enables or disables mouse and keyboard input to a window. When the 
window is disabled then it ignores mouse and keyboard press.
When the window is enabled then it processes all input.
state			Boolean value. TRUE if the window should be enabled. 
FALSE if it should be disabled.
Comments
In contrast to the GWnd::Enable method this method forbids toggling to the certain tab.

GTabItem::GTabItem(object String, refer object GTabWnd, object String)

param templateName, tabWnd, libName;

Creates a tab. 
templateName	Dialog template name in resources.
tabWnd		Parent window with tabs.
libName		Library name from which the resources are obtained.
Comments
For more information see the comments to the GTabWnd::AddTabs method.

Class GTabWnd : GWnd

#module root.system.windows
This is a window with tabs as in the office organizer.

Methods:


GTabWnd::AddTabs(object Vector)

param tabs;

Adds a tab to a window by adding it to the end of the tab list.
tabs			Vector of elements, each of them defines a separate 
			tab. Each element in turn represents a vector that 
			consists of two up to 4 elements. The first element 
			represents tab template name in resources. The 
			second element of this pair is the text that is 
			displayed on the button activating the tab.
			The third (optional) element is the name of the 
			library from which the tab template is obtained.
			If it is equal to an empty string then the tab 
			template is acquired form an application. 
			The fourth (optional) element is the name of the 
			GTabItem class or derived class whose object will be 
			a tab.
Comments
The given method can be called both for the existing window and for 
the which is not opened yet. It allows an application to define 
necessary tabs before calling the GTabWnd::Open method.
Each tab template in resources should describe invisible window 
without a frame and a caption. If the template is defined in the 
Windows Resources system it must be of the WS_CLIPSIBLINGS style.
The template of the window of GTabWnd class may contain controls that 
are visible independently on a tab selection.
By default, tabs are placed to the left and over controls (controls 
without identifier are not considered in resources ). 
An application can redefine such behavior by overriding the 
GTabWnd::GetFreeRect method.

GTabWnd::AllowEvent(int)

For more information see the GWnd::AllowEvent method

GTabWnd::DivideIntoLevels(refer object Vector)

param levels;

#rus Разделяет кнопки выбора закладок по уровням.
#rus levels				Вектор индексов закладок, которые являются первыми на втором,
#rus 					третьем и т.д. этажах. Если равно пустому вектору, кнопки
#rus 					выбора закладок располагаются в один ярус с возможностью
#rus 					прокрутки.

GTabWnd::EnableItem(int, boolean)

For more information see the GWnd::EnableItem method.

GTabWnd::EnableItems(refer object Vector, boolean)

For more information see the GWnd::EnableItems method.

GTabWnd::EnableWString(int, any)

For more information see the GWnd::EnableWString method.

GTabWnd::FindTab(refer object BaseString)

param str;

Searches a tab.
str				Name of the tab to be found.
This name is placed on the button activating 
the tab.
Returns the number of the tab with the specified name. 
This method returns nothing if such tab does not exist.

GTabWnd::ForbidEvent(int)

For more information see the GWnd::ForbidEvent method

GTabWnd::GTabWnd(object String)

param templateName;

Creates a window with top level tabs.
templateName	Dialog template name in resources.

GTabWnd::GTabWnd(object String, object String)

param templateName, libName;

Creates a window with top level tabs. Resources are obtained from a 
library.
templateName	Dialog template name in resources.
libName		Library name from which the resources are obtained.

GTabWnd::GTabWnd(object String, refer object GWnd)

param templateName, parentWnd;

Creates a window with tabs.
templateName	Dialog template name in resources.
parentWnd		Parent window.

GTabWnd::GTabWnd(object String, refer object GWnd, object String)

param templateName, parentWnd, libName;

Creates a window with tabs. Resources are obtained from a library.
templateName	Dialog template name in resources.
parentWnd		Parent window.
libName		Library name from which the resources are obtained.

GTabWnd::GetCount(void)

Gets the number of tabs.
Returns the number of tabs.

GTabWnd::GetCustomControl(int)

#rus См. метод GWnd::GetCustomControl(int).

GTabWnd::GetFreeRect(void)

Gets the rectangle region free from controls of the window that 
contains tabs. The tabs will be placed within this region with some 
indentation. Returns a rectangle that defines region free from 
controls.
Comments
By default, the region free from controls is equal to the largest region whose top-left corner is equal to (0, 0) and which does not contain controls (controls without identifier are not considered in 
resources). Application can override this method to change such 
behavior.

GTabWnd::GetItem(int)

For more information see the GWnd::GetItem method.

GTabWnd::GetItemFocus(void)

For more information see the GWnd::GetItemFocus method

GTabWnd::GetItemRsc(int)

For more information see the GWnd::GetItemRsc method

GTabWnd::GetItems(refer object Vector)

For more information see the GWnd::GetItems method.

GTabWnd::GetSel(void)

Gets the selected tab.
Returns the index of the selected tab. 
This method returns nothing if there are no tabs in the window.

GTabWnd::GetTab(number)

param num;

Gets a tab.
num			The index of the tab to get.
Returns a reference to an object of the GTabItem class 
which is the window presenting a tab.
Comments
If an application has to refer to a tab and the GTabWnd::SetItem and 
etc. are not sufficient then it is possible to get a reference to the 
window presenting a tab and call this window methods. 
If the application can do with the stated methods then it should call 
them for the window that contains tabs.

GTabWnd::HideItem(int)

For more information see the GWnd::HideItem method.

GTabWnd::InsertTabs(object Vector, number)

param tabs, index;

Adds a tab to a window by adding it to the certain position within the 
tab list.
tabs			Vector of elements, each of them defines a separate 
			tab. Each element in turn represents a vector that 
			consists of two up to 4 elements. The first element 
			represents tab template name in resources. The 
			second element of this pair is the text that is 
			displayed on the button activating the tab.
			The third (optional) element is the name of the 
			library from which the tab template is obtained.
			If it is equal to an empty string then the tab 
			template is acquired form an application. 
			The fourth (optional) element is the name of the 
			GTabItem class or derived class whose object will be 
			a tab.
index			Index of the tab before which new tabs are inserted. 
			If it points to the position after the last tab then 
			new tabs are inserted to the end of the tab list.
Comments
The given method can be called both for the existing window and for 
the which is not opened yet. It allows an application to define 
necessary tabs before calling the GTabWnd::Open method.
Each tab template in resources should describe invisible window 
without a frame and a caption. If the template is defined in the 
Windows Resources system it must be of the WS_CLIPSIBLINGS style.
The template of the window of GTabWnd class may contain controls that 
are visible independently on a tab selection.
By default, tabs are placed to the left and over controls (controls 
without identifier are not considered in resources). 
An application can redefine such behavior by overriding the 
GTabWnd::GetFreeRect method.

GTabWnd::IsItem(int)

For more information see the GWnd::IsItem method.

GTabWnd::OnSelTab(int)

param num;

#rus Метод, вызываемый при выборе пользователем закладки в окне.
#rus num				Индекс закладки.
#rus Комментарии
#rus В данном классе метод ничего не делает.

GTabWnd::RemoveTabs(object Vector)

param indexes;

Removes tabs from a window.
indexes		Vector of the tab numbers to be removed.
Comments
The given method can be called both for the existing window and for 
the which is not opened yet. It allows an application to define 
necessary tabs before calling the GTabWnd::Open method.

GTabWnd::RemoveTabs(void)

#rus Удаляет все закладки из окна.
#rus Комментарии
#rus Данный метод можно вызывать как для существующего окна, так и
#rus для окна, которое еще не открыто. Это позволяет приложению
#rus удалить все закладки до вызова метода GTabWnd::Open.

GTabWnd::SelTab(int)

param num;

Selects a tab in a window.
num			Tab index.
Comments
The given method can be called both for the existing window and for 
the which is not opened yet. It allows an application to define 
necessary tabs before calling the GTabWnd::Open method.

GTabWnd::SetFreeRect(int)

param id;

#rus Устанавливает орган управления, внутри которого должны
#rus размещаться закладки.
#rus id				Идентификатор органа управления.
#rus Комментарии
#rus По умолчанию область, свободная от органов управления,
#rus равна наибольшей области, левый-верхний угол которой равен
#rus (0, 0) и не включающей органы управления (органы без
#rus идентификатора в ресурсах не рассматриваются). Если
#rus приложению надо изменить такое поведение, оно должно сделать
#rus одно из двух:
#rus 1) переопределить метод GTabWnd::GetFreeRect;
#rus 2) вызвать данный метод, передав ему идентификатор органа
#rus управления, внутри которого должны размещаться закладки (в
#rus ресурсах его можно сделать невидимым). 

GTabWnd::SetFreeRect(int, int)

param id, margin;

#rus Устанавливает орган управления, внутри которого должны
#rus размещаться закладки.
#rus id				Идентификатор органа управления.
#rus margin			Отступ от области, занимаемой органом управления,
#rus 				используемый при вычислении области, занимаемой
#rus 				закладками.
#rus Комментарии
#rus По умолчанию область, свободная от органов управления,
#rus равна наибольшей области, левый-верхний угол которой равен
#rus (0, 0) и не включающей органы управления (органы без
#rus идентификатора в ресурсах не рассматриваются). Если
#rus приложению надо изменить такое поведение, оно должно сделать
#rus одно из двух:
#rus 1) переопределить метод GTabWnd::GetFreeRect;
#rus 2) вызвать данный метод, передав ему идентификатор органа
#rus управления, внутри которого должны размещаться закладки (в
#rus ресурсах его можно сделать невидимым). 

GTabWnd::SetItem(refer object Vector)

For more information see the GWnd::SetItem method.

GTabWnd::SetItemBgColor(int, refer object ColorRef)

For more information see the GWnd::SetItemBgColor method

GTabWnd::SetItemFgColor(int, refer object ColorRef)

For more information see the GWnd::SetItemFgColor method

GTabWnd::SetItemFocus(int)

For more information see the GWnd::SetItemFocus method.

GTabWnd::SetItemFont(int, object String, number, int)

For more information see the GWnd::SetItemFont method.

GTabWnd::SetItemFont(int, object String, number, int, int)

For more information see the GWnd::SetItemFont method.

GTabWnd::SetItems(refer object Vector)

For more information see the GWnd::SetItems method.

GTabWnd::ShowItem(int)

For more information see the GWnd::ShowItem method.

Class GTable : GControl

#module root.system.windows.controls
The GTable class represents objects associated with table type controls.

Methods:


GTable::BeginEdit(void)

Begins editing the table cell containing the caret.

GTable::EndEdit(void)

Stops editing the table cell containing the caret.

GTable::FindLine(number, refer object BaseString)

param j, str;

Searches for the table line.
j			Number of the column where the search is done.
str			Text in the cell of the line to find.
Returns the table index of the line found. The method returns nothing, if there 
is no line was found in the table.
Comments
This method form searches for the first line with number i where cell (i,j) 
contains trext str.

GTable::FindLine(refer object Vector)

Param data;
Searches for a table line.
Data		Vector, which items are two element vectors. They contain the column 
			number and the text in the cell of the line to find. Returns the table index of 
			the line found. The method returns nothing, if there is no line was found in the 
			table.
Comments
This method form searches for the first line with number i, where (i, 
data[0][0]) cell contains data[0][1] text, (i, data[1][0]) cell contains 
data[1][1] text, ..., (i, data[n][0]) cell contains data[n][1] text.

GTable::GTable(int, refer object GTabWnd)

#rus См. конструктор со вторым параметром типа GWnd.

GTable::GTable(int, refer object GWnd)

param id, wnd;

Creates an object associated with a table.
id			Table identifier.
wnd			The table-owning window.
Comments
This method associates the object with the table, that must already exist in the 
system.

GTable::GetCaretPos(void)

Returns the caret position, i.e. the cell containing the focus rectangle. This 
cell might be selected and might be not.
Returns a vector containing of the caret line and column number. The method 
returns <<0, 0>> if there is no cell containing the focus rectangle in the 
table.

GTable::GetClickPt(void)

Gets a point relative to the upper left corner of the table, where the user has 
pressed or released the mouse button for the last time (including actions 
concerning the table header). Returns a POINT class object.

GTable::GetColumnCount(void)

Retrieves the number of columns in the table.
Returns the number of columns in the table.

GTable::GetColumnState(number)

param j;

Retrieves the table column properties.
j			Number of the column which properties are to be retrieved.
Returns the column properties.
Comments
The return value is a combination of the following flags:
TC_LEFT		The text in the column cells and header is aligned left.
TC_CENTER	The text in the column cells and header is centered.
TC_RIGHT	The text in the column cells and header is aligned right.
TC_READONLY	The text in the column cells and header is aligned left
TC_NOSEL	The column cells can't be selected (neither interactively nor 
			programmatically)
To retrieve the alignment of the text in the column header and cells the & 
operation with the TC_ALIGN mask should be applied to the return value.

GTable::GetColumnTitle(number)

param j;

Retrieves the text of the column header.
j			The number of the column which header text is to be retrieved.
Returns the header text.

GTable::GetColumnWidth(number)

param j;

Retrieves the width of the table column.
j			Number of the column which width is to be retrieved.
Returns the column width in pixels.

GTable::GetEntry(number, number)

param i, j;

Retrieves the text from the table cell.
i			Line number of the cell which text is to be retrieved.
j			Column number of the cell which text is to be retrieved.
Returns the cell text.

GTable::GetEntryRect(int, int)

Retrieves a rectangular area relative to the upper left corner of the table.
i			Cell line number
j			Cell column number
Returns a RECT class object.

GTable::GetLineCount(void)

Retrieves the number of lines in the table.
Returns the number of lines in the table.

GTable::GetNotifyPos(void)

Retrieves the position, tied to the command event, which arrives from the table. 
Returns a vector, containing the line and column numbers.
Comments
It is sensible for an application to call this method only in command event 
handlers .

GTable::GetSel(void)

Retrieves the selected cells from the table. Returns a vector consisting of the 
line and column numbers of the selected table cell, if the table allows single 
selection only, or a vector of vectors, consisting of the line and column 
numbers of the selected table cell, if the table allows multiple selection. The 
method returns nothing if no cell is selected in the table.
Comments
If the table is a report, then the selected cell column number will always be 
equal to -1.

GTable::GetVisLineCount(void)

Retrieves the number of fully visible lines in the table.

GTable::InsertColumns(number, number)

param j, num;

Inserts empty columns into the table.
j			Number of the column before which empty columns are to be inserted.if this 
			argument equals -1, columns are added to the end of the table.
num			Number of columns.
Comments
A call to this method makes width of all the columns the same.

GTable::InsertLines(number, number)

param i, num;

Inserts empty lines into the table.
i			Number of the line before which empty lines are to be inserted.if this 
			argument equals -1, lines are added to the end of the table.
num			Number of lines.

GTable::IsEdit(void)

Checks if editing of the table cell which contains the caret takes place. 
Returns TRUE - editing takes place, FALSE - no editing takes place.

GTable::NormalizeColumns(...)

param [noChange];

Normalizes the width of the table columns so that the sum of the table columns' 
widths is equal to the table width. The columns which numbers are specified 
noChange arguments do not change their widths. 
noChange	Numbers of columns which width should not be changed.

GTable::RemoveColumns(number, number)

param j, num;

Deletes columns from the table.
j			Number of the column, starting from which the columns must be deleted.
num			Number of columns.
Comments
A call to this method makes width of all the columns the same.

GTable::RemoveLines(number, number)

param i, num;

Deletes lines from the table.
i			Number of the line, starting from which the lines must be deleted.
num			Number of lines.

GTable::Reset(void)

Removes all the cells from the table.

GTable::ResetLines(void)

Removes all the lines from the table preserving the columns (their number and 
properties).

GTable::SetBgColor(number, number, any)

param i, j, color;

Sets the background color in the table cell.
i			Line number of the cell which background color is to be set.
j			Column number of the cell which background color is to be set.
color		The background color that must be set in the cell, if this argument has 
			the ColorRef type. If this argument equals EMPTY, then the default background 
			color is set for the cell (specified in the table resource or by a call to the 
			GWnd::SetItemBgColor method).
Comments
If -1 is specified as i and j argument values, then the background color is set 
for all the table cells. However, the default background color is not changed 
(it is specified in the table resource or by a call to the GWnd::SetItemBgColor 
method). If -1 is specified only as i argument value, then the background color 
is set for all the cells of the column j. If -1 is specified only as j argument 
value, then the background color is set for all the cells of the line i.

GTable::SetCaretPos(number, number)

param i, j;

Sets the caret position, i.e. the cell containing the focus rectangle. This cell 
might be selected and might be not.
i			Line number of the cell where the caret should be put.
j			Column number of the cell where the caret should be put.

GTable::SetColumnProps(refer object Vector)

param props;

Sets all the table columns' properties, starting with the first column.
props		A vector, each element of which specifies a single table column 
			property.
Comments
A column property is a vector, which first element of the object BaseString type 
specifies the column header, the second element of number type specifies the 
column width, the third element of int type - the column state (described in the 
GTable::SetColumnState). If the vector size is less than three, then the 
unspecified parts of the column property are not changed. E.g., a vector of two 
elements specifies only the column header and width.

GTable::SetColumnState(number, int)

param j, flags;

Sets the table column properties.
j			Number of the column which properties are to be set.
flags		Column properties.
Comments
If -1 is specified as the j argument value, then this method sets all the table 
columns' properties. The flags argument is a combination of the following flags:
TC_LEFT		The text in the column cells and header is aligned left.
TC_CENTER	The text in the column cells and header is centered.
TC_RIGHT	The text in the column cells and header is aligned right.
TC_READONLY	The text in the column cells and header is aligned left
TC_NOSEL	The column cells can't be selected (neither interactively nor 
			programmatically)

GTable::SetColumnTitle(number, refer object BaseString)

param j, title;

Sets the table column header text.
j			Number of the column, which header text is to be set.
title		Header text.

GTable::SetColumnWidth(number, number)

param j, width;

Sets the width of the table column.
j			Number of the column which width is to be set.
width		Column width.

GTable::SetColumns(number, number, refer object Vector)

param i, j, entries;

Sets the text for a group of table cells. Group setting is done by columns.
i			Line number of the first cell in the group.
j			Column number of the first cell in the group.
entries		Vector containing texts for the cells.
Comments
If the entries argument is a vector of strings, i.e. it looks like <<s_0, 
s_1,..., s_n>>, then the s_0 text is set for the (i,j) cell, s_1 text is set for 
the (i+1,j) cell, ..., s_n text is set for the (i+n,j) cell. In this way an 
application may specify one table column. If the entries argument is a vector of 
vectors of string (vectors may have different sizes), i.e. it looks like 
<<<<s_0_0, s_0_1, ..., s_0_a>>, <<s_1_0, s_1_1, ..., s_1_b>>, ... <<s_n_0, 
s_n_1, ..., s_n_c>>>>, then the s_0_0 text is set for the (i,j) cell, s_0_1 - 
for the (i+1,j) cell, ..., s_0_a - for the (i+a,j) cell, s_1_0 - for the (i,j+1) 
cell, s_1_1 - for the (i+1,j+1) cell, ..., s_1_b - for the (i+b,j+1) cell, ..., 
s_n_0 - for the (i,j+n) cell, s_n_1 - for the (i+1,j+n) cell, ..., s_n_c - for 
the (i+c,j+n) cell. In this way an application may specify one or more table 
columns.

GTable::SetEntry(number, number, refer object BaseString)

param i, j, entry;

Sets the text for the table cell.
i			Line number of the cell which text is to be set.
j			Column number of the cell which text is to be set.
entry		The cell text.

GTable::SetFgColor(number, number, any)

param i, j, color;

Sets the pen color in the table cell.
i			Line number of the cell which pen color is to be set.
j			Column number of the cell which pen color is to be set.
color		The pen color that must be set in the cell, if this argument has the 
			ColorRef type. If this argument equals EMPTY, then the default pen color is set 
			for the cell (specified in the table resource or by a call to the 
			GWnd::SetItemFgColor method).
Comments
If -1 is specified as i and j argument values, then the pen color is set for all 
the table cells. If -1 is specified only as i argument value, then the pen color 
is set for all the cells of the column j. If -1 is specified only as j argument 
value, then the pen color is set for all the cells of the line i.

GTable::SetLines(number, number, refer object Vector)

param i, j, entries;

Sets the text for a group of table cells. Group setting is done by lines.
i			Line number of the first cell in the group.
j			Column number of the first cell in the group.
entries		Vector containing texts for the cells.
Comments
If the entries argument is a vector of strings, i.e. it looks like <<s_0, 
s_1,..., s_n>>, then the s_0 text is set for the (i,j) cell, s_1 text is set for 
the (i,j+1) cell, ..., s_n text is set for the (i,j+n) cell. In this way an 
application may specify one table line. If the entries argument is a vector of 
vectors of string (vectors may have different sizes), i.e. it looks like 
<<<<s_0_0, s_0_1, ..., s_0_a>>, <<s_1_0, s_1_1, ..., s_1_b>>, ... <<s_n_0, 
s_n_1, ..., s_n_c>>>>, then the s_0_0 text is set for the (i,j) cell, s_0_1 - 
for the (i,j+1) cell, ..., s_0_a - for the (i,j+a) cell, s_1_0 - for the (i+1,j) 
cell, s_1_1 - for the (i+1,j+1) cell, ..., s_1_b - for the (i+1,j+b) cell, ..., 
s_n_0 - for the (i+n,j) cell, s_n_1 - for the (i+n,j+1) cell, ..., s_n_c - for 
the (i+n,j+c) cell. In this way an application may specify one or more table 
lines.

GTable::SetSel(number, number)

param i, j;

Sets or removes the selection of the table cell.
i			Line number of the cell which selection must be set.
j			Column number of the cell which selection must be set.
Comments
This method form sets the selection of the cell and scrolls the table to make 
the celected cell visible, if necessary. The cells that were selected before 
become unselected. If -1 is specified as i and j argument values, then the 
selection is reset. If the table is a report, then an application may specify 
any column number or -1 as the j argument value.

GTable::SetSel(number, number, boolean)

param i, j, isSelect;

Sets or removes the selection of the table cell.
i			Line number of the cell which selection must be set or removed.
j			Column number of the cell which selection must be set or removed.
isSelect	A boolean value. TRUE if the selection should be set. FALSE if the 
			selection should be removed.
Comments
This method form sets or removes the selection of the cell and scrolls the table 
(in case of setting the selection) to make the celected cell visible, if 
necessary. The cells that were selected before do not become unselected. If -1 
is specified as i and j argument values, then the selection is set or removed 
for all the table cells, depending on the isSelect argument value. If -1 is 
specified only as i argument value, then the selection is set or removed for all 
the cells of the column j. If -1 is specified only as j argument value, then the 
selection is set or removed for all the cells of the line i. If the table is a 
report, then an application may specify any column number or -1 as the j 
argument value.

GTable::SetVisLineCount(number)

param num;

Sets the number of fully visible lines in the table. The height of the table is 
changed. 
num			The number of lines to become visible in the table.

GTable::~GTable(void)

Destroys the object associated with the table.

Class GTaskbarIcon

Methods:


Class GTimeComboBox : GRegExprComboBox, GTimeControl

#module root.system.windows.controls
This is a list combined with a string editing control that meets the 
string representation of time. 
For more information see the GTimeControl class description.

Methods:


GTimeComboBox::GTimeComboBox(int, refer object GWnd)

param id, wnd;

Creates an object which is associated with a list combined with an 
editing control.
id			List identifier.
wnd			Window (list owner).
Comments
This method binds an object to a list which must exist in the 
system.

Class GTimeControl : GRegExprControl

#module root.system.windows.controls
This is an abstract control that works with a string representation 
of time.
This is an abstract class and it is designed for deriving certain 
controls from the current class and from any descendant of the 
GControl class (for instance, from the GEdit class).

Methods:


GTimeControl::Check(refer object String, boolean)

param text, isComplete;

Checks the text for the time representation accordance.
text			Text.
isComplete		Specifies whether to treat this text as completed.
Returns TRUE if the text if text meets time representation, FALSE if not.

GTimeControl::GTimeControl(boolean)

param toEnableSec;

#rus Создает объект.
#rus toEnableSec	TRUE - разрешает секунды в строчном представлении
#rus 				времени, FALSE - запрещает.

GTimeControl::GTimeControl(void)

#rus Создает объект.

Class GTimeEdit : GRegExprEdit, GTimeControl

#module root.system.windows.controls
This is a string editing control that meets the string representation 
of time. 
For more information see the GTimeControl class description.

Methods:


GTimeEdit::GTimeEdit(int, refer object GWnd, ...)

param id, wnd;

Creates an object which is associated with an editing control.
id			Editing control identifier.
wnd			Window (editing control owner).
Comments
This method binds an object to an editing control which must exist 
in the system.

Class GTimePicker : GCustomControl

#module root.system.windows.controls
Орган редактирования времени.

Methods:


Class GToolTip

#module root.system.windows.tools
The popup hint access object. This is an abstract class, designed for being the 
base class for classes, representing popup hints for concrete graphical objects 
(e.g., for windows).

Methods:


GToolTip::Create(refer object BaseString)

param text;

Creates a popup hint.
text		Hint text.
Comments
After a call to this method, when a user places the mouse cursor over the 
graphical object with which this object is associated, he/she will see the hint 
in the form of the 'text' popup messsage. If a hint already exists for the 
graphical object with which this object is associated, then it will be deleted.

GToolTip::Delete(void)

Deletes the popup hint.
Comments
If after a call to this method, when a user places the mouse cursor over the 
graphical object with which this object is associated, he/she will see no hint.

GToolTip::GetText(void)

Retrieves the text of the popup hint.
Returns the hint text.

GToolTip::IsExist(void)

Checks whether a popup hint exists, and also whether the graphical object with 
which the hint is associated exists.
Returns TRUE if objects exist, FALSE if they don't.

GToolTip::SetText(refer object BaseString)

param text;

Sets the popup hint text
text		The hint text.

GToolTip::~GToolTip(void)

Destroys a popup hint access object.

Class GTree : GControl

Methods:


GTree::GTree(int, refer object GTabWnd)

#rus См. конструктор со вторым параметром типа GWnd.

Class GTreeItem

Methods:


Class GWaitCursor

#module root.system.windows.tools
Creating an object of the GWaitCursor class sets the sand-glass cursor. 
Destroying an object of the GWaitCursor class restores the cursor to the form it 
had before it was set to the sand-glass form. Using this class is preferred to 
calling the BeginWaitCursor and EndWaitCursor functions, since creating an 
object in a local variable allows restoring the cursor after any type of 
function exit, including a rollback due to an error.

Methods:


GWaitCursor::GWaitCursor(void)

Sets the cursor to the sand-glass form.
Comments
Calls the BeginWaitCursor function.

GWaitCursor::~GWaitCursor(void)

Restores the cursor to the form it had before it was set to the sand-glass form.
Calls the EndWaitCursor function.

Class GWnd

#module root.system.windows
Class GWnd represents objects, which are basic windows supported by GUI.
The following fields are specified for this class:
TemplateName	The name of the dialog template in the resources.
LibName		The name of the library the resources are taken from. When
		equals an empty string, the resources are taken from the
		application.
ControlFilters	A vector of input filters into window's controls. Filters
				are objects of classes derived from GControl (e.g., GDateEdit).
				If the filters are not specified, then this field equals EMPTY.

Methods:


GWnd::AddGluePair(int, int, int, ...)

param thisID, thatID, relation, [isProportional];

Adds a new pair of gluing elements into the window gluing elements set. This
set defines changes of the controls' and child style windows' size and
position depending on the size change of the window itself.
thisID			System identifier of the window element, marked as "this". An
				element, which requires gluing is marked as "this".
thatID			System identifier of the window element, marked as "that". An
				element, to which the "this" element is glued, is marked as "that".
				If this argument take a NULL value, then "that" element is the
				window itself.
relation		Relation between "this" and "that" elements, which sets the gluing
				type.
isProportional	If this argument is not set or is set and equals FALSE, then
				gluing is rigid, i.e. the distance between the glued elements is
				preserved. If this argument is set and equals TRUE, then the
				gluing is proportional, i.e. the proportion between the glued
				elements is preserved.
Comments
Relations can be set as between the size and position of the window element (a
control of a child style window) and the size of the window itself, as
between the size and position of window elements between each other. These
parameters depend on each other in the ferm of preserving some specified
distances (distance proportions) between the element and the window, or between
the elements. 
To specify the gluing of window elements an application must call this method
needed number of times, specifying a relation between a separate pair of
elements by each call. 
To specify the gluing of separate sides of "this" element, an application may
specify a combination of the following values in the relation argument:
GLUE_UPTOUP			The upper side of "this" element is glued to the upper side
					of "that" element.
GLUE_UPTODOWN		The upper side of "this" element is glued to the lower side
					of "that" element.
GLUE_DOWNTOUP		The lower side of "this" element is glued to the upper side
					of "that" element.
GLUE_DOWNTODOWN		The lower side of "this" element is glued to the lower side
					of "that" element.
GLUE_LEFTTOLEFT		The left side of "this" element is glued to the left side of
					"that" element.
GLUE_LEFTTORIGHT	The left side of "this" element is glued to the right side of
					"that" element.
GLUE_RIGHTTOLEFT	The right side of "this" element is glued to the left side of
					"that" element.
GLUE_RIGHTTORIGHT	The right side of "this" element is glued to the right side of
					"that" element.
To specify the gluing of "this" method as a whole vertically an application may
specify one of the following values as the relation argument:
GLUE_WHOLETOUP		The whole "this" element is glued to the upper side of "that"
					element.
GLUE_WHOLETODOWN	The whole "this" element is glued to the lower side of "that"
					element.
For gluing of "this" element as a whole proportionally vertically an application
may add with OR one of the following values to the relation argument:
GLUE_BY_UP			"This" element as a whole is proportionally glued to its upper
					border. This is a default value.
GLUE_BY_VCENTER		"This" element as a whole is proportionally glued to its center
					vertically.
GLUE_BY_DOWN		"This" element as a whole is proportionally glued to its lower
					border.
For gluing of "this" element as a whole proportionally horizontally an application
may specify one of the following values as the relation argument:
GLUE_WHOLETOLEFT	"This" element as a whole is glued to the left side of "that"
					element.
GLUE_WHOLETOLEFT	"This" element as a whole is glued to the right side of "that"
					element.
For gluing of "this" element as a whole proportionally horizontally an application
may add with OR one of the following values to the relation argument:
GLUE_BY_LEFT		"This" element as a whole is proportionally glued to its left
					border. This is a default value.
GLUE_BY_HCENTER		"This" element as a whole is proportionally glued to its center
					horizontally.
GLUE_BY_RIGHT		"This" element as a whole is proportionally glued to its right
					border.
If thatID argument equals NULL, then the window itself is considered to be 
"that"
element. The user can't set the size of the window with his mouse so that there
exists at even one pair of glued elements, less than specified in the dialog
template. This prevents element in the window from obscuring one another. An
application can set the size of the window to smaller than allowed by calling
methods GWnd::SetSize and GWnd::SetClientSize. In this case the gluing property
is switched off until the window size becomes nornal again. There is an
opportunity to specify a contradictory set of pairs of gluing elements, so that it
will be impossible to satisfy all the given relations. In this case, the result of
changing the window size and moving the elements inside the window is
unpredictable. The initial set of gluing parameters can be set in the GLUE or
GLUE_PROP resource with the dialog template name. Here only the controls
defined in the dialog template and the window itself can work as gluing 
elements.
The control identifier in the dialog template should be used instead of the window
object system identifier. An application can specify the window itself as an
element with identifier -1. The resource must look like:
name type
BEGIN
thisID_1, thatID_1, relation_1,
thisID_2, thatID_2, relation_2,
...,     ...,     ...,
thisID_n, thatID_n, relation_n
END
name		Dialog template name, for which the set of pairs of gluing elements
			must be set.
type		GLUE - rigid gluing, GLUE_PROP - proportional gluing.
thisID_i	Dialog template identifier of the i-th control, marked as "this".
thatID_i	Dialog template identifier of the i-th control, marked as "that".
			When takes the value of -1, "that" element is the window itself.
relation _i	The relation between "this" and "that" elements, which defines the
			gluing type.

GWnd::AllowEvent(int)

param eventNum;

Allows an event to pass through the window.
eventNum	Event number.
Comments
An application can't allow an event to pass, if it is not supported by GUI.

GWnd::BringToTop(void)

Activates the window and places it above all the windows of the current
process.

GWnd::CanClose(void)

A method, which checks, whether an application can close the window. Returns a
boolean value. TRUE if an application can close the window, FALSE if it can't.
Comments
If an application must announce that it can't close the window in a derived class,
it must rewrite this method and return FALSE in it. In the GWnd class this method
always returns TRUE, i.e. an application can always close the window. If in a
derived class an application must perform some final actions which require the
window to be opened (e.g. get the controls state), it must rewrite this method and
perform those actions there. An application must not call GWnd::Close from this
method, since it can lead to recursion. Instead of calling GWnd::Close, an
application must return TRUE.

GWnd::CanOpen(void)

A method, which checks, whether an application can open the window. Returns a
boolean value. TRUE if an application can open the window, FALSE if it can't.
Comments
If an application must announce that it can't open the window in a derived class,
it must rewrite this method and return FALSE in it. In the GWnd class this method
always returns TRUE, i.e. an application can always open the window.

GWnd::CaptureInput(void)

Captures the mouse and keyboard input and redirects it to the current window.
After a call to this method the window receives all the events from the mouse
and the keyboard, that originate in the system. Only one window can capture
the whole input. If the window doesn't need the input any more, it must call
the GWnd::ReleaseInput method to allow other windows receive the input.

GWnd::Center(void)

If the window is not a child style window, sets its position to the center of the
screen, otherwize sets the window position to the center of the parent window.

GWnd::Cleanup(void)

A method which notifies of closing the window. Is called after the window
disappears from the system.
Comments
GUI guarantees, that this method call is the last one and that after it no event
shall be sent to the window. If an application needs to perform some actions that
require the window to be opened (e.g. get the controls state), it must do it in the
GWnd::CanClose method. In the GWnd class this method does nothing.

GWnd::ClientToScreen(refer object POINT)

param pt;

Translates the coordinates of the window client area to the screen coordinates. 
pt			A point in the window client area.
Returns a point on the screen, which matches a point in the window client area.

GWnd::ClientToScreen(refer object RECT)

param rect;

Translates the screen coordinates to the coordinates of the window client area.
rect		A rectangle on the screen.
Returns a rectangle in the window client area, which matches a rectangle on the
screen.

GWnd::Close(void)

Destroys the window in the system which is associated with the object 
Comments
Destroying the window doesn't mean calling object's destructor.
This allows an application to retrieve the final state of the object after the
window is closed.

GWnd::Enable(boolean)

param state;

Enables or disables the mouse and keyboard input into the window. When the 
window is disabled, it ignores keyboard and mouse pressings. When the window is 
enabled, it handles all the input.
state		A boolean value. TRUE if the window has to be enabled.
			FALSE if the window has to be disabled.
Comments
The window has to be enabled before it is activated. For example, if an 
application which is represented with only one window creates a second window and then 
disables the first window, then the application must enable the first window before it 
closes the second one. Otherwize, a window from another application will be activated.

GWnd::EnableItem(int, boolean)

param id, state;

Enables or disables the mouse and keyboard input into the window control. When 
the control is disabled, it ignores keyboard and mouse pressings. When the control is 
enabled, it handles all the input.
id			The control identifier.
state		A boolean value. TRUE if the window has to be enabled. FALSE if the window has
			to be disabled.
Comments
To enable or disable the system scrollbar, an application must specify IDHSCROLL
or IDVSCROLL as id argument value.

GWnd::EnableItems(refer object Vector, boolean)

param ids, state;

Enables or disables the mouse and keyboard input into several window controls. 
When a control is disabled, it ignores keyboard and mouse pressings. When a control is
enabled, it handles all the input.
id			A vector of integers, which are control identifiers.
state		A boolean value. TRUE if the window has to be enabled. FALSE if the window has
			to be disabled.

GWnd::EnableWString(boolean)

param state;

Allows/forbids to receive a WString type string from the window and the controls.
state		When equals FALSE, all the methods which receive a string from the window
			and the controls return String type data. When equals TRUE, these methods
			return WString type data.

GWnd::EnableWString(int, any)

param id, state;

Allows/forbids to receive a WString type string from the control.
id			The control identifier.
state		When equals FALSE, all the methods which receive a string from the control
			return String type data. When equals TRUE, these methods return WString
			type data. When equals EMPTY, the value of the IsWString field of the
			window resource is used.

GWnd::ExpandRsc(refer object Vector)

param rsc;

Supplements the window resource.
rsc			The window resource, which is a vector of objects derived from
			PIRControl. Each object specifies a control, which will be present in
			the window.
Comments
An application must call this method before it has opened the window. This method
is usefull only if the main window resource is specified in the Windows format, and
the application needs to specify the controls supported only by the PIR format.

GWnd::ForbidEvent(int)

param eventNum;

Forbids an event to pass through the window.
eventNum	Event number.
Comments
An application can't forbid an event to pass, if it is not supported by GUI.
Forbidding an event to pass will make no effect, if the event is always permitted
(e.g. WND_COMMAND)

GWnd::GWnd(object String)

param templateName;

Creates a basic GUI window.
templateName	The name of the dialog template in the resources.
Comments
This method form creates an object, which corresponds to a top level window.
Before a call to the GWnd::Open method, a window doesn't exist in the system.
This allows an application to specify its initial state after creation.

GWnd::GWnd(object String, object String)

param templateName, libName;

Creates a basic GUI window.
templateName	The name of the dialog template in the resources.
libName			Name of the library, from which the resources are taken.
Comments
This method form also creates an object, which corresponds to a top level 
window.
In this case, however, the resources are not taken from the executable, but from
the library, specified in the libName argument. If the libName argument equals
an empty string, then the resources are taken from the executable.
Before a call to the GWnd::Open method, a window doesn't exist in the system.
This allows an application to specify its initial state after creation.

GWnd::GWnd(object String, refer object GWnd)

param templateName, parentWnd;

Creates a basic GUI window.
templateName	The name of the dialog template in the resources.
parentWnd		Parent window.
Comments
This method form creates an object, which corresponds to a window with a parent.
Before a call to the GWnd::Open method, a window doesn't exist in the system.
This allows an application to specify its initial state after creation.

GWnd::GWnd(object String, refer object GWnd, object String)

param templateName, parentWnd, libName;

Creates a basic GUI window.
templateName	The name of the dialog template in the resources.
parentWnd		The parent window
libName			The name of the library the resources are taken from.
Comments
This method form also creates an object, which corresponds to a window with a
parent. In this case, however, the resources are not taken from the application,
but from the library, specified in the libName argument. If the libName argument
equals an empty string, then the resources are taken from the application.
Before a call to the GWnd::Open method, a window doesn't exist in the system.
This allows the application to specify its initial state after creation.

GWnd::GWnd(refer object GWnd)

param parentWnd;

Creates a basic GUI window.
parentWnd		Parent window.
Comments
This method form also creates an object, which corresponds to a top level 
window. However, a predefined dialog template with default visual parameters (a
popup, invisible window with a system menu, minimization and maximization
buttons and zero position coordinates) is used. Before a call to the GWnd::Open
method, a window doesn't exist in the system. This allows an application to
specify its initial state after creation.

GWnd::GWnd(void)

Creates a basic GUI window.
Comments
This method form also creates an object, which corresponds to a top level 
window. However, a predefined dialog template with default visual parameters (a
popup, invisible window with a system menu, minimization and maximization
buttons and zero position coordinates) is used. Before a call to the GWnd::Open
method, a window doesn't exist in the system. This allows an application to
specify its initial state after creation.

GWnd::GetBgColor(void)

Gets the window background color.
Returns the window background color (a ColorRef class object).

GWnd::GetCaption(void)

Gets the window caption.
Returns the text from the window caption. This method returns nothing, if the
window has no caption.

GWnd::GetClientPos(void)

Gets the position of the window client area. If the window is a child style window,
the position is considered from the top left corner of the parent window. If this
is another style window, the position is considered from the upper left corner of
the screen. Returns a two element vector. The first element is the x-coordinate of
the window client area position. The second element is the y-coordinate of the
window client area position.

GWnd::GetClientSize(void)

Gets the size of the window client area. Returns a two element vector. The first
element is the width of the window client area. The second element is the height of
the window client area.

GWnd::GetControlFilter(int)

param id;

Gets the window controls input filter.
id			The identifier of the control, which input filter is required.
Returns a pointer to an object of a class derived from Gcontrol (e.g. GDateEdit).
Returns nothing, if there is no filter specified for the control.

GWnd::GetCursorPos(void)

Retrieves the cursor position. The position is considered from the top left 
window corner.
Returns the cursor position.

GWnd::GetFocus(void)

Retrieves the window on which or on which control the input focus is set. 
Returns a pointer to an object, that represents the window, on which or on which control 
the input focus is set. Method returns nothing, if the input focus is set on another
application or is not set at all.

GWnd::GetID(void)

Gets the window's system identifier.
Returns an integer value, which identifies the open window in the system.

GWnd::GetItem(int)

param id;

Gets the control state.
id			Control identifier.
Returns the control state.
The semantics of the control state depends on the control type.
Comments
The control types and matching return values are listed below:
1.	The static text. The return value of the object BaseString type is the text in
	the control.
2.	The edit box. The return value of object BaseString type is the text in the edit
	box.
3.	A button with no fixation. No return value.
4.	A button with fixation. The return value of boolean type is the pressing state.
	TRUE if the button is pressed, FALSE if it is not.
5.	Scrollbar. The int type return value is the scrolling position. An application
	must pass the values of IDHSCROLL or IDVSCROLL as the identifier to get the state
	of the window system scrollbar.
6.	List. If the list is a simple list, then int type return value is the index of
	the selected list item. If the list is a multilist, then the object Vector type
	return value is a vector of indexes of selected list items.
7.	A combo box. The int type return value is the index of the selected list item.
8.	A table. Object Vector return value is a vector consisting of the row number and
	the column number of the selected table elment, if the table permits single
	selection only, and is a vector of vectors consisting of the row number and the
	column number of the selected table elments, if the table permits multiple
	selection.
An application can't call this method for other control types.

GWnd::GetItemFocus(void)

Retreives the identifier of the window control that has the input focus. Returns
the identifier of the window control that has the input focus. This method returns
nothing, if a control that doesn't belong to the current window has the input focus.

GWnd::GetItemID(int)

param id;

Gets the control's system identifier.
id			Control identifier (specified in the dialog template in the
resources).
Returns an integer value, which identifies an existing control in the window.

GWnd::GetItemPos(int)

param id;

Gets the position of the window control. The position is considered from the top
left window corner. 
id			Control identifier.
Returns a two element vector. The first element is the x-coordinate of the
control position. The second element is the y-coordinate of the control 
position.

GWnd::GetItemRect(int)

param id;

Gets the rectangular area occupied by the window control.
id			The control identifier.
Returns a RECT type object.

GWnd::GetItemRsc(int)

param id;

Gets the window control resource.
id			Control identifier.
Returns a PIRControl class object or an object of a class derived from the
PIRControl class. The returned object describes the control
Comments
If the control is recognized by GUI, (a list, an edit box, etc.) then the returned
object belongs to the class derived from PIRControl. If the control is not
recognized by GUI, then the returned object belongs to the PIRControl class, which
describes the common properties of all controls.

GWnd::GetItemSize(int)

param id;

Gets the size of the window control.
id			Control identifier.
Returns a two element vector. The first element is the control width. The second
element is the control height.

GWnd::GetItems(refer object Vector)

param ids;

Retrievs states of several controls.
ids			A vector of integers, which are identifiers of controls. 
Returns a vector of controls' states. The semantics of the states is explained 
in comments to the GWnd::GetItem method.

GWnd::GetLibName(void)

Gets the name of the library, from which the window's resources are taken.
Returns a string, which corresponds to the library name.
Comments
The library name along with the template name identifies the window in the
application and is specified when an object of GWnd class is created. If this
method returns an empty string, then the resources are taken from the 
executable.

GWnd::GetParent(void)

Retrieves the parent window.
Returns a pointer to an object, that represents the parent window. This method 
returns nothing, if the window has no parent specified.
Comments
This method returns a pointer to the window, which is specified as a parent 
window in the GWnd::GWnd constructor.

GWnd::GetPos(void)

Gets the window position. If this is a child style window, its position is
considered from the parent window upper left corner. If this is another style
window, its position is considered from the upper left corner of the screen.
Returns a two element vector. The first element is the x-coordinate of the window
position. The second element is the y-coordinate of the window position.

GWnd::GetRect(void)

Gets the rectangular area occupied by the window. The area includes the header,
the border and the scrollbars, if there are scrollbars.
Returns a RECT type object.

GWnd::GetRestorePos(void)

Gets the position of the area the window occupied before it was maximized or
minimized. If this is a child style window, the position is considered from the
parent window upper left corner. If this is another style window, the position
is considered from the upper left corner of the screen. Returns a two element
vector. The first element is the x-coordinate of the area position. The second
element is the y-coordinate of the area position.

GWnd::GetRestoreSize(void)

Gets the size that the window had before minimization or maximization. The window
size includes header size, border size and scrollbars size, if there are scrollbars
present. Returns a two element vector. The first element is the width. The second
element is the height.

GWnd::GetRsc(void)

Gets the window resource.
Returns a PIRWnd class object, which describes the window.
Comments
The window resource contains information as about the window itself, as about all
the window controls which are recognized bu GUI. An application can retrieve the
information about the separate control by calling the GWnd::GetItemRsc method.

GWnd::GetSize(void)

Gets the window size. The window size includes header size, border size and
scrollbars size, if there are scrollbars present. Returns a two element vector.
The first element is the window width. The second element is the window height.

GWnd::GetTemplateName(void)

Gets the window's template name.
Returns a string, which corresponds to the window's template name.
Comments
Template name identifies the window in the application and is specified when an
object of GWnd class is created.

GWnd::HasContextMenu(void)

Checks if the window has context menu. Returns a boolean value. TRUE if there
is a menu, FALSE if there is no menu.

GWnd::HasMenu(void)

Checks if the window has a menu. Returns a boolean value. TRUE if there is a
menu, FALSE if there is no menu

GWnd::Hide(void)

Makes the window invisible.

GWnd::HideItem(int)

param id;

Makes the control invisible.
id			Control identifier.

GWnd::InsertItem(refer object PIRControl, int)

param rsc, prevID;

Inserts a control.
rsc			The resource of the control, which has to be inserted.
prevID		Identifier of the control, after which the new control is to be
			inserted.
Comments
The rsc argument has to have a type derived from PIRControl (e.g., PIREdit - an edit
box). An object of class PIRControl contains all the information about the control,
including the identifier, size, and position. To insert the control into the window,
an application must create an object of the matching class (e.g., PIREdit for an
edit box), by calling the constructor with no arguments, change some fields which
had default values before, and call this method with that object as an argument. To
remove the control from the window, an application must call the GWnd::RemoveItem
method, specifying only the control identifier as an argument. An application may
use the following constants for the prevID argument:
ITEM_FIRST	To insert the control into the first place.
ITEM_LAST	To insert the control into the last place.

GWnd::Invalidate(boolean)

param eraseBg;

Makes the window clien area incorrect, i.e. makes it a subject to update.
eraseBg		A boolean value. TRUE if the window client area must be erased with 
			the background color. FALSE, if not.
Comments
This method form makes the entire window client area incorrect. By calling this 
method, an application puts a WND_UPDATE event into the application event queue. From
there the event will be dispatched to the window, if there are no other events in the queue.
By the time this method is called some part of the window may be marked as incorrect (the
WND_UPDATE event is in the queue). In this case, after this method exits, a new area, which
includes the old area and the new one, will be marked incorrect. If an application needs
to update the window immediately, it must force the event to be extracted from the queue by
calling the GWnd::Update method.

GWnd::Invalidate(refer object RECT, boolean)

param rect, eraseBg;

Makes the window clien area incorrect, i.e. makes it a subject to update.
rect		A rectangle which specifies a part of the window client area that must be 
			marked incorrect for future update.
eraseBg		A boolean value. TRUE if the window client area must be erased with
			the background color. FALSE, if not.
Comments
This method form makes a part of the window client area incorrect. By calling 
this method, an application puts a WND_UPDATE event into the application event queue.
From there the event will be dispatched to the window, if there are no other events in
the queue. By the time this method is called some part of the window may be marked as
incorrect (the WND_UPDATE event is in the queue). In this case, after this method exits,
a new area, which includes the old area and the new one, will be marked incorrect. If an
application needs to update the window immediately, it must force the event to be
extracted from the queue by calling the GWnd::Update method.

GWnd::Invalidate(refer object Region, boolean)

param rgn, eraseBg;

Makes the window clien area incorrect, i.e. makes it a subject to update.
rgn			A region which specifies a part of the window client area that must be 
			marked incorrect for future update.
eraseBg		A boolean value. TRUE if the window client area must be erased with 
			the background color. FALSE, if not.
Comments
This method form makes a part of the window client area incorrect. By calling 
this method, an application puts a WND_UPDATE event into the application event queue.
From there the event will be dispatched to the window, if there are no other events in
the queue. By the time this method is called some part of the window may be marked as
incorrect (the WND_UPDATE event is in the queue). In this case, after this method exits,
a new area, which includes the old area and the new one, will be marked incorrect. If an
application needs to update the window immediately, it must force the event to be
extracted from the queue by calling the GWnd::Update method.

GWnd::IsItem(int)

Checkes whether the window contains a specific control.
id			The control identifier in the resources.
Returns a boolean value. TRUE, if the window contains the cintrol with the specified
identifier. FALSE, if it doesn't.

GWnd::IsItemVisible(int)

param id;

Checks if the control is visible. 
id			Control identifier.
Returns a boolean value. TRUE if the control is visible. FALSE if the control
is invisible.

GWnd::IsMaximized(void)

Checks, if the window is maximized. Returns a boolean value. TRUE if the window
is maximized. False if it isn't.

GWnd::IsMinimized(void)

Checks, if the window is minimized. Returns a boolean value. TRUE if the
window is minimized. False if it isn't.

GWnd::IsOpen(void)

Checks if the window is open.
Returns a boolean value. TRUE if the window is open. FALSE if the window is
closed.

GWnd::IsVisible(void)

Checks if the window is visible. Returns a boolean value. TRUE if the window
is visible. FALSE if the window is invisible.

GWnd::Minimize(void)

Shows the window in a maximized form.

GWnd::OnCancel(int, int)

param id, notifyCode;

A handler of the command event from the Cancel button.
id			Control identifier. Equals IDCANCEL.
notifyCode	Notification code.
Returns -1 if default handling is required.
Comments
The default handler of the command event from the Cancel button, which is called when
-1 is returned by the method, closes the window. If an application needs to close
the window in a derived class when the Cancel button is pressed, it must either
rewrite this method and return -1 in it, or close the window explicitly, by
calling the GWnd::Close method. In the GWnd class this method does nothing.

GWnd::OnClose(int, int)

param id, notifyCode;

A handler of the command event from the button with the IDCLOSE identifier, i.e.
the button in the window header or the menu element in the system menu, which close
the window.
id			Control identifier. Equals IDCLOSE.
notifyCode	Notification code.
Returns -1 if default handling is required.
Comments
The default handler of the command event from the button with IDCLOSE identifier,
which is called when -1 is returned by the method, closes the window. If an
application needs to close the window in a derived class when the button with
IDCLOSE identifier is pressed, it must either rewrite this method and return -1 in
it, or close the window explicitly, by calling the GWnd::Close method. In the GWnd
class this method closes the window.

GWnd::OnCommand(int, int)

param id, notifyCode;

WND_COMMAND event handler.
id			Menu element identifier or control identifier.
notifyCode	Notification code, if the event comes from a control. 0, if the event
			is from a menu element, 1 if it comes from a keyboard accelerator.
Returns -1 if default handling is required.
Comments
This method form is called for all control types, except scrollbars, and for any
menu element. In the GWnd class this method generates a new command event with
number equal to CMD_FIRST+id and same id and notifyCode parameters. Therefore, if
an application needs to overwrite this method in a derived class, it must call the
method of the base class from there. In the GWnd class the method returns what the
generated event handler returns.

GWnd::OnCommand(int, int, int)

param id, notifyCode, pos;

WND_COMMAND event handler.
id			Control identifier.
notifyCode	Notification code.
pos			Scrollbar position.
Returns -1 if default handling is required.
Comments
This method form is called for scrollbars control type. In the GWnd class this
method generates a new command event with number equal to CMD_FIRST+id and same id,
notifyCode and pos parameters. Therefore, if an application needs to overwrite this
method in a derived class, it must call the method of the base class from there. In
the GWnd class the method returns what the generated event handler returns.

GWnd::OnHelp(int, int)

param id, notifyCode;

A handler of the command event from the Help button.
id			Control identifier. Equals IDHELP.
notifyCode	Notification code.
Returns -1 if default handling is required.
Comments
In the GWnd class this method calls the help system for the current window.

GWnd::OnKeyDown(int)

param virtKey;

WND_KEYDOWN event handler.
virtKey		Vitual key code.
Returns -1 if default handling is required.
Comments
In the GWnd class this method generates a new WND_COMMAND event with an IDHELP
identifier. Therefore, if an application needs to overwrite this method in a
derived class, it must call the method of the base class from there.

GWnd::OnOK(int, int)

param id, notifyCode;

A handler of the command event from the OK button.
id			Control identifier. Equals IDOK.
notifyCode	Notification code.
Returns -1 if default handling is required.
Comments
The default handler of the command event from the OK button, which is called when
-1 is returned by the method, closes the window. If an application needs to close
the window in a derived class when the OK button is pressed, it must either
rewrite this method and return -1 in it, or close the window explicitly, by
calling the GWnd::Close method. In the GWnd class this method does nothing.

GWnd::Open(void)

Creates a window, which corresponds to the object, in the system.
Returns 0.

GWnd::PostEvent(int, ...)

param eventNum, [pars];

Posts an event to the window in asynchronous mode. The control returns immediately
after an event is posted into the window events queue.
eventNum	Event number.
pars		A list of arguments passed to the event.
Returns a boolean value. TRUE if an event was successfully posted to the queue,
FALSE if it wasn't.
Comments
The arguments list must match the event number. For example, to asynchronously send
the window an event, notifying that the left mouse button was pressed at coordinates
(50, 100), GWnd::PostEvent( WND_LBUTTONDOWN, 50, 100) must be called. An application
can't send events unsupported by GUI.

GWnd::ReleaseInput(void)

Releases the keyboard and mouse input that was redirected to some window
with the GWnd::CaptureInput method.

GWnd::ReleaseTimer(int)

param id;

Releases the window timer. 
id			Window timer identifier.
Returns a boolean value. TRUE if the timer was released successfully, FALSE if it
wasn't.

GWnd::RemoveGluePair(int, int)

param thisID, thatID;

Removes a pair of gluing elements from the window gluing elements set. This set
defines changes of the controls' and child style windows' size and position
depending on the size change of the window itself.
thisID		System identifier of the window element, marked as "this". An
			element, which requires gluing is marked as "this".
thatID		System identifier of the window element, marked as "that". An
			element, to which the "this" element is glued, is marked as "that".
			If this argument take a NULL value, then "that" element is the window
			itself.
Comments
This method removes from the window gluing elements set the last inserted pair
with system identifiers, matching thisID and thatID arguments. If a pair with
the same system identifiers remains in the wet, it is not removed.

GWnd::RemoveItem(int)

param id;

Removes the control.
id			The control identifier.

GWnd::ReplaceItem(refer object PIRControl)

param rsc;

Replaces a control.
rsc			The new control resource.
Comments
The rsc argument must have a type derived from PIRControl (e.g. PIREdit - an edit box).
An object of the PIRControl class contains all the information about the control,
including its identifier, size and position. To replace the control, an application
must create an object of the matching class (e.g., PIREdit for an edit box), by calling
the constructor with no arguments, change some fields which had default values before,
and call this method with that object as an argument. An existing control with the
identifier specified in the resource field is removed, and a new control with the same
identifier appears in the window. If the new control is described with the resources
of the same class as the old one, then all the existing objects of access to the
control are recustomized for the new control. For examle, if the GWnd::GetItemRsc
method returned an object of PIREdit class for the old control, and the new control
resource rsc is also an object of PIREdit class, then all the existing Gedit objects
created for the old edit box may work with the new one. However, if the resource rsc
is not an object of PIREdit class, no such thing happens. The new control inherits the
gluing properties of the old control.

GWnd::Restore(void)

Shows the window with size and position it had before it was minimized or
maximized.

GWnd::ScreenToClient(refer object POINT)

param pt;

Translates the screen coordinates to the coordinates of the window client area.
pt			A point on the screen.
Returns a point in the window client area, which matches a point on the screen.

GWnd::Scroll(refer object RECT, number, number)

param rect, dx, dy;

Scrolls the contents of the window client area.
rect		A rectangle, which specifies the part of the client area that must be 
			scrolled.
dx			Specifies the value of horizontal scrolling. This argument may be negative 
			for scrolling leftwards.
dy			Specifies the value of vertical scrolling. This argument may be negative 
			for scrolling upwards.
Comments
For the area which is opened after the scrolling, a matching WND_UPDATE event is 
generated, which notifies that the area should be updated. To udate the area
immediately, the GWnd::Update method must be called after this method is called.
This method does not change the window area, which is a subject to update. This might
cause problems with updating this area. To aviod it, the GWnd::Update must be called
before this method is called.

GWnd::SendEvent(int, ...)

param eventNum, [pars];

Sends an event to the window in a synchronous mode. The control will not be
returned untill the event is handled.
eventNum	Event number.
pars		A list of arguments passed to the event.
Returns an integer value returned by the event handler.
Comments
The arguments list must match the event number. For example, to synchronously send
the window an event, notifying that the left mouse button was pressed at
coordinates (50, 100), GWnd::SendEvent(WND_LBUTTONDOWN, 50, 100) must be called.
If the event handler returns -1, then this method returns what the default handler
returns. An application can't send events unsupported by GUI.

GWnd::SetAccel(object String)

param name;

Sets the local table of keyboard accelerators for the window.
name		The table of keyboard accelerators name in the resources.
Comments
This method form sets the local table of keyboard accelerators from the
executable's resources. If an application sets the table of keyboard
accelerators for a window, then under certain conditions pressing a key on
the keyboard is translated into a WND_COMMAND event, which is sent to the
window. The initial table of keyboard acceleratorscan be specified in the
ACCELERATORS resource with the dialog template name.

GWnd::SetAccel(object String, object String)

param name, libName;

Sets the local table of keyboard accelerators for the window.
name		The table of keyboard accelerators name in the resources.
libName		Name of the library, from which the resources are taken.
Comments
This method form sets the local table of keyboard accelerators from the
resources of the library, specified in the libName argument. If the libName
argument equals an empty string, then the resources are taken from the
executable. If an application sets the table of keyboard accelerators for a
window, then under certain conditions pressing a key on the keyboard is
translated into a WND_COMMAND event, which is sent to the window. The initial
table of keyboard acceleratorscan be specified in the ACCELERATORS type
resource with the dialog template name.

GWnd::SetCaption(refer object BaseString)

param text;

Sets the window caption.
text		Text that should be placed into the window caption

GWnd::SetClientPos(number, number)

param x, y;

Sets the position of the window client area. If the window is a child style window,
the position is considered from the top left corner of the parent window. If this
is another style window, the position is considered from the upper left corner of
the screen.
x			x-coordinate of the window client area position.
y			y-coordinate of the window client area position.

GWnd::SetClientSize(number, number)

param widht, height;

Sets the size of the window client area. 
width		The width of the window client area.
height		The height of the window client area.

GWnd::SetContextMenu(object String)

param name;

Sets the window context menu, which appears when the right mouse button is
clicked.
name		Menu name in the resources.
Comments
This method form sets the window context menu from the application resources.
The context menu appears when the right mouse button is clicked, if the default
event handler WND_RBUTTONUP was called. The initial window context menu can be
specified in the resources with the name, which appears as a result of
concatenation of a string "CONTEXT_" and the dialog template name.

GWnd::SetContextMenu(object String, object String)

param name, libName;

Sets the window context menu, which appears when the right mouse button is
clicked.
name		Menu name in the resources.
libName		Name of the library, from which the resources are taken.
Comments
This method form sets the window context menu from the resources of the library,
specified in the libName argument. If the libName argument equals an empty
string, then the resources are taken from the executable. The context menu
appears when the right mouse button is clicked, if the default event handler
WND_RBUTTONUP was called. The initial window context menu can be specified in
the resources with the name, which appears as a result of concatenation of a
string "CONTEXT_" and the dialog template name.

GWnd::SetCursor(object String)

param name;

Sets the window cursor.
name		The cursor name in the resources.
Comments
This method form sets the window cursor from the resources of the executable.
The following system cursors can be used as the cursor name:
CUR_ARROW			An arrow (the default cursor).
CUR_WAIT			A sand-glass.
CUR_CROSS			A cross.
CUR_IBEAM			A capital I (is often used for text input)
CUR_4ARROWS			Four arrows, pointing North, South, East and West.
CUR_2ARROWS_NESW	Two arrows, pointing North-East and South-West.
CUR_2ARROWS_NS		Two arrows, pointing North and South.
CUR_2ARROWS_NWSE	Two arrows, pointing North-West and South-East.
CUR _NOCIRCLE		A crossed circle (is often used to indicate that 
					something is forbidden) 
Initial window cursor can be specified in the CURSOR resource with the
dialog template name.

GWnd::SetCursor(object String, object String)

param name, libName;

Sets the window cursor.
name		The cursor name in the resources.
libName		Name of the library, from which the resources are taken.
Comments
This method form sets the window cursor from the resources of the library,
specified in the libName argument. If the libName argument equals an empty
string, then the resources are taken from the executable. The following
system cursors can be used as the cursor name:
CUR_ARROW			An arrow (the default cursor).
CUR_WAIT			A sand-glass.
CUR_CROSS			A cross.
CUR_IBEAM			A capital I (is often used for text input)
CUR_4ARROWS			Four arrows, pointing North, South, East and West.
CUR_2ARROWS_NESW	Two arrows, pointing North-East and South-West.
CUR_2ARROWS_NS		Two arrows, pointing North and South.
CUR_2ARROWS_NWSE	Two arrows, pointing North-West and South-East.
CUR _NOCIRCLE		A crossed circle (is often used to indicate that 
					something is forbidden) 
Initial window cursor can be specified in the CURSOR resource with the
dialog template name.

GWnd::SetCursorPos(number, number)

Param x, y;
Sets the cursor position. The position is considered from the top left window 
corner.
x			The x-coordinate of the cursor position.
y			The y-coordinate of the cursor position.

GWnd::SetCustomRsc(refer object String, refer any)

param attrName, attrValue;

Устанавливает атрибут окна из ресурса. Данный метод вызывается только,
если окно создано из ресурса типа custom (см. класс PIRCustomControl).
attrName		Имя атрибута.
attrValue		Значение атрибута.
Комментарии
Метод вызывается после создания объекта, но до открытия окна.
В данном классе метод просто присваивает значение attrValue в поле с
именем, совпадающим с attrName, за исключением следующих атрибутов:
FgColor			Вызывается метод GWnd::SetFgColor.
BgColor			Вызывается метод GWnd::SetBgColor.
Font			Вызывается метод GWnd::SetFont.
В производном классе можно переопределить данный метод, чтобы вызывать
какой-то код вместо присвоения поля.

GWnd::SetFocus(void)

Sets the input focus into the window. From now on the window will receive all the
keyboard input.The window that had the input focus (if there was such a window) loses it.
Comments
This method sends the WND_ACTIVATE event to the window that loses the input focus
and to the window that receives the input focus. This method also activates either
the window that receives the input focus or its parent window.

GWnd::SetFont(object String, number, int)

param faceName, size, attr;

Sets the window font, which can be inherited by the window controls
faceName	Font name.
size		Font vertical size in 1/72s of an inch.
attr		Font attributes.
Comments
The window font set by the current method is not inherited by those controls,
that have a font specially specified in the resources and by those, for which
the method GWnd::SetItemFont was called.

GWnd::SetFont(object String, number, int, int)

param faceName, size, attr, charSet;

Sets the window font, which can be inherited by the window controls
faceName	Font name.
size		Font vertical size in 1/72s of an inch.
attr		Font attributes.
charSet		Character set.
Comments
The window font set by the current method is not inherited by those controls,
that have a font specially specified in the resources and by those, for which
the method GWnd::SetItemFont was called.

GWnd::SetGlobalAccel(object String)

param name;

Sets the global table of keyboard accelerators for the window.
name		Name of the table of keyboard accelerators in the resources.
Comments
This method form sets the global table of keyboard accelerators from the
resources of the executable. An application can set the global table for
only one window. If an applicetion calls this method for several objects,
only last call would be valid. The global table has a priority, compared to
the local tables, which are loaded for any objects with the method
GWnd::SetAccel This means, that the global table will be translated first.
If this translation succeeds, no attempt to translate the local tables will
take place. On contrary to the local tables, the initial global table can't
be specified in the resources.

GWnd::SetGlobalAccel(object String, object String)

param name, libName;

Sets the global table of keyboard accelerators for the window.
name		Name of the table of keyboard accelerators in the resources.
libName		Name of the library, from which the resources are taken.
Comments
This method form sets the global table of keyboard accelerators from the
resources of the library, specified in the libName argument. If the libName
argument equals an empty string, then the resources are taken from the
executable. An application can set the global table for only one window. If
an applicetion calls this method for several objects, only last call would
be valid. The global table has a priority, compared to the local tables,
which are loaded for any objects with the method GWnd::SetAccel This means,
that the global table will be translated first. If this translation succeeds,
no attempt to translate the local tables will take place. On contrary to the
local tables, the initial global table can't be specified in the resources.

GWnd::SetIcon(object String)

param name;

Sets the window icon.
name		Icon name in the resources.
Comments
This method form sets the window icon from the resources of the executable. For
a window to have an icon of its own in the Windows system, the dialog template
class should be specified by concatenation of a string PLUK_ and the dialog
template name. Initial window icon can be specified in the ICON resource
with the dialog template name.

GWnd::SetIcon(object String, object String)

param name, libName;

Sets the window icon.
name		Icon name in the resources.
libName		Name of the library, from which the resources are taken.
Comments
This method form sets the window icon from the resources of the library,
specified in the libName argument. If the libName argument equals an empty
string, then the resources are taken from the executable. For a window to have
an icon of its own in the Windows system, the dialog template class should be
specified by concatenation of a string PLUK_ and the dialog template name.
Initial window icon can be specified in the ICON resource with the dialog
template name. If the libName argument equals an empty string in this method
form, then the resources are taken from the executable, just like in the first
form.

GWnd::SetItem(refer object Vector)

param par;

Sets the control state.
par			The vector, which specifies the identifier and the state of the control.
			The argument semantics depends on the control type.
Comments
The par argument must look like <<id, ...>>, where the int type id is the control
identifier. The control types and matching par argument values are listed below:
1.	The static text. The par argument must look like <<id, text>>, where the object
	BaseString type text is the text in the control.
2.	The edit box. The par argument must look like <<id, text>>, where the object
	BaseString type text is the text in the edit box.
3.	A button without fixation. The par argument must look like <<id, contents>>,
	where the object BaseString type contents is the text of the button, or the
	object MBmp type contents is the bitmap of the button (supported only by PIR)
4.	A button with fixation. The par argument must have one of the following forms:
	a.	<<id, state>>, where the boolean type state is is the pressing state. TRUE
		if the button is pressed, FALSE if it is not.
	b.	<<id, contents>>, where the object BaseString type contents is the text of the
		button, or the object MBmp type contents is the bitmap of the button
		(supported only by PIR).
	c.	<<id, state, contents>> where state and contents mean the same as above.
5.	A button with autorepeat. The par argument must have one of the following forms:
	a.	<<id, contents>>, where the object BaseString type contents is the text of the
		button, or the object MBmp type contents is the bitmap of the button
		(supported only by PIR).
	b.	<<id, delay, rate>>, where number type delay is the delay before the autorepeat
		begins in seconds, number type rate is the frequency of autorepeat, in Hz
		(supported only by PIR).
6.	A bitmap containing control. The par argument must look like <<id, bmp>>, where the
	object MBmp type bmp is the bitmap of the control (supported only by PIR).
7.	A scrollbar. The par argument must have one of the following forms:
	a.	<<id, min, max>>, where number type min is the minimum scrolling range, number
		type max is the maximum scrolling range.
	b.	<<id, pos>> where number type pos is the scrolling position.
	c.	<<id, min, max, pos>> where min, max and pos have the same meaning as above.
	An application must pass the values of IDHSCROLL or IDVSCROLL as the identifier to
	set the state of the window system scrollbar. To make the window system scrollbar
	visible, the user must call this method with min argument less than max argument.
	To make it invisible - call this method with min argument equal to max argument.
8.	List. The par argument must have one of the following forms:
	a.	<<id, items>>, where object Vector type items contain strings with which to fill
		the list.
	b.	<<id, sel>>, where number type sel is the index of the list item which has to be
		selected.
	c.	<<id, items, sel>>, where items and sel have the same meaning as above.
9.	A combo box. The par argument must have one of the following forms:
	a.	<<id, items>>, where object Vector type items contain strings with which to fill
		the list.
	b.	<<id, sel>>, where number type sel is the index of the list item which has to be
		selected.
	c.	<<id, text>>, where BaseString type text is the text in the edit box.
	d.	<<id, items, sel>>, where items and sel have the same meaning as in paragraphs a
		and b.
10.	A table. The par argument must have one of the following forms:
	a.	<<id, items>>, where objectVector type items is a two-dimentional vector, with
		which elements the table must be filled. A subvector of the vector fills the
		table row. Subvectors may have different dimensions.
	b.	<<id, i, j>> where number type i and j are row and column indexes of the cell
		which has to br selected.
	c.	<<id, items, i, j>>, where items, i and j have the same meaning as above.
An application can't call this method for other control types.

GWnd::SetItemFocus(int)

param id;

Sets the input focus into the window control. From now on the specified window control
will receive all the keyboard input. The window that had the input focus (if there was
such a window) loses it.
id			The control identifier.
Comments
This method sends the WND_ACTIVATE event to the window that loses the input focus.
This method also activates the window that owns the control.

GWnd::SetItemFont(int, object String, number, int)

param id, faceName, size, attr, charSet;

Sets the font for a separate control.
id			Control identifier.
faceName	Font name.
size		Font vertical size in 1/72s of an inch.
attr		Font attributes.
charSet		Character set

GWnd::SetItemOrder(refer object Vector, int)

param ids, prevID;

Sets the order of the controls in the window.
ids			Identifiers if the controls, which are to be placed one after another.
prevID		The identifier of the control after which the controls specified in the
			ids argument have to be placed.
Comments
The order of the controls affects the order of navigation through them with the tab
key and the arrow keys. If the prevID argument equals one if the elements of the ids
vector, then the controls are placed after the control which is not specified in the
ids vector and is placed before the prevID control (the colsest to it), and if there
is no such control the controls are placed first. An application may specify as the
prevID argument the following values:
ITEM_FIRST	Place the controls first.
ITEM_LAST	Place the controls last.

GWnd::SetItemPos(int, number, number)

param id, x, y;

Sets the position of the window control. The position is considered from the top
left corner of the window.
id			Control identifier.
x			x-coordinate of the control position.
y			y-coordinate of the control position.

GWnd::SetItemRect(int, refer object RECT)

param id, rect;

Sets the rectangular area occupied by the window control.
id			The control identifier.
rect		The rectangular area.

GWnd::SetItemSize(int, number, number)

param id, widht, height;

Sets the size of the window control. 
id			Control identifier.
width		The control width.
height		The control height.

GWnd::SetItems(refer object Vector)

param pars;

Sets the states of several controls.
pars		A vector of vectors, which specify the control identifier and state. 
			The semantics of a separate vector is explained in comments to the
			GWnd::SetItem method.
Comments
The pars argument must look like <<id_1, ...>>,<<id_2, ...>>,...<<id_n, ...>>,
where int type id_i is the i-th control identifier.

GWnd::SetMenu(object String)

param name;

Sets the window menu.
name		Name of the menu in the resources.
Comments
This method form sets the window menu from the application resources. The
initial window menu can be specified in the MENU resource with the dialog
template name, although resources in Windows format allow you to specify the
initial window menu with any name right in the dialog template.

GWnd::SetMenu(object String, object String)

param name, libName;

Sets the window menu.
name		Name of the menu in the resources.
libName		Name of the library, from which the resources are taken.
Comments
This method form sets the window menu from the resources of the library,
specified in the libName argument. If the libName argument equals an empty
string, then the resources are taken from the executable. The initial window
menu can be specified in the MENU resource with the dialog template name,
although resources in Windows format allow you to specify the initial window
menu with any name right in the dialog template.

GWnd::SetPos(number, number)

param x, y;

Sets the window position. If the window is a child style window, its position is
considered from the top left corner of the parent window. If this is another style
window, its position is considered from the upper left corner of the screen.
x			x-coordinate of the window position.
y			y-coordinate of the window position.

GWnd::SetRect(refer object RECT)

param rect;

Sets the rectangular area occupied by the window. The area includes the header,
the border and the scrollbars, if there are scrollbars.
rect		The rectangular area.

GWnd::SetRestorePos(number, number)

param x, y;

Sets the position the window must occupy when it's not minimixed and not
maximized. If the window is a child style window, the position is considered
from the top left corner of the parent window. If this is another style window,
the position is considered from the upper left corner of the screen.
x			x-coordinate of the window position.
y			y-coordinate of the window position.

GWnd::SetRestoreSize(number, number)

param widht, height;

Sets the size that the window must have when it's not minimized or maximized. The
window size includes header size, border size and scrollbars size, if there are
scrollbars present.
width		The window width.
height		The window height.

GWnd::SetSize(number, number)

param widht, height;

Sets the window size. The window size includes header size, border size and
scrollbars size, if there are scrollbars present.
width		The window width.
height		The window height.

GWnd::SetTimer(int, number)

param id, elapse;

Sets the window timer.
id			Window timer identifier.
elapse		Timer period value in milliseconds.
Returns a boolean value. TRUE if the timer was set successfully, FALSE if it 
wasn't.
Comments
After the timer is set, the window will start receiving WND_TIMER events after time
period specified. If the previous WND_TIMER event wasn't handled after this period
elapsed, the next event will not be sent.

GWnd::Setup(void)

A method, which notifies of opening the window. This is the first method called
after the window appears in the system. If an application needs to perform some
actions in a derived class, which require the window to be opened, it must rewrite
this method and perform those actions there. In the GWnd class this method does
nothing.

GWnd::Show(void)

Shows the window with the size and position it had before it became invisible.

GWnd::ShowItem(int)

param id;

Shows the control with the size and position it had before becoming invisible.
id			Control identifier.

GWnd::Update(void)

Updates the window client area, by sending the window a WND_UPDATE event if 
there is such an event in the queue.

GWnd::Validate(refer object RECT)

param rect;

Makes the window client area correct, i.e. not a subject to update.
rect		A rectangle which specifies the part of the client area that will be made 
			correct to prevent future update.
Comments
This method form makes a part of the window client area correct. By calling this 
method form, an application removes the WND_UPDATE event from the application event queue,
if the rect rectangle contains the incorrect window areaw.

GWnd::Validate(void)

Makes the window client area correct, i.e. not a subject to update.
Comments
This method form makes the whole window client area correct. By calling this method form,
an application removes the WND_UPDATE event from the application event queue.

GWnd::~GWnd(void)

Destroys a basic GUI window.
Comments
If an object's destructor is called, a window in the system, associated with it,
will be destroyed automatically.

Class GWndDisabled

Methods:


Class GWndToolTip : GToolTip

#module root.system.windows.tools
The window area popup hint access object.
Comments
The user may create an object of this class, then create the hint with the 
GToolTip::Create method and then manipulate with the hint through the methods of 
the object, created with specification of the area identifier, until the hint is 
not destroyed with the GToolTip::Delete method.

Methods:


GWndToolTip::GWndToolTip(int, refer object GWnd)

param id, wnd;

Creates a window area popup hint access object.
id			Window area identifier.
wnd			The window.

GWndToolTip::GetRect(void)

Retrieves the window area popup hint working area. 
Returns the area within the window client area, inside which the popup hint 
works.
Comments
Immediately after a call to the GtoolTip::Create method the hint works inside 
the entire window client area.

GWndToolTip::SetRect(refer object RECT)

param rect;

Sets the window area popup hint working area.
rect		The area within the window client area, inside which the popup hint 
			works.
Comments
Immediately after a call to the GtoolTip::Create method the hint works inside 
the entire window client area.

Class NameNodeMap

Methods:


Class NamedObjects : Vector

Methods:


Class NamedValue

Methods:


Class NamedValues : Vector

Methods:


Class NodeList

Methods:


Class PEdit : GEdit

#module root.system.windows.controls
The PEdit class represents the editing control of the program editor.

Methods:


PEdit::Clear(void)

Clear the control

PEdit::Copy(void)

Copy the selected text to the clipboard

PEdit::Cut(void)

Cut the selected text from the control and send it to the clipboard.

PEdit::DeleteLine(number)

param LineNumber;

Deletes a line number LineNumber from the control.

PEdit::DeleteSelection(void)

Deletes the selected text.

PEdit::DeleteSubText(number, number)

param CharBegin, CharEnd;

Deletes the text from character number CharBegin to character number CharEnd.

PEdit::GetRectOfLine(number)

param LineNumber;

Returns the rectangle where the line number LineNumber is situated.

PEdit::GetSubText(number, number)

param CharBegin, CharEnd;

Returns the subtext from the character number CharBegin to the character number 
CharEnd

PEdit::Invalidate(boolean)

param Flg;

Forces the control to redraw. If flag equals TRUE, then the previous drawing is 
erased.

PEdit::IsValid(void)

Returns TRUE if the control exists and is opened.

PEdit::PEdit(int, refer object GWnd)

param ID, Owner;

Creates the control with ID resource identifier in the Owner window.

PEdit::Paste(void)

Paste the text from the clipboard into the control.

PEdit::SetBgColor(refer object ColorRef)

param Color;

Sets the background color.

PEdit::SetCaretNotify(boolean)

param Flg;

If flg equals TRUE, then the object is notified of the events that happen to the 
control.
(events
PEN_CHANGE
PEN_ESC
PEN_CARETMOVE
PEN_USRDRAW
)

PEdit::SetFont(object String, number, int)

param FontName, Size, Attribute;

Sets the font into the control. 
Attribute may take the values FT_NORMAL, FT_BOLD, FT_ITALIC.

PEdit::SetFont(object String, number, int, refer object ColorRef)

param FontName, Size, Attribute, Color;

Sets the font into the control. 
Attribute may take the values FT_NORMAL, FT_BOLD, FT_ITALIC.

PEdit::SetFont(object String, number, int, refer object ColorRef, int)

param FontName, Size, Attribute, Color, CharSet;

Sets the font into the control. 
Attribute may take the values FT_NORMAL, FT_BOLD, FT_ITALIC.
Charset:
0			Western
204			Russian

PEdit::Undo(void)

Undo the last change.

PEdit::~PEdit(void)

The destructor.

Class PIR

#module root.system.windows.pir
The PIR class represents application resources in the PIR system.
The following fields are defined for this class:
WndList				Windows list which represents an object of the 
				PIRVector class where each element is an 
				object of the PIRWnd class.
BmpList				Bitmaps list which represents an object of the 
				PIRVector class where each element is an 
				object of the PIRFile class.
IconList			Icons list which represents an object of the 
				PIRVector class where each element is an 
				object of the PIRFile class. 
CursorList			Cursors list which represents an object of the 
				PIRVector class where each element is an 
				object of the PIRFile class. 
MenuList			Menus list which represents an object of the 
				PIRVector class where each element is an 
				object of the PIRMenu class. 
AccelList			Keyboard accelerator tables list which 		
				represents an object of the PIRVector class 
				where each element is an object of the 
				PIRAccel class. 
MapList				String key conversion to string value tables 
				list which represents an object of the 
				PIRVector class where each element is an 
				object of the PIRMap class. 
RegisterConst			If it is equal to TRUE then insertion of the 
				table of conversion of the string key to the 
				string value causes the constants 
				registration. The constant name is equal to 
				the string key, the constant value is equal to 
				the string value.
				By default it is equal to TRUE.
The following global fields are defined for this class:
Parser			Pointer to an object of the LRParser class 
which parses the PIR language.
Comments
Supported object types of the PIRFile class
(that is available values of the Type field):
Bitmap			"bmp", "gif".
Icon			"ico".
Cursor			"cur".

Methods:


PIR::Load(refer object PIR)

param rsc;

Loads resources as an object of the PIR class and adds them to 
the resources that are already exist in the current object.
rsc				Loaded resources.

PIR::Load(refer object String)

param fileName;

Loads resources from a file composed with the help of the PIR language 
and adds them to the resources that are already exist in the current 
object.
fileName		File name.

PIR::LoadReferFiles(void)

Loads files to which any resources within the current object refer.

PIR::LoadString(refer object String)

param str;

Loads resources in a text form on the PIR language and adds them to 
the resources that are already exist in the current object.
str				PIR language specification.

PIR::OnInsertNamedObj(refer object String, int)

param fieldName, index;

This method is called when inserting the named resource.
fieldName		The current class field name to which 
			the resource is inserted.
index			Index of the inserted resource in the field 
			specified via the fieldName parameter.

PIR::PIR(void)

Creates application resource in the PIR system.

PIR::Save(void)

Saves resources in a binary form.
Returns an object of the current class.

PIR::SaveString(void)

Saves resources in a text form using the PIR language.
Returns a string.

PIR::SetLibName(refer object String)

param libName;

Sets to all the resources of the current object 
the library name in which they are stored.
libName			Library name.

Class PIRAccel : PIRNamedObj, Vector

#module root.system.windows.pir
The PIRAccel class represents a resource that describes the table 
of keyboard accelerators. This class is derived from the vector and 
contains the list of elements of the PIRAccelItem type.

Methods:


PIRAccel::PIRAccel(void)

Creates a resource.

Class PIRAccelItem : PIRObj

#module root.system.windows.pir
The PIRAccelItem class represents a resource that describes an element 
of the table of keyboard accelerators.
The following fields are defined for this class:
Key			Virtual key code, pressing this send an event to a 
			control.
Modifiers		Vector of key-modifiers virtual codes.
			May contain VK_SHIFT, VK_CONTROL, VK_ALT codes.
			If modifiers are not used then it is equal to EMPTY.
ID			Control  identifier. This field is defined as 
			an integer number or a string that represents 
			the constant name. 

Methods:


PIRAccelItem::PIRAccelItem(void)

Creates a resource.

Class PIRBmpControl : PIRControl

#module root.system.windows.pir
The PIRBmpControl class represents a resource that describes a 
control with a bitmap.
The following fields are defined for this class:
HasBorder			Specifies whether the control with a bitmap 
				has a border.
VAlign				Bitmap alignment. The following values are 
				available:	"top" - top alignment, "center" - 
				center alignment, "bottom" - bottom alignment.
HAlign				Bitmap alignment. The following values are 
				available: "left" - left alignment, "center" - 
				center alignment, "right" - right alignment.
ToStretch			Specifies whether to enlarge/shrink bitmap 
				when displaying it within the control in order 
				to force the bitmap to cover the maximum 
				control area. 
IsStretchProp			Specifies whether to enlarge/shrink bitmap 
				proportionally (makes sense only when the 
				ToStretch field is set). When enlarge/shrink 
				is disproportional the bitmap covers all the 
				control area and the VAlign, HAlign field 
				values are ignored.
Bmp				Bitmap resource name which is displayed within 
				the control. 

Methods:


PIRBmpControl::PIRBmpControl(void)

Creates a resource.

Class PIRButton : PIRControl

#module root.system.windows.pir
The PIRButton class represents a resource that describes a button.
The following fields are defined for this class:
Text				Text displayed on the button. This field can 
				be equal to EMPTY if the button contains a 
				bitmap instead of text.
Bmp				Bitmap resource name which is displayed on the 
				button. This field is in effect if the Text 
				field is equal to EMPTY.
IsDefault			Specifies whether the button is the default 
				one that is the visually selected button which 
				responds to pressing the Enter key within a 
				window.
IsExNotify			Specifies whether the button has the extended 
				notification. If the button does not have the 
				extended notification then the window receives 
				only the notification code BN_CLICKED. If the 
				button has the extended notification then the 
				window receives additional notification code 
				from the button.
ToStretch			Specifies whether to enlarge/shrink bitmap 
				when displaying it on a button in order to 
				force the bitmap to cover the maximum button 
				area. It makes sense when the button contains 
				bitmap.

Methods:


PIRButton::PIRButton(void)

Creates a resource.

Class PIRCheck : PIRFixButton

#module root.system.windows.pir
The PIRCheck class represents a resource that describes a button with check mark.
The following fields are defined for this class:
CheckAlign			Check alignment. If this field is equal to 
				"left", then check mark is placed to the left, 
				if "right" it is placed to the right.

Methods:


PIRCheck::PIRCheck(void)

Creates a resource.

Class PIRComboBox : PIRControl

#module root.system.windows.pir
The PIRComboBox class represents a resource that describes a list combined 
with the editing control.
The following fields that refers to the editing control are defined 
for this class:
Text				Text displayed within a control.
IsReadOnly			Specifies whether the control can be modified 
				or not. This field is not used when the 
				IsDropDown field is equal to FALSE.
IsOverride			Specifies whether the text overriding mode is 
				enabled. Makes sense only when the control can 
				be modified.
IsAutoHScroll			Specifies whether the text is scrolled 
				horizontally at the border.
The following fields that refers to the list are defined 
for this class:
Items				List elements. This is a vector of strings.
IsSorted			Specifies whether the list can be sorted.
HasVScroll			Specifies whether the list has vertical	
				scroll bar.
HasHScroll			Specifies whether the list has vertical	
				scroll bar.
IsDropDown			Specifies whether the list drops down or 
				displayed permanently.

Methods:


PIRComboBox::PIRComboBox(void)

Creates a resource.

Class PIRControl : PIRRectObj

#module root.system.windows.pir
The PIRControl class represents a resource that describes a control in a window.
The following fields are defined for this class:
ID			Control identifier. This field is specified as an 
			integer number or a string that represents the 
			constant name.
IsWString		If it is equal to FALSE then all the resource 
			strings have the String type and all the methods 
			which receive a string from a control return data 
			of the String type. If it is equal to TRUE then 
			WString is used instead of String. If it is equal to 
			EMPTY then the value of the IsWString field of the 
			window resource is used.
IsTabStop		Specifies whether it is possible set input focus on 
			a control using the TAB key.
			A user can move input focus between the controls 
			where the IsTabStop parameter is set via the TAB 
			key.
IsGroupStart		Specifies whether this control is the beginning of a 
			controls group.
			A user can move input focus within one group via the 
			arrow keys.
ToolTip			Text of the pop-up hint for the current control. 
			If the pop-up hint is not set then this field is 
			equal to EMPTY.
Filter			Control input filter. Defines the class, constructor 
			parameters and methods with parameters for an object 
			of the class derived from the GControl class which 
			will be created within a window for input filtering. 
			This field represents a vector, each element of this 
			vector is a vector that consists of the name and 
			parameters. The first filter element sets the class 
			name and additional constructor parameters defined 
			after the required parameters - control identifier 
			and a window to which this control belongs. Other 
			filter elements set method names and their 
			parameters. If the filter is not set at all then 
			this field is equal to EMPTY.

Methods:


PIRControl::CreateFilter(refer object GWnd, refer any)

param wnd, filter;

Creates a filtering object from the filter descriptor.
wnd			Window that owns a control.
filter			Result which represents the class derived from 	
			the GControl class.

PIRControl::PIRControl(number, number)

param width, height;

Creates a resource.
width			Control width.
height		Control height.
Comments
Only width and height is set; control 
position is equal to (0, 0).

PIRControl::PIRControl(void)

Creates a resource.

Class PIRCustomControl : PIRControl

#module root.system.windows.pir
Класс PIRCustomControl представляет ресурс органа управления типа
custom.
У класса определены следующие поля:
ClassName		Имя класса, объект которого представляет орган
				управления.
Attr			Вектор атрибутов, каждый из которых является парой:
				имя атрибута и его значение.
Комментарии
Класс с именем ClassName может быть производным от класса GWnd или
класса GCustomControl, либо любым классом, для которого определены
методы, о которых говорится ниже.
В начале орган управления создается - вызывается конструктор
ClassName::ClassName. Затем вызывается метод ClassName::SetCustomRsc
для установки каждого атрибута (чаще всего это приводит к записи
значения атрибута в поле объекта с именем, совпадающим с именем
атрибута). После этого вызываются методы ClassName::SetPos и
ClassName::SetSize. Если орган управления создается со стандартным
размером, то вызывается только первый метод. Теперь объект готов для
открытия - вызываются методы ClassName::Open и ClassName::GetID(void)
для получения системного идентификатора орагана управления. Подробное
описание перечисленных методов см. в классе GCustomControl.
Орган управления должен быть зарегистрирован в файле guictrl.inf,
расположенном в каталоге запуска работающей в настоящий момент
программы:
[CustomControls]
N=ClassName
[ClassName]
Descr=...		Описание органа управления.
Lib=...			Библиотека, в которой определен класс ClassName.
Спецификация атрибутов органа управления задается в библиотеке в
формате xml:
<control xmlns="Pluk/PIR/CustomControl/1.0" name="ClassName">
	...
</control>
Внутри тега control определяются теги attr для задания спецификаций
атрибутов. Тег attr содержит следующие поля:
name			Имя отрибута.
descr			Описание атрибута (выводится в интерфейс). Может быть
				не задано.
type			Тип атрибута: string, int, color, boolean, vector.
nullable		Если равно true, то атрибут может принимать значение EMPTY.
values			Если задано, то является:
				1) набором значений, перечисленных через запятую; при этом
				атрибут может принимать значение только из этого набора
				плюс EMPTY, если установлено поле nullable;
				2) минимумом и максимумом диапазона значений, разделенных
				..; при этом атрибут может принимать значение только в
				данном диапазоне плюс EMPTY, если установлено поле
				nullable.
default			Значение по умолчанию. Устанавливается в атрибуте сразу
				после создания в редакторе.
enable			Функция, получающая на вход параметры с именами атрибутов
				и возвращающая TRUE - атрибут доступен для редактирования,
				FALSE - нет. Если не задано, то атрибут всегда доступен.
Если тип атрибута равен vector, то тег attr содержит подтеги attr -
спецификации атрибутов для каждого элемента вектора.

Methods:


PIRCustomControl::CheckClass(void)

Если класс, объект которого представляет орган управления,
не загружен, то загружает библиотеку, в которой он определен.

PIRCustomControl::GetAllClassNames(void)

Получает имена и описания классов для всех органов управления типа
custom.
Возвращает вектор пар: имя класса, описание класса.

PIRCustomControl::GetSpec(void)

Получает спецификацию, которая описывает атрибуты.
Возвращает указатель на вектор объектов класса PIRCustomControlAttr,
каждый из которых является спецификацией атрибута.
Комментарии
Если тип атрибута равен vector, то внутри его спецификации
содержатся спецификации атрибутов каждого элемента вектора.

PIRCustomControl::LoadAttr(void)

Догружает атрибуты, которые указаны в спецификации, но
отсутствуют в ресурсе (по причине, например, появления новой
версии спецификации).

PIRCustomControl::PIRCustomControl(void)

Создает ресурс.

PIRCustomControl::SetClassName(object String)

param className;

Устанавливает имя класса, объект которого представляет орган управления.
className		Имя класса.

Class PIRCustomControlAttr

#module root.system.windows.pir
Спецификация атрибута, который входит в состав ресурса типа custom
(см. класс PIRCustomControl).
В классе определены следующие поля:
Name			Имя отрибута.
Descr			Описание атрибута (выводится в интерфейс).
Type			Тип атрибута: string, int, color, boolean, vector.
IsNullable		Может ли атрибут принимать значение EMPTY.
Enum			Набор значений атрибута. Если задано, то атрибут может
				принимать значение только из этого набора (плюс EMPTY,
				если установено поле IsNullable).
Range			Диапазон значений в виде пары: минимум и максимум.
				Если задано, то атрибут может принимать значение только
				в данном диапазоне (плюс EMPTY, если установено поле
				IsNullable).
Default			Значение по умолчанию. Устанавливается в атрибуте сразу
				после создания в редакторе.
Enable			Функция, получающая на вход параметры с именами атрибутов
				и возвращающая TRUE - атрибут доступен для редактирования,
				FALSE - нет. Если не задано, то атрибут всегда доступен.
Children		Если тип равен vector, то в данном поле содержатся
				спецификации атрибутов каждого элемента вектора.

Methods:


PIRCustomControlAttr::CastFromStr(any)

param v;

Преобразует строку в значение атрибута (по спецификации).
v				Строка.
Возвращает значение.

PIRCustomControlAttr::CastToStr(any)

param v;

Преобразует значение атрибута в строку (по спецификации).
v				Значение.
Возвращает строку.

PIRCustomControlAttr::Create(void)

Создает значение атрибута по спецификации.
Возвращает значение.

PIRCustomControlAttr::FilterEnable(object String)

param format;

Фильтрует функцию, которая хранится в поле Enable - каждый параметр
attr замещается на то, что вернет Printf(format, attr).
format			Формат функции Printf.
Возвращает отфильтрованную функцию.

Class PIREdit : PIRText

#module root.system.windows.pir
The PIREdit class represents a resource that describes a single-line 
text editing control.
The following fields are defined for this class:
TextLimit			The maximum number of characters a user can 
				enter into the control. Does not affect text 
				setting via an application. If it is equal to 
				EMPTY then the number of characters a user can 
				enter into the control is not limited.
IsReadOnly			Specifies whether the control can be modified 
				or not.
IsOverride			Specifies whether the text overriding mode is 
				enabled. Makes sense only when the control can 
				be modified.
ConvertToCase			Character case conversion.
				The following values are available: EMPTY - no 
				conversion, "lower" - conversion to the lower 
				case, "upper" - conversion to the upper case.
IsAutoHScroll			Specifies whether the text is scrolled 	
				horizontally at the border.
IsPassword			Specifies whether to display only asterisks 
				instead entered characters as when entering a 
				password. Does not make sense in the multi-
				line text editing control.
ToKeepSel			Specifies whether the control keeps selection 
				when focus is lost.

Methods:


PIREdit::PIREdit(void)

Creates a resource.

Class PIRExpandEdit : PIRMultiEdit

#module root.system.windows.pir
The PIRExpandEdit class represents a resource that describes 
an extended text editing control. The text editing dialog is 
displayed when the button with arrow is pressed.

Methods:


PIRExpandEdit::PIRExpandEdit(void)

Creates a resource.

Class PIRFile : PIRNamedObj

#module root.system.windows.pir
The PIRFile class represents a resource that describes a file 
of the arbitrary format.
The following fields are defined for this class:
Type			File type (for instance, "bmp").
IsRef			If it is equal to FALSE then the object contains 
			file and the Data field stores its contents. If it 
			is equal to TRUE then the object refers to the file 
			the Data field stores file name.
Data			File contents or name depending on the IsRef field 
			value.

Methods:


PIRFile::FromRelFileName(refer object String)

param rootDir;

Converts the file name to which the object refers from 
the relative to the absolute.
rootDir		Directory name with reference to which the relative 
		name is designated.

PIRFile::GetBmp(object ColorRef)

param bgColorTo;

#rus Получает битмап из файла типа "bmp", "gif".
#rus bgColorTo		Цвет, в который должен быть преобразован цвет фона
#rus 					битмапа (192, 192, 192).
#rus Возвращает объект класса MBmp.

PIRFile::GetBmp(void)

Gets a bitmap from a file of the "bmp", "gif" type.
Returns an object of the MBmp class.

PIRFile::GetCursor(void)

Gets a cursor from a file of the "cur" type.
Returns an object of the MCursor class.

PIRFile::GetIcon(void)

Gets an icon a file of the "ico" type. 
Returns an object of the MIcon class.

PIRFile::Load(refer object String)

param fileName;

Loads a file to an object.
fileName		File name.

PIRFile::Load(void)

Loads the file to which the object refers into the object.

PIRFile::PIRFile(void)

Creates a resource.

PIRFile::SetRef(object String)

param fileName;

Sets a reference to a file within an object.
fileName		File name.

PIRFile::ToRelFileName(refer object String)

param rootDir;

Converts the file name to which the object refers from the absolute 
to the relative.
rootDir		Directory name with reference to which the relative 
		name is designated.

Class PIRFixButton : PIRButton

#module root.system.windows.pir
The PIRFixButton class represents a resource that describes a button 
with fixation.
The following fields are defined for this class:
State				Button state. If this field is equal to TRUE 
				then the button is pressed, if FALSE then the 
				button is released.
IsRadio				Specifies whether the button is with the 
				dependent fixation.
IsAuto				Specifies whether the button is with the 
				automatic fixation. Button with the automatic 
				fixation responds to pressing and program 
				interface and button without the automatic 
				fixation responds only to program interface.

Methods:


PIRFixButton::PIRFixButton(void)

Creates a resource.

Class PIRFrame : PIRControl

#module root.system.windows.pir
The PIRFrame class represents a resource that describes a frame.
The following fields are defined for this class:
Type				Frame type. If the field is equal to "dip" 
				then the frame is displayed as indented. If 
				the field is equal to "bump" then the frame is 
				displayed as bulged.

Methods:


PIRFrame::PIRFrame(void)

Creates a resource.

PIRFrame::RescaleFromDef(void)

#rus Масштабирует прямоугольный объект из системы координат по умолчанию
#rus в текущую систему координат.

PIRFrame::RescaleToDef(void)

#rus Масштабирует прямоугольный объект из текущей системы координат в
#rus систему координат по умолчанию.

Class PIRGluePair : PIRObj

#module root.system.windows.pir
The PIRGluePair class represents a resource that describes 
glueing of the pair of window controls.
The following fields are defined for this class:
ThisID			Identifier of the control which is defined as 
			"this". This is a designation for a control that has 
			to be glued. The field is defined as an integer 
			number or a string which represents constant name.
ThatID			Identifier of the control which is defined as 
			"that". This is a designation for a control to which 
			another control is glued. If it is equal to -1 then 
			the window represents "that" control. The field is 
			defined as an integer number or a string which 
			represents constant name
Relation		Relation between "this" and "that" controls which 
			specifies glueing type (for more information see the 
			GWnd::AddGluePair method).
IsProportional		If this field is equal to FALSE then glueing is 
			strict that is the distance between the controls is 
			kept. If this field is equal to TRUE then glueing is 
			proportional that is the proportion between the 
			controls is kept.

Methods:


PIRGluePair::PIRGluePair(void)

Creates a resource.

Class PIRInlineMenu : PIRObj

#module root.system.windows.pir
#rus Класс PIRInlineMenu представляет ресурс, ссылающийся на меню в
#rus ресурсах, встраиваемое в меню/подменю, в которое включен данный
#rus объект.
#rus У класса определены следующие поля:
#rus RscName				Имя ресурса меню, которое встраивается.

Methods:


PIRInlineMenu::PIRInlineMenu(void)

#rus Создает ресурс.

Class PIRKey

#module root.system.windows.pir
The PIRKey class represents a resource that describes the key in the 
PIRMap table. This class is used instead of the String class in the 
resource string fields in order not to use the string directly but 
refer to the string in the PIRMap table.
The following fields are defined for this class:
Key				Key value.

Class PIRListBox : PIRControl

#module root.system.windows.pir
The PIRListBox class represents a resource that describes a list.
The following fields are defined for this class:
Items				List elements. This is a vector of strings.
IsSorted			Specifies whether the list can be sorted.
IsMultiSelect			Specifies whether the multiple selection is 
				allowed within the list.
IsExSelect			Specifies whether the list supports extended 
				selection.
				If the list does not have extended selection 
				then mouse click on an element inverts 
				selection and does not cancel the selection of 
				other elements. If the list has the extended 
				selection then mouse click on an element 
				cancels the selection of other elements. At 
				that a user have three methods of selection 
				within the list: selection of the element 
				range by mouse click and dragging, selection 
				of the element range by mouse click when the 
				SHIFT key is pressed, element inversion when 
				the CTRL key is pressed. This field makes 
				sense only for the multi-selection list.
HasVScroll			Specifies whether the list has vertical	
				scroll bar.
HasHScroll			Specifies whether the list has horizontal 
				scroll bar.

Methods:


PIRListBox::PIRListBox(void)

Creates a resource.

Class PIRMap : PIRNamedObj, Vector

#module root.system.windows.pir
The PIRMap class represents a resource that describes the table of 
conversion of the string key to the string value. This class is 
derived from a vector and contains the list of elements of the Vector 
type. Each list element is a vector that consists of the string key 
and the string value.
IsWString			If it is equal to FALSE then the strings in 
				the resource has the String type. If it is 
				equal to TRUE then WString is used instead of 
				String.

Methods:


PIRMap::PIRMap(void)

Creates a resource.

Class PIRMenu : PIRNamedObj, Vector

#module root.system.windows.pir
The PIRMenu class represents a resource that describes a menu.
This class is derived from a vector and contains the list. 
Each list element represents one of the following values:
1. An object of the PIRMenuItem class that describes the menu item.
2. EMPTY, describes dividing menu item.
3. An object of the PIRSubMenu class that describes the submenu.
The following fields are defined for this class:
IsWString			If it is equal to FALSE then resource strings 
				have the String type and all the methods which 
				receive a string from the menu returns data 
				of the String type. If it is equal to TRUE 
				then WString is used instead of String.

Methods:


PIRMenu::PIRMenu(void)

Creates a resource.

Class PIRMenuItem : PIRObj

#module root.system.windows.pir
The PIRMenuItem class represents a resource that describes a menu item.
The following fields are defined for this class:
Text				Menu item text.
ID				Menu item identifier. This field is defined as 
				an integer number or a string that represents 
				the constant name.
IsChecked			Specifies whether the menu item contains check 
				mark.
IsDisabled			Specifies whether the menu item is disabled.
IsBroken			Specifies whether the menu item transposed to 
				a new string (new column).

Methods:


PIRMenuItem::PIRMenuItem(void)

Creates a resource.

Class PIRMultiEdit : PIREdit

#module root.system.windows.pir
The PIRMultiEdit class represents a resource that describes a multi-
line text editing control.
The following fields are defined for this class:
IsInputReturn			Specifies whether the RETURN key can be 
				entered into the control.
HasVScroll			Specifies whether the control has vertical 
				scroll bar. If it is equal to TRUE then the 
				IsAutoVScroll field does not make sense.
HasHScroll			Specifies whether the control has horizontal 				
				scroll bar. If it is equal to TRUE then the 
				IsAutoHScroll field does not make sense. 
IsAutoVScroll			Specifies whether the text is scrolled 
				vertically at the border.

Methods:


PIRMultiEdit::PIRMultiEdit(void)

Creates a resource.

Class PIRNamedObj : PIRObj

#module root.system.windows.pir
The PIRNamedObj represents a resource the describes 
the named object. Named objects are used in order to 
allow an application to load them by the name (for 
instance, window, cursor).
The following fields are defined for this class:
Name		Object name.
Locale	Language code. If it is equal to an empty 
		string then this resource is applicable for 
		any language.
LibName	Library name in which the object is stored. 
If it is equal to an empty string then the object is stored in the application.
The following global fields are defined for this class:
TypeToName		Vector of pairs that consist of name 
of the class (derived from the current 
class) and the name described in the 
PIR language.

Methods:


PIRNamedObj::PIRNamedObj(void)

Creates a resource.

PIRNamedObj::SaveString(void)

Saves resources in the text form using the PIR language.
Returns a string.

Class PIRObj

#module root.system.windows.pir
The PIRObj class is a base class for all other 
classes that grant resources to the PIR system.

Methods:


PIRObj::Copy(refer object PIRObj)

Copies a resource if the source and destination are of 
the same type.
obj			Source which is copied to the current 
			object that represents the destination.

Class PIRRectObj : PIRObj, RECT

#module root.system.windows.pir
The PIRRectObj class represents a resource that describes a rectangular object.
The following fields are defined for this class:
IsVisible		Specifies whether an object is visible right after 
			creation.
IsDisabled		Specifies whether an object input is banned.
Font			Object font. It is a vector that consists of font 
name, vertical font size in 1/72 inch parts, font 
attribute, font language code (for Windows 95 and 
Windows NT supported Unicode fonts). If this field 
is equal to EMPTY and the object is of the 
PIRControl type then the control uses the font of
the window that owns it. If this field is equal to 
EMPTY and the object is of the PIRWnd then the 
window uses the default font.
FgColor		Object pen color. If this field is equal to EMPTY 
			then the default color is used.
BgColor		Object background color. If this field is equal to 
			EMPTY then the default color is used. 
The following global fields are defined for this class:
RescaleFromDef	Vector of two numbers that represent conversion 
coefficients of x- and y- coordinates 
correspondingly from the default coordinate system 
to the current coordinate system.

Methods:


PIRRectObj::PIRRectObj(number, number)

param width, height;

Creates a resource.
width			Rectangular object width.
height		Rectangular object height.
Comments
Only width and height is set; rectangular object 
position is equal to (0, 0).

PIRRectObj::RescaleFromDef(void)

Scales a rectangular object from the from the default coordinate 
system to the current coordinate system.

PIRRectObj::RescaleToDef(void)

Scales a rectangular object from the from the current coordinate 
system to the default coordinate system.

Class PIRRepeatButton : PIRButton

#module root.system.windows.pir
The PIRRepeatButton class represents a resource that describes a 
button with autocycling. This class constructor always sets the 
IsExNotify field derived from the PIRButton class.
The following fields are defined for this class:
Delay				Delay before autocycling in seconds.
				May take on values from 0 s to 60 s.
Rate				Autocycling frequency in hertz. If the field 
				is equal to 0 then autocycling is disabled. 
				May take on values from 0.02 hertz to 500 
				hertz.

Methods:


PIRRepeatButton::PIRRepeatButton(void)

Creates a resource.

Class PIRScrollBar : PIRControl

#module root.system.windows.pir
The PIRScrollBar class represents a resource that describes a scroll 
bar. This class describes only controls that represent scroll bars and 
does not describe two scroll bars (which can not be considered as 
control) that can be included into each window. These two bars 
are defined in the PIRWnd class.
The following fields are defined for this class:
Type			Scroll bar type. The following values are available:
			"vert" - vertical bar, "horz" - horizontal bar.
IsDefSize		Specifies whether the bar has the default cross size 
			(defined in the system).
Min			Minimum scrolling rank.
Max			Maximum scrolling rank.
Pos			Scrolling position.

Methods:


PIRScrollBar::PIRScrollBar(object String)

param type;

Creates a resource.
type			Scroll bar type. The following values are available:
			"vert" - vertical bar, "horz" - horizontal bar.

PIRScrollBar::PIRScrollBar(void)

Creates a resource.

Class PIRSubMenu : PIRObj, Vector

#module root.system.windows.pir
The PIRSubMenu class represents a resource that describes a submenu.
This class is derived from a vector and contains the list. 
Each list element represents one of the following values:
1. An object of the PIRMenuItem class that describes the menu item.
2. EMPTY, describes dividing menu item.
3. An object of the PIRSubMenu class that describes the submenu.
The following fields are defined for this class:
Text				Submenu text.
IsChecked			Specifies whether the submenu contains check 
				mark.
IsDisabled			Specifies whether the submenu is disabled.
IsBroken			Specifies whether the submenu transposed to 
				a new string (new column).

Methods:


PIRSubMenu::PIRSubMenu(void)

Creates a resource.

Class PIRTable : PIRControl

#module root.system.windows.pir
The PIRTable class represents a resource that describes a table.
The following fields are defined for this class:
LineCount			Number of table rows.
ColumnCount			Number of table columns.
HasBorder			Specifies whether the table has a border.
HasHeader			Specifies whether the table columns have 
				headers.
IsColumnTrack			Specifies whether it is possible to change 
				column widths by mouse. Makes sense only if 
				the HasHeader field is set.
IsColumnRescale			Specifies whether column widths are changed 
				when table width is changed (proportionally).
HasGrid				Specifies whether the table has grid between 
				cells.
GridColor			Grid color. Makes sense only if the HasGrid 
				field is set. If the field is equal to EMPTY 
				then the default color is used.
IsMultiSelect			Specifies whether the table supports multiple 
				selection.
IsExSelect			Specifies whether the table supports extended 
				selection.
				If the table does not have extended selection 
				then mouse click on a cell inverts selection 
				and does not cancel the selection of 
				other cells. If the table has the extended 
				selection then mouse click on a cell 
				cancels the selection of other cells. At 
				that a user have three methods of selection 
				within the table: selection of the cell 
				range by mouse click and dragging, selection 
				of the cell range by mouse click when the 
				SHIFT key is pressed, cell inversion when 
				the CTRL key is pressed. This field makes 
				sense only for the multi-selection table.
State				General state of all columns (for more 
				information see the GTable::SetColumnState 
				method description). Makes sense only for 
				those columns whose state is not set 
				separately in the Props field.
Props				Vector, each element of this vector sets 
				properties of the separate table column 
				(for more information see the 
				GTable::SetColumnProps method description). 
				It is equal to EMPTY if an application does 
				not define column properties.
HasVScroll			Specifies whether the table has the vertical 
				scroll bar. 
HasHScroll			Specifies whether the table has the horizontal 
				scroll bar. 
IsReport			Specifies whether the table represents a 
				report. In the report only the whole table row 
				can be selected (only cells that belong to the 
				columns with the TC_NOSEL state stay 
				unselected).

Methods:


PIRTable::PIRTable(void)

Creates a resource.

PIRTable::RescaleFromDef(void)

Scales a rectangular object from the from the default coordinate 
system to the current coordinate system.

PIRTable::RescaleToDef(void)

Scales a rectangular object from the from the current coordinate 
system to the default coordinate system.

Class PIRText : PIRControl

#module root.system.windows.pir
The PIRText class represents a resource that describes a control with 
text. Control with text differs from the editing control because it is 
impossible to change text in it interactively.
The following fields are defined for this class:
HasBorder			Specifies whether a control has a border.
Text				Text displayed within a control.
TextAlign			Text alignment. The following values are 
				available: "left" - left alignment, "center" -
				centering, "right" - right alignment.

Methods:


PIRText::PIRText(void)

Creates a resource.

Class PIRTree : PIRControl

#module root.system.windows.pir
#rus Класс PIRTree представляет ресурс, описывающий дерево.
#rus У класса определены следующие поля:
#rus HasLines			Рисуются ли в дереве линии, соединяющие родительский
#rus 					элемент с дочерними.
#rus HasExpandButtons	Имеется ли кнопка +/- слева от родительского элемента,
#rus 					позволяющая показать/скрыть его дочерние элементы.
#rus HasChecks			Имеется ли флажок слева от элемента.
#rus IsReadOnly			Является ли текст элемента нередактируемым.
#rus Indent				Горизонтальный отступ, который имеет дочерний элемент
#rus 					относительно родительского. Если равно EMPTY, то
#rus 					используется значению по умолчанию.
#rus ImageList			Список имен ресурсов, являющихся пиктограммами,
#rus 					которые отображаются слева от закрытых элементов
#rus 					дерева. Если равно EMPTY, то список не задан.
#rus ExpandImageList		Список имен ресурсов, являющихся пиктограммами,
#rus 					которые отображаются слева от открытых элементов
#rus 					дерева. Если равно EMPTY, то список не задан.
#rus ToStretchImage		Увеличивать/уменьшать ли пиктограмму (пропорционально)
#rus 					для того, чтобы пиктограмма была полностью видна.

Methods:


PIRTree::PIRTree(void)

#rus Создает ресурс.

Class PIRVector : Vector

#module root.system.windows.pir
The PIRVector class represents an array of the named application 
resources in the PIR system. It is the vector descendant and contains 
some objects of the PIRNamedObj class.

Methods:


PIRVector::Find(object String, object String)

param name, locale;

Searches the named resource of the PIR system.
name			Name of the object which should be found.
locale			Language code.
Returns the resource index. This method returns -1 if the resource 
with the specified name does not exist.
Comments
This method works for a resource that refers to an application itself.
In order to work with the resource that refers to a library, the 
application must use another method form with an additional parameter.

PIRVector::Find(object String, object String, object String)

param name, locale, libName;

Searches the named resource of the PIR system.
name			Name of the object which should be found.
locale			Language code.
libName			Library name in which the object is stored.
Returns the resource index. This method returns -1 if the resource 
with the specified name does not exist.

PIRVector::Find2(object String, object String)

param name, locale;

Searches the named resource of the PIR system with the specified 
language code in the beginning and then with the neutral language 
code in case of failure.
name			Name of the object which should be found.
locale			Language code.
Returns the resource index. This method returns -1 if the resource 
with the specified name does not exist.
Comments
This method works for a resource that refers to an application itself.
In order to work with the resource that refers to a library, the 
application must use another method form with an additional parameter.

PIRVector::Find2(object String, object String, object String)

param name, locale, libName;

Searches the named resource of the PIR system with the specified 
language code in the beginning and then with the neutral language 
code in case of failure.
name			Name of the object which should be found.
locale			Language code.
libName			Library name in which the object is stored.
Returns the resource index. This method returns -1 if the resource 
with the specified name does not exist.

PIRVector::Insert(refer object PIRMap)

param obj;

Inserts the named resource of the PIR system.
obj				Object of the PIRMap class which should 
				be inserted.
Returns the index of the inserted element within the resource array.

PIRVector::Insert(refer object PIRNamedObj)

param obj;

Inserts the named resource of the PIR system.
obj				Object of the PIRNamedObj class which should 
				be inserted.
Returns the index of the inserted element within the resource array.

PIRVector::Insert(refer object PIRVector)

param objList;

Inserts the named resources of the PIR system.
objList			Array of the named resources which should be 
inserted.

PIRVector::Remove(object String, object String)

param name, locale;

Deletes the named resource of the PIR system.
name			Name of the object which should be deleted.
locale			Language code.
Comments
This method works for a resource that refers to an application itself.
In order to work with the resource that refers to a library, the  
application must use another method form with an additional parameter.

PIRVector::Remove(object String, object String, object String)

param name, locale, libName;

Deletes the named resource of the PIR system.
name			Name of the object which should be deleted.
locale			Language code.
libName			Library name in which the object is stored.

PIRVector::Save(void)

Saves resources in a binary form.
Returns an object of the current class.

PIRVector::SaveString(void)

Saves resources in a text form using the PIR language.
Returns a string.

Class PIRWnd : PIRRectObj, PIRNamedObj, Vector

#module root.system.windows.pir
The PIRWnd class represents a resource that describes a window.
This class is derived from a vector and contains the list of 
window controls. Each list element is an object of the PIRControl 
class.
The Font field (derived from the PIRRectObj class) determines the 
window font. Window font affects controls whose Font field is empty.
The following fields are defined for this class:
IsWString			If it is equal to FALSE then resource strings 
				have the String type and all the methods which 
				receive a string from a window or a control 
				return data of the String type. If it is 
				equal to TRUE then WString is used instead of 
				String.
Type				Window type. May take on a "popup" value - 
				popup window which can overstep the ancestor 
				bounds and cannot be beneath the ancestor, 
				"child" value - child window, which can not 
				overstep the ancestor bounds and cannot be 
				beneath the ancestor. An application can not 
				create child window of the top level (without 
				an ancestor).
Caption				Window caption. May take on an EMPTY value, 
				if the caption is missed.
HasBorder			Specifies whether a window has a border.
IsResizable			Specifies whether a window can interactively 
				change its size.
HasSysMenu			Specifies whether a window has a system menu.
HasMinButton			Specifies whether a window has the 
				minimization button.
HasMaxButton			Specifies whether a window has the 
				maximization button.
HasVScroll			Specifies whether a window has the vertical 
				scroll bar.
HasHScroll			Specifies whether a window has the horizontal
				scroll bar.
ToClipChildren			Specifies whether a window will exclude 
				regions occupied by its controls and child 
				windows from painting when performing all 
				painting operations.
ToClipSiblings			Specifies whether a window will exclude 
				regions occupied by its controls and child 
				windows (that have the same parent as the 
				current window) from painting when performing 
				all painting operations.
				Makes sense only for a window of the "child" 
				type.
HasOwnDC			FALSE - window graphical context is not bound 
				to a window and stored in an object of the MDC 
				class, TRUE window graphical context is bound 
				to a window and stored in the window, and the 
				MDC class object refers to it.
GluePairs			This is a vector of the PIRGluePair class 
				objects which defines the window controls 
				glueing. If glueing is absent then this field 
				is equal to EMPTY.

Methods:


PIRWnd::GetDecorSize(void)

Returns the nonclient window area size, i.e. the area occupied by different 
decorations (the border, the header, the scrollbars). Returns a two element 
vector: difference between the window width and the window client area width, 
difference between the window height and the window client area height.
Comments
This method is useful if it is necessary to retrieve the difference between the 
window size and the window client area size without opening the window itself. 
This window does not take into account the height of the window menu, since an 
object of this class does not contain information about menu.

PIRWnd::PIRWnd(void)

Creates a resource.

PIRWnd::RescaleFromDef(void)

Scales a rectangular object from the from the default coordinate 
system to the current coordinate system.

PIRWnd::RescaleToDef(void)

Scales a rectangular object from the from the current coordinate 
system to the default coordinate system.

Class PRichEdit : GRichEdit

#module root.system.windows.controls

Methods:


Class XmlAttr : XmlNode

Methods:


Class XmlDocument

Methods:


XmlDocument::GetChildsByName(object String)

param name;

Вернет указатель на корневой элемент документа
если его имя равно name или '*'.  

XmlDocument::GetElementsByPath(object String, object Vector, refer ...)

param path, attrList [, _func];

Тоже, что и GetElementsByPath( object String, refer ... ) с дополнительным фильтром
по атрибутам элементов.
attrList - список имет и если нужно значений атрибутов которые должны быть
у возвращаемых элементом. Список может сотоять из строк (имя атрибута) либо
из векторов-пар строк (имя и значение атрибута).
Например:
	<< "name", << "color", "red" >>, << "type" >> >>
в качестве параметра 	attrList определяет что у возвращаемых элементов
должены быть атрибуты с именем: name (любым значением), color со значением red
и type с любым значением. 

XmlDocument::GetElementsByPath(object String, refer ...)

param path [, _func];

Вернет список указателей на элементы документа по заданному пути.
Например для документа вида:
	<directories>
		<directory name="sources" >
			<xmlfile 	name="c:/file1.xml" \>
			<plukfile	name="c:/file1.plk" \>
			<xmlfile 	name="c:/file2.xml" \>
		</directory>
		<directory name="binaries" >
			<binfile 	name="c:/pluk.exe" \>
		</directory>
	</directories>
  
вызов ...->GetElementsByPath( "directories/directory/xmlfile" )
вернет указатели на следующие елементы (XmlElement) дерева 
		<xmlfile 	name="c:/file1.xml" \>
		<xmlfile 	name="c:/file2.xml" \>
можно использовать знак '*' в пути;
вызов ...->GetElementsByPath( "directories/directory/*" )
вернет указатели на следующие елементы (XmlElement) дерева 
		<xmlfile 	name="c:/file1.xml" \>
		<plukfile	name="c:/file1.plk" \>
		<xmlfile 	name="c:/file2.xml" \>
		<binfile 	name="c:/pluk.exe" \>
Дополнительный параметр _func позволяет задать функцию
выполняемую над каждым елементом перед возвратом из метода (возврат функции
будет подставлен вместо указателя на элемент).
вызов ...->GetElementsByPath( "directories/directory/*", <| param e; return e.nodeName; |> );
вернет вектор строк:
		"xmlfile"
		"plukfile"
		"xmlfile"
		"binfile"

Class XmlElement : XmlNode

Methods:


XmlElement::GetChildsByName(object String, refer ...)

param name;

Вернет список указателей на элементы документа
вложенных в текущий и имеющих имя name или всех
элементов вложенных в текущий если name равно '*'.  
Дополнительный параметр _func позволяет задать функцию
выполняемую над каждым елементом перед возвратом из метода (возврат функции
будет подставлен вместо указателя на элемент).

XmlElement::GetElementsByPath(object String, object Vector, refer ...)

param path, attrList [, _func];

Тоже, что и GetElementsByPath( object String, refer ... ) с дополнительным фильтром
по атрибутам элементов.
attrList - список имет и если нужно значений атрибутов которые должны быть
у возвращаемых элементом. Список может сотоять из строк (имя атрибута) либо
из векторов-пар строк (имя и значение атрибута).
Например:
	<< "name", << "color", "red" >>, << "type" >> >>
в качестве параметра 	attrList определяет что у возвращаемых элементов
должены быть атрибуты с именем: name (любым значением), color со значением red
и type с любым значением. 

XmlElement::GetElementsByPath(object String, refer ...)

param path [, _func];

Вернет список указателей на элементы документа по заданному пути относительно
текущего элемента.
Например для документа вида:
	<directories>
		<directory name="sources" >
			<xmlfile 	name="c:/file1.xml" \>
			<plukfile	name="c:/file1.plk" \>
			<xmlfile 	name="c:/file2.xml" \>
		</directory>
		<directory name="binaries" >
			<binfile 	name="c:/pluk.exe" \>
		</directory>
	</directories>
  
вызов ...->GetElementsByPath( "directory/xmlfile" ) для елемента 'directories'
вернет указатели на следующие елементы (XmlElement) дерева 
		<xmlfile 	name="c:/file1.xml" \>
		<xmlfile 	name="c:/file2.xml" \>
можно использовать знак '*' в пути;
вызов ...->GetElementsByPath( "directory/*" )  для елемента 'directories'
вернет указатели на следующие елементы (XmlElement) дерева 
		<xmlfile 	name="c:/file1.xml" \>
		<plukfile	name="c:/file1.plk" \>
		<xmlfile 	name="c:/file2.xml" \>
		<binfile 	name="c:/pluk.exe" \>
Дополнительный параметр _func позволяет задать функцию
выполняемую над каждым елементом перед возвратом из метода (возврат функции
будет подставлен вместо указателя на элемент). 
вызов ...->GetElementsByPath( "directory/*", <| param e; return e.nodeName; |> );
для елемента 'directories' вернет вектор строк:
		"xmlfile"
		"plukfile"
		"xmlfile"
		"binfile"

Class XmlNode


Class XmlParser

#module Root.System.Parsers
Класс парсера, разбирающего и проверяющего XML документ.
Создает дерево в соответствии с DOM XML.

Methods:


XmlParser::()(void)

Вернет ссылку на объект LRParserEngine

XmlParser::CheckNodes(refer object XmlElement)

param elem;



XmlParser::MakeNode(refer object Vector)

Вернет ссылку на объект LRParserEngine

XmlParser::Parse(refer object String)

param expr;

Осуществляет разбор документа expr.

XmlParser::ParseFile(object String)

param fileName;

Осуществляет разбор документа из файла fileName.

XmlParser::XmlParser(void)

Конструктор парсера XML документа. Создается
одна реальная копия парсера, так что объекты класса
PlukExprParser можно создавать локально в любом количестве.

Class XmlSpecList : Vector

Methods:


XmlSpecList::FindSpec(object String)

param name;

Вернет ссылку на первую спецификацию полученную вызовом
метода GetSpecList( .. ) с тем же параметром

XmlSpecList::GetSpecList(object String)

param name;

Вернет список указателей на XML спецификации по заданному имени.
Имя имеет вид Pluk/<aplication>/<тип спецификации>/<версия> 
где
	<application> - название приложения;
	<тип спецификации> - название спецификации;
	<версия> - версия в виде числа с плавающей точкой;
При поиске спецификации можно задавать имя спецификации без версии. При этом
будет возвращен список наиболее свежих (по версии) спецификаций. 
Если номер версии задан, то его целая часть считается главным номером версии.
Т.е. совпадение целой части версии спецификации с искомой обязательно. Среди
спецификаций с одинаковой целой частью версии берется имеющая наибольшую версию если
эта версия больше или равна искомой.
Пример:
	Загружены спецификации
		Pluk/AppOptions/Options/1.0
		Pluk/AppOptions/Options/1.5
		Pluk/AppOptions/Options/2.0
	
	GetSpecList("Pluk/AppOptions/Options") 			вернет указатель на Pluk/AppOptions/Options/2.0
	GetSpecList("Pluk/AppOptions/Options/1.0") 	вернет указатель на Pluk/AppOptions/Options/1.5
	GetSpecList("Pluk/AppOptions/Options/1.7") 	вернет пустой вектор

AbortBox(refer object BaseString, refer ...)

param text, [defButton], [parentWnd];

Creates a message box with a request to abort, retry, or ignore, containing 
Abort, Retry and Ignore buttons.
text		Message text.
defButton	An argument specifying the default button. If this argument is 
			abscent, then the first button of the window is the default button.
parentWnd	The parent window.
Returns the user reaction on the message box.
Comments
The defButton argument may take the following values:
MB_DEFBUTTON1	The first button is the default button. This is always true if 
				the MB_DEFBUTTON2 or MB_DEFBUTTON3 values are not specified.
MB_DEFBUTTON2	The second button is the default button.
MB_DEFBUTTON3	The third button is the default button.
The function may return following values:
IDABORT			The Abort button was clicked.
IDRETRY			The Retry button was clicked.
IDIGNORE		The Ignore button was clicked.

Beep(void)

Makes a standard sound in the system.

BeginWaitCursor(void)

Sets the sand-glass form cursor.
Comments
If the cursor in the system has the sand-glass form, then all the windows and 
applications don't respond to mouse clicks and keyboard strikes. An application 
must call this function before actions which require blocking of user input. To 
permit the input again, an application must call the EndWaitCursor function.

BmpFromResource(object String, ...)

param name, [libName];

Retrieves a bitmap from the resources.
name		Name of the bitmap in the resources.
LibName		Library name of object String type.
Returns a MBmp class object
Comments
If the libName argument is not specified or is equal to an empty string, then 
the resources are taken from th executable. Otherwize the resources are taken 
from the library.

BringProcessToTop

Activates a process and places it above all the other processes.

ConfirmationBox(refer object BaseString, refer ...)

param text, [defButton], [parentWnd];

Creates a message box with a question and Yes, No and Cancel buttons.
text			Message text.
defButton		An argument specifying the default button. If this argument is 
				abscent, then the first button of the window is the default button.
parentWnd		The parent window.
Returns the user reaction on the message box.
Comments
The defButton argument may take the following values:
MB_DEFBUTTON1	The first button is the default button. This is always true if 
				the MB_DEFBUTTON2 or MB_DEFBUTTON3 values are not specified.
MB_DEFBUTTON2	The second button is the default button.
MB_DEFBUTTON3	The third button is the default button.
The function may return following values:
IDYES			The Yes button was clicked.
IDNO			The No button was clicked.
IDCANCEL		The Cancel button was clicked.

EndWaitCursor(void)

Restores the cursor that was in the system before it was set to the sand-glass 
form.
Comments
If the cursor in the system has the sand-glass form, then all the windows and 
applications don't respond to mouse clicks and keyboard strikes. An application 
must call this function after actions which require blocking of user input. If 
an application called the BeginWaitCursor function more than once, then to 
restore the cursor form it must call the EndWaitCursor the same number of times 
(or more)

ErrorBox(refer object BaseString, refer ...)

param text, [parentWnd];

Creates an Error message box.
text			The message text.
parentWnd		The parent window.
Returns the user reaction on the error message box.
Comments
The function may return following value:
IDOK			The OK button was pressed.

GetKeyState(number)

param virtCode

Checks if the key is pressed.
virtCode	Virtual key code.
Returns a boolean value. TRUE if the specified key is pressed. FALSE if the 
specified key is not pressed.
Comments
An application may check, if right or left mouse button is pressed at the moment 
if function key by specifying the VK_LBUTTON or VK_RBUTTON as the virtCode 
argument.

GetScreenSize(void)

Retrieves the full screen size.
Returns a two element vector. The first element is the screen width. The second 
element is the screen height.

InformationBox(refer object BaseString, refer ...)

param text, [parentWnd];

Creates an information message box.
text			The message text.
parentWnd		The parent window.
Returns the user reaction on the message box.
Comments
The function may return following value:
IDOK			The OK button was pressed.

InvalidateScreen(void)

Makes the screen incorrect, i.e. a subject to update.
Comments
By calling this function an application places a WND_UPDATE event into the event 
queues of the applications which windows are visible on the screen. From there 
this event will be dispatched to those windows, if there are no other events in 
the queue. By the time this method is called some part of the window may be 
marked as incorrect (the WND_UPDATE event is in the queue). In this case, after 
this method exits, a new area, which includes the old area and the new one, will 
be marked incorrect. If an application needs to update the window immediately, 
it must force the event to be extracted from the queue by calling the 
GWnd::Update method.

IsWaitCursor(void)

Checks if the cursor is set to the sand-glass form.
Comments
If the cursor in the system has the sand-glass form, then all the windows and 
applications don't respond to mouse clicks and keyboard strikes.

IsWndOpen(int)

param id;

Checks if the window is opened.
id				System identifier of the window 
Returns a boolean value. TRUE if the window is opened. FALSE if it is closed.
Comments
An application must call this function if the GWnd class object associated with 
the window might not exist at the moment of checking. In case of abscence of the 
object a check by System identifier will raise no error. If an application is 
sure that the object exists, it might call the GWnd::IsOpen method.

MessageBox(refer object BaseString, refer object BaseString, int, refer ...)

param title, text, type, [parentWnd];

Creates a message box with the specified title, text, icons and buttons.
title		The message box title.
text		The message text.
type		The message box type, specifying its contents and behaviour.
parentWnd	The parent window of the GWnd type.
Returns the user reaction on the message box.
Comments
If the parentWnd argument is specified, then a message box with a parent is 
created. Otherwise a message box without a parent is created.
The type argument may take the following values.
MB_OK				The window contains only the OK button.
MB_OKCANCEL			The window contains two buttons: OK and Cancel.
MB_ABORTRETRYIGNORE	The window contains three buttons: Abort, Retry and 
					Ignore.
MB_YESNOCANCEL		The window contains three buttons: Yes, No and Cancel.
MB_YESNO			The window contains two buttons: Yes and No.
MB_RETRYCANCEL		The window contains two buttons: Retry and Cancel.
MB_ICONSTOP			The attention icon appears in the window.
MB_ICONQUESTION		The question icon appears in the window.
MB_ICONEXCLAMATION	The exclamation icon appears in the window.
MB_ICONQUESTION		The information icon appears in the window.
MB_DEFBUTTON1		The first button is the default button. This is always true if 
the MB_DEFBUTTON2 or MB_DEFBUTTON3 values are not specified.
MB_DEFBUTTON2		The second button is the default button.
MB_DEFBUTTON3		The third button is the default button.
MB_APPLMODAL		The user has to reply to the message before continuing to work 
					with the parentWnd window. This is always true, if the MB_TASKMODAL or 
					MB_SYSTEMMODAL are not specified.
MB_TASKMODAL		The user has to reply to the message before continuing to work 
					with any window of the current task.
MB_SYSTEMMODAL		The user has to reply to the message before continuing to work 
					with the parentWnd window.
The return value might be the following:
IDOK				The OK button was clicked.
IDCANCEL			The Cancel button was clicked.
IDABORT				The Abort button was clicked.
IDRETRY				The Retry button was clicked.
IDIGNORE			The Ignore button was clicked.
IDYES				The Yes button was clicked.
IDNO				The No button was clicked.
If the message box contains a Cancel button, then the function will return 
IDCANCEL either when this button is clicked or when the Esc key was pressed. If 
the message box does not contain a Cancel button, then pressing the Esc key will 
make no effect.

PIR(void)

Retrieves resources in the PIR form.
Returns a reference to a PIR class object.

PIR::FromSpecSym

#rus Переводит символьное представление спецсимволов
#rus "\\", "\"", "\t", "\r", "\n" в спецсимволы \, ", \t, \r, \n.
#rus str			Входная строка.
#rus Возвращает выходную строку.

PIR::GetID

param id;

#rus Получает значение идентификатора, который хранится в поле
#rus объекта системы PIR. Обычно в таком поле содержится целое
#rus число или строка, являющаяся выражением, включающим имена
#rus констант.
#rus id			Значение поля.
#rus Возвращает целое значение идентификатора.

PIR::GetStr

param str;

#rus Получает значение строки, которая хранится в поле объекта
#rus системы PIR. Обычно в таком поле содержится строка или
#rus ключ в таблице PIRMap.
#rus str			Значение поля.
#rus Возвращает значение строки.

PIR::ToSpecSym

#rus Переводит спецсимволы \, ", \t, \r, \n в символьное
#rus представление спецсимволов "\\", "\"", "\t", "\r", "\n".
#rus str			Входная строка.
#rus Возвращает выходную строку.

QuestionBox(refer object BaseString, refer ...)

param text, [defButton], [parentWnd];

Creates a message box with a question and Yes and No buttons.
text			Message text.
defButton		An argument specifying the default button. If this argument is 
				abscent, then the first button of the window is the default button.
parentWnd		The parent window.
Returns the user reaction on the message box.
Comments
The defButton argument may take the following values:
MB_DEFBUTTON1	The first button is the default button. This is always true if 
				the MB_DEFBUTTON2 or MB_DEFBUTTON3 values are not specified.
MB_DEFBUTTON2	The second button is the default button.
MB_DEFBUTTON3	The third button is the default button.
The function may return following values:
IDYES			The Yes button was clicked.
IDNO			The No button was clicked.

StopBox(refer object BaseString, refer ...)

param text, [parentWnd];

Creates a critical error message box.
text		Message text.
parentWnd	The parent window.
Returns the user reaction on the message box.
Comments
The function may return following value:
IDOK		The OK button was pressed.

StoreWndPlacement(int, ...)

param flags, [templateName, ...]

Sets the mode of storing the window placement on the screen.
flags			Flags, which set the storing mode.
templateName	The template name of the windows, for which the storing mode is 
				set. Is an object String type value.
Comments
The mode of storing the window placement on the screen is implemented as storing 
the window geometrical parameters in an ini file, with the file name matching 
the application name. Therefore to use this function an application must load 
the library for working with configuration files. For a sepatate application all 
its windows with the same template (and the same caption if the SWP_DIST_CAPTION 
flag is set) store the windows pacement information in the same place. Storing 
means reading the information from a file whin the window is opened (and when 
the window's caption changes if the SWP_DIST_CAPTION flag is set) and writing 
the information into the file when the window is closed (and when the window's 
caption changes if the SWP_DIST_CAPTION flag is set). If the templateName 
argument is specified for several times, then the flags mode is set for several 
templates. If the templateName argument is not specified at all then the flags 
mode is set for all the application windows except those, for which it wasn't 
set personally, i.e. this function with the template in one of the templateName 
arguments wasn't called.
The flags argument is a combination of following values:
SWP_NOTHING		Not store the window placement.
SWP_POS			Store the window placement.
SWP_SIZE		Store the window size.
SWP_MINIMIZING	Store the minimized state of the window.
SWP_MAXIMIZING	Store the maximized state of the window.
SWP_DIST_CAPTION	Distingwish between windows with the same template but 
					different captoins.
The SWP_NOTHING mode is useful to eliminate storing of geometrical parameters of 
the specified windows in case of storing some geometrical parameters of all the 
windows. If an application sets the SWP_DIST_CAPTION then while storing the 
windows they are distinguished not only by the template name, but by the window 
caption at the moment of reading/writing the parameters, too.

XmlParser::CodeAttrValueString

Фильтрует строку на наличие символов запрещенных в значениях
XML атрибутов, заменяя их на специальные последовательности.
Применяется при экспорте XML структур в файл.

XmlParser::DecodeAttrValueString

Фильтрует строку на наличие последовательностей специальных
символов применяемых в значениях XML-атрибутов декодируя их.
Применяется при импорте из XML файла

Index: