mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-02-03 12:59:33 +00:00
(svn r15867) -Codechange: remove the assumption that the first widgets are the close box/title bar.
Most work already done by r15756.
This commit is contained in:
parent
4a4ee9fb37
commit
ed330197c4
@ -285,7 +285,7 @@ static void DispatchLeftClickEvent(Window *w, int x, int y, bool double_click)
|
||||
/* If clicked on a window that previously did dot have focus */
|
||||
if (_focused_window != w &&
|
||||
(w->desc_flags & WDF_NO_FOCUS) == 0 && // Don't lose focus to toolbars
|
||||
!(w->desc_flags & WDF_STD_BTN && widget == 0)) { // Don't change focused window if 'X' (close button) was clicked
|
||||
!(w->desc_flags & WDF_STD_BTN && w->widget[widget].type == WWT_CLOSEBOX)) { // Don't change focused window if 'X' (close button) was clicked
|
||||
focused_widget_changed = true;
|
||||
if (_focused_window != NULL) {
|
||||
_focused_window->OnFocusLost();
|
||||
@ -348,12 +348,12 @@ static void DispatchLeftClickEvent(Window *w, int x, int y, bool double_click)
|
||||
if (HideDropDownMenu(w) == widget) return;
|
||||
|
||||
if (w->desc_flags & WDF_STD_BTN) {
|
||||
if (widget == 0) { // 'X'
|
||||
if (w->widget[widget].type == WWT_CLOSEBOX) { // 'X'
|
||||
delete w;
|
||||
return;
|
||||
}
|
||||
|
||||
if (widget == 1) { // 'Title bar'
|
||||
if (w->widget[widget].type == WWT_CAPTION) { // 'Title bar'
|
||||
StartWindowDrag(w);
|
||||
return;
|
||||
}
|
||||
|
@ -69,11 +69,11 @@ struct WindowDesc : ZeroedMemoryAllocator {
|
||||
enum WindowDefaultFlag {
|
||||
WDF_STD_TOOLTIPS = 1 << 0, ///< use standard routine when displaying tooltips
|
||||
WDF_DEF_WIDGET = 1 << 1, ///< Default widget control for some widgets in the on click event, @see DispatchLeftClickEvent()
|
||||
WDF_STD_BTN = 1 << 2, ///< Default handling for close and titlebar widgets (widget no 0 and 1)
|
||||
WDF_STD_BTN = 1 << 2, ///< Default handling for close and titlebar widgets (the widgets with type WWT_CLOSEBOX and WWT_CAPTION).
|
||||
WDF_CONSTRUCTION = 1 << 3, ///< This window is used for construction; close it whenever changing company.
|
||||
|
||||
WDF_UNCLICK_BUTTONS = 1 << 4, ///< Unclick buttons when the window event times out
|
||||
WDF_STICKY_BUTTON = 1 << 5, ///< Set window to sticky mode; they are not closed unless closed with 'X' (widget 2)
|
||||
WDF_STICKY_BUTTON = 1 << 5, ///< Set window to sticky mode; they are not closed unless closed with 'X' (widget with type WWT_STICKYBOX).
|
||||
WDF_RESIZABLE = 1 << 6, ///< Window can be resized
|
||||
WDF_MODAL = 1 << 7, ///< The window is a modal child of some other window, meaning the parent is 'inactive'
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user