Commit Graph

178 Commits

Author SHA1 Message Date
rubidium42 6bca9e090d Codechange: add SetDParamStr that accepts std::string& 2021-05-06 21:45:36 +02:00
Peter Nelson 4791ff2862 Fix: Recalculate padding and minimum sizes when GUI or Font zoom is changed. 2021-04-30 17:08:15 +01:00
glx22 14e92bd8e2 Codechange: Replace window related FOR_ALL with range-based for loops 2021-04-29 21:08:24 +02:00
PeterN ae7f07de74
Fix: Incorrect vertical alignment of icon and text in DropDownListIconItem. (#9133)
This happens if the bounding dimensions are changed so that each item is the same size, as happens on the railtype/roadtype dropdown lists, as the vertical offset was calculated before this dimension is changed.
2021-04-28 22:32:43 +01:00
Charles Pigott 9b800a96ed
Codechange: Remove min/max functions in favour of STL variants (#8502) 2021-01-08 11:16:18 +01:00
Michael Lutz a49fdb7ebb Codechange: Store base set related texts in std::strings. 2020-05-21 20:02:34 +02:00
S. D. Cloudt 13cc8a0cee Cleanup: Removed SVN headers 2019-11-10 17:59:20 +00:00
Henry Wilson 7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
glx22 3b4f224c0b
Fix #7494: std::sort() and qsort() use different comparators (#7495) 2019-04-10 20:55:53 +02:00
Michael Lutz c7b9987d08 Codechange: Switch DropDownList to directly use std::vector, thus making AutoDeleteSmallVector obsolete.
DropDownListItem are strongly managed using std::unique_ptr to ensure leak-free handling. Appropriate use
of move-semantics make intent a lot clearer than parameter comments and allows the compiler to generate
copy-free code for most situations.
2019-04-09 22:45:15 +02:00
glx22 66dd7c3879
Fix: MSVC warnings (#7423) 2019-03-28 00:09:33 +01:00
Henry Wilson ab711e6942 Codechange: Replaced SmallVector::[Begin|End]() with std alternatives 2019-03-26 20:15:57 +00:00
Henry Wilson a0f36a50e6 Codechange: Replaced SmallVector::Append() with std::vector::[push|emplace]_back() 2019-03-26 20:15:57 +00:00
Henry Wilson a690936ed7 Codechange: Replace SmallVector::Length() with std::vector::size() 2019-03-26 20:15:57 +00:00
peter1138 b56ea5ca27 Add: Generic drop down list string item with icon. 2019-03-10 10:31:37 +00:00
peter1138 811bf22620 Codechange: Use Colours type instead of byte. 2019-03-10 09:20:11 +00:00
J0an Josep 628af2fabc Fix #6060: When opening a scrollable dropdown above a widget, scroll it to its very bottom.
This "prevents" the fast movement towards the bottom when holding down the mouse button.
2019-01-20 21:43:00 +00:00
Juanjo 226dbcb422 Codechange #6060: Allow drawing dropdown lists with scrollbars above the widgets 2019-01-20 21:43:00 +00:00
PeterN 5ff0c24993 Fix #6780: Some windows didn't get updated from OnTick() (#7048) 2019-01-12 23:23:23 +00:00
Charles Pigott f5b1115039 Doc: Lots and lots of doxymentation fixes 2018-10-31 12:35:54 +01:00
peter1138 902663176d (svn r27820) -Fix: Allow dropdown to be drawn above origin widget even with scrollbar (Juanjo) 2017-03-23 20:07:59 +00:00
michi_cc 2b8bb12d62 (svn r27381) -Fix: Warnings due to C++11 requirements for explicit narrowing conversions in initializer lists. 2015-08-10 20:24:13 +00:00
frosch c9114af706 (svn r27131) -Fix: Dropdown- and tooltip-windows should not steal the focus. 2015-02-01 12:23:39 +00:00
frosch 925fb7bd37 (svn r26691) -Codechange: Simplify ShowDropDownListAt (Juanjo) 2014-07-16 20:38:36 +00:00
frosch d7736e3797 (svn r26680) -Codechange: Simplify dropdown height computation. (Juanjo) 2014-07-08 20:07:50 +00:00
frosch 06b210ff42 (svn r26629) -Fix [FS#6012]: If the video driver fails to supply a list of resolutions, display an error message. 2014-06-05 17:14:16 +00:00
rubidium 0463dbdc9e (svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values 2014-04-23 20:13:33 +00:00
rubidium b1bcd1adab (svn r26128) -Fix: erroneous cast 2013-11-26 15:12:54 +00:00
rubidium 50fdf5e30c (svn r26121) -Codechange: add some asserts after dynamic casts to show they shouldn't return NULL ever 2013-11-26 13:21:25 +00:00
rubidium 83eeba28b7 (svn r26086) -Codechange: use AutoDeleteSmallVector instead std::list for dropdowns 2013-11-24 14:46:26 +00:00
planetmaker 276c41ee1d (svn r25828) -Doc [FS#5785]: Description of parameters for ShowDropDownMenu was partially swapped (3298) 2013-10-11 15:41:55 +00:00
frosch 8157a8afd8 (svn r25290) -Add: Assign string names to notable windows. 2013-05-26 19:25:01 +00:00
frosch 56e4a8c4d6 (svn r25287) -Codechange: Keep a reference to the WindowDesc in the Window after construction. 2013-05-26 19:23:42 +00:00
planetmaker c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 2013-01-08 22:46:42 +00:00
frosch 88fff21b93 (svn r24308) -Add: ShowDropDownListAt() for drawing dropdown windows independent of dropdown widgets. 2012-06-01 10:43:50 +00:00
frosch 6207a6017f (svn r24307) -Codechange: Move all interaction of the dropdown window with widgets of the parent window to a method of the parent window. 2012-06-01 10:42:46 +00:00
michi_cc 6a70abbd99 (svn r24136) -Feature [FS#4465]: Autoreplace vehicles only when they get old. (Vikthor) 2012-04-17 19:44:02 +00:00
alberth 4af8c2d5e1 (svn r23704) -Doc: Doxygen comment fixes and additions. 2012-01-01 17:22:32 +00:00
truebrain e9f584ac21 (svn r23531) -Codechange: document and rename widgets to be consistent and understandable 2011-12-16 16:27:45 +00:00
truebrain 2aa774e831 (svn r23528) -Codechange: move widget enums to widgets/NNN_type.h 2011-12-15 22:22:55 +00:00
truebrain df0afdf0dc (svn r23525) -Codechange: make Window::flags4 WindowFlags instead of uint16, with only values known in WindowFlags (and move out 2 timers to their own variable)
-Codechange: rename Window::flags4 to Window::flags
-Codechange: move some non-inline functions from .hpp to .cpp
2011-12-15 19:54:23 +00:00
peter1138 30d9de9db5 (svn r23018) -Fix (r14004): Pass bottom of dropdown item rather than bottom of dropdown window. 2011-10-11 13:13:20 +00:00
peter1138 50d1541270 (svn r23017) -Codechange: Add support for resized scrollbars. 2011-10-11 08:07:47 +00:00
yexo ad232bd497 (svn r22932) -Fix [FS#4766]: disable the white border on window creation for several windows (based on patch by monoid) 2011-09-15 13:26:27 +00:00
frosch 5e449b8fae (svn r22429) -Add: some constants for specific palette colours used in the GUI. 2011-05-06 21:13:29 +00:00
frosch 22286bd7b6 (svn r22421) -Fix: Replace various references to Windows palette greyscale indices with the DOS palette indices. 2011-05-04 17:45:16 +00:00
rubidium 46c242b1dc (svn r22385) -Fix [FS#4603]: strnatcmp is in string.cpp, so it ought to be declared in string_func.h. 2011-04-30 14:24:23 +00:00
frosch ea1ca5bf1e (svn r22311) -Add: DropDownListStringItem::NatSortFunc() which can be used as comparator function in DropDownList::sort(). 2011-04-10 15:01:14 +00:00
frosch 18f0add50a (svn r22310) -Codechange: Derive DropDownListCharStringItem from DropDownListStringItem. 2011-04-10 14:56:14 +00:00
alberth f5c6fd1a25 (svn r21331) -Codechange: Make drawing the widgets default behaviour in OnPaint(). 2010-11-26 15:22:18 +00:00
rubidium 30637a8340 (svn r21157) -Codechange: remove information about the text direction out of the language "list" 2010-11-13 09:56:25 +00:00
frosch d01e275a25 (svn r21031) -Fix (r19883): Dropdown menu glitched in small screenshots, when issueing them from the menu. 2010-10-24 20:23:45 +00:00
frosch 28048826f8 (svn r20466) -Codechange: USe NWID_SELECTION to hide the scrollbar in dropdowns. 2010-08-12 11:53:11 +00:00
frosch 9e538acc03 (svn r20461) -Codechange: Replace WWT_HSCROLLBAR, WWT_SCROLLBAR and WWT_SCROLL2BAR with NWID_HSCROLLBAR and NWID_VSCROLLBAR. 2010-08-12 09:16:43 +00:00
frosch 71ca58c2bb (svn r20453) -Codechange: Remove direct accesses to Window::hscroll, vscroll and vscroll2.
Note: All windows get individual members with the same names, which are initialised via Window::GetScrollbar(). This caching is not required at all, but simplifies conversion.
2010-08-12 08:37:01 +00:00
frosch 10339c60c0 (svn r20452) -Codechange: Remove NWidgetCore::FindScrollbar() and associate scrollbar explicitly using a NWidgetPart via SetScrollbar(). 2010-08-12 06:44:45 +00:00
frosch ed4f806f1d (svn r20283) -Codechange: Unify start of doygen comments. 2010-08-01 19:22:34 +00:00
rubidium 5e4ec72ce6 (svn r19883) -Fix [FS#3812]: dropdowns did affect positioning of new windows because they were not yet removed when the new windows were positioned 2010-05-22 19:04:56 +00:00
frosch 88019e64e1 (svn r18966) -Codechange: Remove Window::OnDoubleClick() in favour of a parameter for OnClick(). 2010-01-30 18:34:48 +00:00
peter1138 07b285c5ca (svn r18932) -Codechange: Don't constantly redraw drop drop list. 2010-01-28 02:30:59 +00:00
rubidium 82fc28f77f (svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header 2010-01-15 16:41:15 +00:00
rubidium b00a5f1069 (svn r18330) -Cleanup: remove some unneeded includes 2009-11-28 20:35:25 +00:00
rubidium 293dfd7c3e (svn r18322) -Codechange: remove the WDP duplication; no need to tell the same twice. 2009-11-28 14:42:35 +00:00
rubidium b58b058e2b (svn r18321) -Fix [FS#3331]: make the toolbars also calculate their top location based on the main toolbar's height instead of hardcoding that 2009-11-28 14:36:43 +00:00
frosch a37ca47882 (svn r18305) -Codechange: Replace some 2s with WD_FRAMERECT_(LEFT|RIGHT). 2009-11-27 16:18:03 +00:00
rubidium 69b6d9309a (svn r18274) -Codechange: remove the unused WDF flags 2009-11-24 17:28:29 +00:00
rubidium 30f7483f9c (svn r18188) -Codechange: s/NWID_BUTTON_DRPDOWN/NWID_BUTTON_DROPDOWN/g 2009-11-19 18:01:24 +00:00
rubidium 76a5f4f8cd (svn r18164) -Change: make dropdown 'right' align to the opening widget with RTL 2009-11-18 12:31:09 +00:00
rubidium 5f2ddfbc5a (svn r18152) -Codechange: remove the 'minimum window size' from the WindowDesc; it's determined from the (nested) widgets 2009-11-17 19:16:48 +00:00
rubidium aeb9f8e715 (svn r18092) -Codechange: remove support for the unnested widgets 2009-11-15 13:36:30 +00:00
rubidium 3d2d7af88f (svn r18086) -Codechange: remove 'widget' from WindowDesc 2009-11-15 10:26:01 +00:00
alberth c341673cd5 (svn r17998) -Fix (r17994): Use a consistent item list width. 2009-11-07 17:45:49 +00:00
alberth 0bc03c25f4 (svn r17997) -Codechange: Introduce functions for querying top and bottom of the main view. 2009-11-07 17:24:04 +00:00
alberth 3ae1b98d3a (svn r17994) -Codechange: Make the dropdown menu window use pure nested widgets. 2009-11-07 14:40:37 +00:00
alberth d03bf874fc (svn r17993) -Codechange: Move widget and data initialization into the dropdown menu class. 2009-11-07 11:44:38 +00:00
alberth 81796f10e5 (svn r17992) -Codechange: Merge some parameters of the dropdown menu. 2009-11-07 11:26:23 +00:00
alberth 61576c3184 (svn r17991) -Codechange: Use WD_VSCROLLBAR_WIDTH constant in dropdown menu window. 2009-11-07 10:26:09 +00:00
alberth 7dd10a684d (svn r17990) -Codechange: Add widgets enum for dropdown menu window. 2009-11-07 08:41:34 +00:00
alberth 726edbf3c0 (svn r17944) -Codechange (r11848): Removed the second counter variable that ran in sync with the first one. 2009-11-01 21:05:48 +00:00
alberth bd5fd95e5c (svn r17942) -Documentation: Add a few doxygen comments to the dropdown code. 2009-11-01 20:50:00 +00:00
rubidium d6cded5380 (svn r17693) -Cleanup: remove some unneeded includes 2009-10-04 17:16:41 +00:00
alberth 8d7498b82c (svn r17575) -Codechange: Adding a new combined button+dropdown widget. 2009-09-19 13:08:37 +00:00
alberth 116c77c342 (svn r17572) -Codechange: Use the Window::GetWidget() function to access nested widgets through the nested_array. 2009-09-19 11:31:12 +00:00
frosch ebd916be3d (svn r17532) -Codechange: Rename several Invalidate functions to SetDirty for more consistency and distinguishability. 2009-09-13 19:15:59 +00:00
rubidium a34d19e9df (svn r17440) -Fix [FS#3179] (r17375): long scrollbars would scroll when that was not intended. They would also not properly mark the window dirty. 2009-09-07 07:59:26 +00:00
rubidium 5cb22df0f5 (svn r17375) -Codechange: remove last direct usage of scrollbar variables 2009-09-02 08:58:20 +00:00
rubidium 7fbc33dae1 (svn r17248) -Fix: add GPL license notice where appropriate 2009-08-21 20:21:05 +00:00
alberth 4eb155ccfb (svn r17171) -Doc: Additions and corrections of various doxygen strings. 2009-08-14 18:41:03 +00:00
alberth c94c18fc0a (svn r16797) -Codechange: Allow drop-down menus for windows with nested widgets. 2009-07-12 10:02:10 +00:00
alberth 34066a6027 (svn r16227) -Codechange: Added nested widgets for error windows, tooltip window, and dropdown window. 2009-05-04 18:42:49 +00:00
rubidium 59d45a04d6 (svn r16118) -Change/cleanup: remove the hexadecimal 'in TTD the string had this ID' from 'some' strings and replace the string name with something more sensible. 2009-04-21 23:40:56 +00:00
peter1138 f30f5607e3 (svn r15877) -Codechange: Let drop down lists know about font height. 2009-03-28 12:47:29 +00:00
rubidium 93fe44a3c5 (svn r15783) -Codechange: make the dropdown draw code pass around the left/right instead of the x and width to make drawing text at offsets easier. 2009-03-21 19:31:47 +00:00
rubidium 9907742a0f (svn r15423) -Codechange: split widget related types to their own header and add a bit of type strictness. 2009-02-09 01:06:23 +00:00
peter1138 77760a62fd (svn r15387) -Codechange: Add a drop down list item type for char* strings. 2009-02-07 00:37:35 +00:00
peter1138 aad67b5736 (svn r15312) -Codechange: Handle closing of drop down menus when clicking in a window in a single place, instead of in the OnClick event for some windows. This standardises behaviour so that clicking anywhere in a window will close its drop down menu, which happened before for some windows but not all. In addition the dubious feature of hiding a drop down menu by opening the same menu has been removed. This only caused wasted CPU cycles as a whole new list was generated and then destroyed. Breathe. 2009-02-01 22:32:07 +00:00
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 2009-01-31 20:16:06 +00:00
rubidium 2490f8f471 (svn r14881) -Fix (r14880): somehow make didn't think that widgets/dropdown.cpp did depend on window_gui.h... 2009-01-06 23:19:59 +00:00
glx c7959ce2a9 (svn r14840) -Cleanup: remove duplicate includes 2009-01-04 21:02:59 +00:00
peter1138 cf52b683c0 (svn r14168) -Codechange: Make dropdown 'auto_width' a separate parameter, so that a minimum width can be specified. 2008-08-25 16:07:10 +00:00