This is a convenience method to support easier implementation of
scheme-specific code in draw() methods and elsewhere.
Also improved Fl::scheme(const char *name) documentation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10075 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This new temporary fix improves handling of strcasecmp() for
CMake-generated Makefiles (cmake -G "MSYS Makefiles" ..).
For some unknown reason (maybe other compiler flags?) this showed
lots of *warnings* again. A better fix (replacing direct calls to
strcasecmp() with fl_strcasecmp() or similar will follow later.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10074 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
a volatile method that can be overridden by
subclasses to take drawing control of tree item's content.
This replaces the old "item_draw_callback()" technique
added a few months ago as an ABI feature; turned out the
new technique is a better way to go.
o The examples/tree-custom-draw-items.cxx demo adjusted
accordingly.
o Added missing docs for some methods that had none,
including label_[xywh]().
o Added related methods needed to implement this, including:
Fl_Tree_Item_Array::replace()
Fl_Tree_Item::replace()
Fl_Tree::root(item)
Fl_Tree::add() variations
Fl_Tree_Item::drawbgcolor()/drawfgcolor()
o Carefully worked the FLTK_ABI_VERSION macros so as to be
ABI compatible with 1.3.0.
o Verified 1.3.0 ABI compatibility with ABI Compliance Checker 1.99.8.5:
http://ispras.linuxbase.org/index.php/ABI_compliance_checker
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10071 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
* Adds '!' (FL_META) and '@' (FL_COMMAND) modifiers to fl_old_shortcut()
* Also adds more specific docs on how to properly use
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10070 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This eliminates the necessity to lock/unlock views that was tricky to do properly because of interaction with
undocumented system-performed locks.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10068 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
causing a -Wunused-function warning. Also strcnt() is used in WIN32 only, so should not
belong to Fl_Native_File_Chooser_common.cxx that contains functions used across
platforms.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10064 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
that doesn't use the "volatile" attribute (suggested by Albrecht).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10063 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
These are problems "ABI Compliance Checker" found with the recent
Fl_Tree mods.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10062 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Try with test/editor, opening several windows, and closing one.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10060 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
unsigned causes us to read the wrong values on x86_64.
The length is also defined as the number of 32-bit values,
not the number of bytes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10058 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
seems necessary, at least on Mac OS with optimized compilation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Note: This fix is temporary and should be revisited later.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10044 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
I tried to put those developers on top that are currently doing
the development and support work, separating them from previous
active developers, so that people can distinguish who is an active
developer today or in the recent past vs. previous developers and
other contributers.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10043 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
to enable inheritance and for consistency (STR #2834).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10039 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
* Removes redundant const vs. non-const code
using technique from Scott Meyers' book "Effective C++", 3rd Ed.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10038 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
***************************************************************
NOTE: You MUST uncomment the FLTK_ABI_VERSION in Enumerations.H
to use these changes.
***************************************************************
Also: separated tree size calculation from draw() code,
so that one can cause the tree to recalculate immediately
after making modifications to the tree by calling Fl_Tree::calc_tree().
Numerous improvements to docs for the tree as well, enough
to create a rather large diff.
Large internal changes were needed to do this properly.
The following was added to the CHANGES file:
- Fl_Tree: various related changes:
o Added horizontal scrollbar
o Separated draw() and tree size calculation
o Added new public methods:
> resize() -- uses optimized dim calc, avoids tree recalc
> next_item() -- added parameters: direction, visibility
> extend_selection() -- added parameters, improved algorithm
> calc_dimensions() -- calc tix/y/w/h, tox/y/w/h and scrollbars
> calc_tree() -- calc tree_w/tree_h
> recalc_tree() -- schedules calc_tree()
> first_visible_item(), last_visible_item(), next_visible_item()
> first_selected_item(), last_selected_item(), next_selected_item()
o Added protected variables:
> _tix/y/w/h -- tree widget 'inner' dimension
> _tox/y/w/h -- tree widget 'outer' dimension
> _tree_w,_tree_h -- entire tree hierarchy width/height
o Deprecated:
> item_clicked() -- use callback_item() instead
> first_visible() -- use first_visible_item() instead
> last_visible() -- use last_visible_item() instead
- Fl_Tree_Item: various related changes:
o Added Fl_Tree ptr: needed for auto-recalc when item modified directly
o Added new methods tree(), recalc_tree()
o Added new ctor that accepts Fl_Tree*
o draw() parameters changed to include tree size calculations
o Deprecated:
> ctor using Fl_Tree_Prefs parameter (Fl_Tree* version better,
and must be used for 1.3.3 ABI features to work correctly)
> next_displayed() -- use next_visible() instead
> prev_displayed() -- use prev_visible() instead
- test/tree: added tests for newly added features
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10034 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
drag-n-drop of text: if the dragged text is dropped in the widget it comes from, it's cut and pasted.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10031 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
applications a convenient way to request termination, rather
than forcing it. And it does so in a way that mimics UNIX's
way, allowing code reuse.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10030 ea41ed52-d2ee-0310-a9c1-e6b18d33e121