b5693becdc
Add: Define scaled WidgetDimensions.
...
Includes RectPadding container.
2022-11-12 18:28:39 +00:00
0108e9f387
Change: Set up suggested widget padding for panel, frame and inset.
...
Window handlers are free to ignore the suggested padding, however some
handlers have logic that assumes this information was already provided.
2022-11-12 18:28:39 +00:00
68423c40c5
Fix: Off-by-one in GetAlignedPosition().
2022-11-12 18:28:39 +00:00
dd9f6bc803
Change: Use RectPadding Horizontal()/Vertical() helpers.
2022-11-12 18:28:39 +00:00
04cbe57d2a
Change: Use RectPadding for widget padding/uz_padding.
2022-11-12 18:28:39 +00:00
f5f035a22b
Codechange: Make use of Rect Width/Height helpers.
2022-11-12 18:28:39 +00:00
f24286a1ae
Fix: Ensure 31-bit shifts are unsigned. ( #10128 )
...
Shifting a signed 32-bit integer by 31 bits is undefined behaviour.
A few more than necessary are switched to unsigned for consistentency.
2022-11-04 07:15:59 +00:00
ba94efba87
Change: Add flag to apply resize to largest resize step first.
...
Resize step is normally allocated equally amongst all resizable widgets.
With this flag, we allocate as much as possible from the largest
resize step first.
2022-10-16 14:56:34 +02:00
296af146fb
Change: Default widget text colour to black.
...
TC_FROMSTRING really means blue, and we almost never actually use
blue text.
2022-10-16 14:24:51 +02:00
Patric Stout
28e90769f7
Codechange: use "[[maybe_unused]]" instead of a wide variety of other ways we had
...
While at it, replace OTTD_ASSERT with WITH_ASSERT, as this
is always set if assert() is valid. No matter if NDEBUG is set
or not.
2021-06-03 17:30:00 +02:00
330a305c99
Fix: Apply unscaled padding to Viewport inside WWT_INSET. ( #9219 )
...
Since pixel dimensions in SetPadding() are scaled by GUI size, padding for inset viewports was excessive.
Instead, automatically apply padding for WWT_INSET at widget level. This applies to all widgets inside a WWT_INSET, which in all instances is a NWID_VIEWPORT.
2021-05-08 21:01:16 +01:00
d8e06e590a
Codechange: Make GetCurrentRect() conform to usual Rect bounds, and reuse it.
...
Similar code is already repeated in other locations.
2021-05-08 09:53:55 +01:00
52b16237ad
Codechange: Don't update window contents if scrollbar position has not moved.
2021-05-08 09:52:54 +01:00
256dbee255
Fix: Crash when extra viewport height is zero with sign in view. ( #9175 )
...
If a viewport sign straddles the top of a viewport, a crash will occur if the viewport height is zero. This is resolved by simply not attempting to draw the viewport in this situation, consistent with other widgets.
2021-05-02 10:21:27 +01:00
4791ff2862
Fix: Recalculate padding and minimum sizes when GUI or Font zoom is changed.
2021-04-30 17:08:15 +01:00
6fe5353da2
Cleanup: Set unchanging scrollbar properties in constructor.
2021-04-30 17:08:15 +01:00
03a43b8247
Cleanup: Call SetMinimalSize instead of setting min_y directly.
2021-04-30 17:08:15 +01:00
f5569763c9
Fix: Specify width when width is required instead of top.
2021-04-30 17:08:15 +01:00
4c6cca459a
Cleanup: Remove fairly redundant DrawDropdown() function.
2021-04-30 17:08:15 +01:00
5153e1b6e3
Cleanup: Horizontal widget size is commonly width rather than length.
2021-04-30 17:08:15 +01:00
51b4bd6c38
Codechange: Add widget text colour override property.
2021-04-22 16:42:04 +01:00
636e37d183
Codechange: Add internal widget alignment property, along with widget part.
2021-04-22 16:42:04 +01:00
2a0365b3d9
Cleanup: Remove unnecessary parameter of GetScrolledRowFromWidget()
...
Line height defaults to the resize height of the relevant widget, which is
set in all cases. Therefore it is not necessary to specify this value every time.
Additionally fixes scrolled padding for the framerate window.
2021-04-21 23:12:10 +02:00
Rubidium
bf4fe19a66
Codechange: merge duplicated logic to scroll in lists by key into a single function
2021-04-21 21:12:08 +02:00
Charles Pigott
dd798d688b
Fix #8919 : Release builds with asserts enabled ( #8925 )
2021-04-01 23:57:49 +01:00
Patric Stout
fece1c57ca
Codechange: Suppress warnings when asserts are disabled ( #8917 )
2021-04-01 11:16:19 +02:00
Tyler Trahan
de891238d6
Change: Recolour graph windows to brown ( #8700 )
2021-03-11 15:30:29 +01:00
9fdc881005
Fix: Scale PIP-padding the same as regular padding. ( #8829 )
2021-03-09 10:43:04 +01:00
Patric Stout
af22a4f2cd
Add: show in the tooltip of disabled toolbar buttons why they are disabled
2021-01-08 16:43:51 +01:00
Charles Pigott
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
2021-01-08 11:16:18 +01:00
TechGeekNZ
a10013dd00
Codechange: Spell 'Viewport' consistently
...
Some places in the codebase misspell 'Viewport' as 'ViewPort' or 'view_port'.
This patch makes everything consistent.
2020-07-27 17:31:29 +01:00
TechGeekNZ
8652a4db76
Cleanup: Give SetDirtyBlocks
a more descriptive name.
2020-06-09 13:15:47 +01:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
glx
1f418555a1
Fix #7742 , 66dd7c3
: widget position can be negative
2019-09-17 20:11:34 +02:00
Niels Martin Hansen
62dec9f174
Fix: Scale all min size and padding by UI scale
2019-04-24 23:04:55 +02:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
de9f54ccc1
Codechange: Change scrolling_scrollbar to mouse_capture_widget, and dispatch OnClick() event if widget is not a scrollbar.
...
This allows any widget to support mouse capture.
2019-02-21 08:11:35 +00:00
Charles Pigott
f5b1115039
Doc: Lots and lots of doxymentation fixes
2018-10-31 12:35:54 +01:00
frosch
b4b98e5165
(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)
2017-08-13 18:38:42 +00:00
efe201d1df
(svn r27831) -Fix (r24577): Misaligned resize icon (due to widget bounds being inclusive)
2017-03-26 19:07:08 +00:00
bcc5c9f81d
(svn r27821) -Change: Draw images in centre of buttons (inspired by Juanjo)
2017-03-23 22:00:00 +00:00
frosch
f882a5aa00
(svn r27713) -Fix [FS#6527]: Setup clipping areas for individual widgets when drawing. (adf88)
2016-12-25 17:57:47 +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
4830497f0b
(svn r27340) -Fix [FS#6338]: Silence warning by moving _string_colourmap to a file no its own. (Cif)
2015-07-26 09:47:17 +00:00
frosch
97d7ad8914
(svn r27303) -Fix [FS#6321]: SetMinimalSize was ignored for WWT_EDITBOX.
2015-06-20 12:29:36 +00:00
frosch
2639b84316
(svn r27255) -Fix [FS#6270]: Combined button+dropdown widgets in order and autoreplace GUI had incorrect hitbox when using GUI zoom. (_dp_)
2015-04-26 11:07:41 +00:00
rubidium
e811fa1718
(svn r27030) -Fix: crash when having the vehicle list opened from a buoy or oil rig while the buoy/oil rig gets its final removal (i.e. the sign gets removed)
2014-10-21 19:16:47 +00:00
rubidium
0af26b8a37
(svn r26971) -Fix: widget_data was sometimes uint16 and sometimes uint32; make it always be uint32
2014-10-06 19:16:29 +00:00
5a924dcbbc
(svn r26965) -Codechange: Add palette bit to indicate that palette is actually a text colour remap, and draw closebox as a sprite, using said bit. Change news popup to use closebox widget for its closebox.
2014-10-05 21:18:37 +00:00
9ab2263fda
(svn r26964) -Codechange: Allow editbox size to change.
2014-10-05 18:10:01 +00:00