summaryrefslogtreecommitdiff
path: root/src/Fl_Tree_Prefs.cxx
diff options
context:
space:
mode:
authorGreg Ercolano <erco@seriss.com>2015-04-28 19:39:53 +0000
committerGreg Ercolano <erco@seriss.com>2015-04-28 19:39:53 +0000
commit81654d15ebabd1f4f62df70ddb1de05d6860b5a4 (patch)
treed1600be93fcb3457ab8d7e606f05a16b8d2d117f /src/Fl_Tree_Prefs.cxx
parente4f645d60f6cc6197674f913bd52b4032c91aa45 (diff)
Fl_Tree: improved draw() behavior when deactivated;
icons draw deactivated now. test/tree: Added 'deactivate tree' button to test deactivating entire widget. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10723 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/Fl_Tree_Prefs.cxx')
-rw-r--r--src/Fl_Tree_Prefs.cxx36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/Fl_Tree_Prefs.cxx b/src/Fl_Tree_Prefs.cxx
index 3ce2dc211..783787704 100644
--- a/src/Fl_Tree_Prefs.cxx
+++ b/src/Fl_Tree_Prefs.cxx
@@ -107,6 +107,16 @@ static Fl_Pixmap L_closepixmap(L_close_xpm);
///
void Fl_Tree_Prefs::openicon(Fl_Image *val) {
_openimage = val ? val : &L_openpixmap;
+#if FLTK_ABI_VERSION >= 10304
+ // Update deactivated version of icon..
+ if ( _opendeimage ) delete _opendeimage;
+ if ( _openimage ) {
+ _opendeimage = _openimage->copy();
+ _opendeimage->inactive();
+ } else {
+ _opendeimage = 0;
+ }
+#endif
}
/// Sets the icon to be used as the 'close' icon.
@@ -116,6 +126,16 @@ void Fl_Tree_Prefs::openicon(Fl_Image *val) {
///
void Fl_Tree_Prefs::closeicon(Fl_Image *val) {
_closeimage = val ? val : &L_closepixmap;
+#if FLTK_ABI_VERSION >= 10304
+ // Update deactivated version of icon..
+ if ( _closedeimage ) delete _closedeimage;
+ if ( _closeimage ) {
+ _closedeimage = _closeimage->copy();
+ _closedeimage->inactive();
+ } else {
+ _closedeimage = 0;
+ }
+#endif
}
/// Fl_Tree_Prefs constructor
@@ -145,6 +165,13 @@ Fl_Tree_Prefs::Fl_Tree_Prefs() {
_openimage = &L_openpixmap;
_closeimage = &L_closepixmap;
_userimage = 0;
+#if FLTK_ABI_VERSION >= 10304
+ _opendeimage = _openimage->copy();
+ _opendeimage->inactive();
+ _closedeimage = _closeimage->copy();
+ _closedeimage->inactive();
+ _userdeimage = 0;
+#endif
_showcollapse = 1;
_showroot = 1;
_connectorwidth = 17;
@@ -167,6 +194,15 @@ Fl_Tree_Prefs::Fl_Tree_Prefs() {
}
}
+#if FLTK_ABI_VERSION >= 10304
+/// Fl_Tree_Prefs destructor
+Fl_Tree_Prefs::~Fl_Tree_Prefs() {
+ if ( _opendeimage ) delete _opendeimage;
+ if ( _closedeimage ) delete _closedeimage;
+ if ( _userdeimage ) delete _userdeimage;
+}
+#endif
+
//
// End of "$Id$".
//