summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Ercolano <erco@seriss.com>2011-02-13 17:30:17 +0000
committerGreg Ercolano <erco@seriss.com>2011-02-13 17:30:17 +0000
commitd0d159d17d31831df664ec3a8d981e70efe10c68 (patch)
tree0e0042d0877c56373afd9489c31a19faffa5755d
parent83fab9118e4a0a189af734fe2c3837577f3b0d9f (diff)
Selection color fixes, widget screenshot added to top of docs.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8420 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--FL/Fl_Tree.H3
-rw-r--r--documentation/src/tree-simple.pngbin0 -> 2175 bytes
-rw-r--r--src/Fl_Tree.cxx2
-rw-r--r--src/Fl_Tree_Item.cxx12
4 files changed, 10 insertions, 7 deletions
diff --git a/FL/Fl_Tree.H b/FL/Fl_Tree.H
index c6ddfb5da..792ae4adf 100644
--- a/FL/Fl_Tree.H
+++ b/FL/Fl_Tree.H
@@ -45,6 +45,9 @@
///
/// \brief Tree widget.
///
+/// \image html tree-simple.png "Fl_Tree example program"
+/// \image latex tree-simple.png "Fl_Tree example program" width=4cm
+///
/// \code
/// Fl_Tree // Top level widget
/// |--- Fl_Tree_Item // Items in the tree
diff --git a/documentation/src/tree-simple.png b/documentation/src/tree-simple.png
new file mode 100644
index 000000000..9b921514e
--- /dev/null
+++ b/documentation/src/tree-simple.png
Binary files differ
diff --git a/src/Fl_Tree.cxx b/src/Fl_Tree.cxx
index fe3a8e267..03d3ccdff 100644
--- a/src/Fl_Tree.cxx
+++ b/src/Fl_Tree.cxx
@@ -93,7 +93,7 @@ Fl_Tree::Fl_Tree(int X, int Y, int W, int H, const char *L) : Fl_Group(X,Y,W,H,L
_callback_reason = FL_TREE_REASON_NONE;
_scrollbar_size = 0; // 0: uses Fl::scrollbar_size()
box(FL_DOWN_BOX);
- color(FL_WHITE);
+ color(FL_BACKGROUND2_COLOR, FL_SELECTION_COLOR);
when(FL_WHEN_CHANGED);
_vscroll = new Fl_Scrollbar(0,0,0,0); // will be resized by draw()
_vscroll->hide();
diff --git a/src/Fl_Tree_Item.cxx b/src/Fl_Tree_Item.cxx
index 329c0ef33..053f0adb7 100644
--- a/src/Fl_Tree_Item.cxx
+++ b/src/Fl_Tree_Item.cxx
@@ -562,12 +562,12 @@ void Fl_Tree_Item::draw(int X, int &Y, int W, Fl_Widget *tree,
W += prefs.openicon()->w();
}
// Colors, fonts
- Fl_Color fg = _selected ? _labelbgcolor : _labelfgcolor; // selected uses bgcolor, unselected uses fgcolor
- Fl_Color bg = _selected ? tree->selection_color() : _labelbgcolor; // selected uses selectcolor, unselected uses bgcolor
- if ( ! _active ) {
- fg = fl_inactive(fg);
- if ( _selected ) bg = fl_inactive(bg);
- }
+ Fl_Color fg = _selected ? fl_contrast(_labelfgcolor, tree->selection_color())
+ : _active ? _labelfgcolor
+ : fl_inactive(_labelfgcolor);
+ Fl_Color bg = _selected ? _active ? tree->selection_color()
+ : fl_inactive(tree->selection_color())
+ : _labelbgcolor;
// Update the xywh of this item
_xywh[0] = X;
_xywh[1] = Y;