Сообщество программистов Autodesk в СНГ

ADN Club => Адаптация AutoCAD и вертикальных приложений => Тема начата: Виталий от 02-06-2015, 11:30:22

Название: Адаптация собственного меню cuix
Отправлено: Виталий от 02-06-2015, 11:30:22
Интересует есть ли настройки/переменные для вида вертикальной ленты собственного меню сразу после открытия Автокада. В самом Автокаде есть, а вот собственное меню изображается как попало. Где находятся эти переменные или настройки. Например,
как установить по умолчанию режим "Свернуть до кнопок панелей" или как установить автоматически выводимый вертикальный вид ленты? Вообще нужно знать и остальные, данного типа, настройки, т.е. где они находятся, в самом cuix или в переменных Автокада в регистрах Windows, или еще где?
Название: Re: Адаптация собственного меню cuix
Отправлено: Алексей Кулик от 02-06-2015, 12:36:41
А что понимается под "вертикальной" лентой? Изменения интерфейса, по-моему, хранятся в основном файле меню (я об этом писал здесь (http://autolisp.ru/2013/11/19/partial-menu-loading/)).
Название: Re: Адаптация собственного меню cuix
Отправлено: Виталий от 02-06-2015, 12:49:16
Вертикальный вид ленты и все остальное в нем, какие переменные отвечают за это? По вашей ссылке очень объемный
материал. Мне просто хотелось бы узнать место где они хранятся у Автодеска, дальше я сам разберусь.
Название: Re: Адаптация собственного меню cuix
Отправлено: Алексей Кулик от 02-06-2015, 12:59:11
Изменения интерфейса, по-моему, хранятся в основном файле меню
Уточняю: имеется в виду acad.cuix для чистого AutoCAD.
А в каком конкретно месте - не знаю. Подозреваю, что надо будет парсить текущее рабочее пространство и его анализировать. Имя текущего рабочего пространства хранится в реестре, HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\RXX.X\ACAD-YYYY:ZZZ\Profiles\{ProfileName}, ключ WorkspaceNameAtProfileSave; дублируется в HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\RXX.X\ACAD-YYYY:ZZZ\Profiles\{ProfileName}\General, ключ WSCURRENT
Название: Re: Адаптация собственного меню cuix
Отправлено: Виталий от 02-06-2015, 13:20:25
Если неизвестно где находятся и как эти переменные называются, на что парсить? Как установить текущее пространство понятно, но моя тема о другом, как представлять ленту в том виде в котором бы хотелось. В автокаде с Acad.cuix все работает корректно как вышел из Автокада так следующий раз и увидишь меню там же и в том же виде, значит есть переменные, думаю.
Название: Re: Адаптация собственного меню cuix
Отправлено: Алексей Кулик от 02-06-2015, 13:35:57
acad.cuix фактически zip-архив. Внутри него масса файликов. Изменениям подвергаются Header.cui, WorkspaceRoot.cui, \_tx.rels Menu_Package.cui, QuickAccessToolbarRoot.cui Их изменения и отслеживай.
Название: Re: Адаптация собственного меню cuix
Отправлено: Александр Ривилис от 02-06-2015, 14:25:20
Вертикальный вид ленты и все остальное в нем, какие переменные отвечают за это?
Никакие. Всё внутри cuix-файла. Управлять можно только через AutoCAD .NET API (пространство имён Autodesk.AutoCAD.Customization)
Другого легального способа нет.
Название: Re: Адаптация собственного меню cuix
Отправлено: Виталий от 02-06-2015, 15:21:01
Никакие. Всё внутри cuix-файла. Управлять можно только через AutoCAD .NET API (пространство имён Autodesk.AutoCAD.Customization)
Другого легального способа нет.
Тогда через ActiveX lisp'ом наверно можно сделать желаемые установки? Есть примеры названия этих имен?
Название: Re: Адаптация собственного меню cuix
Отправлено: Александр Ривилис от 02-06-2015, 15:31:23
Тогда через ActiveX lisp'ом наверно можно сделать желаемые установки? Есть примеры названия этих имен?
Нет. Нельзя. Из lisp'а через ActiveX нельзя обратится к AutoCAD .NET API. Ты путаешь его с AutoCAD ActiveX/COM API. А это совершенно разные вещи.
Почитай: http://adn-cis.org/modifikacziya-lentyi.html