Commit Graph

5540 Commits

Author SHA1 Message Date
Greg Ercolano
a41a41583f Added some code examples to docs for
Fl_Tree::insert()
    Fl_Tree::insert_above()



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10079 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-23 21:05:17 +00:00
Manolo Gouy
4eee9f1f63 Mac OS: handle possible NULL return after screen capture attempt.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10078 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-22 20:39:21 +00:00
Manolo Gouy
4d5e10097e Mac OS: use the exact title bar font when printing window.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10077 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-21 14:04:43 +00:00
Albrecht Schlosser
ea23ff1b63 Small documentation fixups.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10076 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-21 14:00:43 +00:00
Albrecht Schlosser
1aba94f136 New method Fl::scheme_is(const char *name).
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
2014-01-21 13:29:15 +00:00
Albrecht Schlosser
41b85d18a4 Fix strcasecmp() issues (again), see STR #2994.
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
2014-01-21 11:07:43 +00:00
Manolo Gouy
c4576badb8 Mac OS: improved window printing when window title is longer than the window width.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10073 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-21 10:22:53 +00:00
Greg Ercolano
9ba8793018 Added missing non-const versions of find_clicked()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10072 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-21 03:59:45 +00:00
Greg Ercolano
abdc834705 o Added draw_item_content() to Fl_Tree_Item,
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
2014-01-20 21:23:24 +00:00
Greg Ercolano
aa71c2f6e1 Implements STR#3031:
* 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
2014-01-20 04:23:41 +00:00
Manolo Gouy
9668cea28b It was incorrect to keep in the system menu pointers to menu items become items move around.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10069 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-19 18:16:52 +00:00
Manolo Gouy
b4adb7c55d Mac OS: drawing to screen is now performed by direct drawing to windows (drawing was done to views before).
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
2014-01-19 10:00:37 +00:00
Albrecht Schlosser
603cc32ed4 Fix typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10067 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-19 00:37:28 +00:00
Manolo Gouy
d7cc67d2f1 Mac OS: put idle processing under an alloc/release pair of an NSAutoreleasePool.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10066 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-18 16:28:59 +00:00
Greg Ercolano
35bdf594a8 Diagram for Fl_Tree_Item docs.. (to be introduced in future commit)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10065 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-18 02:29:22 +00:00
Manolo Gouy
f1bc3999d6 Two functions strcnt() with distinct prototypes where defined and only one was used,
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
2014-01-16 16:10:19 +00:00
Manolo Gouy
a170c95787 Better way to force linking of Fl_Gl_Device_Plugin.o whenever Fl_Gl_Window.o is linked,
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
2014-01-16 15:38:06 +00:00
Greg Ercolano
b849a1d2d9 ABI fixes.
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
2014-01-16 00:58:58 +00:00
Manolo Gouy
9c6eb8be29 Mac OS: when computing a texture, save/restore the global fl_gc variable.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10061 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-15 21:47:37 +00:00
Manolo Gouy
fe1793f13b Stepping back from r.10030: when you close any window it stops the program!
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
2014-01-15 14:02:57 +00:00
Manolo Gouy
3001cc1ab3 Added the static attribute to the 2 new functions strcnt() because all functions here must be static.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10059 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-14 18:17:24 +00:00
Pierre Ossman
9d2da70d04 32-bit properties are always represented by a long. Using
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
2014-01-14 15:57:45 +00:00
Manolo Gouy
452ce6e502 Added missing PMRelease() calls that match PMCreateXXX() calls (Mac OS before 10.5 only).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10057 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-14 12:49:44 +00:00
Manolo Gouy
86f2214b28 Fix the issue reported in "Fl_Sys_Menu's add method throws errors" of fltk.general
(http://www.fltk.org/newsgroups.php?s29083+gfltk.general+v29086)

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10056 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-14 10:27:16 +00:00
Greg Ercolano
6beedf4c28 Fix small memleak in Fl_Tree::show_self() [used only for debugging anyway]
and convert from malloc/free -> new/delete



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10055 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-14 01:08:40 +00:00
Greg Ercolano
bffc6b36ae Fix small memleak in parse_path() if user tries to add() paths like "" or "/".
Also shrunk implementation code.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10054 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-13 14:41:23 +00:00
Albrecht Schlosser
49e4b8e3fa Fix clang support on Win64 (STR #3027).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10053 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-11 13:02:25 +00:00
Manolo Gouy
bcfdbe35e7 To force linking of Fl_Gl_Device_Plugin.o when Fl_Gl_Window.o is linked, an additional volatile
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
2014-01-10 17:49:07 +00:00
Manolo Gouy
70d97dd76d A redraw of the GL window may be necessary before printing, at least with the glpuzzle demo on Mac OS.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10051 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-10 16:50:55 +00:00
Albrecht Schlosser
4d4ffb4d0a Add CMake fixes for OS X build from Rob McDonald.
See thread: [fltk.general] Embedding FLTK in project.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10050 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-10 10:33:25 +00:00
Manolo Gouy
97448d6bca Restored the statement removed at r.9992 because it's required so Fl_Gl_Device_Plugin.o is loaded,
and so printing of GL windows works.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10049 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-09 20:11:45 +00:00
Manolo Gouy
e543d2c763 Cleaner definition under Mac OS of the fl_default_cursor global variable that doesn't hide its type.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10048 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-07 15:31:28 +00:00
Albrecht Schlosser
56b7434dd0 Remove unused variable warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10047 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-07 01:28:43 +00:00
Greg Ercolano
70865d6c10 Fixes STR# 3025; string overflow with large filter()s.
Replaced fixed arrays with dynamic strings.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10046 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-06 17:52:06 +00:00
Greg Ercolano
8ecd7a1abb Fix mem leak with 'oldcwd' if user hits 'cancel' button in browser..
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10045 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-06 01:01:52 +00:00
Albrecht Schlosser
eb980231be Fixed recent MinGW build WRT configure not finding strcasecmp() (STR #2994).
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
2014-01-03 17:24:00 +00:00
Albrecht Schlosser
6532f276fe Updated CREDITS file with current and previous developers.
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
2014-01-03 17:11:54 +00:00
Albrecht Schlosser
738563f973 Fixed missing libdl dependency in CMake builds (STR #2977).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10042 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-03 16:42:21 +00:00
Albrecht Schlosser
642c475493 Fixed segfault in fl_set_fonts_xft.cxx when loading fonts not named
as expected (STR #2976).


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10041 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-03 16:17:05 +00:00
Greg Ercolano
1af599b4af Fixes errors:
warning: deprecated conversion from string constant to 'char*'



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10040 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-01 17:13:48 +00:00
Albrecht Schlosser
8e30fc438c Made Fl_Help_View::handle() public and Fl_Help_View::draw() protected
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
2013-12-30 14:18:18 +00:00
Greg Ercolano
a4550ade99 * Fixes STR#3024 issue with Fl_Tree::find_item()
* 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
2013-12-28 22:26:22 +00:00
Manolo Gouy
c90f1904fa Mac OS text input: fixed minor problem when typing cmd-key while there's marked text.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10037 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-20 18:29:02 +00:00
Greg Ercolano
9b5f1d78e1 Fixes Micha's two NetBSD warning msgs (posted on fltk.general 12/16/13):
tree.cxx: 1443: warning: passing 'double' for argument 1 to 'void Fl_Tree::scrollbar_size(int)'
    tree.cxx: 1440: warning: passing 'double' for argument 1 to 'static void Fl::scrollbar_size(int)'



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10036 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-18 02:14:02 +00:00
Greg Ercolano
911ab3948a Added Fl_Tree sort example.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10035 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-16 10:26:44 +00:00
Greg Ercolano
d36882e67e Adds horizontal scrollbar to Fl_Tree as an ABI 1.3.3 feature.
***************************************************************
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
2013-12-15 18:59:02 +00:00
Greg Ercolano
6bf1ddf2b1 Made smaller file size, tree image modified
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10033 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-14 04:12:21 +00:00
Greg Ercolano
b6cf43cf6f Image defining new Fl_Tree inner/outer dimensions for forthcoming ABI 1.3.3 mods.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10032 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-14 04:01:10 +00:00
Manolo Gouy
34c69d3922 Fix for STR#3016: Fl_Input and Fl_Text_Editor have now the standard behavior when doing
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
2013-12-13 16:28:38 +00:00
Pierre Ossman
f7e88141c3 Catch WM_QUIT and convert it to SIGTERM. This gives Windows
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
2013-12-13 10:26:03 +00:00