29.11.2007, 15:52 | #1 |
Участник
|
Переопределение стандартных Hotkey
Задался вопросом насколько это полезно или нет.
1. Какие стандартные хоткеи вы бы хотели изменить? Например, вместо Alt+Enter(свойства) сделать Ctrl + пробел, как в редакторе? Или Ctrl+N изменить на более приятную для пальцев комбинацию. Или поменять Shift+F11 (Список всех прикладных объектов), и вообще вызов всех встроенных списков структуировать (Например, поместить их на Shift + F1 ... F5 ). 2. Будет ли полезно продублировать функционал кнопок тулбаров хоткеями? Если да, то каких. Например, открыть проект по Ctrl+P (или как нравится), импорт проектов и тп. PS Технически это реализуемо.
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0 |
|
29.11.2007, 15:57 | #2 |
MCTS
|
как насчет перемещения по окнам внутри аксапты, например, так, как это сделано в VS2005 или в opere?
|
|
29.11.2007, 15:58 | #3 |
Участник
|
Я бы разве что заменил
Ctrl+Shift+Space (Lookup Definition) на F12 (как в Visual Studio) Да и вообще, раз уж делаешь редактор, похожий на VS, то и хоткеи оттуда передерай |
|
29.11.2007, 15:59 | #4 |
Участник
|
Эээ. А Табакс разве эту задачу не решает?
|
|
29.11.2007, 16:00 | #5 |
MCTS
|
а там что за клавиши для этого? Неохото просто ставить такую громаду, только для такой небольшой задачи...
gotodefinition - лучше ctrl+D gotodeclaration - ctrl+E у меня так - удобно, ну, это просто предложение Последний раз редактировалось Eldar9x; 29.11.2007 в 16:02. |
|
29.11.2007, 16:05 | #6 |
Участник
|
Там нет клавиш. Лично мне кстати, еще хорошо бы какой-нибудь способ вызова скриптов в редакторе по хоткеям. А то вот я пытался сделать и обломился....
Код макроса на autohotkey X++: PI_GetMenuItemID( hMenu, nPos ) { return DllCall("GetMenuItemID", "uint", hMenu, "int", nPos) } API_GetSubmenu( hMenu, nPos ) { return DllCall("GetSubMenu", "uint", hMenu, "int", nPos) } API_GetMenuItemsCount(hMenu) { return DllCall("GetMenuItemCount", "Uint", hMenu, "Uint") } GetMenuString(hMenu, nPos) { length := DllCall("GetMenuString" , "UInt", hMenu , "UInt", nPos , "UInt", 0 ; NULL , "Int", 0 ; Get length , "UInt", 0x0400) ; MF_BYPOSITION VarSetCapacity(lpString, length + 1) ; I don't check the result... length := DllCall("GetMenuString" , "UInt", hMenu , "UInt", nPos , "Str", lpString , "Int", length + 1 , "UInt", 0x0400) return lpString } findMenuItem(hMenu, name) { RepeatCount := API_GetMenuItemsCount(hMenu) Loop %RepeatCount% { nPos := A_Index - 1 if GetMenuString(hMenu, nPos)=name { return nPos } } return -1 } runScript(name, name2="") { SendInput,{APPSKEY} Sleep, 100 if WinExist("ahk_class #32768") { ;WinGet, activeWindow, ID ;hWnd := activeWindow ;activeWindow := DllCall("GetWindow", "Uint", activeWindow, "Uint", 4, "Uint") SendMessage,0x01E1 hmenu := ErrorLevel nPos := -1 nPos2 := -1 if hmenu!=1 { itemCount := API_GetMenuItemsCount(hmenu) if(findMenuItem(hmenu, "Scripts")=(itemCount-1)) { hmenu := API_GetSubMenu(hmenu, itemCount-1) nPos := findMenuItem(hmenu, name) ;MsgBox % "m2 " . nPos if(nPos != -1 and name2 != "") { hMenu2 := API_GetSubMenu(hmenu, nPos) nPos2 := findMenuItem(hmenu2, name2) ;MsgBox % "m2 " . nPos2 } if((nPos2 != -1) or (nPos != -1 and name2 = "")) { SendInput,{UP}{ENTER} Loop %nPos% { SendInput,{DOWN} } SendInput,{ENTER} if(name2 <> "") { Loop %nPos2% { SendInput,{DOWN} } SendInput,{ENTER} } } } } } } |
|
29.11.2007, 16:09 | #7 |
Участник
|
Цитата:
Цитата:
Я бы разве что заменил
Ctrl+Shift+Space (Lookup Definition) на F12 (как в Visual Studio) Да и вообще, раз уж делаешь редактор, похожий на VS, то и хоткеи оттуда передерай Имеется ввиду, что можно переобозначить стандартный хоткей любой другой комбинацией. При этом старую комбинацию или зарезать или оставить. Цитата:
Неохото просто ставить такую громаду, только для такой небольшой задачи...
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0 |
|
29.11.2007, 16:13 | #8 |
Участник
|
Цитата:
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0 Последний раз редактировалось Alex_KD; 29.11.2007 в 16:20. |
|
29.11.2007, 16:14 | #9 |
Участник
|
Перемещения по окнам стандартные:
Ctrl+F6 и Ctrl+Shift+F6 |
|
29.11.2007, 16:19 | #10 |
Участник
|
В VS2005 это приятнее сделано.
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0 |
|
29.11.2007, 16:24 | #11 |
MCTS
|
Цитата:
По Ctrl+Tab или просто Tabbed интерфейс как в Tabax?
|
|
29.11.2007, 16:27 | #12 |
Участник
|
|
|
29.11.2007, 16:29 | #13 |
MCTS
|
Alex_KD, точно, представил это дело в Аксапте - супер было бы
Belugin, до F6 - далеко тянутся |
|
29.11.2007, 16:35 | #14 |
Участник
|
Цитата:
Сообщение от Eldar9x
Ну, Ctrl+Tab ведь зарезервирован для перемещения по методам внутри окна редактора. Я имею ввиду, что при нажатии комбинации клавиши активировались поочеродно child окна внутри аксапты, использование мыши для этого просто убивает. Shift + комбинация - видимо, обратное перемещение, а сама комбинация - в идеале, конечно, ctrl+tab, но тогда надо в редакторе что-нибудь другое - может ctrl+DOWN и ctrl+UP
Вообще говорят, кнопки в редакторе и в Аксапте обрабатываются поразному (в разных методах). Так что эту ситуацию можно поразному обыгрывать. Впринципе, с навигацией между оконами могут быть варианты: - Делать как в VS2005 (см. скриншот выше). - Делать выпадающий список с списком всех окон. (типа как в меню Окно). - Tabbed интерфейс (Tabax, VS) - Дополнительные настройки/кнопки (спрятать все формы, спрятать все окна АОТ + открытых редакторов, ...)
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0 Последний раз редактировалось Alex_KD; 29.11.2007 в 16:38. |
|
29.11.2007, 16:55 | #15 |
MCTS
|
Цитата:
- Делать как в VS2005 (см. скриншот выше).
А сам редактор на редактор от студии может тоже замените . Достали глюки в родном |
|
29.11.2007, 17:03 | #16 |
Участник
|
Цитата:
Так что лучше дополнить то что есть.
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0 |
|