summaryrefslogtreecommitdiff
path: root/FL/names.h
diff options
context:
space:
mode:
authormaxim nikonov <maxim.nikonov@hqo.co>2026-02-05 21:32:25 +0500
committermaxim nikonov <maxim.nikonov@hqo.co>2026-02-05 21:32:25 +0500
commitdc39575fb3ef90e5a2689babe7fb335cd88f6727 (patch)
tree24f6cef8f2b558ae6f1f812c75be0c09a53fe417 /FL/names.h
parent7d3793ce1d8cb26e7608bf859beca21359cec6e9 (diff)
wip
Diffstat (limited to 'FL/names.h')
-rw-r--r--FL/names.h118
1 files changed, 53 insertions, 65 deletions
diff --git a/FL/names.h b/FL/names.h
index 33bc6caa4..0cdc9edea 100644
--- a/FL/names.h
+++ b/FL/names.h
@@ -25,8 +25,6 @@
#define FL_NAMES_H
#include <FL/Fl.H> // for event constants
-#include <string>
-#include <map>
/** \defgroup fl_events Events handling functions
@{
@@ -47,63 +45,53 @@
}
\endcode
*/
-static std::map<int, const char*> fl_eventnames = {
- { FL_NO_EVENT, "FL_NO_EVENT" },
- { FL_PUSH, "FL_PUSH" },
- { FL_RELEASE, "FL_RELEASE" },
- { FL_ENTER, "FL_ENTER" },
- { FL_LEAVE, "FL_LEAVE" },
- { FL_DRAG, "FL_DRAG" },
- { FL_FOCUS, "FL_FOCUS" },
- { FL_UNFOCUS, "FL_UNFOCUS" },
- { FL_KEYDOWN, "FL_KEYDOWN" },
- { FL_KEYUP, "FL_KEYUP" },
- { FL_CLOSE, "FL_CLOSE" },
- { FL_MOVE, "FL_MOVE" },
- { FL_SHORTCUT, "FL_SHORTCUT" },
- { FL_DEACTIVATE, "FL_DEACTIVATE" },
- { FL_ACTIVATE, "FL_ACTIVATE" },
- { FL_HIDE, "FL_HIDE" },
- { FL_SHOW, "FL_SHOW" },
- { FL_PASTE, "FL_PASTE" },
- { FL_SELECTIONCLEAR, "FL_SELECTIONCLEAR" },
- { FL_MOUSEWHEEL, "FL_MOUSEWHEEL" },
- { FL_DND_ENTER, "FL_DND_ENTER" },
- { FL_DND_DRAG, "FL_DND_DRAG" },
- { FL_DND_LEAVE, "FL_DND_LEAVE" },
- { FL_DND_RELEASE, "FL_DND_RELEASE" },
- { FL_SCREEN_CONFIGURATION_CHANGED, "FL_SCREEN_CONFIGURATION_CHANGED" },
- { FL_FULLSCREEN, "FL_FULLSCREEN" },
- { FL_ZOOM_GESTURE, "FL_ZOOM_GESTURE" },
- { FL_ZOOM_EVENT, "FL_ZOOM_EVENT" },
- { FL_BEFORE_TOOLTIP, "FL_BEFORE_TOOLTIP" },
- { FL_BEFORE_MENU, "FL_BEFORE_MENU" },
- { FL_APP_ACTIVATE, "FL_APP_ACTIVATE" },
- { FL_APP_DEACTIVATE, "FL_APP_DEACTIVATE" },
- { Fl::Pen::DETECTED, "Fl::Pen::DETECTED" },
- { Fl::Pen::CHANGED, "Fl::Pen::CHANGED" },
- { Fl::Pen::ENTER, "Fl::Pen::ENTER" },
- { Fl::Pen::LEAVE, "Fl::Pen::LEAVE" },
- { Fl::Pen::TOUCH, "Fl::Pen::TOUCH" },
- { Fl::Pen::LIFT, "Fl::Pen::LIFT" },
- { Fl::Pen::HOVER, "Fl::Pen::HOVER" },
- { Fl::Pen::DRAW, "Fl::Pen::DRAW" },
- { Fl::Pen::BUTTON_PUSH, "Fl::Pen::BUTTON_PUSH" },
- { Fl::Pen::BUTTON_RELEASE, "Fl::Pen::BUTTON_RELEASE" }
+static const char * const fl_eventnames[] = {
+ "FL_NO_EVENT",
+ "FL_PUSH",
+ "FL_RELEASE",
+ "FL_ENTER",
+ "FL_LEAVE",
+ "FL_DRAG",
+ "FL_FOCUS",
+ "FL_UNFOCUS",
+ "FL_KEYDOWN",
+ "FL_KEYUP",
+ "FL_CLOSE",
+ "FL_MOVE",
+ "FL_SHORTCUT",
+ "FL_DEACTIVATE",
+ "FL_ACTIVATE",
+ "FL_HIDE",
+ "FL_SHOW",
+ "FL_PASTE",
+ "FL_SELECTIONCLEAR",
+ "FL_MOUSEWHEEL",
+ "FL_DND_ENTER",
+ "FL_DND_DRAG",
+ "FL_DND_LEAVE",
+ "FL_DND_RELEASE",
+ "FL_SCREEN_CONFIGURATION_CHANGED",
+ "FL_FULLSCREEN",
+ "FL_ZOOM_GESTURE",
+ "FL_ZOOM_EVENT",
+ "FL_BEFORE_TOOLTIP",
+ "FL_BEFORE_MENU",
+ "FL_APP_ACTIVATE",
+ "FL_APP_DEACTIVATE"
};
+#define FL_EVENTNAMES_MAX 32
+
/**
Return the C++ symbol of an Fl_Event as a string.
\param[in] event index as an integer
- \return C++ symbol of event index as a string
+ \return C++ symbol of event index as a string, or 0 if out of range
*/
-inline std::string fl_eventname_str(int event) {
- auto it = fl_eventnames.find(event);
- if (it == fl_eventnames.end()) {
- return "FL_EVENT_" + std::to_string(event);
- } else {
- return it->second;
+inline const char *fl_eventname(int event) {
+ if (event >= 0 && event < FL_EVENTNAMES_MAX) {
+ return fl_eventnames[event];
}
+ return 0;
}
@@ -147,14 +135,13 @@ const char * const fl_fontnames[] =
/**
Return the C++ symbol of an Fl_Font as a string.
\param[in] font index as an integer
- \return C++ symbol of font index as a string
+ \return C++ symbol of font index as a string, or 0 if out of range
*/
-inline std::string fl_fontname_str(int font) {
- if ((font < 0) || (font >= FL_ZAPF_DINGBATS)) {
- return "FL_FONT_" + std::to_string(font);
- } else {
+inline const char *fl_fontname(int font) {
+ if (font >= 0 && font <= FL_ZAPF_DINGBATS) {
return fl_fontnames[font];
}
+ return 0;
}
@@ -178,23 +165,24 @@ const char * const fl_callback_reason_names[] =
"FL_REASON_LOST_FOCUS",
"FL_REASON_RELEASED",
"FL_REASON_ENTER_KEY",
- NULL, NULL, NULL,
- NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
+ 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
"FL_REASON_USER", "FL_REASON_USER+1", "FL_REASON_USER+2", "FL_REASON_USER+3",
};
+#define FL_REASON_NAMES_MAX 36
+
/**
Return the C++ symbol of an Fl_Callback_Reason as a string.
\param[in] reason as an integer
- \return C++ symbol of reason as a string
+ \return C++ symbol of reason as a string, or 0 if out of range or invalid
*/
-inline std::string fl_callback_reason_str(int reason) {
- if ((reason < 0) || (reason >= FL_REASON_USER+3) || (fl_callback_reason_names[reason] == 0)) {
- return "FL_REASON_" + std::to_string(reason);
- } else {
+inline const char *fl_callback_reason_name(int reason) {
+ if (reason >= 0 && reason < FL_REASON_NAMES_MAX) {
return fl_callback_reason_names[reason];
}
+ return 0;
}
/** @} */