GetIntelliSenseTooltipResult GetIntelliSenseTooltip(OdId tObject, GetIntelliSenseArg tArg)
tObject. Моникёр модуля, с кодом которого осуществляется работа.
tArg. Параметры выполнения операции.
Операция GetIntelliSenseTooltip получает информацию, используемую при формировании всплывающей подсказки для типа/члена типа в коде модуля.
Для выполнения операции укажите в поле tObject моникёр модуля, а в поле tArg.cursor координаты расположения курсора в коде. Если модуль был изменён, но еще не сохранялся, то его код может быть передан в поле tArg.meta. Результатом операции будет коллекция элементов кода, которые могут быть использованы в указанной координате в коде.
Ниже приведён пример получения информации о члене типа, которая используется для формирования всплывающей подсказки. В запросе передаётся моникёр модуля и координата в коде. В ответе приходит информация о члене типа и его параметрах. В примере C# используется функция FindObjectById, код которой приведен в примере «Получение описания объекта по его идентификатору».
{
"GetIntelliSenseTooltip" :
{
"tObject" :
{
"id" : "EBNIJHOJBFHOFOAEMHDCCHPHGKHABKGEPKLBOEMGMNCFCAIK!M!172002"
},
"tArg" :
{
"cursor" :
{
"col" : "48",
"row" : "26"
}
}
}
}
{
"GetIntelliSenseTooltipResult" :
{
"tooltip" :
{
"type" : "Sub",
"name" : "CreateWithParams",
"access" : "Public",
"blocks" :
{
"it" :
[
{
"type" : "Var",
"name" : "Size",
"typeName" : "Integer",
"access" : "Public",
"imask" : "4"
},
{
"type" : "Var",
"name" : "DefaultValue",
"typeName" : "Double",
"Value" : "0",
"access" : "Public",
"imask" : "4"
}
]
},
"imask" : "2"
},
"selectedChild" : "1"
}
}
public static GetIntelliSenseTooltipResult GetIntelliSenseTooltip(MbId mb, string moduleId)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операций
// Параметры выполнения операции
var tGet = new GetIntelliSenseTooltip()
{
tArg = new GetIntelliSenseArg()
{
cursor = new CodePoint()
{
row = 26,
col = 48
}
},
// Моникёр модуля
tObject = new OdId() { id = mb.id + "!" + FindObjectById(mb, moduleId).k }
};
// Получение информации
var result = somClient.GetIntelliSenseTooltip(tGet);
return result;
}
См. также: