Commit Graph

7405 Commits

Author SHA1 Message Date
Manolo Gouy
fdee9dbf5d Have all Fl_Clock objects in a single FLTK app tick approximately at the same time.
Before this change, clocks can tick at any point within a second, so 2 clocks 
can appear to disagree on the time they give (by less than a second).
To see that, run the clock test program, icons one of the clocks,
and uniconize it just before the other clock will tick.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12188 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-07 17:04:31 +00:00
Manolo Gouy
c37744cde9 Add to Fl_System_Driver support for measuring time with split second resolution.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12187 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-07 16:58:13 +00:00
Albrecht Schlosser
3c375f3977 Fix tab alignment.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12186 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-07 00:20:26 +00:00
Albrecht Schlosser
18bb55545e Fl_Tabs: improve tab label drawing (STR #3075, STR #3076).
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-06 16:54:33 +00:00
Albrecht Schlosser
168979e6fb Simplify Fl_Tabs label drawing code (remove code duplication).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12184 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-05 14:52:10 +00:00
Albrecht Schlosser
843183478b Fix tab group positions.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12183 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-05 14:43:03 +00:00
Albrecht Schlosser
a804cbf366 Label alignment documentation clarifications.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12182 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-03-05 11:27:30 +00:00
Albrecht Schlosser
a60f99d4a1 Improve label alignment docs and border case implementations.
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-27 17:00:41 +00:00
Albrecht Schlosser
2d18660f5c Fix typo (case) in include file name.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12180 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-25 19:31:36 +00:00
Manolo Gouy
aa917d709c Avoid potential crash occurring after calling win->show(0,0)
See [fltk.general] Drawing to Fl_Offscreen received signal SIGSEGV, Segmentation fault.
that is unrelated to Fl_Offscreen but caused by calling win->show(0,0).

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12179 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-22 11:33:12 +00:00
Manolo Gouy
393e481756 Mac OS: remove unused members variables from platform-specific struct Fl_Window_Driver::shape_data_type
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12178 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-20 12:57:40 +00:00
Pierre Ossman
cebc3d71be Pre-multiply alpha on cursors on X11, as required by XRender.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12177 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-20 12:40:50 +00:00
Manolo Gouy
a2f22358cd Fix line wrap at word end when string widths are true double values (non integer).
Useful for rescaling that creates non-integer string widths.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12176 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-19 15:49:48 +00:00
Manolo Gouy
3ce40f3faf Reset offscreen surface when the window is hidden.
This is necessary for compatibility with rescaling, so line widths are also rescaled.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12175 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-19 15:42:31 +00:00
Manolo Gouy
9c6add4943 Fix typo
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12174 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-19 15:37:46 +00:00
Albrecht Schlosser
66cdcfcd1b Fluid: Fix platform-specific build system (CMake + configure).
Don't compile "empty" file (avoid warning: empty translation unit).
Add '-u' (update) command switch to 'make rebuild'.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12173 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-15 20:28:13 +00:00
Albrecht Schlosser
1e5826e84b Add radio buttons to unittests_schemes in 4th tab.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12172 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-11 16:39:19 +00:00
Albrecht Schlosser
16774ddc4e Rename test/help demo program to test/help_dialog.
This change avoids a name conflict with CMake's auto-generated target 'help'
for "Unix Makefiles", "Ninja", and supposedly other generators as well.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12171 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-08 02:06:52 +00:00
Albrecht Schlosser
759d2f1c99 Fix line number alignment in Fl_Text_Display/Editor (STR #3363).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12170 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-04 21:56:38 +00:00
Manolo Gouy
cbc5a4842d Incorporate the code of function handleUpdateEvent() in the unique code section which calls it.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12169 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-03 13:30:36 +00:00
Albrecht Schlosser
a21f16486a Fl_Text_Display documentation updates.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12168 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-01 18:36:23 +00:00
Manolo Gouy
e7356529bb Allow ESC to close window and don't transmit CTRL character to fl_draw()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12167 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-26 08:13:19 +00:00
Manolo Gouy
782d34fc8f MacOS: reduce the memory size of class gl_texture_fifo managing GL textures to draw strings under GL.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12166 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-24 12:53:33 +00:00
Manolo Gouy
c8fc8cc241 Allow resizable Fl_Gl_Window drawn using the Fl_OpenGL_Graphics_Driver
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12165 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-20 17:18:38 +00:00
Manolo Gouy
898d2580d3 Remove USE_OksiD_style_GL_font_selection preprocessor variable because it is equivalent to !USE_XFT
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12164 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-19 09:38:12 +00:00
Manolo Gouy
ebae29222d Fl_OpenGL_Graphics_Driver : use gl_font()/gl_draw() to draw text in a GL window - continued.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12163 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-10 17:21:14 +00:00
Manolo Gouy
723012c2bd Fl_OpenGL_Graphics_Driver : use gl_font()/gl_draw() to draw text in a GL window.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12162 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-10 15:33:14 +00:00
Manolo Gouy
0e22ca28dd Match glPushAttrib() with glPopAttrib()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12161 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-10 15:12:42 +00:00
Manolo Gouy
28f1bdd408 Remove useless #include directives
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12160 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-10 10:23:19 +00:00
Manolo Gouy
d589dcd127 Correct spelling error: Armeninian --> Armenian
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12159 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-08 17:35:52 +00:00
Albrecht Schlosser
69353b5b11 Add "lorem ipsum" text file in different languages and scripts.
This file can be used to test pango integration and potentially later
also right-to-left text editing which is currently not supported.

The image misc/lorem_ipsum.txt shows lorem_ipsum.txt in test/editor
built with pango under Linux (Ubuntu 14.04 LTS).


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12158 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-06 13:47:51 +00:00
Manolo Gouy
06924c37cb Add implementation explanatory comments about how the screen driver supports public function fl_read_image().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12157 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-04 07:44:31 +00:00
Manolo Gouy
06b98099f9 Documentation: drawing a scaled shared image no longer involves resizing the source image under MSWindows.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12156 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-01-02 09:48:23 +00:00
Albrecht Schlosser
3145e06585 Fix CMake config.h and compiler warnings.
Fixed warnings: -Wsign-compare, -Wunused-but-set-variable.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12155 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-23 15:40:25 +00:00
Albrecht Schlosser
60a9eee30d Fix inverted configure logic for option --enable-print.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12154 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-23 15:34:39 +00:00
Manolo Gouy
461750c38e X11 platform: Add optional use of the pango library to draw text, gaining the possibility to draw text in any script supported by Unicode.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12153 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-21 15:05:02 +00:00
Manolo Gouy
00ebcd23aa Fix Fl_Xlib_Graphics_Driver::delete_bitmask() : the pixmap argument is to be deleted by XFreePixmap().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12152 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-21 14:52:16 +00:00
Greg Ercolano
87f339249a Fix for Brain Davis' bug report in fltk.general on 12/20/16.
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-20 23:27:29 +00:00
Manolo Gouy
5a7f80c466 When targetting MacOS+X11, fltk-config should not bundle the executable.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12150 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-19 14:35:08 +00:00
Manolo Gouy
936486cb1c Handle non-ASCII characters when selecting a word or moving the cursor by one word.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12149 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-17 07:42:54 +00:00
Manolo Gouy
d0f6ef5d32 Improve Fl_Graphics_Driver::copy_offscreen() so it accepts an Fl_Offscreen argument even if not created by fl_create_offscreen().
With this, fl_copy_offscreen() can be used with any drawing surface (e.g., PostScript) and any Fl_Offscreen
argument (e.g., returned by Fl_image_Surface::offscreen()).

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12148 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-16 16:06:07 +00:00
Manolo Gouy
1fc01c7cbb Implement a platform-independent version of 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-14 18:54:12 +00:00
Manolo Gouy
6645a6b225 It is better to reset the line width after having finished to draw with a modified width.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12146 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-14 18:38:01 +00:00
Albrecht Schlosser
843aba4c68 Fix compiler warning [-Wsign-compare].
warning: comparison between signed and unsigned integer expressions


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12145 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-12 20:50:16 +00:00
Manolo Gouy
d17f17e606 The virtual function Fl_Graphics_Driver::copy_offscreen() cannot be implemented in a platform-independent way.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12144 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-12 18:20:26 +00:00
Manolo Gouy
d37f37e66e Mention Fl_Surface_Device::push_current(new_surface) and Fl_Surface_Device::pop_current().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12143 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-10 14:40:00 +00:00
Manolo Gouy
c33df704ab Doxygen: more detailed descriptions of Fl_Image_Surface::offscreen() and Fl_Image_Surface::get_offscreen_before_delete().
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12142 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-09 18:07:08 +00:00
Manolo Gouy
40f977ccce Simpler code path for a member function calling another member function of same class.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12141 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-09 09:48:56 +00:00
Manolo Gouy
43935dffeb Add static void Fl_Surface_Device::push_current(Fl_Surface_Device *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-07 15:09:52 +00:00
Matthias Melcher
0a1eed150a Fixed OS X SDL double buffering issue and mouse dragging.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12139 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-12-06 23:21:52 +00:00