Commit Graph

66 Commits

Author SHA1 Message Date
Albrecht Schlosser
21520a3d5e Remove redundant redraw_label() call from copy_label(), STR #2836.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9452 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-05-07 07:18:11 +00:00
Albrecht Schlosser
66cea4322f Fix STR #2836: copy_label() with old label() value failed.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9443 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-05-05 13:36:47 +00:00
Greg Ercolano
4f4a8fc3c7 Modifications to all LGPL headers for STR #2685.
(to clarify static exception LGPL by changing license references)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-07-19 04:49:30 +00:00
Greg Ercolano
a343f7555b STR#2466: Added copy_tooltip().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7940 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-02 17:58:58 +00:00
Matthias Melcher
e454f97acc Fixed Copyright to 2010.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-28 21:06:39 +00:00
Albrecht Schlosser
27e7308654 Minor fix to do_callback() code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7321 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-23 17:37:51 +00:00
Albrecht Schlosser
177f45fe98 Extended Fl_Widget::align_ flag from 8 bits to full (unsigned) size for
later extensions (currently all 8 bits are used).

Moved the align_ flag to the internal Fl_Label struct (where it should be).
There are no API changes, though.

I also reordered a few other variables for better alignment, so that there
is no size change of Fl_Widget on 32-bit platforms (currently 84 bytes on
Windows/32-bit and probably all 32-bit platforms).


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7013 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-01-16 15:56:41 +00:00
Albrecht Schlosser
954fba25c8 Widgets now remove stale entries from the default callback queue
(see Fl::readqueue()) when they are deleted (STR #2302)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6977 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-12-23 12:53:45 +00:00
Fabien Costantini
15489bda1b Major documentation update including: now html doc API is sorted, navigation problems/side effects fixed, html tags replaced by proper doxygen commands, parameters command switched from a to p. Includes a pdf update.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6716 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-03-24 01:40:44 +00:00
engelsman
ced863d334 converted html tags to doxygen commands in documentation/src/subclassing.dox
this also required tweaking parameter names and doxygen comments in
Fl_Widget.H, Fl_Group.H, Fl_Widget.cxx and fl_boxtype.cxx 




git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6705 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-03-21 17:08:23 +00:00
Albrecht Schlosser
e94b388899 renamed class Fl_Watch to Fl_Widget_Tracker, as discussed in fltk.development.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6659 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-02-15 13:49:34 +00:00
Albrecht Schlosser
9f1eeaee19 Added the helper class Fl_Watch to simplify safe handling of widget deletion
in callbacks. This is used e.g. in Fl_Widget::do_callback() to prevent 
accessing widgets after deletion in the callback.

Documentation adjusted, Fl_Menu_Button.cxx changed to use Fl_Watch instead
of Fl::watch_widget_pointer.

Fl::watch_widget_pointer() and Fl::release_widget_pointer() have been
modified to use an array without "holes" (NULL pointers) for storing the
widget pointers for faster access: Fl::release_widget_pointer() now shifts
pointers to close gaps of freed pointers.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6651 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-02-08 14:44:15 +00:00
Albrecht Schlosser
eec7f80e94 Widgets now remove themselves from their parent group (if any), when destroyed
(STR #1894). Fl_Group::clear() removes widget by widget (one at a time) to
allow widgets to remove other related widgets from the same group, when they
are deleted.
Also fixed a bug in Fl_Value_Input (added a destructor), because it used
a non-Fl_Group widget as parent of another widget.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6623 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-08 17:12:34 +00:00
Matthias Melcher
5251b64d57 Changed Copyright in 'src' directory
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-01 21:28:26 +00:00
Albrecht Schlosser
6ed54124bb Fixed typos and doxygen documentation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6582 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-12-13 18:31:54 +00:00
Fabien Costantini
92051890f1 Quickdraw removal: option removed from configure, all Qd code removed from sources. Also took this opportunity to sort the ifdef clauses so that USE_X11 shows first. Also added error pragma to enforce proper target checking, thus make even less assumptions.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6423 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-13 23:10:43 +00:00
Albrecht Schlosser
b804e1f3ab Fixed some typos and links and added a section about document structure
and some more to development.dox.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6320 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-20 22:46:24 +00:00
Fabien Costantini
e8478458bf Doxygen documentation: Fixed most important warnings for the Fl_Widget, Fl_Window, Fl_Valuator classes that should be now a 100% documented. For the rest I drastically reduced the undocumented APIs, but many others (less important) remains.
It looks and feels pretty good now :-)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6299 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-18 19:09:34 +00:00
Fabien Costantini
ae697b80b2 Doxygen documentation : took the opportunity to update copyright info as we modified already in batch almost all sources, added also a fil doxygen command to class headers to harmonize with original matt Fl_Widget dox. format.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6265 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-16 07:26:22 +00:00
Fabien Costantini
d55dfeb5e9 Doxygen documentation. Fixed somes typos and also H4 remanent misplaced tags and comments.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6258 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-15 17:46:42 +00:00
Fabien Costantini
9bf19e2329 WP1 merged from my branch, WP2 reserved, todo list updated.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6231 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-13 22:33:03 +00:00
Matthias Melcher
b6bde2e456 Merging the UTF8 patch, consisting of O'ksi'd s original 1.1.6 patch and additions by Ian. PLEASE BE AWARE that the patch in its current incarnation is a regression in many aspects and further work is required before we can announce Unicode support.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6212 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-10 23:56:49 +00:00
Matthias Melcher
e63c50b2d1 Rename type Fl_Font_Size into Fl_Fontsize to comply with other naming in FLTK.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6161 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-15 21:11:21 +00:00
Matthias Melcher
2bded55947 Moving more documentation into doxygen format
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6155 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-11 08:35:34 +00:00
Matthias Melcher
7c8f5cc888 First attempt at consistently using Fl_Font as a type for the font index and Fl_Font_Size as a type to measure font height (or rather size).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6113 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-04-23 19:09:28 +00:00
Matthias Melcher
ad0fc9ca23 STR #1162: Fl_Menu_Button::popup was trying to access a previously deleted widget (itself). The delayed deleting mechanism in 'Fl::delete_widget' did not work in this case because the main loop is called before the callback returns. The fix implements a type of automatic pointer that will be cleared to NULL should the widget get deleted. This may not be a 'nice' solution, but it does fix the problem reliably. We could actually use this for all widget pointers and remove the delayed delete mechanism alltogether
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5037 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-27 21:40:47 +00:00
Michael R Sweet
067d1d8a61 Updated the default label and text colors of all widgets to use
FL_FOREGROUND_COLOR instead of FL_BLACK (STR #1052)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4609 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-10-30 17:42:21 +00:00
Matthias Melcher
13cb2bc18c STR #878: fixed tiny memory leak when calling Fl_Widget::label(label()) which happens when assigning a window icon.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4412 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-07-11 21:05:45 +00:00
Michael R Sweet
1c399af444 Update source file headers with STR web page.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4288 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-04-16 00:13:17 +00:00
Michael R Sweet
add37faa25 Copyright updates.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 21:55:12 +00:00
Michael R Sweet
b32fefd1c5 Fl_Widget::copy_label(NULL) didn't work (STR #707)
src/Fl_Widget.cxx:
    - Check for NULL in Fl_Widget::copy_label()


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4032 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-06 01:29:54 +00:00
Michael R Sweet
7acedd91ff Fix compiler errors...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3918 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-11-23 19:51:03 +00:00
Michael R Sweet
a42ded75e2 Added the 2.0 Fl_Widget::copy_label() method to allow FLTK 1.x
applications to have their label strings managed by FLTK (STR
#630)

Added Fl::delete_widget() method to safely delete widgets in
callback methods (STR #629)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3917 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-11-23 19:47:52 +00:00
Matthias Melcher
8327822026 Updated config stuff to allow for --enable-quartz ofr Mac OS X which in
turn defined USE_QUARTZ to 1 and defines __APPLE_QUARTZ__. If Quartz
is not disabled, it will define __APPLE_QD__ for Quickdraw.

I also replaced all relevand #ifdef __APPLE__ with #ifdef __APPLE_QD__
#elif defined(__APPLE_QUARTZ__). This does not affect the compile at
this time and both version will generate the same Quickdraw code.

I will start to replace all QD calls with Quartz calls for the
remainder of the week until I can completely remove all QD calls from
the Quartz branch.

Thanks to Robert Smith for a great initial Quartz implementation.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3782 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-25 00:20:27 +00:00
Michael R Sweet
a3d0905c9e Copyright updates and prep for 1.1.5rc1.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3391 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-04-11 04:39:01 +00:00
Michael R Sweet
00cb676e11 Copyright update for 1.1.3 release (not quite yet, but soon...)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2936 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-01-30 21:46:07 +00:00
Michael R Sweet
a74795bbb8 Get rid of some valid compiler warnings with CodeWarrior that were reported
by Paul Chambers.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2845 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-11-19 16:37:36 +00:00
Michael R Sweet
8d552439c7 New Fl_Widget::redraw_label() method to cleanly redraw the label of a
widget (this should eliminate the extra flicker some users have complained
about...)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2652 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-10-04 15:59:29 +00:00
Michael R Sweet
57cef6a4bd Remove extra 3 pixel offset when the size is below a certain amount;
instead, use a constant +1 offset.

Add another bit to flags_, VISIBLE_FOCUS, which provides
per-widget keyboard focus control.  The default is for all
widgets to participate in keyboard focus navigation.  Use the
set_visible_focus(), clear_visible_focus(), and visible_focus()
methods on Fl_Widget to control this.

Clean up the Fl_Widget documentation and add missing stuff.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2543 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-07-23 15:07:33 +00:00
Michael R Sweet
839dfca778 Redraw fixes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2276 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-06-02 17:52:36 +00:00
Michael R Sweet
3a117a899c Get rid of as many compiler warnings as possible.
Add missing offbits seek when reading BMP files.

Add -OPT:Olimit=4000 to SGI compiler options (for keyboard_ui)


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2253 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-05-24 14:19:19 +00:00
Michael R Sweet
9e2f362016 Move ENTER/LEAVE handling to Fl_Box so that the default event handler
in Fl_Widget doesn't interfere with existing widgets.

Remove unnecessary strcasecmp defines.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2076 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-04-12 20:16:07 +00:00
Michael R Sweet
4586bf0fcc Tooltip fixes: ignore keyboard events, immediately disable new tooltips,
show tooltips for box widgets.

Add docos for Fl_Widget::tooltip() methods.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2060 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-04-09 17:20:24 +00:00
Michael R Sweet
bccdafdaef Fixed from Teun.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1919 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-01-07 20:40:02 +00:00
Michael R Sweet
64b4177ef4 Copyright updates...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-01-01 15:11:33 +00:00
Michael R Sweet
df9acaafea Implement Fl::scheme() and Fl::reload_scheme() (this includes support
for new FLTK_SCHEME environment variable, which should get added to
FLTK 2.0 CVS, as well as the -scheme option...)

Revert Fl_Group/Fl_Widget destructor change - it doesn't work for
statically initialized widgets (like the widgets in a color chooser...)

Export fl_round_up_box() and fl_round_down_box() so they can be
restored in Fl::reload_scheme().

Use FL_DOWN_BOX and FL_ROUND_DOWN_BOX in menu drawing code.

Use a static string for the display environment variable in Fl::display().

Updated MacOS README file...

Added window tile image...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1883 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-12-20 14:41:44 +00:00
Michael R Sweet
329b4127f6 Multiple bug fixes from Sebastien:
- Fl_GIF_Image and Fl_PNG_Image didn't close the file before
      calling Fl::error().
    - Fl_Help_View didn't clear the line array in Fl_Help_Block,
      and Fl_Help_Block::font and ::size were not used.
    - Fl_Shared_Image::get() didn't return NULL if the image
      could not be loaded.
    - Switched to more efficient code for
      Fl_Tiled_Image::color_average() and ::desaturate().
    - Don't delete children in Fl_Text_Display since the group
      will do it.
    - Fixes to filename_isdir(), filename_absolute(), and
      filename_relative().
    - Was using numbers instead of define constants for some
      OpenGL stuff under WIN32.
    - Wasn't exporting threading functions under WIN32.
    - The Fl_Widget destructor now removes from the parent to
      avoid a Purify error since the old widget would be
      referenced by the parent when it was destroyed; this has
      no apparent performance impact since Fl_Group::clear()
      sets children_ to 0, making Fl_Group::remove() very
      fast...
    - WIN32 font enumeration datatype fixes...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1878 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-12-19 18:15:34 +00:00
Michael R Sweet
5c3b2f74bc More tweeking of plastic boxtypes.
Redraw parent if child button loses focus and is using FL_NO_BOX.

Fix test/Makefile to build mandelbrot and shiny demos right.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1844 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-12-14 16:48:13 +00:00
Michael R Sweet
a93a8031f1 Line style and focus boxes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1821 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-12-07 16:28:38 +00:00
Michael R Sweet
c78dcd55ec More doco updates.
Enable tooltips by default, and don't enable them when setting the
tooltip value, since that will negate any changes a program might
make when displaying the file chooser dialog, etc.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1777 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-11-28 20:43:44 +00:00