Commit Graph

4841 Commits

Author SHA1 Message Date
Manolo Gouy
2c42334c55 Fix STR #2620. Obeys the tab distance value set by Fl_Text_Buffer::tab_distance(int).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8640 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-05-06 18:15:29 +00:00
Manolo Gouy
26f81a4834 Fix STR #2613. Allows a menu item to be invisible but with functional shortcut
as authorized by the doc.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8639 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-05-06 16:29:16 +00:00
Greg Ercolano
3110a13aa2 Modified tree-simple to demonstrate specifying front+back slashes in tree.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8635 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-05-06 04:27:49 +00:00
Greg Ercolano
6871a6512a Fl_Tree mods for handling escaped item menu names.
Docs clarified.
Also, tree-simple example's callback handler brought up to date.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8632 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-05-04 02:59:50 +00:00
Manolo Gouy
14839338ec Fix STR #2616. This is a very indirect consequence of the fix made for STR #2594
that allowed to set the focus to an Fl_Window.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8631 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-05-01 20:02:47 +00:00
Albrecht Schlosser
428008c276 Fixed drawing artifacts when scrolling round boxes (FL_ROUND_UP_BOX and
FL_ROUND_DOWN_BOX) on Linux (STR #2615). This was done by

 (a) setting the line width in the box drawing function (was undefined, maybe 0)
 (b) taking care of zero and negative line width in X11 clipping functions.

Both solutions would have solved the particular problem individually.

Additionally made local helper function fl_arc_i() in src/fl_round_box.cxx
static to avoid name clashes.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8630 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-05-01 12:45:29 +00:00
Ian MacArthur
6c9d1f7840 Modify the utf8 test demo code to handle surrogate pairs.
It was hard coded to cover the range 0 to 0xFFFF, i.e. the
Basic multilingual plane, even though the demo code allowed
any start index, for any plane, to be entered on the CLI...
As a result, attempts to view supplemental planes were always
just folded back into the BMP.
This change makes the code display the 64K Unicode points
starting at the index given on the CLI, so that the 
supplemental planes *can* now be viewed and tested.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8629 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-05-01 12:24:22 +00:00
Manolo Gouy
ae8d142ed0 Corrected spurious FL_NUMLOCK setting.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8628 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-29 20:25:04 +00:00
Manolo Gouy
73a6f06c34 Reorganized keyboard input-handling code.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8626 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-27 11:21:57 +00:00
Manolo Gouy
0f5ea9a2e2 Fix STR #2612: added missing #include <X11/keysym.h>
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8625 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-27 08:47:00 +00:00
Manolo Gouy
5be46ea4ad Added function keys F13 - F16 and corrected backslash key.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8624 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-26 17:28:10 +00:00
Albrecht Schlosser
3b76848435 Documentation updates, also fixing STR #2574, trying to make clear
which events invisible and inactive widgets can get.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8623 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-24 17:09:41 +00:00
Manolo Gouy
89be9d5e04 Fix STR #2596: Fluid generated improper callback member functions for
Fl_Menu_Item's in widget classes. Fixed with OP's patch.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8622 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-24 16:25:09 +00:00
Albrecht Schlosser
06e17886ed Documentation fixes and a few indent corrections.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8621 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-23 15:46:30 +00:00
Albrecht Schlosser
5c6913fed9 Fixed potential uninitialized pointer usage.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8620 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-23 12:27:58 +00:00
Manolo Gouy
65b9610a96 Mac OS: exact implementation of the Fl::screen_dpi() function.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8619 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-22 17:30:37 +00:00
Manolo Gouy
239489c4b8 Fix STR #2608: the bug had been introduced by r.8552 to solve STR #2598.
The new code makes the STR #2598 changes unix-specific so it does not
interact with the WIN32 platform.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8618 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-22 11:00:06 +00:00
Albrecht Schlosser
0f20c065ce Fixed keyboard navigation in fl_choice() (STR #2591)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-20 14:54:42 +00:00
Albrecht Schlosser
08b93ec972 Reverted changes done in svn r 7788 for STR #2420 ("Tab-Navigation focuses
non-active_r() widgets"). This must be investigated further, and if necessary,
solved differently. STR #2420 will be reopened...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8615 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-20 14:34:53 +00:00
Albrecht Schlosser
85a3534ee3 Updated dependencies.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8612 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-20 14:03:22 +00:00
Albrecht Schlosser
18628d428b Fixed alpha blending under X11 when line data size != 0 (STR #2606)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8611 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-20 14:01:04 +00:00
Albrecht Schlosser
2999acc1bb Added some test parameters for fine tuning of image tests. These parameters
are implemented as compiler macros and can only be edited manually to test
different implementation details.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8609 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-20 13:38:28 +00:00
Manolo Gouy
ad50b753be Added fallback mechanism if malformed UTF-8 is used for a window title.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8608 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-19 12:37:20 +00:00
Manolo Gouy
d4685c13ef Misc code cleaning.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8607 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-19 08:22:05 +00:00
Manolo Gouy
1ad8cf320d Fixed a problem in the WIN32 version of Fl_Paged_Device::print_window_part() and
Fl_Paged_Device::print_window() where the window didn't redraw well in some
cases after printing.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8606 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-18 20:47:32 +00:00
Ian MacArthur
451b91ea46 OK - this time I actually think I have got it.
The win32 text-extents stuff now seems to be handling surrogate pairs correctly,
at least in my testing harness, and with a variety of supplementary plane fonts.

I really will leave this alone now - unless anyone finds bugs of course!

I have tested for regressions and it seems to be fine AFAICT.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8605 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-18 14:34:20 +00:00
Manolo Gouy
aa930a6d21 Fix STR #2603: deselected menu item when mouse enters menu bar out from any menu title.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8604 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-18 13:05:08 +00:00
Manolo Gouy
b51f47c437 Fix STR #2605: proper mapping of the Windows key.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8603 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-18 11:45:46 +00:00
Manolo Gouy
f763b4b709 Use adequate shortcut for "New View" on the Mac platform.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8602 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-18 11:29:30 +00:00
Manolo Gouy
619cb25982 Mac OS: The Fl_mac.cxx test
if (winclass != kHelpWindowClass)
is now replaced in Fl_cocoa.mm by its exact equivalent:
  if ( w->border() || (!w->modal() && !w->tooltip_window()) )
so that tooltip windows are handled as in carbon.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8601 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-18 08:18:16 +00:00
Ian MacArthur
ac5d865986 This WIN32 patch introduces a credible (though far from ideal)
workaround for text_extents being measured on glyphs from
supplementary Unicode planes.
It has no effect on glyphs from the Basic plane, so should not
be visible at all to most code.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8600 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-17 21:19:14 +00:00
Manolo Gouy
8f59684c0f Mac OS: Fixed bug where an application could be left with only a tooltip window opened.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8599 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-17 19:58:31 +00:00
Ian MacArthur
d77223ea58 A quick hack to prevent the OSX tooltip-crash on
badly formed UTF8 strings.

This probably is not the best solution, but it
does work.
Note that the problem actually seems to be in
setting the window title, and indeed if you try to
label ANY window with a badly formed UTF8 string
(not just a tooltip) you get the same exception
thrown.

NOTE: I'm not even sure why we try to set the 
window title in tooltips, as it is never used 
and the tooltip label itlsef still works fine.

Anyway, we can do something better, but this will
work for now.

Aside: If you close an app on OSX whilst a tooltip
is visible, the app will not exit, as there is still
a window open (the tooltip) but no way to cancel
the tooltip.

Don't know if this is OSX specific or not though
but it is certainly a bug.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8598 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-17 14:39:16 +00:00
Ian MacArthur
e67e628317 I've extended Manolo's excellent tweaks that handle surrogate pairs.
I found some kind of weird interaction with some symbol fonts that
covered the supplementary planes that meant we could not measure
the width correctly (although we did measure the text extents correctly.)

This mod mirrors what we do for non-surrogate-pair glyphs more
closely and appears to do the Righ Thing now, at least for the test fonts that I have, and which were exhibiting the aberrant behaviour before.

I don't think I have broken anything else in the meantime!

 


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8597 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-17 13:18:55 +00:00
Manolo Gouy
f8d1e074ed Made Fl_Quartz_Graphics_Driver::text_extents() resistant to mal-formed UTF-8 text.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8596 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-17 11:19:41 +00:00
Manolo Gouy
ddc4b21b55 Fixed Fl_Paged_Device::print_window() that did not work under Windows seven.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8595 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-17 08:48:40 +00:00
Manolo Gouy
8212e4bfe7 Corrected gl.h instead of gl.H
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8594 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-15 21:41:34 +00:00
Manolo Gouy
9ff9cf1230 Added Fl_Paged_Device::print_window() to print a window with its title bar and frame.
Added Fl_Window::decorated_w() and Fl_Window::decorated_h() that return the size
of a window with its title bar and frame.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8593 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-15 21:38:05 +00:00
Manolo Gouy
c473215f2a Corrected typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8592 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-14 13:22:13 +00:00
Manolo Gouy
8d2d3c2a7d Corrected typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8591 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-14 13:21:12 +00:00
Manolo Gouy
2af958422a Corrected typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8590 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-14 13:16:03 +00:00
Manolo Gouy
8c6aa5edb5 Corrected typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8589 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-14 13:15:13 +00:00
Manolo Gouy
3f984b0b86 Corrected typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8588 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-14 13:11:34 +00:00
Manolo Gouy
73a57f8ac8 Corrected typo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8587 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-14 13:04:57 +00:00
Manolo Gouy
f7c2061f0c Improved the accuracy of clipping when printing on Mac OS.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8586 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-13 20:50:41 +00:00
Ian MacArthur
be6df55717 More attempts to clean up WIN32 handling of UTF16 surrogate pairs.
In particular, I have added a new function to src/fl_utf.c called fl_ucs_to_Utf16() which
converts a single 32-bit Unicode value into one (or more) UTF16 cells.

This is needed in the win32 char-by-char text width() logic, and I suspect may also be useful in the OSX code in some places.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8585 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-13 15:43:22 +00:00
Manolo Gouy
639ee4fbab Now sends FL_HIDE/FL_SHOW events when window is iconized/un-iconized.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8584 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-13 09:03:19 +00:00
Manolo Gouy
404a7c1bad Restores change made in r.8557 that blocked system menu shortcuts.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8583 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-12 20:15:10 +00:00
Ian MacArthur
1d988db2db Under win32, text_extents() is not handling surrogate pairs either, at least on XP.
The problem seems to be in GetGlyphIndicesW() which is returning invalid indices for the surrogate pairs.
This causes subsequent measurements of the glyphs to fail, of course.

This patch does not fix the problem, it only makes sure it fails cleanly, causing a fallback to the default fl_measure like behaviour.
This is not nice, nor what I want, but at least it is consistent for now...



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8582 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-12 16:18:42 +00:00
Manolo Gouy
8b026342dd Following STR #2583, the behaviour of fl_draw_image() with d = 4 on Mac OS is here
made consistent with other platforms, that is, the 4th byte of each pixel is ignored
instead of treated as transparency data.
In the future, the fl_draw_image() signature may be extended with another argument
that would describe if and how transparency information is available.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8581 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-04-12 11:38:43 +00:00