FLTK logo

[master] d428a00 - Have menu items drawn with same colors in all platforms (#969)

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 All Forums  |  Back to fltk.commit  ]
 
Previous Message ]Next Message ]

[master] d428a00 - Have menu items drawn with same colors in all platforms (#969) "ManoloFLTK" 04:32 May 08  
 
commit d428a0044388596d19dd20f32471e24146e40975
Author:     ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com>
AuthorDate: Wed May 8 13:26:13 2024 +0200
Commit:     ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com>
CommitDate: Wed May 8 13:26:13 2024 +0200

    Have menu items drawn with same colors in all platforms (#969)
    
    Also, remove this text from the doc of Fl_Menu_::down_box()
        "If this is FL_NO_BOX then it acts like
        FL_THIN_UP_BOX and selection_color() acts like
        FL_WHITE, for back compatibility."
    that was true only for the Windows platform and that required
    selection_color to be replaced by white for menu items which is
    not what FLTK 1.4 expects.
    
    The new state of menu item drawings is as follows :
    - all platforms draw menu items with the same symbolic colors
    - selected items and menu titles are drawn with the selection color
    as background color
    - menu items are drawn by default with no box but can be given one
    by Fl_Menu_::down_box(Fl_Boxtype)
    - the text of selected items is drawn with the menu's color
    unless fl_contrast() finds it does not make enough contrast with
    the background (selection color) and substitutes it with a more
    adapted color
    - the Windows platform uses a visibly different hue for its default
    selection color from what other platforms use

 FL/Fl_Menu_.H   |  4 +---
 src/Fl_Menu.cxx | 12 +-----------
 2 files changed, 2 insertions(+), 14 deletions(-)

diff --git FL/Fl_Menu_.H FL/Fl_Menu_.H
index 96e1356..0c5fa9a 100644
--- FL/Fl_Menu_.H
+++ FL/Fl_Menu_.H
@@ -228,9 +228,7 @@ public:
 
   /**
     This box type is used to surround the currently-selected items in the
-    menus.  If this is FL_NO_BOX then it acts like
-    FL_THIN_UP_BOX and selection_color() acts like
-    FL_WHITE, for back compatibility.
+    menus. 
   */
   Fl_Boxtype down_box() const {return (Fl_Boxtype)down_box_;}
   /** Sets the box type used to surround the currently-selected items in the menus.  */
diff --git src/Fl_Menu.cxx src/Fl_Menu.cxx
index 0e7169a..f7a7633 100644
--- src/Fl_Menu.cxx
+++ src/Fl_Menu.cxx
@@ -285,17 +285,7 @@ void Fl_Menu_Item::draw(int x, int y, int w, int h, const Fl_Menu_* m,
   if (selected) {
     Fl_Color r = m ? m->selection_color() : FL_SELECTION_COLOR;
     Fl_Boxtype b = m && m->down_box() ? m->down_box() : FL_FLAT_BOX;
-    if (fl_contrast(r, color) != r) { // back compatibility boxtypes
-      if (selected == 2) { // menu title
-        r = color;
-        b = m ? m->box() : FL_UP_BOX;
-      } else {
-        r = (Fl_Color)(FL_COLOR_CUBE-1); // white
-        l.color = fl_contrast((Fl_Color)labelcolor_, r);
-      }
-    } else {
-      l.color = fl_contrast((Fl_Color)labelcolor_, r);
-    }
+    l.color = fl_contrast((Fl_Color)labelcolor_, r);
     if (selected == 2) { // menu title
       fl_draw_box(b, x, y, w, h, r);
       x += 3;
Direct Link to Message ]
 
     
Previous Message ]Next Message ]
 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.