Не удается переименовать вид

Автор Rocky, 05.10.06, 18:56:16

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Rocky

Делаю так:

ksViewParamPtr pViewParam = m_pApplication->GetParamStruct(ko_ViewParam);
pViewParam->Init();
pDocument->ksGetObjParam(objPtr, pViewParam, ALLPARAM);   //objPtr - указатель на вид
         
//получаем имя вида
CString sName = CString(pViewParam->name.copy());
if (sName.IsEmpty())
{
   sName.Format("View %i", i + 1);
   pViewParam->name = sName.AllocSysString();
   CString sName2 = CString(pViewParam->name.copy());
   i++;
}

После присвоения нового имени и его получения, sName2 == sName (т.е. все хорошо). Как только возвращаюсь в КАД - смотрю, что ничего там не поменялось. Если спросить имя опять, то опять вернется пустая строка....  Я не понимаю... Может надо update какой-нибудь делать? Или всего лишь put_name для вида не реализван внутри КАДа? В примерах ничего такого не нашел, на форуме - тоже. В хэлпе написано, типа юзайте ребята, все путем... Мне только начало казаться что я более или менее начинаю понимать логику API Компаса.. не тут то было....

Кто-нибудь пробовал переименовать вид? Если да, как делали?

Заранее спасибо!

333

Нужно еще вызвать
pDocument->ksSetObjParam(objPtr, pViewParam, ALLPARAM);   //objPtr - указатель на вид

Rocky

Спасибо большое, так работает! Правда почему то не переименовывается тот вид, который является текущим. Приходится делать текущим системный вид, который мне не особо нужен. Вот.