summaryrefslogtreecommitdiff
path: root/src/Fl_get_system_colors.cxx
diff options
context:
space:
mode:
authorAlbrecht Schlosser <albrechts.fltk@online.de>2022-11-24 19:00:00 +0100
committerAlbrecht Schlosser <albrechts.fltk@online.de>2022-11-25 00:00:48 +0100
commitb1ba37c5ba1df543baa87d328805af34da4bd2b1 (patch)
tree01d6ff63843cd9ed1f58fd2ab201f462bf11a385 /src/Fl_get_system_colors.cxx
parent40f376a6f707e6c5ae69c0f73300575bd79e28e3 (diff)
Add "Oxy" scheme (STR 2675, STR 3477)
This commit is similar to the patch given in STR 3477, oxy_v5.diff: https://www.fltk.org/strfiles/3477/oxy_v5.diff ... with modifications, and updated to current FLTK code.
Diffstat (limited to 'src/Fl_get_system_colors.cxx')
-rw-r--r--src/Fl_get_system_colors.cxx26
1 files changed, 25 insertions, 1 deletions
diff --git a/src/Fl_get_system_colors.cxx b/src/Fl_get_system_colors.cxx
index 4ce086481..6e7d37214 100644
--- a/src/Fl_get_system_colors.cxx
+++ b/src/Fl_get_system_colors.cxx
@@ -1,7 +1,7 @@
//
// System color support for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2018 by Bill Spitzak and others.
+// Copyright 1998-2022 by Bill Spitzak and others.
//
// This library is free software. Distribution and use rights are outlined in
// the file "COPYING" which should have been included with this file. If this
@@ -149,6 +149,8 @@ static Fl_Pixmap tile(tile_xpm);
- "gleam" - This scheme is inspired by the Clearlooks Glossy scheme.
(Colin Jones and Edmanuel Torres).
+ - "oxy" - Subset of Dmitrij K's oxy scheme (STR 2675, 3477)
+
Uppercase scheme names are equivalent, but the stored scheme name will
always be lowercase and Fl::scheme() will return this lowercase name.
@@ -167,6 +169,7 @@ int Fl::scheme(const char *s) {
else if (!fl_ascii_strcasecmp(s, "gtk+")) s = fl_strdup("gtk+");
else if (!fl_ascii_strcasecmp(s, "plastic")) s = fl_strdup("plastic");
else if (!fl_ascii_strcasecmp(s, "gleam")) s = fl_strdup("gleam");
+ else if (!fl_ascii_strcasecmp(s, "oxy")) s = fl_strdup("oxy");
else s = 0;
}
if (scheme_) free((void*)scheme_);
@@ -275,6 +278,27 @@ int Fl::reload_scheme() {
// Use slightly thinner scrollbars...
Fl::scrollbar_size(15);
+ } else if (scheme_ && !fl_ascii_strcasecmp(scheme_, "oxy")) {
+ // Oxy scheme
+ if (scheme_bg_) {
+ delete scheme_bg_;
+ scheme_bg_ = (Fl_Image *)0;
+ }
+
+ set_boxtype(FL_UP_FRAME, FL_OXY_UP_FRAME);
+ set_boxtype(FL_DOWN_FRAME, FL_OXY_DOWN_FRAME);
+ set_boxtype(FL_THIN_UP_FRAME, FL_OXY_THIN_UP_FRAME);
+ set_boxtype(FL_THIN_DOWN_FRAME, FL_OXY_THIN_DOWN_FRAME);
+
+ set_boxtype(FL_UP_BOX, FL_OXY_UP_BOX);
+ set_boxtype(FL_DOWN_BOX, FL_OXY_DOWN_BOX);
+ set_boxtype(FL_THIN_UP_BOX, FL_OXY_THIN_UP_BOX);
+ set_boxtype(FL_THIN_DOWN_BOX, FL_OXY_THIN_DOWN_BOX);
+ set_boxtype(_FL_ROUND_UP_BOX, FL_OXY_ROUND_UP_BOX);
+ set_boxtype(_FL_ROUND_DOWN_BOX, FL_OXY_ROUND_DOWN_BOX);
+
+ // Use slightly thinner scrollbars...
+ Fl::scrollbar_size(15);
} else {
// Use the standard FLTK look-n-feel...
if (scheme_bg_) {