По поводу propertyHelp()
Основное предназначение этого метода - получение подсказки для свойств в AOT.
Поясню на примере.
Если выбрать в AOT любую форму (ей соответствует класс FORM) и вызвать окно свойств, то в нем будут показан список, соответствующий методам класса Form, возвращающим истину при вызове propertyMethod() класса DictMethod, созданного для этого метода. При этом propertyHelp() вернет строку помощи, отображаемую при выделении свойства в статусной строке (или в хинте при наведении мыши на свойство).
Если в форме выделить любой датасоурс (если он есть), то отобразятся свойства, соответствующие классу FormDataSource
Сами значения, возвращаемые методом propertyHelp(), хранятся в ktd-файле (как, впрочем, и отображаемые названия свойств)
Еще propertyHelp() используется при динамическом формировании хелпа для выбранного метода в \System Documentation\Classes, если он (хелп) не был создан
Ну и вот вывод методов, возвращающих значение для propertyHelp()
X++:
static void GetPropertyHelp(Args _args)
{
TreeNode treeNode = TreeNode::findNode("\\System Documentation\\Classes");
DictClass dictClass;
DictMethod dictMethod;
int i;
;
SetPrefix("Список методов с установленной строкой помощи");
treeNode = treeNode.AOTfirstChild();
while (treeNode)
{
dictClass = new DictClass(className2Id(treeNode.treeNodeName()));
if (dictClass)
{
SetPrefix(dictClass.name());
for (i=1;i<=dictClass.objectMethodCnt();i++)
{
dictMethod = dictClass.objectMethodObject(i);
if (dictMethod && dictMethod.propertyMethod() && dictMethod.propertyHelp())
{
info(strfmt("%3::%1::%2", dictMethod.propertyMethod()==1, dictMethod.propertyHelp(), dictMethod.name()));
}
}
}
treeNode = treeNode.AOTnextSibling();
}
}