summaryrefslogtreecommitdiff
path: root/src/Fl_get_key.cxx
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2016-04-06 20:30:28 +0000
committerManolo Gouy <Manolo>2016-04-06 20:30:28 +0000
commitf3462a2abe3d0a09dcd4ed99f0fb1b3385200ffc (patch)
treee2209c64183392c6c241d782f3f3d6264373c793 /src/Fl_get_key.cxx
parenta2eeca92f09617c10e6f2b6d15a33e19b73ff8bc (diff)
Rewrite Fl_get_key.cxx under the driver model.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11545 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/Fl_get_key.cxx')
-rw-r--r--src/Fl_get_key.cxx19
1 files changed, 5 insertions, 14 deletions
diff --git a/src/Fl_get_key.cxx b/src/Fl_get_key.cxx
index ac55ed95d..36f9bacfa 100644
--- a/src/Fl_get_key.cxx
+++ b/src/Fl_get_key.cxx
@@ -16,24 +16,17 @@
// http://www.fltk.org/str.php
//
-#ifdef WIN32
-# include "Fl_get_key_win32.cxx"
-#elif defined(__APPLE__) // PORTME: Fl_Screen_Driver - platform keyboard stuff
-# include "Fl_get_key_mac.cxx"
-#elif defined(FL_PORTING)
-# pragma message "FL_PORTING: implement keyboard reading and interpretation in its own file"
-#else
-
// Return the current state of a key. This is the X version. I identify
// keys (mostly) by the X keysym. So this turns the keysym into a keycode
// and looks it up in the X key bit vector, which Fl_x.cxx keeps track of.
-# include <FL/Fl.H>
-# include <FL/x.H>
+#include <FL/Fl.H>
+#include "drivers/Posix/Fl_Posix_System_Driver.H"
+#include <FL/x.H> // for fl_display
extern char fl_key_vector[32]; // in Fl_x.cxx
-int Fl::event_key(int k) {
+int Fl_Posix_System_Driver::event_key(int k) {
if (k > FL_Button && k <= FL_Button+8)
return Fl::event_state(8<<(k-FL_Button));
int i;
@@ -49,14 +42,12 @@ int Fl::event_key(int k) {
return fl_key_vector[i/8] & (1 << (i%8));
}
-int Fl::get_key(int k) {
+int Fl_Posix_System_Driver::get_key(int k) {
fl_open_display();
XQueryKeymap(fl_display, fl_key_vector);
return event_key(k);
}
-#endif
-
//
// End of "$Id$".
//