all of the window title bar, when the program is linked with OS X 10.10.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10515 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
title bar buttons are drawn by the system instead of emulated by FLTK.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10510 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
by function gl_font() of file src/gl_draw.cxx (X11-specific).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10504 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
All changes are mac-specific, except a very minor change in file src/gl_draw.cxx
where string drawing wrongly claimed to support @symbol, not possible
because symbols are drawn using non-GL primitives.
Unchanged application code can use the new FLTK code.
In addition, the new code allows mac applications to draw OpenGL scenes
at high resolution on so-called 'retina' displays, but this requires some
support from app code. They must call, before opening GL windows,
Fl::use_high_resolution(1);
and change their glViewport() calls as follows
glViewport(0, 0, pxel_w(), pixel_h());
This uses 2 new member functions of the Fl_Gl_Window class,
pixel_w() and pixel_h() returning the window dimensions in pixel
units, that is, twice the w() and h() when the window is mapped
on a retina display.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10498 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Albrecht adds in comment #3: "These have been replaced by fl_make_path()
and fl_make_path_for_file() in src/fl_utf8.cxx."
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10491 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
With true subwindows, several members of Fl_X became useless.
This change recycle two of them for new uses:
- Fl_Region subRegion is used as a pointer to a CGRect
- Fl_X *xidChildren is used to indicate the resolution of the display
containing a window
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10486 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Case with high resolution parent window and low resolution GL window is now directly processed.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10485 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
because the windowDidMove notification is not always sent.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10484 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The new field bool Fl_X::mapped_to_retina is updated when needed, that is, when the window is moved.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10481 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Add one pair of braces for clarity, move some other braces and
else statements around. There's more to that, but these were
minimal changes to improve readability for solving STR #3043.
There are no real code changes involved though.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10474 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
On such displays, one drawing unit equals two pixels.
The fl_xyline() and fl_yxline() functions are modified to perform
extra operations when drawing to a window on a retina display.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10463 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This is useful (necessary) because in old (pre 1.1.6) which didn't have
Fl::delete_widget() users would have called 'delete window', which would
have hidden a window and destroyed it as well. Now the widget/window is
hidden immediately, whereas it is destroyed delayed, which comes much
closer to the previous behavior and is useful for better window close
detection in Mac OS X cmd-Q handling.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10456 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
window is just another window with Mac OS as it was already with MSWindows and X11.
This requires Mac OS X 10.2. Window nesting to any depth is possible.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10449 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
(OPENFILENAMEW and BROWSEINFOW). This forces any application program that uses
Fl_Native_File_Chooser to include file windows.h.
This is corrected by using in the Fl_Native_File_Chooser class pointers to the 2 structures.
The changes are protected by #if FLTK_ABI_VERSION >= 10304 for ABI compatibility.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10437 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Moreover, fl_read_image() behaves differently with and without OS virtualization for X11 and MSWindows.
The patched function reads whatever is in the rectangle transmitted in arguments, with and without GL data, with and without subwindows,
on ‘true’ OS or on virtualized OS.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10436 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Create classes FLWindowDelegateBefore10_6 and FLViewBefore10_6 to support text input before Mac OS 10.6
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10435 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Fixes a crash when a program calls take_focus() before any window has been show()n.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10434 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Hopefully this doesn't break Windows or Mac OX IDE builds, please help
testing.
Short story: these functions showed compatibility problems, lacked some
quality (regarding interruption by signals), and maybe more.
This is a combined commit that reverts three (3) svn commits. The following
lists are extracted from git, but show the svn revisions and files:
Remove Fl::*sleep() family, part 1: revert svn r 10287.
:100644 100644 a988702... 794920f... M ide/Xcode4/FLTK.xcodeproj/project.pbxproj
Remove Fl::*sleep() family, part 2: revert svn r 10151.
:100644 100644 cf839e6... bfde9c4... M ide/Xcode3/FLTK.xcodeproj/project.pbxproj
:100644 100644 794920f... c0c772a... M ide/Xcode4/FLTK.xcodeproj/project.pbxproj
Remove Fl::*sleep() family, part 2b: revert svn r 10151 (continued).
:100644 100644 bfde9c4... abf2922... M ide/Xcode3/FLTK.xcodeproj/project.pbxproj
Remove Fl::*sleep() family, part 3: revert svn r 10150.
:100644 100644 b469018... e76a3e5... M FL/Fl.H
:100644 100644 7bb7899... 4d4755d... M ide/VisualC2008/fltk.lib.vcproj
:100644 100644 9d9a2cf... 334aef8... M ide/VisualC2008/fltkdll.vcproj
:100644 100644 5533a54... e30058b... M ide/VisualC2010/fltk.lib.vcxproj
:100644 100644 e49f691... 1259c87... M ide/VisualC2010/fltk.lib.vcxproj.filters
:100644 100644 946f31a... d53ab80... M src/CMakeLists.txt
:100644 000000 fed36fd... 0000000... D src/Fl_sleep.cxx
:100644 100644 3d9656c... 3b265f9... M src/Makefile
:100644 100644 6eadbcb... 5dd5872... M test/sudoku.cxx
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10419 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The editor demo had grey lines between text lines and its cursor left traces behind
when moved. The scroll demo left some faint lines behind also.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10401 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Documentation changes in svn r10383 (STR #3014) said that this would skip
"space-separated" words, which is not true.
Note: The set of word separators is currently not documented, it is
inconsistent with Fl_Text_Display/Fl_Text_Editor, and not UTF-8-aware.
Also, word selection and the above methods use different word delimiters.
This should be fixed in a later release (after 1.3.3).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10394 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
In fact this warning is a false positive, but fixed anyway.
Warning was: x, y may be used uninitialized (or similar).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10391 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
as quickly as possible or we might miss important window
messages.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10387 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Moved docs from header file and enhanced docs, particularly about the
resizable() widget and the resize behavior in general.
Changed the tile demo program to use a resizable() with 20 pixels
border distance, so that border dragging is limited as described in the
docs. Updated the image file to reflect the current test/tile.cxx demo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10385 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Thanks to Evan Laforge for spotting this and supplying a patch.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10383 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
char Fl_Preferences::RootNode::getPath( char *path, int pathlen )
so that it returns a (1), rather than a (-1) in the case that
RUNTIME preferences are being read.
This is for several reasons:
- On some platforms, char is unsigned, so a method that is spec'd to
return a char type can not safely return (-1) as a value.
- It seems like (most?) other fltk methods that return
char true/false results return 0 or 1, so this is more consistent.
Thanks to Michael Baeuerle for spotting this one.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10378 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
See also discussion in fltk.coredev of Sept 07, 2014 and later
with subject "Fixing the nearest-neighbour scaling".
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10377 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
on Windows. This is necessary because Windows doesn't implicitly
clean up when a process dies, and we cannot trust applications to
always explicitly unregister.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10367 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
more explicit. Otherwise we could end up with
Fl::remove_clipboard_notify() unregistering, just to have it
immediately re-register again.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10364 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
There had been manual changes in fluid-generated files, so the .fl files
had to be adjusted and updated to fltk 1.3.3.
Note that fluid SHOULD generate 'const' data for embedded images, but
doesn't yet, so I had to re-edit src/Fl_File_Chooser.cxx to keep the
previous 'const' changes in this file.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10357 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
All fluid .fl files have been rewritten with fluid 1.3.3 and may differ
somehow, but there are no significant changes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10353 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Also modified .gitignore, svn-properties, Makefile and CMake-Files.
Todo: test/twowin.cxx and test/windowfocus.cxx need to be added to ide files
(MS VC++ and Xcode).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10339 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
that gives a non-rectangular shape to a standard window. The benefit is that it works with Fl_Double_Window and Fl_Menu_Window as well.
It also works for free with Fl_Gl_Window on the X11 platform only.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10325 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This needs to be done from FLTK as it affects the window interaction,
which FLTK is largely responsible for.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10314 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
fatal() if it cannot be loaded and is hence already required.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10311 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This gives applications the means to handle some low level
integration with the system that might otherwise not be possible
without modifying FLTK itself.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10310 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
with the double calls to PeekMessage() and the extra if clause.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10309 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
reproduciable, and the change causes the wrong symbol to be
generated for Ctrl-minus. STR 264.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10303 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
VisualC project files still need to be changed accordingly.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10291 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Probably temporary if this will be replaced with Roman's int version, but
better have it anyway.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10281 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
of 'above' and 'below' when referring to items instead
of index positions.
Small offsets needed due to how the arrays are scrolled
after a move operation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10272 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Added to assist cand for his patch to solve RFE STR #2828 option (I).
o Add move() methods to Fl_Tree_Item.
o Add deparent()/reparent() methods
o Supporting methods added to Fl_Tree_Item_Array, and enhancement
to update_prev_next() to allow -1 option to create an orphan item
Added to Fl_Tree_Item:
* Fl_Tree_Item* deparent(int pos)
* int reparent(Fl_Tree_Item *newchild, int pos)
* int move(int to, int from)
* int move(Fl_Tree_Item *item, int op, int pos)
* int move_above(Fl_Tree_Item *item)
* int move_below(Fl_Tree_Item *item)
* int move_into(Fl_Tree_Item *item, int pos)
Added to Fl_Tree_Item_Array:
* int move(int to, int from)
* int deparent(int pos)
* int reparent(Fl_Tree_Item *item, Fl_Tree_Item* newparent, int pos)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10271 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
After consulting Gimp again, the formula was missing a final divide. This
takes care of the 1:1 discrepancy.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10270 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The unused function was commented out about 6 months ago, see
svn r 10123. No changes other than comments and white space.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10265 ea41ed52-d2ee-0310-a9c1-e6b18d33e121