Перейти к содержанию

Рекомендуемые сообщения

В контекстовом меню, элементы вкладки редактирование, можно ли поместить не во вкладке, а в самом меню, приложил как выглядит меню в nc, и 2 картика, как хотелось бы настроить.

контекстное меню.jpg

контекстное меню2.jpg

Ссылка на сообщение
Поделиться на другие сайты

Добрый день!

Нужно отредактировать nCAD.cfg (По умолчанию лежит тут: C:\Program Files (x86)\Nanosoft\nanoCAD Plus 6.0\nCAD.cfg)

Нужно найти строки содержащие [\ViewPopupMenu], а именно:

[\ViewPopupMenu]  |Intername=sViewPopupMenu
[\ViewPopupMenu\LastCommand]  |intername=sLastCommand1
[\ViewPopupMenu\LastCommandPopup]  |name=s&Last commands
[\ViewPopupMenu\LastCommandPopup\LC0]  |intername=sLastCommand1
….
[\ViewPopupMenu\Inspector]  |name=sP&roperties  |intername=sProperties
[\ViewPopupMenu\DrawingExplorer]  |name=sDrawing &Explorer  |intername=sDrawingExplorer

 

Это и есть пункты меню, их можно переместить, удалить или добавить новые команды. Вот мой вариант контекстного меню:

 

 

