- set_menu_window() to mark a window as a menu window
- set_tooltip_window() to mark a window as a tooltip window
and the corresponding get methods:
- menu_window()
- tooltip_window().
This is a first step for providing more information for correct parenting
and properties to support modern (X) window managers (STR #2230).
Please see also the information in fltk.development:
http://www.fltk.org/newsgroups.php?gfltk.development+v:8003
ToDo: Another point is to be able to handle menu windows and popup windows
that are opened while a menu is active properly (will follow later).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6841 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This one was really tough to track, understand:
In fact,
the problem was comming from the misplacement of the menu window,
which itself came from invalid measurement,
which itself came from invalid fl_witdh() measurement,
but only when fl_gc is not valid because fl_width() relies on Win32 on the call
of GetTextExtentPoint32W which can't succeed if the HDC(here fl_gc) is not valid !
Now the fix:
A best-effort algorithm has been furthered to supply a valid fltk hdc if we can have one or a screen hdc if no fltk window is found by fl::first_window().
Note that when fl_gc is NULL inside fl_width() call, it can happen that Fl_Window::current() is not null but invalid (already deleted).
Finally, in the case of the buggy menu window observed here, this fl_gc was set to NULL just after an Fl_Menu_Window deletion and re-creation in Fl_Menu_Item::pulldown().
Also added a comment to describe the new fl_width() behavior.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6540 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Fixed popup menus that would not stay popped up when clicke once and the first item was disabled.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5655 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
and I also fixed the radio button offset for the plastic scheme.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5506 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This is an extension of the original patch which would file on selecting menu titles, or returning to the previous menu window inside a menu hierarchy.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4866 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
There are two exceptions:
Menus that have a selected item will not be modified, so the selected item is visible. Hence an Fl_Choice will never have a 'fixed' menu.
If putting the menu high would intersect the top frame of the screen, we leave the menu at the bottom.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4584 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Now use new screen_xywh() API for keeping things on the current screen.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4227 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
src/fl_draw.cxx:
- fl_measure(): use "h" instead of "min(w,h)", since "w" is
usually 0.
src/Fl_Menu.cxx:
- Revert previous "fix" in Fl_Menu_Item::measure()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4070 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
src/Fl_Menu.cxx:
- Fl_Menu_Item::measure() - initialize w and h to label font
size so that the symbol size is calculated properly.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4066 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
jump to the main screen. Very few extremes do not work 100%, but
that would require much more information in the menu calls.
Nothing to worry about.
Anyway, jumping menus are fixed on the Mac.
Linux and Windows may require similar solutions, however, setups
with two different screen size are rare on those systems.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3914 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Added DESTDIR support and now remove all man pages for the
"uninstall" target (STR #545)
Fix PNG drawing on buggy WIN32 graphics cards (STR #548)
The configure script didn't propagate the CPPFLAGS environment
variable (STR #549)
The numpad keys didn't work properly on WIN32 (STR #502)
fl_input() and friends now set the input focus to the text field
when the dialog is shown (STR #553)
Fixed background color mixup when drawing Fl_Choice menus (STR
#544)
Fixed MingW makefiles (STR #550)
More VC++ project file tweaking (STR #559)
Fl_PNG_Image didn't use the png_set_trns_to_alpha function when
available (STR #547)
The FL_UNFOCUS event wasn't always sent when switching tabs (STR
#558)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3868 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Fl_File_Chooser did not handle some cases for filename
completion (STR #376)
Fl_Help_View didn't properly compute the default maximum width
of the page properly, resulting in non-wrapped text in table
cells (STR #464)
Fl_Text_Editor no longer tries to emulate the Emacs CTRL-A
shortcut to move to the first column, since there is a key for
that and the widget does not emulate any other Emacs keys (STR
#421)
Fl_File_Chooser always disabled the OK button when the user
pressed DELETE or BACKSPACE (STR #397)
Added Fl_Browser::swap() methods (STR #459)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3698 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
I added the function Fl_Menu_Item::first() whi returns the first visible
menuitem, just like ::next() returns the next visible item, and added the
::first() call in the Menu code.
first() is an inline function that calls next(0). I updated next() to
correctly handle list where the current item is invisible.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3448 ea41ed52-d2ee-0310-a9c1-e6b18d33e121