Инструкция CLASS
Инструкция CLASS
- создание нового пользовательского класса.
Синтаксис
CLASS ABSTRACT name [caption] [: parent1, ..., parentN];
CLASS [NATIVE] name [caption]
[{
objectName1 [objectCaption1] [imageSetting1],
...
objectNameM [objectCaptionM] [imageSettingM]
}]
[: parent1, ..., parentN];
Описание
Инструкция CLASS
объявляет новый класс и добавляет его в текущий модуль.
Инструкция бывает двух видов: CLASS ABSTRACT
для объявления абстрактного класса и просто CLASS
для объявления обычного класса. Во втором случае при объявлении класса можно объявить статические объекты этого класса, имена и заголовки которых указываются в ограниченном фигурными скобками блоке.
Ключевое слово NATIVE
используется в некоторых системных модулях. Оно предназначено для объявления отдельных системных классов, которые создаются до инициализации модулей.
Параметры
-
name
Имя класса. Простой идентификатор. Имя должно быть уникально в пределах текущего пространства имен.
-
caption
Заголовок класса. Строковый литерал. Если заголовок не задан, то заголовком класса будет являться его имя.
-
objectName1, ..., objectNameM
Имена статических объектов данного класса. Каждое имя задается простым идентификатором. Значения имен хранятся в системном свойстве
System.staticName
. -
objectCaption1, ..., objectCaptionM
Заголовки статических объектов данного класса. Каждый заголовок является строковым литералом. Если заголовок не задан, то заголовком статического объекта будет являться его имя. Значения заголовков хранятся в системном свойстве
System.staticCaption
. -
imageSetting1, ..., imageSettingM
Настройки отображения иконок заголовков статических объектов данного класса. По умолчанию наличие иконки или ее отсутствие регулируется параметрами
settings.defaultImagePathRankingThreshold
иsettings.defaultAutoImageRankingThreshold
. Значение классаHTML
, используемое для отображения иконки, хранится в системном свойствеSystem.image[StaticObject]
. Эта опция позволяет настроить отображение иконки вручную. Может иметь один из двух видов:-
IMAGE [fileExpr]
Указание относительного пути к файлу изображения, которое будет отображаться в качестве иконки заголовка статического объекта. Если
fileExpr
не указывается, то происходит переключение в режим отображения иконки по умолчанию.-
fileExpr
Выражение, значение которого определяет путь к файлу изображения. Путь указывается относительно каталога
images
.
-
-
NOIMAGE
Ключевое слово, указывающее на то, что иконка заголовка статического объекта должна отсутствовать.
-
-
parent1, ..., parentN
Список имен родительских классов. Каждое имя задается составным идентификатором. Если список родительских классов не задан, то класс наследуется от класса
System.Object
.
Примеры
CLASS ABSTRACT Document; // Заголовком этого класса будет 'Document'
CLASS IncomeDocument 'Приход' : Document;
CLASS OutcomeDocument 'Расход' : Document;
CLASS Person;
CLASS Worker;
CLASS Musician : Person, Worker; // множественное наследование
CLASS Barcode 'Штрих-код'; // Родительским классом Barcode будет класс System.Object
CLASS PrintOrientation {
portrait 'Книжная',
landscape 'Альбомная'
}