Enlightenment CVS committal
Author : kwo
Project : e16
Module : e
Dir : e16/e/src
Modified Files:
E.h conf.h config.c menus.c setup.c
Log Message:
Make keys used for menu navigation configurable.
(patch from Alan Schmitt <[EMAIL PROTECTED]>).
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.323
retrieving revision 1.324
diff -u -3 -r1.323 -r1.324
--- E.h 20 Aug 2004 21:13:55 -0000 1.323
+++ E.h 25 Aug 2004 16:03:12 -0000 1.324
@@ -1104,6 +1104,10 @@
} hints;
struct
{
+ KeySym left, right, up, down, escape, ret;
+ } menukeys;
+ struct
+ {
char enable;
char zoom;
char title;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/conf.h,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -3 -r1.34 -r1.35
--- conf.h 3 Jul 2004 00:58:19 -0000 1.34
+++ conf.h 25 Aug 2004 16:03:13 -0000 1.35
@@ -155,6 +155,8 @@
#define CONTROL_ST_PAGER 1383
#define CONTROL_ST_WARPLIST 1384
+#define CONTROL_MENU_NAVIGATION_KEYS 1390
+
#define ICLASS_NAME 350
#define ICLASS_NORMAL 351
#define ICLASS_CLICKED 352
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/config.c,v
retrieving revision 1.113
retrieving revision 1.114
diff -u -3 -r1.113 -r1.114
--- config.c 3 Aug 2004 02:43:50 -0000 1.113
+++ config.c 25 Aug 2004 16:03:13 -0000 1.114
@@ -648,6 +648,7 @@
*/
char s[FILEPATH_LEN_MAX];
+ char s2[FILEPATH_LEN_MAX];
int i1, i2, i3, fields;
float f1;
@@ -984,6 +985,30 @@
case CONTROL_DOCKAPP_SUPPORT:
Conf.dockapp_support = i2;
break;
+ case CONTROL_MENU_NAVIGATION_KEYS:
+ sscanf(s, "%*i %*i %s", s2);
+ switch (i2)
+ {
+ case 0:
+ Conf.menukeys.left = XStringToKeysym(s2);
+ break;
+ case 1:
+ Conf.menukeys.right = XStringToKeysym(s2);
+ break;
+ case 2:
+ Conf.menukeys.up = XStringToKeysym(s2);
+ break;
+ case 3:
+ Conf.menukeys.down = XStringToKeysym(s2);
+ break;
+ case 4:
+ Conf.menukeys.escape = XStringToKeysym(s2);
+ break;
+ case 5:
+ Conf.menukeys.ret = XStringToKeysym(s2);
+ break;
+ }
+ break;
default:
RecoverUserConfig();
Alert(_("Warning: unable to determine what to do with\n"
@@ -3918,6 +3943,17 @@
fprintf(autosavefile, "1383 %i\n", (int)Conf.st_trans.pager);
fprintf(autosavefile, "1384 %i\n", (int)Conf.st_trans.warplist);
#endif
+ fprintf(autosavefile, "1390 0 %s\n",
+ XKeysymToString(Conf.menukeys.left));
+ fprintf(autosavefile, "1390 1 %s\n",
+ XKeysymToString(Conf.menukeys.right));
+ fprintf(autosavefile, "1390 2 %s\n", XKeysymToString(Conf.menukeys.up));
+ fprintf(autosavefile, "1390 3 %s\n",
+ XKeysymToString(Conf.menukeys.down));
+ fprintf(autosavefile, "1390 4 %s\n",
+ XKeysymToString(Conf.menukeys.escape));
+ fprintf(autosavefile, "1390 5 %s\n",
+ XKeysymToString(Conf.menukeys.ret));
#ifdef HAS_XINERAMA
fprintf(autosavefile, "2013 %i\n", (int)Conf.extra_head);
#endif
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/menus.c,v
retrieving revision 1.152
retrieving revision 1.153
diff -u -3 -r1.152 -r1.153
--- menus.c 13 Aug 2004 20:41:25 -0000 1.152
+++ menus.c 25 Aug 2004 16:03:13 -0000 1.153
@@ -2196,6 +2196,27 @@
return FindEwinSpawningMenu(m);
}
+static KeySym
+MenuKeyPressConversion(KeySym key)
+{
+ if (key == Conf.menukeys.left)
+ return XK_Left;
+ if (key == Conf.menukeys.right)
+ return XK_Right;
+ if (key == Conf.menukeys.up)
+ return XK_Up;
+ if (key == Conf.menukeys.down)
+ return XK_Down;
+ if (key == Conf.menukeys.escape)
+ return XK_Escape;
+ if (key == Conf.menukeys.ret)
+ return XK_Return;
+
+ /* The key does not correspond to any set, use the default behavior
+ * associated to the key */
+ return key;
+}
+
int
MenusEventKeyPress(XEvent * ev)
{
@@ -2219,7 +2240,7 @@
/* NB! m != NULL */
key = XLookupKeysym(&ev->xkey, 0);
- switch (key)
+ switch (MenuKeyPressConversion(key))
{
case XK_Escape:
MenusHide();
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/setup.c,v
retrieving revision 1.139
retrieving revision 1.140
diff -u -3 -r1.139 -r1.140
--- setup.c 25 Jul 2004 09:34:43 -0000 1.139
+++ setup.c 25 Aug 2004 16:03:14 -0000 1.140
@@ -456,6 +456,13 @@
Conf.st_trans.warplist = ICLASS_ATTR_BG;
#endif
+ Conf.menukeys.left = XK_Left;
+ Conf.menukeys.right = XK_Right;
+ Conf.menukeys.up = XK_Up;
+ Conf.menukeys.down = XK_Down;
+ Conf.menukeys.escape = XK_Escape;
+ Conf.menukeys.ret = XK_Return;
+
ScreenInit();
MenusInit();
-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs