3315 Commits

Author SHA1 Message Date
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
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
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
Manolo Gouy
c65852122c Added informative comment to Fl_Paged_Device::print_window()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10028 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-11 14:31:27 +00:00
Manolo Gouy
0e8f2f786b Removed use of deprecated NSStringPboardType constant.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10025 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-10 12:07:09 +00:00
Manolo Gouy
b11af6e5e1 Simplified the code that supports application opening by dropping file onto icon.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10024 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-09 12:12:26 +00:00
Manolo Gouy
076de1c617 Improved window printing by using a vectorial font for the window title.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10023 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-08 16:16:24 +00:00
Manolo Gouy
1f6585c15a The FLView object is now released just after the setContentView message is sent.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10022 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-11-30 21:50:00 +00:00
Manolo Gouy
05dd61d4ee Fix STR#3010: Program can crash under Mac OS when a dialog window is closed
if the opening of this dialog window made the previous window to be redrawn.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10021 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-11-29 18:14:49 +00:00
Manolo Gouy
8f34835c17 Explicit what unicode characters represent keyboard modifiers in menus on the Mac platform.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10020 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-11-25 10:05:05 +00:00
Manolo Gouy
6b67e50cbe Bracket calls to timer callbacks with fl_lock_function()/fl_unlock_function() as occurs under WIN32 and X11.
This was also missing in the FLTK 1.1 carbon version.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10019 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-11-13 15:49:48 +00:00
Greg Ercolano
88cea3c82d o Added Fl_Tree::item_draw_callback(), letting one define a custom draw function for Fl_Tree_Item's.
o Added examples/tree-custom-draw-items.cxx to demonstrate its use.
o Fixed small doc error for recent Fl_Tree::get_selected_items()



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10018 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-11-10 04:33:44 +00:00
Greg Ercolano
33ab9cfed1 Fl_Tree:
o Added new method Fl_Tree::get_selected_items()
	o Modified Fl_Tree_Item_Array to usable in a general way (i.e. beyond Fl_Tree's internal use)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10016 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-11-06 20:44:47 +00:00
Greg Ercolano
52d395ad81 Fix problem with Fl_Tree::select_only() invoking select callbacks
before all other items have first been deselected.

Also: added some related demo code to tree-simple to demonstrate
'reselect' callbacks, where a callback can be invoked when an item
that's selected already is 're-selected'.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10015 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-11-06 20:12:08 +00:00
Manolo Gouy
2fd7086605 Improved the ordering of font names consistently grouping them by family (cont'd).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10014 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-30 13:36:16 +00:00
Manolo Gouy
830f9eec89 Improved the ordering of font names consistently grouping them by family.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10013 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-30 12:03:49 +00:00
Manolo Gouy
8550d28608 After r.10011 that removed the q_name member from class Fl_Font_Descriptor, change in gl_font() was needed.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10012 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-29 14:48:26 +00:00
Manolo Gouy
1ad6b09de7 Fix mac-specific STR#2999. Use PostScript font name to ask the system for a font, and full font name
to display a font name.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10011 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-29 12:46:51 +00:00
Manolo Gouy
4827a696df Modified Fl_Paged_Device::print_window() so it works with any kind of Fl_Paged_Device instance.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10007 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-23 14:39:14 +00:00
Manolo Gouy
49e2f6e9db Replaced one fopen() call by fl_fopen() to work correctly under MSWindows with non ASCII filenames.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10006 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-23 09:24:30 +00:00
Greg Ercolano
45d7ae0a4c Fixes STR#2991: prevents crash when file browser
encounters an image that can't be loaded.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10004 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-21 04:58:43 +00:00
Greg Ercolano
da187139bc STR #2991: No functionality changed.
Simplify used_colors[]: replace uchar array with rgb struct.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10003 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-21 03:39:53 +00:00
Greg Ercolano
fb16febf3c Fix brace indents, various code cosmetics/comments.
No functionality changed yet; preparation for STR #2991 mods.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10002 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-21 03:33:11 +00:00
Greg Ercolano
a40aa8311b While investigating STR#2991, noted (but did not remove) misleading comments.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10001 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-20 23:07:01 +00:00
Greg Ercolano
a5f2ef5ccd When reading XPMs, don't parse more than 2 hex digits
in \xff style escape sequences.

Also, 10000'th commit. :P



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10000 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-20 22:35:31 +00:00
Greg Ercolano
da737bb10b Avoid freeing NULL.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9999 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-20 20:17:13 +00:00
Albrecht Schlosser
e77c0cd47c Small addition to fix for STR #2985 - see comment in source file.
Fixes a small potential of another leak.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9998 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-09 11:46:36 +00:00
Manolo Gouy
83e4329695 Added member function Fl_Sys_Menu_Bar::update().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9997 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-05 15:20:18 +00:00
Greg Ercolano
2fcb616831 Added note regarding Windows not always handling
file: uris with anchor suffixes properly.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9995 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-10-04 16:48:08 +00:00
Greg Ercolano
a8417b6eb8 Apply Michael Baeuerle's fix for NetBSD
(as per discussion on fltk.general Sep 24 2013, Subject: Potential problem in xutf8/utf8Wrap.c)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9994 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-25 21:09:00 +00:00
Manolo Gouy
ce0e298a8a Removed some of the warnings mentioned in [fltk.coredev] New warnings with FLTK 1.3.x svn r9991
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9993 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-25 08:55:01 +00:00
Greg Ercolano
15367447cd Fix some warnings for IRIX 6.5
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9992 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-24 19:58:24 +00:00
Manolo Gouy
99f2010dce Remove errors with the Apple LLVM version 4.2 compiler.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9991 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-24 16:25:29 +00:00
Manolo Gouy
1029debb66 Clarification of change in constant used for text-containing pasteboards across Mac OS versions.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9989 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-24 08:27:10 +00:00
Manolo Gouy
3d7d2938c7 Fixes the copy/paste implementation to run on many Mac OS versions.
Checked on 10.3, 10.5, 10.6 and 10.8

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9986 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-23 19:00:15 +00:00
Manolo Gouy
cedcc3f52e Fixed implementation of paste with NSPasteboard that did not work well under Mac OS 10.5
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9985 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-23 15:01:54 +00:00
Greg Ercolano
25ff26df12 STR #2973: Removed old HP-UX dummy() code in favor of typedef;
Skunk confirms compiles on two HP-UX variants as well as Sun.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9984 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-22 17:20:48 +00:00
Greg Ercolano
81dfeab19e Fixed some odd/misleading code indent issues in this file.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9983 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-22 03:22:41 +00:00
Greg Ercolano
5d4fed1ef9 STR #2860: Mods for full screen support.
Applied the fltk-1.3.x-screen_num.patch



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9982 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-22 02:33:17 +00:00
Greg Ercolano
2082d7e197 Fixes STR# 2973: collection of Sun compiler fixes.
Applied str_2973_r9979_sun-fix-warnings-7.patch (with small mods)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9980 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-21 16:41:23 +00:00
Greg Ercolano
2fc6c3a39b Fixes STR #2985: prevent memory leaks with XGetWindowProperty()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9979 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-20 03:36:02 +00:00
Greg Ercolano
67ed1a8da9 STR# #2973: applied patch str_2973_r9958_sun-fix-errors-5.patch verbatim.
src/Fl_Tree_Item.cxx -- solve: "Fl_Tree_Item.cxx",    line 614: Error: Initializing int& requires an lvalue.
    FL/Fl_Preferences.H  -- solve: "FL/Fl_Preferences.H", line 196: Error: Fl_Preferences::RootNode is not accessible from 0
    FL/Fl_Tree_Item.H    -- solve: "Fl_Tree_Item.cxx",    line 614: Error: Initializing int& requires an lvalue.
    test/unittests.cxx   -- solve: "unittests.cxx",        line 95: Error: The type "UnitTest*[]" is incomplete.
            


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9978 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-16 20:25:14 +00:00
Greg Ercolano
578310dd0f Fix Solaris warnings mentioned by Micha on fltk.coredev Sep 16 '13
in thread entitled "Re: STR 2636, clipboard notification".



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9977 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-16 12:02:40 +00:00
Manolo Gouy
3baf5e0d58 Implemented copy/paste with Cocoa's NSPasteboard instead of Core Foundation's Pasteboard Manager
which allows quite simpler code.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9975 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-12 12:21:57 +00:00
Pierre Ossman
1d6cc80d59 STR 2636. Add ability to get notifications whenever the
clipboard changes.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9974 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-11 12:54:40 +00:00
Pierre Ossman
f410352c7c Copy over NSInteger safety typedefs from Fl_cocoa.mm
so that we can continue to compile for OS X 10.4.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9973 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-11 12:06:03 +00:00
Pierre Ossman
9ce5d7c2ad Simplify clipboard handling on Windows by consolidating
it into one central function. 


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9972 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-11 11:11:22 +00:00
Manolo Gouy
65226e073e Fixed typo in comments.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9968 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-09-06 09:24:28 +00:00