[\ViewPopupMenu] |Intername=sViewPopupMenu
[\ViewPopupMenu\LastCommand] |intername=sLastCommand1
[\ViewPopupMenu\LastCommandPopup] |name=s&Last commands
[\ViewPopupMenu\LastCommandPopup\LC0] |intername=sLastCommand1
[\ViewPopupMenu\LastCommandPopup\LC1] |intername=sLastCommand2
[\ViewPopupMenu\LastCommandPopup\LC2] |intername=sLastCommand3
[\ViewPopupMenu\LastCommandPopup\LC3] |intername=sLastCommand4
[\ViewPopupMenu\LastCommandPopup\LC4] |intername=sLastCommand5
[\ViewPopupMenu\LastCommandPopup\LC5] |intername=sLastCommand6
[\ViewPopupMenu\LastCommandPopup\LC6] |intername=sLastCommand7
[\ViewPopupMenu\LastCommandPopup\LC7] |intername=sLastCommand8
[\ViewPopupMenu\LastCommandPopup\LC8] |intername=sLastCommand9
[\ViewPopupMenu\sep2]
[\ViewPopupMenu\Undo] |name=s&Undo |intername=sEditUndo
[\ViewPopupMenu\Redo] |name=s&Redo |intername=sEditRedo
[\ViewPopupMenu\sep3]
[\ViewPopupMenu\Move] |name=sMove object
[\ViewPopupMenu\Move\erase] |name=sErase |intername=sDelete
[\ViewPopupMenu\Move\MoveCopy] |Name=sCop&y |InterName=sMoveCopy
[\ViewPopupMenu\Move\Mirror] |Name=sMirror |InterName=sMirror
[\ViewPopupMenu\Move\Offset] |name=sOffset |intername=svcOffsetCmd
[\ViewPopupMenu\Move\Array] |Name=sArray |InterName=sArray
[\ViewPopupMenu\Move\sep4]
[\ViewPopupMenu\Move\MoveObject] |Name=sMov&e |InterName=sMove
[\ViewPopupMenu\Move\RotateObject] |Name=s&Rotate |InterName=sRotate
[\ViewPopupMenu\Move\sep10]
[\ViewPopupMenu\Move\scale] |Name=s&Scale |InterName=sScale
[\ViewPopupMenu\Move\stretch] |name=sStretch |intername=sstretch
[\ViewPopupMenu\Move\sep5]
[\ViewPopupMenu\Move\Trim] |name=s&Trim Vectors |intername=svcTrimByEdgeCmd
[\ViewPopupMenu\Move\smarttrim] |name=sSmart &Trim |intername=ssmarttrim
[\ViewPopupMenu\Move\Extend] |name=s&Extend Vectors |intername=svcExpandByEdgeCmd
[\ViewPopupMenu\Move\Break] |name=s&Break Vectors |intername=svcBreakCmd
[\ViewPopupMenu\Move\Join] |name=s&Join objects |intername=sJoin
[\ViewPopupMenu\Move\Extend] |name=s&Extend Vectors |intername=svcExpandByEdgeCmd
[\ViewPopupMenu\Move\Break] |name=s&Break Vectors |intername=svcBreakCmd
[\ViewPopupMenu\Move\Join] |name=s&Join objects |intername=sJoin
[\ViewPopupMenu\Clipboard] |name=sБуфер обмена
[\ViewPopupMenu\Clipboard\Cut] |Name=s&Cut |InterName=sCut
[\ViewPopupMenu\Clipboard\Copy] |Name=s&Copy |InterName=sCopy
[\ViewPopupMenu\Clipboard\CopyWithBasePoint] |Name=s&Copy With Base Point |InterName=sCopyWithBasePoint
[\ViewPopupMenu\Clipboard\Paste] |Name=s&Paste |InterName=sPaste
[\ViewPopupMenu\Clipboard\PasteBlock] |Name=s&Paste as Block |InterName=sPasteBlock
[\ViewPopupMenu\Clipboard\PasteOriginal] |Name=sPaste to Original Coor&dinates |InterName=sPasteOrigin
[\ViewPopupMenu\Isolate] |name=sIsolate
[\ViewPopupMenu\Isolate\IsolateObjects] |name=sIsolate &Objects |InterName=sIsolateObjects
[\ViewPopupMenu\Isolate\HideObjects] |name=sHide Objects |InterName=sHideObjects
[\ViewPopupMenu\Isolate\UnisolateObjects] |name=sUnisolate Objects |InterName=sUnisolateObjects
[\ViewPopupMenu\DisplayOrder] |name=sDispla&y Order
[\ViewPopupMenu\DisplayOrder\BringToFront] |name=s&Bring to Front |InterName=sdraworder1
[\ViewPopupMenu\DisplayOrder\SendToBack] |name=s&Send to Back |InterName=sdraworder2
[\ViewPopupMenu\DisplayOrder\BringForward] |name=sBring &Forward |InterName=sdraworder3
[\ViewPopupMenu\DisplayOrder\SendBackward] |name=sSend Back&ward |InterName=sdraworder4
[\ViewPopupMenu\Select] |name=sSelect
[\ViewPopupMenu\Select\selectsimilar] |name=sSelect similar objects |intername=sselectsimilar
[\ViewPopupMenu\Select\SelectAll] |name=sSelect Al&l |intername=sSelectAll
[\ViewPopupMenu\Select\QuickSelect] |name=s&Quick Select |intername=sqs
[\ViewPopupMenu\Select\UnSelectAll] |name=sUnSelect All |intername=sUnSelectAll
[\ViewPopupMenu\sep1]
[\ViewPopupMenu\AddSelected] |Name=sAdd Selected |InterName=sAddSelected
[\ViewPopupMenu\sep5]
[\ViewPopupMenu\Find] |name=sSearch and Replace... |intername=sfind
[\ViewPopupMenu\sep4]
[\ViewPopupMenu\Inspector] |name=sP&roperties |intername=sProperties
[\ViewPopupMenu\preferences] |name=sPreferences |intername=sPreferencesCmd

 

 

Вот что получилось в итоге:

image007.jpg

 

Не забывайте делать резервные копии.

Ссылка на сообщение
Поделиться на другие сайты
  • 5 лет спустя...

Открываете настройку интерфейса

на вкладке "контекстные меню "переходите в раздел либо "меню по умолчанию"

в колонке с командами находите свою команду, которую необходимо добавить, и перетаскиваете в нужную вам позицию.

дальше применяем изменения и выходим из настроек.

Перезагружаем нанокад и пользуемся

 

image.thumb.png.6eb525fb9795817b8b644a20d06fd845.png

 

Ссылка на сообщение
Поделиться на другие сайты

Я бы любую кастомизацию интерфейса начинал с

image.png.85ba145e2f570622213f9e4f8a65c792.png

потом подгрузил этот файл

image.png.1382f9bf53e7e4090f2dd871840c55cf.png

переключился на него

image.png.f5ecbdc4195f89455e5fe28af815b21a.png

и только потом бы начал творить красоту..

Что бы в новой версии наны не начинать с начала...

Свои команды, все менюхи, то же в кастомный файл...

