KVIrc  4.9.2
DeveloperAPIs
kvi_shortcuts.h
Go to the documentation of this file.
1 #ifndef _KVI_SHORTCUT_CLASSFILE_H_
2 #error "Do not include kvi_shortcuts.h config file directly: include KviShortcut.h class header instead."
3 #endif
4 #ifndef _KVI_SHORTCUTS_H_
5 #define _KVI_SHORTCUTS_H_
6 //=============================================================================
7 //
8 // File : kvi_shortcuts.h
9 // Creation date : Fri Dec 11 2009 16:24:46 CEST by Elvio Basello
10 //
11 // This file is part of the KVIrc IRC client distribution
12 // Copyright (C) 2009 Elvio Basello (hell at hellvis69 dot netsons dot org)
13 //
14 // This program is FREE software. You can redistribute it and/or
15 // modify it under the terms of the GNU General Public License
16 // as published by the Free Software Foundation; either version 2
17 // of the License, or (at your option) any later version.
18 //
19 // This program is distributed in the HOPE that it will be USEFUL,
20 // but WITHOUT ANY WARRANTY; without even the implied warranty of
21 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
22 // See the GNU General Public License for more details.
23 //
24 // You should have received a copy of the GNU General Public License
25 // along with this program. If not, write to the Free Software Foundation,
26 // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
27 //
28 //=============================================================================
29 
130 // Please keep this list ordered by shortcut key and not by name :)
131 #define KVI_SHORTCUTS_HELP QKeySequence::HelpContents // F1
132 #define KVI_SHORTCUTS_INPUT_SELECT_ALL QKeySequence::SelectAll // Ctrl+A
133 #define KVI_SHORTCUTS_INPUT_BOLD QKeySequence::Bold // Ctrl+B
134 #define KVI_SHORTCUTS_INPUT_COPY QKeySequence::Copy // Ctrl+C
135 #define KVI_SHORTCUTS_WIN_SEARCH QKeySequence::Find // Ctrl+F
136 #define KVI_SHORTCUTS_INPUT_ICON QKeySequence::Italic // Ctrl+I <= yes we know this should be "italic"
137 #define KVI_SHORTCUTS_JOIN "Ctrl+J"
138 #define KVI_SHORTCUTS_INPUT_COLOR "Ctrl+K"
139 #define KVI_SHORTCUTS_WIN_SCROLL_TO_LAST_READ_LINE "Ctrl+L"
140 #define KVI_SHORTCUTS_TOGGLE_MENU_BAR "Ctrl+M"
141 #define KVI_SHORTCUTS_CONTEXT QKeySequence::New // Ctrl+N
142 #define KVI_SHORTCUTS_INPUT_RESET "Ctrl+O"
143 #define KVI_SHORTCUTS_INPUT_PLAINTEXT "Ctrl+P"
144 #ifdef COMPILE_ON_MAC
145 #define KVI_SHORTCUTS_QUIT QString()
146 #else
147 #define KVI_SHORTCUTS_QUIT "Ctrl+Q"
148 #endif
149 #define KVI_SHORTCUTS_INPUT_REVERSE "Ctrl+R"
150 #define KVI_SHORTCUTS_SERVERS "Ctrl+S"
151 #define KVI_SHORTCUTS_INPUT_UNDERLINE QKeySequence::Underline // Ctrl+U
152 #define KVI_SHORTCUTS_INPUT_PASTE QKeySequence::Paste // Ctrl+V
153 #define KVI_SHORTCUTS_WIN_CLOSE "Ctrl+W" // QKeySequence::Close seems to be problematic
154 #define KVI_SHORTCUTS_INPUT_CUT QKeySequence::Cut // Ctrl+X
155 #define KVI_SHORTCUTS_INPUT_COMMANDLINE "Ctrl+Y"
156 #define KVI_SHORTCUTS_INPUT_UNDO QKeySequence::Undo // Ctrl+Z
157 #define KVI_SHORTCUTS_AWAY "Ctrl+Shift+A"
158 #define KVI_SHORTCUTS_EDITORS_TOOLBAR "Ctrl+Shift+B"
159 #define KVI_SHORTCUTS_CONNECT "Ctrl+Shift+C"
160 #define KVI_SHORTCUTS_EDITORS_CLASS "Ctrl+Shift+D"
161 #define KVI_SHORTCUTS_EDITORS_EVENT "Ctrl+Shift+E"
162 #define KVI_SHORTCUTS_IDENTITY "Ctrl+Shift+I"
163 #define KVI_SHORTCUTS_EDITORS_ALIAS "Ctrl+Shift+L"
164 #define KVI_SHORTCUTS_MANAGE_THEMES "Ctrl+Shift+M"
165 #define KVI_SHORTCUTS_MANAGE_ADDONS "Ctrl+Shift+N"
166 #define KVI_SHORTCUTS_OPTIONS "Ctrl+Shift+O"
167 #define KVI_SHORTCUTS_EDITORS_POPUP "Ctrl+Shift+P"
168 #define KVI_SHORTCUTS_EDITORS_ACTION "Ctrl+Shift+Q"
169 #define KVI_SHORTCUTS_EDITORS_RAW "Ctrl+Shift+R"
170 #define KVI_SHORTCUTS_EDITORS_TESTER "Ctrl+Shift+S"
171 #define KVI_SHORTCUTS_THEME "Ctrl+Shift+T"
172 #define KVI_SHORTCUTS_USERS "Ctrl+Shift+U"
173 #define KVI_SHORTCUTS_EXEC "Ctrl+Shift+X"
174 #define KVI_SHORTCUTS_INPUT_REDO QKeySequence::Redo // Ctrl+Shift+Z
175 #define KVI_SHORTCUTS_WIN_PREV Qt::AltModifier + Qt::Key_Up
176 #define KVI_SHORTCUTS_WIN_NEXT Qt::AltModifier + Qt::Key_Down
177 #define KVI_SHORTCUTS_WIN_NEXT_TAB Qt::ControlModifier + Qt::Key_Tab // Ctrl+Tab
178 #if defined(COMPILE_ON_WINDOWS) || defined(COMPILE_ON_MINGW)
179 #define KVI_SHORTCUTS_WIN_PREV_TAB Qt::ControlModifier + Qt::ShiftModifier + Qt::Key_Tab // Ctrl+Shift+Tab
180 #else
181 #define KVI_SHORTCUTS_WIN_PREV_TAB Qt::ControlModifier + Qt::Key_Backtab // Ctrl+Shift+Tab
182 #endif
183 #define KVI_SHORTCUTS_WIN_PREV_CONTEXT Qt::AltModifier + Qt::ShiftModifier + Qt::Key_Up
184 #define KVI_SHORTCUTS_WIN_NEXT_CONTEXT Qt::AltModifier + Qt::ShiftModifier + Qt::Key_Down
185 #define KVI_SHORTCUTS_WIN_PREV_HIGHLIGHT Qt::AltModifier + Qt::Key_PageUp
186 #define KVI_SHORTCUTS_WIN_NEXT_HIGHLIGHT Qt::AltModifier + Qt::Key_PageDown
187 #define KVI_SHORTCUTS_WIN_PREV_PAGE QKeySequence::MoveToPreviousPage // Qt::Key_PageUp
188 #define KVI_SHORTCUTS_WIN_NEXT_PAGE QKeySequence::MoveToNextPage // Qt::Key_PageDown
189 #define KVI_SHORTCUTS_WIN_PREV_LINE Qt::ShiftModifier + Qt::Key_PageUp
190 #define KVI_SHORTCUTS_WIN_NEXT_LINE Qt::ShiftModifier + Qt::Key_PageDown
191 #define KVI_SHORTCUTS_INPUT_PREV_WORD QKeySequence::MoveToPreviousWord // Qt::ControlModifier + Qt::Key_Left
192 #define KVI_SHORTCUTS_INPUT_NEXT_WORD QKeySequence::MoveToNextWord // Qt::ControlModifier + Qt::Key_Right
193 #define KVI_SHORTCUTS_INPUT_PREV_WORD_SELECT QKeySequence::SelectPreviousWord // Qt::ControlModifier + Qt::ShiftModifier + Qt::Key_Left
194 #define KVI_SHORTCUTS_INPUT_NEXT_WORD_SELECT QKeySequence::SelectNextWord // Qt::ControlModifier + Qt::ShiftModifier + Qt::Key_Right
195 //Ctrl+<digit>: Script accelerators (see OnAccelKeyPressed)
196 //F2-F12, Shift+(F1-F12): Script accelerators (see OnAccelKeyPressed)
197 #define KVI_SHORTCUTS_INPUT_HISTORY Qt::ControlModifier + Qt::Key_PageUp
198 #define KVI_SHORTCUTS_INPUT_PREV_CHAR QKeySequence::MoveToPreviousChar // Qt::Key_Left
199 #define KVI_SHORTCUTS_INPUT_NEXT_CHAR QKeySequence::MoveToNextChar // Qt::Key_Right
200 #define KVI_SHORTCUTS_INPUT_PREV_CHAR_SELECT QKeySequence::SelectPreviousChar // Qt::ShiftModifier + Qt::Key_Left
201 #define KVI_SHORTCUTS_INPUT_NEXT_CHAR_SELECT QKeySequence::SelectNextChar // Qt::ShiftModifier + Qt::Key_Right
202 #define KVI_SHORTCUTS_INPUT_DELETE_PREV_WORD QKeySequence::DeleteStartOfWord // Qt::ControlModifier + Qt::Key_Backspace
203 #define KVI_SHORTCUTS_INPUT_DELETE_NEXT_WORD QKeySequence::DeleteEndOfWord // Qt::ControlModifier + Qt::Key_Delete
204 #define KVI_SHORTCUTS_INPUT_MULTILINE Qt::AltModifier + Qt::Key_Return
205 #define KVI_SHORTCUTS_INPUT_MULTILINE_2 Qt::AltModifier + Qt::Key_Enter
206 #define KVI_SHORTCUTS_INPUT_SEND_PLAIN Qt::ControlModifier + Qt::Key_Return
207 #define KVI_SHORTCUTS_INPUT_SEND_PLAIN_2 Qt::ControlModifier + Qt::Key_Enter
208 #define KVI_SHORTCUTS_INPUT_SEND_KVS Qt::ShiftModifier + Qt::Key_Return
209 #define KVI_SHORTCUTS_INPUT_SEND_KVS_2 Qt::ShiftModifier + Qt::Key_Enter
210 #define KVI_SHORTCUTS_INPUT_HOME QKeySequence::MoveToStartOfLine // Qt::Key_Home
211 #define KVI_SHORTCUTS_INPUT_END QKeySequence::MoveToEndOfLine // Qt::Key_End
212 #define KVI_SHORTCUTS_INPUT_HOME_SELECT QKeySequence::SelectStartOfLine // Qt::ShiftModifier + Qt::Key_Home
213 #define KVI_SHORTCUTS_INPUT_END_SELECT QKeySequence::SelectEndOfLine // Qt::ShiftModifier + Qt::Key_End
214 #define KVI_SHORTCUTS_INPUT_HISTORY_PREV QKeySequence::MoveToPreviousLine // Qt::Key_Up
215 #define KVI_SHORTCUTS_INPUT_HISTORY_NEXT QKeySequence::MoveToNextLine // Qt::Key_Down
216 #define KVI_SHORTCUTS_INPUT_ESCAPE Qt::Key_Escape
217 #define KVI_SHORTCUTS_INPUT_DUMMY Qt::ShiftModifier + Qt::Key_Escape
218 #define KVI_SHORTCUTS_WIN_ZOOM_IN QKeySequence::ZoomIn // Ctrl++
219 #define KVI_SHORTCUTS_WIN_ZOOM_OUT QKeySequence::ZoomOut // Ctrl+-
220 #define KVI_SHORTCUTS_WIN_ZOOM_DEFAULT Qt::ControlModifier + Qt::Key_0
221 #define KVI_SHORTCUTS_INPUT_CORRECT_SPELLING Qt::ControlModifier + Qt::Key_G
222 #define KVI_SHORTCUTS_INPUT_MENU Qt::Key_Menu
223 
224 /*
225  @doc: keyboard
226  @type:
227  generic
228  @title:
229  Keyboard shortcuts
230  @keyterms:
231  Keyboard shortcuts
232  @short:
233  The list of the common keyboard shortcuts
234  @body:
235  This list contains the key sequences associated to some common actions (e.g. selecting text). Since KVIrc 4.2 the shortcuts are dynamic:
236  [ul]
237  [li]more shortcuts can trigger the same actions: Cut is both Ctrl+X and Shift+Del[/li]
238  [li]shortcuts can be adapted to the OS: Help is F1 under Windows and Linux, ⌘? on OS X[/li]
239  [/ul]
240  A full list of available combinations is available at the [anchorlink:http://doc.qt.nokia.com/latest/qkeysequence.html#standard-shortcuts] Qt documentation[/anchorlink]
241  [br]
242  [big]All the standard keys alphabetically ordered[/big][br]
243  [b]F1:[/b] Help Index (Window)[br]
244  [b]Ctrl+A:[/b] Select all[br]
245  [b]Ctrl+B:[/b] Insert Bold control character[br]
246  [b]Ctrl+C:[/b] Copy to clipboard[br]
247  [b]Ctrl+F:[/b] Open [i]Find Text[/i] dialog[br]
248  [b]Ctrl+G:[/b] Activate spell-checker[br]
249  [b]Ctrl+L:[/b] Scroll to the [i]last read[/i] line marker[br]
250  [b]Ctrl+I:[/b] Open [i]Insert icon[/i] dialog[br]
251  [b]Ctrl+J:[/b] Open [i]Join Channels[/i] dialog[br]
252  [b]Ctrl+K:[/b] Open [i]Insert Color[/i] dialog[br]
253  [b]Ctrl+L:[/b] Scroll to the last read line[br]
254  [b]Ctrl+N:[/b] Open new context[br]
255  [b]Ctrl+O:[/b] Insert Reset control character[br]
256  [b]Ctrl+P:[/b] Insert [i]Plain text[/i] control character[br]
257  [b]Ctrl+Q:[/b] Quit [br]
258  [b]Ctrl+R:[/b] Insert Reverse control character[br]
259  [b]Ctrl+S:[/b] Open [i]Servers[/i] dialog [br]
260  [b]Ctrl+U:[/b] Insert Underline control character[br]
261  [b]Ctrl+V:[/b] Paste clipboard contents[br]
262  [b]Ctrl+W:[/b] Close current window[br]
263  [b]Ctrl+X:[/b] Cut to clipboard[br]
264  [b]Ctrl+Y:[/b] Toggle the commandline's KVS/User-friendly mode[br]
265  [b]Ctrl+Z:[/b] Undo last action[br]
266  [b]Ctrl+"+":[/b] Increase font size[br]
267  [b]Ctrl+"-":[/b] Decrease font size[br]
268  [b]Ctrl+0:[/b] Restore default font (and font size)[br]
269  [b]Ctrl+Shift+A:[/b] Go away/back[br]
270  [b]Ctrl+Shift+B:[/b] Open [i]Manage Toolbars[/i] dialog[br]
271  [b]Ctrl+Shift+C:[/b] Connect/disconnect current irc context[br]
272  [b]Ctrl+Shift+D:[/b] Open Class editor[br]
273  [b]Ctrl+Shift+E:[/b] Open Event editor[br]
274  [b]Ctrl+Shift+I:[/b] Open Identity options[br]
275  [b]Ctrl+Shift+L:[/b] Open Alias editor[br]
276  [b]Ctrl+Shift+M:[/b] Open [i]Manage Themes[/i] dialog[br]
277  [b]Ctrl+Shift+N:[/b] Open [i]Manage Addons[/i] dialog[br]
278  [b]Ctrl+Shift+O:[/b] Open [i]Options[/i] dialog[br]
279  [b]Ctrl+Shift+P:[/b] Open Popup editor[br]
280  [b]Ctrl+Shift+Q:[/b] Open Action editor[br]
281  [b]Ctrl+Shift+R:[/b] Open Raw events editor[br]
282  [b]Ctrl+Shift+S:[/b] Open Script tester[br]
283  [b]Ctrl+Shift+T:[/b] Open [i]Theme Options[/i] dialog[br]
284  [b]Ctrl+Shift+U:[/b] Open [i]Registered users[/i] dialog[br]
285  [b]Ctrl+Shift+X:[/b] Open [i]Execute Script[/i] dialog[br]
286  [b]Ctrl+Shift+Z:[/b] Redo last action[br]
287 
288  [big]Window handling related keys:[/big][br]
289  [b]Alt+UpArrow:[/b] Previous window[br]
290  [b]Alt+DownArrow:[/b] Next window[br]
291  [b]Alt+Shift+UpArrow:[/b] Previous window in the same IRC context[br]
292  [b]Alt+Shift+DownArrow:[/b] Next window in the same IRC context[br]
293  [b]Alt+PageUp:[/b] Previous highlighted window[br]
294  [b]Alt+PageDown:[/b] Next highlighted window[br]
295  [b]Ctrl+UpArrow:[/b] Maximizes current window[br]
296  [b]Ctrl+DownArrow:[/b] Minimizes current window[br]
297  [b]PageUp:[/b] Scroll the output window up one page[br]
298  [b]PageDown:[/b] Scroll the output window down one page[br]
299  [b]Shift+PageUp:[/b] Scroll the output window up one line[br]
300  [b]Shift+PageDown:[/b] Scroll the output window down one line[br]
301  [b]Ctrl+L:[/b] Scroll to the last read line[br]
302  [b]Ctrl+W:[/b] Close current window[br]
303 
304  [big]Text editing related hotkeys:[/big][br]
305  [b]Shift+LeftArrow:[/b] Select the previous character[br]
306  [b]Shift+RightArrow:[/b] Select the next character[br]
307  [b]Ctrl+LeftArrow:[/b] Move to the beginning of the previous word[br]
308  [b]Ctrl+RightArrow:[/b] Move to the end of the next word[br]
309  [b]Ctrl+Shift+LeftArrow:[/b] Select up to the beginning of the previous word[br]
310  [b]Ctrl+Shift+RightArrow:[/b] Select up to the end of the next word[br]
311  [b]Ctrl+Backspace:[/b] Delete last word[br]
312  [b]Ctrl+<digit>:[/b] Script accelerators (see OnAccelKeyPressed)[br]
313  [b]F2-F12, Shift+(F1-F12):[/b] Script accelerators (see OnAccelKeyPressed)[br]
314  [b]Ctrl+B:[/b] Insert the 'bold' mIRC text control character[br]
315  [b]Ctrl+K:[/b] Insert the 'color' mIRC text control character[br]
316  [b]Ctrl+R:[/b] Insert the 'reverse' mIRC text control character[br]
317  [b]Ctrl+U:[/b] Insert the 'underline' mIRC text control character[br]
318  [b]Ctrl+O:[/b] Insert the 'reset' mIRC text control character[br]
319  [b]Ctrl+P:[/b] Insert the 'non-crypt' (plain text) KVIrc control character used to disable[br] encryption of the current text line[br]
320  [b]Ctrl+C:[/b] Copy the selected text to clipboard[br]
321  [b]Ctrl+X:[/b] Cut the selected text[br]
322  [b]Ctrl+V:[/b] Paste the clipboard contents (same as middle mouse click)[br]
323  [b]Ctrl+I:[/b] Insert the 'icon' control code and pops up the icon list box[br]
324  [b]UpArrow:[/b] Move backward in the command history and in the history popup[br]
325  [b]DownArrow:[/b] Move forward in the command history and in the history popup[br]
326  [b]Ctrl+PageUp:[/b] Open the history popup[br]
327  [b]LeftArrow:[/b] Move the cursor to the left :)[br]
328  [b]RightArrow:[/b] Move the cursor to the right[br]
329  [b]Shift+LeftArrow:[/b] Move the selection to the left[br]
330  [b]Shift+RightArrow:[/b] Move the selection to the right[br]
331  [b]Alt+Enter:[/b] Show/hide the multi-line editor[br]
332  [b]Ctrl+Enter:[/b] Send message as plain text, ignoring / commands[br]
333  [b]Shift+Enter:[/b] Send message as a kvs command[br]
334  [b]Alt+<numeric_sequence>:[/b] Insert the character by ASCII/Unicode code[br]
335  [example]
336  [b]Alt+32:[/b] Inserts ASCII/Unicode character 32: ' ' (a space)
337  [b]Alt+00032:[/b] Same as above :)
338  [b]Alt+13:[/b] Inserts the Carriage Return (CR) control character
339  [b]Alt+77:[/b] Inserts ASCII/Unicode character 77: 'M'
340  [b]Alt+23566:[/b] Inserts Unicode character 23566 (an ideogram)
341  [/example]
342 
343  [big]Completion hotkeys[/big][br]
344  [b]Tab in the first word of input:[/b] Complete nicknames in the current channel or query[br]
345  [b]Shift+Tab after the first word of input:[/b] Complete nicknames with full mask in the current channel or query[br]
346  [b]Tab after a leading /:[/b] Complete commands[br]
347  [b]Tab after a / in the middle of input:[/b] Complete directories[br]
348  [b]Tab after a $:[/b] Complete function names
349 */
350 
351 #endif //_KVI_SHORTCUTS_H_