Commit Graph

4613 Commits

Author SHA1 Message Date
Albrecht Schlosser
3a5e2f074b Update dependencies.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12391 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-18 15:18:46 +00:00
Albrecht Schlosser
2828cbde2c Avoid #include's of unrelated system headers in Fl_Table*.H.
Possible side effect: programs that relied upon inclusion of unrelated
system headers by FL/Fl_Table.H or FL/Fl_Table_Row.H may fail to compile.

Removed include files (some only on certain platforms, list may be incomplete):

#include <FL/Fl.H>             // moved to implementation (.cxx)
#include <FL/Fl_Box.H>         // moved to implementation (.cxx)
#include <FL/Fl_Scrollbar.H>   // moved to implementation (.cxx)

#include <sys/types.h>
#include <string.h>            // memcpy
#include <malloc.h>            // WINDOWS only: malloc/realloc
#include <stdlib.h>            // UNIX: malloc/realloc


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12390 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-18 15:16:08 +00:00
Manolo Gouy
46288a2bdb class Fl_GDI_Image_Surface_Driver: remove member variable 'previous' that is useless.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12388 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-16 15:41:59 +00:00
Albrecht Schlosser
51c788095a Add missing #include "config_lib.h" in Fl.cxx.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12387 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-15 16:45:38 +00:00
Manolo Gouy
108a5e8de2 Complete previous commit at r.12383 that was partial.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12384 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-15 14:44:35 +00:00
Manolo Gouy
6bcadf536f Fl_XXX_Surface_Driver::set_current() : call Fl_Surface_Device::set_current() first to get fl_window right.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12383 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-15 14:30:48 +00:00
Manolo Gouy
f7f2e06fe4 Remove _sgc private member of Fl_GDI_Image_Surface_Driver that is not necessary.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12382 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-15 14:26:25 +00:00
Albrecht Schlosser
ec951ce695 Remove unnecessary #include statements and compilation guards.
Currently src/drivers/OpenGL/Fl_OpenGL_Graphics_Driver.cxx wouldn't
contribute any code to the lib, but it is kept for future extensions.
This file is no longer compiled (see src/CMakeLists.txt and src/Makefile).

Tested (only) under Windows and Linux.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12381 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-14 17:10:26 +00:00
Albrecht Schlosser
4198caa780 Make 'driver' header include guards more standard.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12380 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-14 15:44:41 +00:00
Albrecht Schlosser
5a9c159350 Remove unnecessary #include statement.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12379 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-14 11:42:34 +00:00
Manolo Gouy
01a885f911 Fl_Xlib_Graphics_Driver::set_fonts() with Pango: handle case when 'Regular' is not alone in face name.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12378 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-13 13:51:14 +00:00
Manolo Gouy
67a63d40e0 Fl_Xlib_Graphics_Driver::set_fonts() with Pango: account better for variety of possible font styles.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12377 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-13 11:50:47 +00:00
Manolo Gouy
44a3f9fce9 Fix error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12376 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-12 15:28:44 +00:00
Manolo Gouy
7a6124bda6 Improve Fl_Xlib_Graphics_Driver::set_fonts() when using Pango to build standard FLTK font names prefixed with I,B, or P.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12375 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-12 15:16:35 +00:00
Manolo Gouy
6126e8cb0e Strenghten Fl_WinAPI_System_Driver::paste(): the widget's handle method may change Fl::e_text.
The widget's handle method may change the value of Fl::e_text.
This occurs for instance if this method calls fl_choice().
So, memorize the value of Fl::e_text before, to delete the correct array after the call to the handle method.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12371 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-05 14:25:09 +00:00
Albrecht Schlosser
090f325780 Fix compiler warning [-Wunused-result].
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12370 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-08-05 09:55:22 +00:00
Manolo Gouy
87b1ff244d Improve Fl_Widget_Surface::print_window_part() with better quality when scaling factor > 1.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12368 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-31 07:47:48 +00:00
Manolo Gouy
c4e04e4c7f Improve rescaling when window moved across screens: make sure center stays on new screen.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12367 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-30 16:21:57 +00:00
Manolo Gouy
5a7a954ebd Fix Fl_Widget_Surface::print_window_part() that was not correct for scaling factor values < 1.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12366 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-30 15:19:36 +00:00
Manolo Gouy
16d69ff7aa Fix Fl_Screen_Driver::read_image() that was not correct with scaling factor < 1.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12365 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-29 07:36:04 +00:00
Manolo Gouy
c88466928d Replace static protected bool Fl_Window_Driver::is_a_rescale by a private static variable and a public getter.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12364 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-28 15:51:05 +00:00
Manolo Gouy
879c4df5bd Fix Fl_Native_File_Chooser::filter_value()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12363 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-28 14:06:18 +00:00
Manolo Gouy
60567b12ef Rewrite Fl_X11_Window_Driver::resize_after_screen_change() to call Fl_Window_Driver::resize_after_scale_change()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12362 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-28 07:46:33 +00:00
Manolo Gouy
bf033e7191 Remove temporary code used for development only.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12361 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-28 07:23:03 +00:00
Manolo Gouy
7bd24a428d IsIconic() is the adequate WINAPI function to detect a minimised window.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12360 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-27 15:11:33 +00:00
Manolo Gouy
4a85b82ffe Simpler initialisation of the 'scale' local variable in WndProc().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12359 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-27 14:48:27 +00:00
Manolo Gouy
3f572e327f Rename Fl_Window_Driver::in_resize_after_scale_change to 'is_a_rescale' which is more expressive.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12358 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-27 14:38:35 +00:00
Manolo Gouy
813bc06b19 Fix window iconize/deiconize when multiple screens with distinct scaling factors.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12357 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-27 08:30:20 +00:00
Albrecht Schlosser
6b24b20966 Fix confusing behavior of class Fl_Text_Selection.
Fl_Text_Selection got a new method length() and returns 0 in length()
and in all offsets (start(), end(), position()) if no text is selected
(selected() == false).

