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

ADN Club => AutoCAD .NET API => Тема начата: Привалов Дмитрий от 25-03-2019, 12:18:39

Название: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Привалов Дмитрий от 25-03-2019, 12:18:39
На вкладках переключения модели, листов можно вызвать контекстное меню.
Хотелось бы отредактировать его. Добавить кнопки, а возможно и удалить лишние.
В адаптации этого контекстного меню не нашел, там только для примитивов, но не Layout. В архиве acad.CUIX тоже.
Собственно 2 вопроса:
1. Где оно хранится?
2. Возможно ли изменить его программно?
Название: Re: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Александр Пекшев aka Modis от 25-03-2019, 12:26:58
1. Где оно хранится?
Скорее всего в коде
2. Возможно ли изменить его программно?
На 99% уверен, что через .net нельзя
Название: Re: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Александр Ривилис от 25-03-2019, 13:11:28
На 99% уверен, что через .net нельзя
Оставшийся 1% - это хуки. Но мне кажется, что этим заниматься не следует.
Название: Re: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Привалов Дмитрий от 25-03-2019, 13:22:24
На 99% уверен, что через .net нельзя
Кажется нашел как добраться, сейчас проверяю.

На 99% уверен, что через .net нельзя
Оставшийся 1% - это хуки. Но мне кажется, что этим заниматься не следует.
Какие-то опасения по стабильности работы, при редактировании popup menu?
Название: Re: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Александр Ривилис от 25-03-2019, 13:29:41
Какие-то опасения по стабильности работы, при редактировании popup menu?
Конечно. Ну и главный вопрос - зачем?
Название: Re: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Александр Ривилис от 25-03-2019, 13:40:42
Есть такой внутренний и недокументированный класс: Autodesk.AutoCAD.Internal.LayoutContextMenu.
Можешь попробовать как-то его использовать. В любом случае в ADN DevHelp с просьбой объяснить его назначение и возможности я обращаться не буду - они не дают пояснений по внутренним API.
Название: Re: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Привалов Дмитрий от 25-03-2019, 13:41:58
Конечно. Ну и главный вопрос - зачем?
Занимаюсь адаптацией AutoCAD2010.
Имеются команды вставки листов с форматками из шаблона.

Это пока только идея - убрать кнопки "новый лист" и по "шаблону..." и заменить списком форматок, т.к. пустой лист и левый шаблон им не нужен.
Если зайдет добавлю еще потом полезностей.
Название: Re: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Александр Ривилис от 25-03-2019, 13:46:40
Занимаюсь адаптацией AutoCAD2010.
Я  думаю, что предметная область была бы им намного полезней. И всё тоже самое можно было-бы реализовать в обычном меню - не обязательно лезть в контекстное меню листов. IMHO.
Название: Re: Как изменить контекстное меню на вкладке листа или модели?
Отправлено: Привалов Дмитрий от 25-03-2019, 13:52:35
И всё тоже самое можно было-бы реализовать в обычном меню - не обязательно лезть в контекстное меню листов.
Это уже реализовано, есть функционал в ленте, и меню. Хочется попробовать дополнительную адаптацию для контекстного меню листов, т.к. адаптация контекстного меню объектов показала хороший результат.