Ну и положить копию в укромное место... дабы случайно при переустановке не почистить

Ссылка на сообщение
Поделиться на другие сайты

и еще нюанс...

как зачешутся руки наделать в конфиг своих команд, то что они должны быть в кастомном конфиге (можно все в один валить (команды менюхи и прочую красоту) само собой..

советую к своим командам добавлять суффикс или префикс через подчеркивание (естественно на инглиш) к внутреннему имени команды

как то так вижу:

image.thumb.png.25234ef436a0056489a5c3c226dd3fbf.png

дабы потом когда в очередной раз захочется поправить что натворил в прошлый, эту ляпоту можно было быстро найти не переключаясь на кастомный конфиг... просто по маске суффикса/префикса

Ссылка на сообщение
Поделиться на другие сайты

ну и в догон, для клавишников-кнопочников...

не обязательно каждый раз править *.pgp и потом перезагружать каждый раз нану.

Достаточно завести лиспик в котором прописать нужные алиасы на команды,

(defun c:гл ();;вернуть последний выбор
	(command "select13")
	(princ)
)

можно даже наделать быстрых команд

;;===============================
;;ПЕРЕОПРЕДЕЛЕНИЕ СТАНДАРТНЫХ  КОММАНД
;;===============================
(defun C:Тц ();; текст по центру
	(command "текст" "в" "СЦ" Pause "3.5" "0") (princ)) ;_ end defun
;; ----------------------------
(defun C:Т2 ();; текст 2.5 
	(command "текст" Pause "2.5" "0") (princ)) ;_ end defun
;; ----------------------------
(defun C:Т3 ();; текст 3.5 
	(command "текст" Pause "3.5" "0") (princ)) ;_ end defun
;; ----------------------------
(defun C:Т5 () ;; текст 5
	(command "текст" Pause "5" "0") (princ)) ;_ end defun
;; ----------------------------
(defun C:Т10 () ;; текст 10
	(command "текст" Pause "10" "0") (princ)) ;_ end defun
;; ----------------------------
(defun c:СР () ;;Смыкание линий:
	(command "_fillet" pause "д" "0") (princ)) ;_ end defun

или триггеров

(defun C:4 ();;вкл/выкл маскировку
   (if (= (getvar "Wipeoutframe") 0)
     (progn
     	 (setvar "Wipeoutframe" 2)
     	 (prompt "\nВидимая маскировка непечатаемая ")	
     )
     (progn
     	 (setvar "Wipeoutframe" 0)
     	 (prompt "\nНевидимая маскирвка ")	
     )
   ) ;_ end if
   (command "regen")
   (princ)
) ;_ end defun
;; ----------------------------
(defun C:5 ();;изом / орто
  (setvar "SNAPSTYL"
          (if (= (getvar "SNAPSTYL") 0)
            1
            0
          ) ;_ end if
  ) ;_ end setvar
  (princ)
) ;_ end defun
;; ----------------------------
(defun C:6 ();; LWDISPLAY переключалка толщины линий
  (setvar "LWDISPLAY"
          (if (= (getvar "LWDISPLAY") 0)
            1
            0
          ) ;_ end if
  ) ;_ end setvar
  (princ)
) ;_ end defun
;; ----------------------------
(defun C:7 ();; выбор по одному или добавление (command nil)
  (setvar "PICKADD"
          (if (= (getvar "PICKADD") 0)
            1
            0
          ) ;_ end if
  ) ;_ end setvar
  (if (= (getvar "PICKADD") 0)
    (prompt "\nОдиночный ")
    (prompt "\nДобавление ")
  ) ;_ end if
  (princ)
) ;_ end defun

бонус такого подхода, что при изменении -правке команды в лиспе нам достаточно его по новой подгрузить, что значительно быстрее перезагрузки наны)))

например лисп называется comNana.lsp  и лежит по путям поиска нанокад

в лиспе прописываем такую команду

 

(defun c:зз ();; reload, COM  
  (load "comNana")
  (prompt "\nПерезагрузил COM! ")
  (princ)
)

и по ЗЗ он перезагрузит сам себя

Ссылка на сообщение
Поделиться на другие сайты
В 24.03.2015 в 14:00, Spirin сказал:

 