The behavior in FLTK 1.3 and earlier versions (returning undefined
values if !selected()) was confusing.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12356 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-26 12:32:13 +00:00
Manolo Gouy
4c999258f1 X11 platform, resize window when moved across screens: remove hide()/show() calls.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12355 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-26 07:45:59 +00:00
Manolo Gouy
5a8a2e1ee5 Remove virtual Fl_Window_Driver::reuse_icons() no longer useful after r.12349.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12351 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-25 15:28:43 +00:00
Manolo Gouy
9c47bc322c Remove Fl_Window_Driver::reuse_cursor() that is no longer used since commit r12349.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12350 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-25 11:31:19 +00:00
Manolo Gouy
225c3d6da3 Rewrite Fl_Window_Driver::resize_after_scale_change() removing calls to Fl_Window::hide() and Fl_Window::show().
Windows are now rescaled with a call to Fl_Window::resize() which has been slightly modified.
Static member variable bool Fl_Window_Driver::in_resize_after_scale_change is created,
and is true if and only if Fl_Window::resize() is called by Fl_Window_Driver::resize_after_scale_change().
This new flag allows Fl_Window::resize() to perform correctly the rescaling of the window.
Fl_Gl_Window::resize() and Fl_Double_Window::resize() also consult the value of
the Fl_Window_Driver::in_resize_after_scale_change flag.
The platform-specific Fl_WinAPI_Window_Driver::resize() and Fl_X11_Window_Driver::resize()
also use  the Fl_Window_Driver::in_resize_after_scale_change flag.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12349 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-25 10:57:24 +00:00
Manolo Gouy
2b529dc25d Remove useless statement.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12348 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-24 15:20:59 +00:00
Manolo Gouy
649a68dc0c Fix incorrect difference between branches 1.3 and 1.4 in an Fl_Overlay_Window constructor.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12347 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-24 06:32:26 +00:00
Albrecht Schlosser
a8c4f77d50 Improve docs of Fl_Widget::callback() and do_callback().
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-20 15:16:37 +00:00
Manolo Gouy
94c9d70f7c Make Fl_Widget_Surface::draw(Fl_Widget *wid, int, int) draw also the overlay if 'wid' is an Fl_Overlay_Window.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12343 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-20 11:04:59 +00:00
Manolo Gouy
ae2cc54519 Remove unnecessary local variable.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12342 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-20 09:25:49 +00:00
Manolo Gouy
e1972d2868 Remove Fl_Cocoa_Window_Driver::flush_double() because it is equal to Fl_Window_Driver::flush_double()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12341 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-20 08:54:01 +00:00
Manolo Gouy
4764b9bc2e Fl_Window_Driver::flush_single() needs not be a virtual member function.
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-20 08:10:45 +00:00
Manolo Gouy
864c7609c7 Remove unwanted difference in one Fl_Double_Window constructor between branches 1.3 and 1.4.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12339 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-19 16:19:15 +00:00
Manolo Gouy
cfe6e8e4b6 Simplify handling of the windowDidMove notification since MacOS 10.10
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12327 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-18 14:35:05 +00:00
Manolo Gouy
e9741d01f0 X11 platform: Fix bug in test/overlay where overlay is clipped when using button shortcuts.
In branch 1.3, file src/Fl_Overlay_Window.cxx, function Fl_Overlay_Window::flush(),
part of line 49 was not reproduced in branch 1.4.
This fix reproduces in branch 1.4 the equivalent of the code in branch 1.3.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12320 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-16 17:42:28 +00:00
Manolo Gouy
a74cca3219 Support of MacOS 10.13 to appear soon: fix handling of window moves in presence of subwindows.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12318 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-14 19:58:28 +00:00
Manolo Gouy
872406c871 FLDropTarget::DragEnter() replace call to Fl_Screen_Driver::get_mouse(int&, int&) by call to GetCursorPos(POINT*)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12317 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-14 06:56:20 +00:00
Manolo Gouy
196d0a73b4 Fix for STR#3390 Drop to FLTK widget fails when desktop is scaled - new solution.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12315 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-13 11:42:45 +00:00
Manolo Gouy
f84b9040f7 WIN32 platform: Fix drag-n-drop to FLTK widget when the desktop is scaled and FLTK_HIDPI_SUPPORT is not defined.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12308 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-11 17:19:25 +00:00
Manolo Gouy
9276dad42f End of fix for STR#3387 "Bug of timer implementation on macosx"
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12306 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-11 12:03:05 +00:00
Matthias Melcher
a8f4fbc2ef STR #2823.2/2: Improved Fl_Preferences "dirty" flag handling.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12305 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-07 21:00:17 +00:00
Matthias Melcher
7542e8cb16 STR #2823.1/2: avoiding setting "dirty" flag in a read operation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12304 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-07-07 20:34:28 +00:00