// generated by Fast Light User Interface Designer (fluid) version 2.0100 #include "ekeyconf.h" /* * $Id$ * * Keyboard shortcuts applet * Part of Equinox Desktop Environment (EDE). * Copyright (c) 2005-2006 EDE Authors. * * This program is licenced under terms of the * GNU General Public Licence version 2 or newer. * See COPYING for details. */ #include "../edelib2/NLS.h" #include "../edeconf.h" #include "ekeys.h" fltk::Window *iconsConfWindow=(fltk::Window *)0; static void cb_OK(fltk::Button*, void*) { writeKeysConfiguration(); sendUpdateInfo(); exit(0); } static void cb_Cancel(fltk::Button*, void*) { exit(0); } static void cb_Apply(fltk::Button*, void*) { writeKeysConfiguration(); sendUpdateInfo(); } Shortcut_Button *shortcut=(Shortcut_Button *)0; static void cb_shortcut(Shortcut_Button*, void*) { setshortcutfor(action->text(),shortcut->svalue); } fltk::InputBrowser *action=(fltk::InputBrowser *)0; static void cb_action(fltk::InputBrowser*, void*) { shortcut->svalue = getshortcutfor(action->text()); shortcut->redraw(); } static void cb_New(fltk::Button*, void*) { newShortcutWindow->show(); } static void cb_Remove(fltk::Button*, void*) { removeShortcut(action->text()); populatelist(action); action->text(action->child(0)->label()); action->do_callback(); } fltk::Window *newShortcutWindow=(fltk::Window *)0; fltk::Input *shortcutName=(fltk::Input *)0; fltk::Input *shortcutCommand=(fltk::Input *)0; static void cb_Ok(fltk::Button*, void*) { addShortcut(shortcutName->value(),shortcutCommand->value()); populatelist(action); action->text(shortcutName->value()); action->do_callback(); newShortcutWindow->hide(); } static void cb_Cancel1(fltk::Button*, void*) { newShortcutWindow->hide(); } #include int main (int argc, char **argv) { fltk::Window* w; //fl_init_locale_support("ekeyconf", PREFIX"/share/locale"); readKeysConfiguration(); {fltk::Window* o = iconsConfWindow = new fltk::Window(275, 265, "Keyboard settings"); o->begin(); {fltk::Button* o = new fltk::Button(20, 237, 80, 25, "&OK"); o->callback((fltk::Callback*)cb_OK); } {fltk::Button* o = new fltk::Button(190, 237, 80, 24, "&Cancel"); o->callback((fltk::Callback*)cb_Cancel); } {fltk::Button* o = new fltk::Button(105, 237, 80, 24, "&Apply"); o->callback((fltk::Callback*)cb_Apply); } {fltk::TabGroup* o = new fltk::TabGroup(1, 5, 267, 226); o->color((fltk::Color)0xfffffffe); o->begin(); {fltk::Group* o = new fltk::Group(0, 23, 263, 200, "Shortcuts"); o->align(fltk::ALIGN_TOP|fltk::ALIGN_LEFT); o->begin(); {fltk::InvisibleBox* o = new fltk::InvisibleBox(20, 52, 140, 20, "Keyboard shortcut:"); o->align(fltk::ALIGN_LEFT|fltk::ALIGN_INSIDE); } {Shortcut_Button* o = shortcut = new Shortcut_Button(20, 72, 140, 20, "Keyboard shortcut:"); o->color((fltk::Color)7); o->callback((fltk::Callback*)cb_shortcut); o->align(fltk::ALIGN_LEFT|fltk::ALIGN_INSIDE); o->tooltip("To set a shortcut:\n Click here, then type the key combination you want.\nT\ o delete the shortcut:\n Click here, then type backspace.\nTo get out of sho\ rtcut-setting mode:\n Click the mouse on this again, or on some other field."); } {fltk::InputBrowser* o = action = new fltk::InputBrowser(20, 26, 165, 21, "Action:"); o->callback((fltk::Callback*)cb_action); o->align(fltk::ALIGN_TOP|fltk::ALIGN_LEFT); action->text("Next window"); } {fltk::Button* o = new fltk::Button(20, 127, 110, 25, "&New shortcut..."); o->callback((fltk::Callback*)cb_New); } {fltk::Button* o = new fltk::Button(140, 127, 110, 25, "&Remove shortcut"); o->callback((fltk::Callback*)cb_Remove); } o->end(); } o->end(); } o->end(); o->resizable(o); } {fltk::Window* o = newShortcutWindow = new fltk::Window(285, 114, "Define new shortcut"); w = o; o->begin(); shortcutName = new fltk::Input(104, 15, 170, 24, "&Shortcut name:"); shortcutCommand = new fltk::Input(104, 49, 170, 24, "C&ommand"); {fltk::Button* o = new fltk::Button(49, 83, 88, 24, "&Ok"); o->callback((fltk::Callback*)cb_Ok); } {fltk::Button* o = new fltk::Button(158, 83, 88, 24, "&Cancel"); o->callback((fltk::Callback*)cb_Cancel1); } o->end(); o->set_modal(); o->resizable(o); } populatelist(action); shortcut->svalue = getshortcutfor("Next window"); shortcut->redraw(); // Grab all keyboard events from window manager iconsConfWindow->show(argc, argv); XGrabKey(fltk::xdisplay, AnyKey, AnyModifier, fltk::xid(iconsConfWindow), true, GrabModeAsync, GrabModeAsync); return fltk::run(); }