Commit Graph

2242 Commits

Author SHA1 Message Date
Albrecht Schlosser
5a3aced3ab New method: Fl_Group::remove(int index) to speed up the removal
of widgets if the widget's index is known. Thanks to Greg for the
patch. See also STR #2409.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7693 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-31 10:01:59 +00:00
Greg Ercolano
c7ef0f1d17 Fl_Tree related mods
* open() / close() now can invoke the callback().
      New method callback_reason() lets one determine the cause.
      (Used FLU's tree for reference on this)

    * new Fl_Tree methods:
      > item_pathname()
      > show_item(), show_top(), show_middle(), show_bottom().
      > next_selected_item() -- loop through the selected items.
      > callback_item() -- the item that caused the callback
      > callback_reason() -- reason the callback was invoked
             FL_TREE_REASON_SELECTED    -- item was selected
             FL_TREE_REASON_DESELECTED  -- item was de-selected
             FL_TREE_REASON_OPENED      -- item was opened
             FL_TREE_REASON_CLOSED      -- item was closed
      > position()
      > display()

    * new Fl_Tree_Item methods:
      > find_child_item() -- searches children for a path
      > find_item()       -- searches self and children for a path
      > next(item)        -- loop forward through tree
      > prev(item)        -- loop backward through tree
      > first_selected_item()
      > next_selected_item()
      > x(), y(), w(), h()

    * deprecated:
      > item_clicked().  Use callback_item() instead

    * the 'docallback' optional integer argument for all methods
      is now back to 0 or 1 only. (Other values became unnecessary
      when above new callback() behavior was defined)

    * test/tree has new "Test Callback Flags" button to test the
      'docallback' flags for eg. open/close/select/deselect
      to make sure no bugs creep in.

    * INTERNAL: added free_path() to free special path array created by parse_path().

    * Various docs strengthened:
	* How to use first()/next() and last()/prev() to walk tree
    	> made sure more method's options use \param[in]
	> Added more \see references

    * Moved several implementations from .H -> .cxx
    * Added autoscroll to keyboard nav and mouse drags
    * test/unittests: added Fl_Tree to scrollsize test

        TODO:
	    o Horiz scroll bar (see Johannes Schock's email re. additions he sent)
	    o Need to allow keyboard nav to move focus to child FLTK widgets
	    o Fix fast-selections so that no gaps are left behind.
	      (Select all items from the last selected item to the current)
	    o Investigate non-default values of when() causing odd behavior.
	      (See the tree demo's when() pulldown..)

    * tree demo modified to include top/mid/bot buttons that test the above.

    * Keyboard navigation added:
		Up/Down       -- move focus
		Left/Right    -- closes/opens tree item in focus
		Spacebar      -- toggle selection state of item in focus
		Enter         -- selects the item in focus, deselecting all others
		Tab/Shift-Tab -- change widget focus

    * All Fl_Tree select() and deselect() methods now return a value
      that indicates if the item's state was changed.

    * Fixed focus box drawing (focus box resides more precisely within item's box)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7691 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-26 13:32:30 +00:00
Manolo Gouy
23303736e3 Fl_Bitmap.cxx: fixed error that could create dereferencing of NULL pointer
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7690 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-26 08:28:35 +00:00
Manolo Gouy
3b4db2357d Native file chooser-Mac OS X: fixed issue arising with OS 10.6
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7689 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-25 17:01:56 +00:00
Albrecht Schlosser
f64829b7bf Fixed a bug that would have crashed the program on Windows versions
before Windows 2000 when printing pixmaps.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7688 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-25 08:45:33 +00:00
Albrecht Schlosser
a493692f01 Fixed compiler warnings
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7687 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-24 08:16:54 +00:00
Manolo Gouy
3f4a81bc88 Fl_PostScript_Graphics_Driver : removed useless member variable color_ because equals to fl_color_
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7684 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-22 09:11:51 +00:00
Manolo Gouy
5a1db672e1 Fl_PostScript_Graphics_Driver::color() : fl_color_ global var should be set for fl_color() call to be correct.
Fixes STR 2401

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7683 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-22 08:24:37 +00:00
Manolo Gouy
814f65db73 Fl_PostScript_Graphics_Driver::color() : removed repetition of identical code
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7682 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-22 07:53:24 +00:00
Manolo Gouy
68cecd9025 Mac OS X: Speedup of Fl::set_fonts() if called repeatedly.
Fixes STR 2383

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7681 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-08-20 13:07:13 +00:00
Albrecht Schlosser
6bd9230bcf Updated CMake files and removed now obsolete test/tree.cxx and
test/tree.h files.
Note: CMake not yet tested with these modifications.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7675 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-07-10 14:25:46 +00:00
Matthias Melcher
32716d6b1e Updated the Fluid IDE support for the current source file structure. Changed the Fl_Tree rendering code around a bit to make the tree more like MSWindows on Windows and more like Apple on Apple machines. I hope you guys like it. I also moved the function to load Fl_Preferences into an Fl_Tree into the Fl_Tree class where it belongs.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7672 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-07-10 09:44:45 +00:00
Manolo Gouy
8306c3d0b3 Fixed fl_XXX_offscreen functions when the current output goes to a printer or a PostScript device
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7671 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-07-09 17:31:33 +00:00
Manolo Gouy
0ac2bc4d40 Fixed use of x and y args when reading from offscreen buffer and test when w or h are too big
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7670 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-07-09 17:29:35 +00:00
Manolo Gouy
c835c08bb3 Fixed fl_copy_offscreen when output goes to a Quartz printer context.
Output to a PostScript context still needs to be fixed.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7665 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-07-03 10:13:22 +00:00
Manolo Gouy
61eb9377c8 Renamed global variable from fl_device to fl_graphics_driver to better express its class
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7659 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-07-01 13:21:32 +00:00
Manolo Gouy
142cefd106 Mac OS X: fixed bug where fl_draw(const char*, int, float, float) would not work on non-Quartz device
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7654 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-24 21:55:20 +00:00
Manolo Gouy
a40166931e Fl_PostScript.cxx: now outputs correctly all of the latin1 (iso-8859-1) character set
giving support for many latin alphabet-using languages.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7653 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-24 08:55:04 +00:00
Manolo Gouy
449b99dd86 Fix STR 2339 by defining new member function rtl_draw of class Fl_Graphics_Driver
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7652 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-21 15:49:45 +00:00
Manolo Gouy
6c2274f011 fl_begin_offscreen/fl_end_offscreen: added fl_push_noclip/fl_pop_clip to render Mac consistent with other platforms
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7651 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-19 15:19:13 +00:00
Manolo Gouy
2425499352 Fixed STR 2257. fl_read_image now accepts also reading from an off-screen buffer, as documented.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7650 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-18 16:31:15 +00:00
Manolo Gouy
006e5ff9c0 Removed commented out code
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7649 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-18 13:39:27 +00:00
Manolo Gouy
4da4ef0b67 Replaced 'fl_surface->driver()' by the shorter 'fl_device'
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7647 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-17 22:08:09 +00:00
Manolo Gouy
8c02ae87cb Correct way to test for device-specificity under Mac OS X
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7646 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-17 21:08:16 +00:00
Manolo Gouy
9a026f9dcd Reintroduced the changes brought in r.7606 that had been lost in r.7617
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7645 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-16 17:19:02 +00:00
Manolo Gouy
55a6172ad7 Removed useless #include <Fl/fl_ask.H>
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7644 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-15 21:16:27 +00:00
Manolo Gouy
e6935ce29c Removed commented-out debugging statements
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7643 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-15 17:44:51 +00:00
Albrecht Schlosser
da2954b1d6 Removed an "unused variable" warning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7642 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-15 08:20:15 +00:00
Albrecht Schlosser
02ef055c6c Previous commit log should read:
Fixed regressions introduced with svn -r 7617.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7641 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-15 08:04:50 +00:00
Albrecht Schlosser
37ef57934f Fixed regressions introduced with svn -r 7627.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7640 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-15 07:49:26 +00:00
Albrecht Schlosser
755f354ebe Fixed X11/XDBE double buffering (STR #2152, #2197). Both bugs could only be
seen if configure was run with --enable-xdbe (default in FLTK 1.3, optional
in FLTK 1.1).

src/Fl_Double_Window.cxx/Fl_Double_Window::resize():

	STR #2152: deallocate back buffer when window is enlarged in any
	dimension to force allocation of a new back buffer. This appears
	to be necessary for some window managers (e.g. Cygwin).

src/Fl_Overlay_Window.cxx/Fl_Overlay_Window::flush() and
src/Fl_Double_Window.cxx/Fl_Double_Window::flush():

	STR #2197: make sure that the entire overlay window will be drawn
	after a window redraw, because Fl_Double_Window::flush(1) erases
	the overlay as documented.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7636 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-09 08:36:25 +00:00
Manolo Gouy
da5042584a Fix image bug reported by Csaba in r7626 + fix regression in ps_image.cxx
inadvertently brought in by r7617.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7634 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-07 13:39:03 +00:00
Greg Ercolano
cc7b798179 Document return values for some methods that had none.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7627 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-03 15:46:59 +00:00
Albrecht Schlosser
27d9926856 Fixed dependencies for next snapshot.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7626 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-28 07:39:27 +00:00
Manolo Gouy
4aa1da7f0e Changed file properties
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7623 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-27 17:52:27 +00:00
Manolo Gouy
e0a798f115 Reflecting deleted files by new device hierarchy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7619 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-27 17:30:03 +00:00
Manolo Gouy
6fb99e7ec7 Reflecting change in device hierarchy.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7618 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-27 17:24:21 +00:00
Manolo Gouy
26049351e0 Better device hierarchy with surfaces and graphics drivers.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7617 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-27 17:20:18 +00:00
Manolo Gouy
0a280ce591 Fl_cocoa.m: better delete_timer function
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-27 07:06:43 +00:00
Manolo Gouy
53d7a643f1 Fl_get_key_mac.cxx: removed GetKeys Carbon call
Tested OK with keyboard demo.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7615 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-26 21:25:11 +00:00
Manolo Gouy
e2165ba028 Fl_cocoa.mm: removed 4 more Carbon calls (related to timers)
Tested OK with clock, scroll and tabs demos.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7614 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-26 20:04:00 +00:00
Manolo Gouy
ace4c55f35 Fl_Gl_Device_Plugin.cxx: fixed compilation error under some 10.4
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7613 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-21 07:15:13 +00:00
Manolo Gouy
347754de61 Fixed "Unlock focus on wrong view" error that occurred sometimes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7611 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-18 14:21:45 +00:00
engelsman
20a837c756 src/fl_utf.c: fixed UCS handling up to and including 0x10FFFF [STR 2349]
also enabled doxygen comments for ERRORS_TO_CP1252, STRICT_RFC3629 and
ERRORS_TO_ISO8859_1 preprocessor #defines, and updated other documentation.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7609 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-17 20:03:47 +00:00
Manolo Gouy
30933933b0 Fixed WIN32 crash when pixmap has no background area
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7606 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-13 10:18:47 +00:00
Ian MacArthur
6efdd85197 Make sure that "transparent_c" is not NULL before it is used in win32 builds.
Prevents segfault when loading pixmpas that have no transparent cell set.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7605 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-13 07:47:30 +00:00
Greg Ercolano
5be97a7868 Mods to tree widget for docs and callbacks.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7604 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-12 04:59:52 +00:00
Greg Ercolano
1f6d222cb8 1) Modified tree test program to include when() options,
2) Improved when() handling for left mouse behavior
3) Added docs for when() handling



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7601 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-10 22:51:01 +00:00
Greg Ercolano
e874b086ac 1) Invoke callback if when(FL_WHEN_RELEASE)
2) Removed unintended fallthrough from FL_DRAG -> FL_RELEASE handler.
3) Removed redundant redraw() calls



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7599 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-10 20:23:42 +00:00
Albrecht Schlosser
e61436c596 Fixed typo in src/CMakeLists.txt and added missing objective-c++ files
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7593 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-06 07:13:33 +00:00