Mercurial > pidgin.yaz
annotate finch/libgnt/gntkeys.h @ 18049:1cedd520cd18
Doxygen skeleton and license info for gnt files.
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Wed, 06 Jun 2007 15:42:29 +0000 |
parents | 05d7fe2320a9 |
children | 5c6f019e48f8 ac904659104f |
rev | line source |
---|---|
18049
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
1 /** |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
2 * GNT - The GLib Ncurses Toolkit |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
3 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
4 * GNT is the legal property of its developers, whose names are too numerous |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
5 * to list here. Please refer to the COPYRIGHT file distributed with this |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
6 * source distribution. |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
7 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
8 * This library is free software; you can redistribute it and/or modify |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
9 * it under the terms of the GNU General Public License as published by |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
10 * the Free Software Foundation; either version 2 of the License, or |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
11 * (at your option) any later version. |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
12 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
13 * This program is distributed in the hope that it will be useful, |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
16 * GNU General Public License for more details. |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
17 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
18 * You should have received a copy of the GNU General Public License |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
19 * along with this program; if not, write to the Free Software |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
21 */ |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
22 |
15818 | 23 #ifndef GNT_KEYS_H |
24 #define GNT_KEYS_H | |
25 | |
26 #include <curses.h> | |
27 #include <term.h> | |
28 | |
29 /** | |
30 * terminfo/termcap doesn't provide all the information that I want to use, eg. | |
31 * ctrl-up, ctrl-down etc. So I am going to hard-code some of the information | |
32 * for some popular $TERMs | |
33 */ | |
34 extern char *gnt_key_cup; | |
35 extern char *gnt_key_cdown; | |
36 extern char *gnt_key_cleft; | |
37 extern char *gnt_key_cright; | |
38 | |
39 #define SAFE(x) ((x) ? (x) : "") | |
40 | |
41 #define GNT_KEY_POPUP SAFE(key_f16) /* Apparently */ | |
42 | |
43 /* Arrow keys */ | |
44 #define GNT_KEY_LEFT SAFE(key_left) | |
45 #define GNT_KEY_RIGHT SAFE(key_right) | |
46 #define GNT_KEY_UP SAFE(key_up) | |
47 #define GNT_KEY_DOWN SAFE(key_down) | |
48 | |
49 #define GNT_KEY_CTRL_UP SAFE(gnt_key_cup) | |
50 #define GNT_KEY_CTRL_DOWN SAFE(gnt_key_cdown) | |
51 #define GNT_KEY_CTRL_RIGHT SAFE(gnt_key_cright) | |
52 #define GNT_KEY_CTRL_LEFT SAFE(gnt_key_cleft) | |
53 | |
54 #define GNT_KEY_PGUP SAFE(key_ppage) | |
55 #define GNT_KEY_PGDOWN SAFE(key_npage) | |
56 #define GNT_KEY_HOME SAFE(key_home) | |
57 #define GNT_KEY_END SAFE(key_end) | |
58 | |
59 #define GNT_KEY_ENTER carriage_return | |
60 | |
61 #define GNT_KEY_BACKSPACE SAFE(key_backspace) | |
62 #define GNT_KEY_DEL SAFE(key_dc) | |
63 #define GNT_KEY_INS SAFE(key_ic) | |
18000
05d7fe2320a9
(16:39:44) rekkanoryo: i have a feature request
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15979
diff
changeset
|
64 #define GNT_KEY_BACK_TAB SAFE(back_tab) |
15818 | 65 |
66 #define GNT_KEY_CTRL_A "\001" | |
67 #define GNT_KEY_CTRL_B "\002" | |
68 #define GNT_KEY_CTRL_D "\004" | |
69 #define GNT_KEY_CTRL_E "\005" | |
70 #define GNT_KEY_CTRL_F "\006" | |
71 #define GNT_KEY_CTRL_G "\007" | |
72 #define GNT_KEY_CTRL_H "\010" | |
73 #define GNT_KEY_CTRL_I "\011" | |
74 #define GNT_KEY_CTRL_J "\012" | |
75 #define GNT_KEY_CTRL_K "\013" | |
76 #define GNT_KEY_CTRL_L "\014" | |
77 #define GNT_KEY_CTRL_M "\012" | |
78 #define GNT_KEY_CTRL_N "\016" | |
79 #define GNT_KEY_CTRL_O "\017" | |
80 #define GNT_KEY_CTRL_P "\020" | |
81 #define GNT_KEY_CTRL_R "\022" | |
82 #define GNT_KEY_CTRL_T "\024" | |
83 #define GNT_KEY_CTRL_U "\025" | |
84 #define GNT_KEY_CTRL_V "\026" | |
85 #define GNT_KEY_CTRL_W "\027" | |
86 #define GNT_KEY_CTRL_X "\030" | |
87 #define GNT_KEY_CTRL_Y "\031" | |
88 | |
89 #define GNT_KEY_F1 SAFE(key_f1) | |
90 #define GNT_KEY_F2 SAFE(key_f2) | |
91 #define GNT_KEY_F3 SAFE(key_f3) | |
92 #define GNT_KEY_F4 SAFE(key_f4) | |
93 #define GNT_KEY_F5 SAFE(key_f5) | |
94 #define GNT_KEY_F6 SAFE(key_f6) | |
95 #define GNT_KEY_F7 SAFE(key_f7) | |
96 #define GNT_KEY_F8 SAFE(key_f8) | |
97 #define GNT_KEY_F9 SAFE(key_f9) | |
98 #define GNT_KEY_F10 SAFE(key_f10) | |
99 #define GNT_KEY_F11 SAFE(key_f11) | |
100 #define GNT_KEY_F12 SAFE(key_f12) | |
101 | |
102 /** | |
103 * This will do stuff with the terminal settings and stuff. | |
104 */ | |
18049
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
105 /** |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
106 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
107 */ |
15818 | 108 void gnt_init_keys(void); |
18049
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
109 |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
110 /** |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
111 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
112 * @param text |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
113 */ |
15818 | 114 void gnt_keys_refine(char *text); |
18049
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
115 |
15818 | 116 const char *gnt_key_translate(const char *name); |
15979
2c81ebc7bf0b
Add a way to get a list of bindings for a widget. This can be used by, eg, a window-manager to show helpful messages to the user.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15818
diff
changeset
|
117 const char *gnt_key_lookup(const char *key); |
15818 | 118 |
18049
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
119 /** |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
120 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
121 * @param path |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
122 */ |
15818 | 123 void gnt_keys_add_combination(const char *path); |
18049
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
124 |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
125 /** |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
126 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
127 * @param path |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
128 */ |
15818 | 129 void gnt_keys_del_combination(const char *path); |
18049
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
130 |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
131 /** |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
132 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
133 * @param path |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
134 * |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
135 * @return |
1cedd520cd18
Doxygen skeleton and license info for gnt files.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18000
diff
changeset
|
136 */ |
15818 | 137 int gnt_keys_find_combination(const char *path); |
138 | |
139 /* A lot of commonly used variable names are defined in <term.h>. | |
140 * #undef them to make life easier for everyone. */ | |
141 | |
142 #undef columns | |
143 #undef lines | |
144 #undef buttons | |
145 #undef newline | |
146 | |
147 #endif |