summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Fl.cxx7
-rw-r--r--src/drivers/Darwin/Fl_Darwin_System_Driver.H4
-rw-r--r--src/drivers/Darwin/Fl_Darwin_System_Driver.cxx21
-rw-r--r--src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx9
-rw-r--r--src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx7
-rw-r--r--src/drivers/X11/Fl_X11_System_Driver.cxx6
6 files changed, 24 insertions, 30 deletions
diff --git a/src/Fl.cxx b/src/Fl.cxx
index c60f707a3..6a3e0170b 100644
--- a/src/Fl.cxx
+++ b/src/Fl.cxx
@@ -2030,6 +2030,13 @@ int Fl::get_font_sizes(Fl_Font fnum, int*& sizep) {
return Fl_Graphics_Driver::default_driver().get_font_sizes(fnum, sizep);
}
+// Pointers you can use to change FLTK to another language.
+// Note: Similar pointers are defined in FL/fl_ask.H and src/fl_ask.cxx
+FL_EXPORT const char* fl_local_shift = Fl::system_driver()->shift_name();
+FL_EXPORT const char* fl_local_meta = Fl::system_driver()->meta_name();
+FL_EXPORT const char* fl_local_alt = Fl::system_driver()->alt_name();
+FL_EXPORT const char* fl_local_ctrl = Fl::system_driver()->control_name();
+
//
// End of "$Id$".
//
diff --git a/src/drivers/Darwin/Fl_Darwin_System_Driver.H b/src/drivers/Darwin/Fl_Darwin_System_Driver.H
index ff2ab8205..cec33d2a9 100644
--- a/src/drivers/Darwin/Fl_Darwin_System_Driver.H
+++ b/src/drivers/Darwin/Fl_Darwin_System_Driver.H
@@ -77,6 +77,10 @@ public:
virtual void remove_fd(int, int when);
virtual void remove_fd(int);
virtual void open_callback(void (*)(const char *));
+ virtual const char *shift_name();
+ virtual const char *meta_name();
+ virtual const char *alt_name();
+ virtual const char *control_name();
};
#endif // FL_DARWIN_SYSTEM_DRIVER_H
diff --git a/src/drivers/Darwin/Fl_Darwin_System_Driver.cxx b/src/drivers/Darwin/Fl_Darwin_System_Driver.cxx
index 19a200c69..8a103c2e9 100644
--- a/src/drivers/Darwin/Fl_Darwin_System_Driver.cxx
+++ b/src/drivers/Darwin/Fl_Darwin_System_Driver.cxx
@@ -38,15 +38,18 @@
#include <sys/mount.h>
#include <sys/stat.h>
-//const char* fl_local_alt = "\xe2\x8c\xa5\\"; // U+2325 (option key)
-const char* fl_local_alt = "⌥\\"; // U+2325 (option key)
-//const char* fl_local_ctrl = "\xe2\x8c\x83\\"; // U+2303 (up arrowhead)
-const char* fl_local_ctrl = "⌃\\"; // U+2303 (up arrowhead)
-//const char* fl_local_meta = "\xe2\x8c\x98\\"; // U+2318 (place of interest sign)
-const char* fl_local_meta = "⌘\\"; // U+2318 (place of interest sign)
-//const char* fl_local_shift = "\xe2\x87\xa7\\"; // U+21E7 (upwards white arrow)
-const char* fl_local_shift = "⇧\\"; // U+21E7 (upwards white arrow)
-
+const char *Fl_Darwin_System_Driver::shift_name() {
+ return "⇧\\"; // "\xe2\x87\xa7\\"; // U+21E7 (upwards white arrow)
+}
+const char *Fl_Darwin_System_Driver::meta_name() {
+ return "⌘\\"; // "\xe2\x8c\x98\\"; // U+2318 (place of interest sign)
+}
+const char *Fl_Darwin_System_Driver::alt_name() {
+ return "⌥\\"; // "\xe2\x8c\xa5\\"; // U+2325 (option key)
+}
+const char *Fl_Darwin_System_Driver::control_name() {
+ return "⌃\\"; // "\xe2\x8c\x83\\"; // U+2303 (up arrowhead)
+}
/*
Creates a driver that manages all system related calls.
diff --git a/src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx b/src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx
index db1564196..1cfe1f477 100644
--- a/src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx
+++ b/src/drivers/PicoSDL/Fl_PicoSDL_Window_Driver.cxx
@@ -25,13 +25,6 @@
#include <FL/Fl_Window.H>
-
-const char *fl_local_alt = "alt";
-const char *fl_local_ctrl = "ctrl";
-const char *fl_local_meta = "meta";
-const char *fl_local_shift = "shift";
-
-
Fl_Window_Driver *Fl_Window_Driver::newWindowDriver(Fl_Window *win)
{
return new Fl_PicoSDL_Window_Driver(win);
@@ -119,4 +112,4 @@ void Fl_PicoSDL_Window_Driver::show() {
//
// End of "$Id$".
-// \ No newline at end of file
+//
diff --git a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx
index 219cfad80..efbe65d01 100644
--- a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx
+++ b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx
@@ -53,13 +53,6 @@ typedef RPC_STATUS (WINAPI* uuid_func)(UUID __RPC_FAR *Uuid);
inline int isdirsep(char c) { return c == '/' || c == '\\'; }
-#if !defined(FL_DOXYGEN)
-const char* fl_local_alt = "Alt";
-const char* fl_local_ctrl = "Ctrl";
-const char* fl_local_meta = "Meta";
-const char* fl_local_shift = "Shift";
-#endif
-
static wchar_t *mbwbuf = NULL;
static wchar_t *wbuf = NULL;
static wchar_t *wbuf1 = NULL;
diff --git a/src/drivers/X11/Fl_X11_System_Driver.cxx b/src/drivers/X11/Fl_X11_System_Driver.cxx
index 0ee3f2e00..ff4812edb 100644
--- a/src/drivers/X11/Fl_X11_System_Driver.cxx
+++ b/src/drivers/X11/Fl_X11_System_Driver.cxx
@@ -58,12 +58,6 @@ extern "C" {
}
#endif
-// Pointers you can use to change FLTK to another language.
-// Note: Similar pointers are defined in FL/fl_ask.H and src/fl_ask.cxx
-const char* fl_local_alt = "Alt";
-const char* fl_local_ctrl = "Ctrl";
-const char* fl_local_meta = "Meta";
-const char* fl_local_shift = "Shift";
/**
Creates a driver that manages all system related calls.