image007.jpg

 

Вот так бы в каждой ветке форума, задал вопрос и получил более чем развернутый ответ

еще +5 копеек

при создании выпадающего меню, через интерфейс, чтобы получить тот же результат как на картинке перетаскиванием команд во вновь созданное меню не получится (вопрос к разработчикам).

Поместить их в новое меню возможно только если заново найти эту команду в общем списке и от туда ее переместить в требуемую позицию.

 

 

Ссылка на сообщение
Поделиться на другие сайты
37 минут назад, Alex_pl сказал:

при создании выпадающего меню, через интерфейс, чтобы получить тот же результат как на картинке перетаскиванием команд во вновь созданное меню не получится (вопрос к разработчикам).

Поместить их в новое меню возможно только если заново найти эту команду в общем списке и от туда ее переместить в требуемую позицию.

не понял твой вопрос(((

но ответить попробую)))

Посмотри приложенный конфиг.

Смысл выше был в том, что хранить кастомное меню, контекстное меню и кастомные команды отдельно от стока.

Нет никаких проблем в кастомное меню добавить стандартные команды. Команды останутся где были, а в твоем меню будет просто сылка на команду

image.png.913b8d805436b255b59a92d4ad961d8a.png

 

 

drRaz.cfg

Изменено пользователем doctorraz
Ссылка на сообщение
Поделиться на другие сайты

это все так

но если просто создать выпадающее меню и попробовать в него переместить команды мышкой то они в это меню не попадают,а размещаются выше ее или ниже. Вложенный список не создается, команды в него можно поместить только из общего списка. как то так

возможно позже попробую видео записать

Ссылка на сообщение
Поделиться на другие сайты
13 минут назад, Alex_pl сказал:

Вложенный список не создается

дык откуда нано узнает, что ты хочешь?

Создай меню, потом подменю и таскай туда команды

добавлено через 2 минуты

Внутри меню ты таскаешь ссылки на команды, а не сами команды, как-то так понимаю

Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, Alex_pl сказал:

по моему все в видео показано, что при создании подменю команды в него не поместить

 

4 минуты назад, doctorraz сказал:

Внутри меню ты таскаешь ссылки на команды, а не сами команды

 

Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, doctorraz сказал:

Внутри меню ты таскаешь ссылки на команды, а не сами команды

в любом случае они должны перемещаться в подменю

Ссылка на сообщение
Поделиться на другие сайты
12 минут назад, Alex_pl сказал:

в любом случае они должны перемещаться в подменю

об этом разработчиков проси

Ссылка на сообщение
Поделиться на другие сайты
В 25.02.2021 в 14:19, Сергей242 сказал:

а плавное зумирование как добавить в контекстное меню?

Вернемся к началу

человек спросил, я ответил, ты дополнил,  а потом мы перестали друг друга понимать)))

Ссылка на сообщение
Поделиться на другие сайты

Подскажите знающие, откуда нанокад подгружает контекстные меню объектов?

Например это для внешней ссылки

image.png.724f6dba5bfd0d8b8855ff3941c1f5bf.png

Ссылка на сообщение
Поделиться на другие сайты
17 минут назад, Boroda888 сказал:

По идее должен отсюда... На ПКМ настроенная

вопрос  про выделенное в красном прямоугольнике, оно подгружается к "Меню по умолчанию" в зависимости от выделенного объекта

Прописано в действиях над объектами.

8 минут назад, Alex_pl сказал:

наверное сначала отсюда

перефразирую.. где лежит NCVP_PopupMenu_ER

Подозреваю, что чисто программная фича, ну а вдруг

-------------------------

но и что б два раза не вставать, где остальные объекты

image.png

В "действиях над объектами" только примитивы совсем голой платформы...

Нет действий над объектами mcad.

Изменено пользователем doctorraz
Ссылка на сообщение
Поделиться на другие сайты
9 минут назад, Alex_pl сказал:

В основном конфиге это прописано так....

Ага еще и вместе с командами..

некоторые команды из ком строки работают, но в НПИ не ищутся(((

добавлено через 0 минут

еще б найти где прописано контекстное меню над объектами СПДС...

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Расскажите друзьям

    Нравится Официальный форум компании Нанософт? Расскажите друзьям!
×
×
  • Создать...