summaryrefslogtreecommitdiff
path: root/FL
AgeCommit message (Collapse)Author
2017-07-20Improve docs of Fl_Widget::callback() and do_callback().Albrecht Schlosser
Clarify that all variants of do_callback() call clear_changed() after the callback and that 'long Fl_Widget::argument()' may truncate the user_data value on some (particularly Windows 64-bit) platforms. Some code has been reformatted and refactored with better variable names, but there are no effective code changes. Obsolete, inactive code was removed. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12345 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-20Update Fl_Widget_Tracker docs with better example code.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12344 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-20Fl_Window_Driver::flush_single() needs not be a virtual member function.Manolo Gouy
It is really an accessor to protected method Fl_Window::flush(). Rename it to Fl_Window_Driver::flush_Fl_Window to reflect that. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12340 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-12Fix Visual Studio shared library build (STR #3389).Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12313 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-11Add missing definition of the 'uchar' type in FL/x.HManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12307 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-07STR #2823.2/2: Improved Fl_Preferences "dirty" flag handling.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12305 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-07Introduce Fl_Group::bounds(), deprecate Fl_Group::sizes().Albrecht Schlosser
The new method Fl_Group::bounds() replaces Fl_Group::sizes() whose internal array structure was not documented. Fl_Group::bounds() uses the new and documented class Fl_Rect for its internal structure. src/Fl_Tile.cxx now uses bounds() instead of sizes(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12302 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-03HiDPI support under WIN32 platform: completed.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12285 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-28HiDPI support: keep window's icons after rescalingManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12276 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-28HiDPI support: keep window's cursor after rescaling.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12275 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-27WIN32 platform: more progress for full HiDPI supportManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12273 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-21Code formatting only. No significant changes.Albrecht Schlosser
In preparation of adding Fl_Scroll_Tabs. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12270 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-21Move line_width_ protected member variable from Fl_Xlib_Graphics_Driver to ↵Manolo Gouy
Fl_Scalable_Graphics_Driver git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12269 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-17Make Fl_Screen_Driver::get_mouse(int&, int&) return the number of the ↵Manolo Gouy
mouse-containing screen. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12264 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-16Allow calling Fl_Window::decorated_w() with const Fl_Window object and also ↵Manolo Gouy
for decorated_h. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12262 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-13Remove copy constructor from Fl_Rect.Albrecht Schlosser
As suggested by Manolo in STR #3385, comment #7. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12260 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-12Add first version of FL/Fl_Rect.H.Albrecht Schlosser
This version is not yet used in existing code. It may be extended with more methods if we find we need them. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12259 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-06-01Divide virtual Fl_Screen_Driver::open_display() in a platform-specific part ↵Manolo Gouy
followed by a platform-independent part. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12245 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-05-22Make some methods of Fl_Tabs protected and/or virtual (STR #3211).Albrecht Schlosser
Patch proposed by Teklad (STR #3211, file #7): http://www.fltk.org/strfiles/3211/Fl_Tabs.H.patch with minor modifications and adjustments for FLTK 1.4.0. Method which() is now also virtual, as suggested by guyben in comment #24. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12243 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-05-18Add void fl_scale_offscreen(Fl_Offscreen &ctx) to support the rescaling of ↵Manolo Gouy
an offscreen buffer. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12240 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-05-17Introduce HiDPI + rescaling support for the X11 platform (+ partial support ↵Manolo Gouy
for WIN32) Corresponds to STR #3320 1) HiDPI support consists in detecting the adequate scaling factor for the screen on which FLTK maps a window, and scaling all FLTK units by this factor. FLTK tries to detect the correct value of this factor at startup (see more details below). Environment variable FLTK_SCALING_FACTOR can also be used to set this value. 2) Rescaling support consists in changing the scaling factor of all FLTK windows in reply to ctrl/+/-/0/ keystrokes. More details for the various platforms : - X11: Support is very advanced. Some details need still to be improved. Automatic detection of the correct starting value of the scaling factor works well with the gnome desktop. The present code contains no support for this on other desktops. FLTK_SCALING_FACTOR provides a workaround. -WIN32: Support is incomplete at this point, although many test applications have partial or complete HiDPI and scaling support. The current value of the system's scaling factor is correctly detected at application startup. Apps respond to changes of this value in real time. Support needs to define the FLTK_HIDPI_SUPPORT preprocessor variable at compile time. This way, standard builds produce a code with the default WIN32 HiDPI support, that is, where all graphics goes to an internal buffer that gets enlarged by the system and then mapped to the HiDPI display. To experiment with (or develop) the new HiDPI support requires a modified build procedure in which FLTK_HIDPI_SUPPORT is defined at compile time. When the support will be complete, the requirement for the definition of this preprocessor variable will be removed. The present commit contains support for a single scaling factor. Eventually, per-screen scaling factors should be implemented, as done for X11. - MacOS: this commit does not give new HiDPI for this platform. Eventually, window rescaling in reply to command/+/-/0/ is desirable. Per-screen scaling factor makes no sense on this platform because the OS itself takes care of the difference between the resolutions of traditional and retina displays. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12239 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-05-15Fix typo.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12238 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-05-15Allow to disable shadows in Fl_Clock and derived widgets.Albrecht Schlosser
As discussed on 2017-05-15 in fltk.general, thread "Fl_clock". git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12237 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-05-15Improve and clarify Fl_Clock documentation.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12236 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-04-27Document Fl_Table's protected member variables.Greg Ercolano
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12230 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-04-27Small doc clarifications for the Fl_Table::TableContext enum.Greg Ercolano
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12229 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-04-26Fl_Table was missing doxygen docs for several public + protected members.Greg Ercolano
Solves STR# 3381. Also: standardized doxygen comment style in both files; > /** */ doxygen commenting > 2 space indent Removed some confusing non-doxygen comments, and rewrote some confusing ones. Removed old license info Matt had imported from my original 2002 widget.. there was no reason for it to be in there; the Fl_Table code inside FLTK is licensed under the FLTK GPL license, no need for the extra noise in the docs. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12228 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-04-25Add an argument to the private, virtual member function void ↵Manolo Gouy
Fl_Surface_Device::end_current_(). The X11 platform uses this argument to restore the correct clipping state after drawing to an Fl_Image_Surface object. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12226 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-16Make image-related member functions of class Fl_Graphics_Driver protected, ↵Manolo Gouy
as in FLTK 1.3.x This helps ensure they are not part of the public API. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12199 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-14Give platform-independent default implementation to Fl_System_Driver::gettime()Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12198 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-13Set missing svn properties.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12196 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-11Separated Fl_Input_Choice.H and Fl_Input_Choice.cxx (STR #2750).Albrecht Schlosser
As proposed in STR #2750 and #2752: only status quo, i.e.: - no new method Fl_Input_Choice::maximum_size(int) (STR #2750 and #2752) - no handling of FL_Down key to open menu (STR #2752) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12192 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-10Enable Up/Down keys in Fl_Spinner if input has focus (STR #2989).Albrecht Schlosser
Previously Up/Down keys worked only if one of the buttons was pressed before so that it had the focus. test/valuators.fl: The second Fl_Spinner widget (FL_FLOAT_INPUT) now has wrap mode disabled whereas the first one (FL_INT_INPUT) uses wrap mode (default, compatible with FLTK 1.3.x and older). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12191 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-10New method Fl_Spinner::wrap(int) to set wrap mode at bounds (STR #3365).Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12190 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-09Separated Fl_Spinner.H and Fl_Spinner.cxx (STR #2776).Albrecht Schlosser
Also removed deprecated (misspelled) method names mininum() and maxinum(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12189 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-07Add to Fl_System_Driver support for measuring time with split second resolution.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12187 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-06Fl_Tabs: improve tab label drawing (STR #3075, STR #3076).Albrecht Schlosser
New method Fl_Tabs::tab_align() supports icons in tabs (STR #3076). This commit also enables drawing labels of Fl_Window children (STR #3075). Setting tab_align(FL_IMAGE_NEXT_TO_TEXT) draws images (icons) in the tab labels if the child has an image(). Currently this draws the image() even if the child is deactived (so it should presumably draw the deimage()). Todo: Label measurement and Fl_Windows as children still need fixups. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12185 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-05Label alignment documentation clarifications.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12182 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-27Improve label alignment docs and border case implementations.Albrecht Schlosser
Make clear that some alignment bit combinations are "illegal" and yield undefined behavior that can be changed without notice. Fix label alignment in some border cases where illegal bit combinations like FL_ALIGN_LEFT and FL_ALIGN_RIGHT or FL_ALIGN_TOP and FL_ALIGN_BOTTOM are both set, respectively. Todo: There appears to be inconsistent handling WRT these "illegal" cases, for instance with inside labels as opposed to outside labels, such that the behavior seems to be unpredictable. See test/label.cxx. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12181 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-01Fl_Text_Display documentation updates.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12168 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-04Add implementation explanatory comments about how the screen driver supports ↵Manolo Gouy
public function fl_read_image(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12157 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-02Documentation: drawing a scaled shared image no longer involves resizing the ↵Manolo Gouy
source image under MSWindows. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12156 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-20Fix for Brain Davis' bug report in fltk.general on 12/20/16.Greg Ercolano
Subject: Fl_Glut_Window::Fl_Glut_Window(int w, int h, const char *title = 0)... err huh well no, but it should be git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12151 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-17Handle non-ASCII characters when selecting a word or moving the cursor by ↵Manolo Gouy
one word. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12149 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-14Implement a platform-independent version of ↵Manolo Gouy
Fl_Graphics_Driver::copy_offscreen() usable when drawing to PostScript. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12147 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-07Add static void Fl_Surface_Device::push_current(Fl_Surface_Device ↵Manolo Gouy
*new_current) and pop_current() to set/unset the current drawing surface. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12140 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-05Fl_Text_Display documentation clarifications.Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12135 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-01Rename Fl_Surface_Device::_surface private member variable to surface_ ↵Manolo Gouy
following the CMP. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12130 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-30Remove Fl_Image_Surface::end_current() to be called after usage of the ↵Manolo Gouy
drawing surface. This ensures API compatibility with FLTK 1.3 where Fl_Surface_Device->set_current() is used to change the current drawing surface. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12125 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-19Finally remove FLTK_ABI_VERSION preprocessor macro from code.Albrecht Schlosser
FLTK_ABI_VERSION has been renamed to FL_ABI_VERSION in FLTK 1.4.0. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12121 ea41ed52-d2ee-0310-a9c1-e6b18d33e121