Peter Nelson
4e5700939d
Change: Use sparse padding for sprite aligner.
2023-12-04 08:14:02 +00:00
Peter Nelson
c18a1494b7
Codechange: Remove FONT_HEIGHT_... macros. ( #11481 )
...
These make it look like we're dealing with a constant, but actually each is a call to `GetCharacterHeight(...)`.
2023-11-21 19:04:24 +00:00
Peter Nelson
18fb8e153f
Codechange: Add __FILE__/__LINE__ of WindowDesc to WindowDesc.
...
This is to allow unit-tests to produce more useful output.
2023-11-02 22:25:01 +00:00
Jonathan G Rennison
a1c6923c63
Fix: Assertion in sprite aligner window ( #11371 )
...
When clicking sprite number after re-opening window having previously used sprite picker tool
2023-10-17 16:25:48 -04:00
Joan Josep
6b7537646d
Fix: Allow NewGRF inspection of road tiles. ( #11323 )
2023-09-20 22:54:34 +01:00
frosch
b6c8f301be
Codechange: Silence warnings about intentionally unused parameters.
2023-09-19 22:49:59 +02:00
Michael Lutz
a6f2f3c042
Add: [NewGRF] Inspection window for airports.
...
As as the station window combines all station types, accessing the
debug view is via the parent of the airport tile only.
2023-09-10 19:38:18 +02:00
Peter Nelson
e8015e497d
Codechange: Use begin/end of nwidget parts of begin/length.
...
This simplifies processing nwidget parts as, unlike the remaining length, the pointer to the end of the list never changes. This is the same principle as we use(d) for tracking end instead of length for C-style strings.
And this removes 160~ instances of the lengthof() macro.
2023-09-04 10:20:45 +01:00
Rubidium
eaae0bb5e7
Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
...
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
Rubidium
d9f8a4c380
Codechange: use std::string GetString variant
2023-05-31 19:31:09 +02:00
Peter Nelson
76516d7f70
Codechange: Use IsValidCargoID/IsValidCargoType.
...
IsValidCargoType() is used only for unmapped IDs.
2023-05-22 20:43:40 +01:00
Peter Nelson
c38df2d589
Codechange: Use std::map instead of custom SmallMap.
2023-05-18 12:18:30 +01:00
Peter Nelson
83f2ad500e
Codechange: stdarg.h include not needed as cstdarg is included.
2023-05-17 10:14:41 +01:00
Patric Stout
199e41c762
Codechange: use default dtor instead of empty ( #10826 )
2023-05-14 23:31:03 +02:00
Peter Nelson
531d1ae8bc
Codechange: Use GetScrolled(Row/Item)FromWidget in more places.
...
In many instances the clicked row position is 'manually' calculated
instead of using the GetScrolledRowFromWidget helper function, with
variations on checks. Replace with the two helpers where possible.
2023-05-12 21:45:32 +01:00
Peter Nelson
d2034d9c38
Codechange: Scrollbar methods now accept size_t.
...
This clears up a lot of casts from size_t to int.
2023-05-07 20:25:44 +01:00
Peter Nelson
e18f688db5
Codechange: Remove various COMMA strings.
2023-05-05 07:07:54 +01:00
Rubidium
630d3bc053
Codechange: use fmt::format instead of printf for the NewGRF profiler
2023-04-26 18:46:17 +02:00
Rubidium
3105d0b09e
Codechange: replace text-buf printf with fmt::format
2023-04-26 18:46:17 +02:00
Charles Pigott
80bd5ad727
Codechange: Use std::strto* variants everywhere ( #10720 )
2023-04-26 12:56:14 +01:00
PeterN
e97bf271dc
Codechange: Make SpriteType, CargoSortType, SourceType and ScriptType enum classes. ( #10663 )
...
This avoids a (soft) namespace conflict between the four ST_* enums.
2023-04-16 20:00:55 +01:00
Tyler Trahan
0bf6f82305
Cleanup: Don't mix switches and early returns in widget selection
2023-03-25 18:03:16 -04:00
Jonathan G Rennison
4c1406a4b5
Add: NewGRF road stops
2023-02-26 21:28:30 +01:00
Rubidium
f001e84e5e
Codechange: use RAII to automatically restore _cur_dpi after use
2023-01-28 20:33:02 +01:00
Peter Nelson
5eb7e1d3ab
Fix: Improve sprite aligner list size and alignment.
2022-12-17 15:38:28 +00:00
Peter Nelson
8adc47858d
Change: Set minimal size on aligner buttons.
2022-12-17 15:38:28 +00:00
Peter Nelson
33eb9688cf
Add: Sprite centre and crosshair toggles on sprite aligner.
2022-12-17 15:38:28 +00:00
PeterN
53682b4b6b
Fix #10114 : Wonky depot layout. ( #10191 )
...
Depot lists internal layout was not handled well. This is improved by
throwing more Rects at it:
- Vehicle images are now be vertically centred in the rect.
- Image clipping is relaxed to cover the rect, improving larger sprites.
- Outline highlight is now aware of bevel thickness.
2022-11-23 21:01:09 +00:00
Peter Nelson
890b2666d3
Change: Use scaled WidgetDimensions.
2022-11-12 18:28:39 +00:00
Peter Nelson
b6ed595176
Codechange: Prefer suggested widget padding.
2022-11-12 18:28:39 +00:00
Peter Nelson
fea7247072
Change: Use standard 'frametext' padding for settings window.
2022-11-12 18:28:39 +00:00
Peter Nelson
6f95e04005
Change: Use Rect helpers for widget drawing.
...
This replaces repetitive and sometimes unwieldy use of constants.
2022-11-12 18:28:39 +00:00
Peter Nelson
f5f035a22b
Codechange: Make use of Rect Width/Height helpers.
2022-11-12 18:28:39 +00:00
Peter Nelson
eb4ba1991b
Change: Use CenterBounds function in more places.
...
CenterBounds may have a 1 pixel difference so the result is not exactly
the same.
2022-11-12 18:28:39 +00:00
rubidium42
e588923bff
Codechange: add std::string accepting SetDParamStr to ErrorMessageData
2021-06-13 10:26:58 +02:00
glx22
5799402f7a
Codechange: Rename window related DeleteXXX to match new behaviour
2021-05-29 21:08:25 +02:00
Rubidium
fdc11a9f94
Codechange: introduce SpriteFile to be used by the sprite loader instead of the global FIO slot functionality
2021-05-08 12:39:34 +02:00
Peter Nelson
af70195e44
Fix: Tidy up sizing of sprite aligner window sprite list.
2021-04-30 17:08:15 +01:00
Patric Stout
853bfc3562
Codechange: replace _realtime_tick with std::chrono for mouse events
2021-02-27 00:36:14 +01:00
Michael Lutz
84636fc2af
Codechange: Remove all remaining uses of cpp_offset.
2021-02-13 20:08:53 +01:00
Charles Pigott
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
2021-01-08 11:16:18 +01:00
dP
3db7cf54fd
Fix: sprite preview in sprite aligner is too small with scaled UI
2020-08-13 20:50:11 +02:00
Michael Lutz
f2b40f40aa
Codechange: Replace SmallPair with std::pair.
...
std::pair is already the smallest possible pair, and it already handles non-POD types correctly.
2020-05-21 20:02:34 +02:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
stormcone
6396ec05fe
Fix #7609 : In the sprite aligner window the 'Reset relative' button crashes the game.
...
The 'offs_start_map' is a 'SmallMap', so its own 'Erase' function should be called instead of the underlying vector's 'erase' function.
And fix a "typo". :)
2019-06-06 17:28:39 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
glx22
66dd7c3879
Fix: MSVC warnings ( #7423 )
2019-03-28 00:09:33 +01:00
Henry Wilson
c01a2e2a81
Codechange: Removed SmallVector completely
2019-03-26 20:15:57 +00:00
Henry Wilson
ab711e6942
Codechange: Replaced SmallVector::[Begin|End]() with std alternatives
2019-03-26 20:15:57 +00:00
Henry Wilson
ca2f33c6d0
Codechange: Replaced SmallVector::Erase() with std::vector::erase()
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
317f69c152
Codechange: Use override specifier in Window-derived classes.
2019-03-24 16:10:04 +01:00
alberth
e9f12d666d
(svn r27451) -Feature[FS#6241]: Move sprite 8 positions in sprite aligner with ctrl+click. (based on work by juzza1)
2015-11-20 10:04:28 +00:00
alberth
a5843149b5
(svn r27174) -Feature[FS#6236]: Display relative offset changes in the sprite aligner (juzza1).
2015-03-01 08:17:14 +00:00
frosch
a4756c477d
(svn r27173) -Fix [FS#6237] (r27134): Use the regular clipping functions in the sprite aligner instead of some magic.
2015-02-28 20:09:49 +00:00
frosch
a8080b6256
(svn r27134) -Codechange: Simplify GUI scaling by adding UnScaleGUI() and ScaleGUITrad().
2015-02-01 20:54:24 +00:00
alberth
107bf32953
(svn r27086) -Codechange: Simplify opening of windows by always returning a valid window pointer.
2014-12-18 18:22:23 +00:00
peter1138
17cd86d762
(svn r26942) -Codechange: Make sprite aligner useful for people making full-zoom graphics.
2014-09-30 11:35:21 +00:00
peter1138
1273ca8e8d
(svn r26941) -Codechange: Make NewGRF sprite aligner work with GUI size.
2014-09-30 11:29:23 +00:00
rubidium
e61fe21237
(svn r26506) -Codechange: replace most of vsnprintf with vseprintf
2014-04-24 19:51:45 +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
frosch
0aae2fd606
(svn r25946) -Add: [NewGRF Debuggnig] Inspecting other vehicles in a chain.
2013-11-07 18:17:21 +00:00
frosch
b0c2ab4501
(svn r25945) -Codechange: Use member function of NewGRFInspectWindow to resolve FeatureIndex.
2013-11-07 18:15:32 +00:00
frosch
df10f7b9f9
(svn r25943) -Fix: NewGRF inspect window in RTL mode.
2013-11-06 15:10:17 +00:00
frosch
43ec0bf0c1
(svn r25537) -Codechange: Optionally make WWT_MATRIX compute the number of rows and columns from the resize step size.
2013-06-30 14:36:31 +00:00
frosch
98fdd20f84
(svn r25531) -Codechange: Use separate function to set data of WWT_MATRIX widgets.
2013-06-30 14:32:31 +00:00
frosch
4e4e635916
(svn r25294) -Feature: Add another button to window title bars to resize the window to its default size.
2013-05-26 19:30:07 +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
03736af2ae
(svn r24700) -Cleanup: Remove WDF_UNCLICK_BUTTONS and make it the default.
2012-11-11 16:10:43 +00:00
alberth
4c9bea2a71
(svn r24692) -Cleanup: Cleanup final parts of the old resolver code.
2012-11-10 20:45:59 +00:00
alberth
e087503fd6
(svn r24690) -Codechange: Add resolver classes for industry tiles.
2012-11-10 20:44:38 +00:00
alberth
f7352871fa
(svn r24689) -Codechange: Add resolver classes for industries.
2012-11-10 20:44:10 +00:00
alberth
82e6001451
(svn r24685) -Codechange: Add resolver classes for rail types.
2012-11-10 20:41:45 +00:00
alberth
438495b433
(svn r24678) -Codechange: Introduce scope resolver base class and prepare for adding derived classes.
2012-11-10 20:37:31 +00:00
planetmaker
7c7bd7fe86
(svn r23541) -Codechange: Consistent naming of widgets in NewGRF debug window
2011-12-16 17:15:40 +00:00
truebrain
2aa774e831
(svn r23528) -Codechange: move widget enums to widgets/NNN_type.h
2011-12-15 22:22:55 +00:00
rubidium
5fc4ce1eb1
(svn r23419) -Fix [FS#4864] (r23316): the sprite aligner was broken as it didn't scale properly to 'GUI' scale
2011-12-04 09:15:13 +00:00
peter1138
81598273e9
(svn r23316) -Feature: Add ability to zoom in to 2x and 4x level.
2011-11-24 12:38:48 +00:00
rubidium
bd64bf6372
(svn r23193) -Codechange: don't cast away const unneededly
2011-11-12 08:10:22 +00:00
frosch
1ad7239247
(svn r23138) -Feature: [NewGRF] Allow passing 32bit parameters to 60+x variables (using var 7B). Currently most useful for vehicle var 60.
2011-11-08 17:23:30 +00:00
terkhen
8ddb3941f7
(svn r22571) -Add: [NewGRF] Show town persistent storage in the NewGRF debug GUI.
2011-06-12 20:53:16 +00:00
terkhen
46d1a06215
(svn r22570) -Codechange: Store the GrfID of the caller when opening a parent window in the NewGRF debug GUI.
2011-06-12 20:51:38 +00:00
terkhen
00e5c1df18
(svn r22567) -Codechange: Store persistent storages inside a pool.
2011-06-12 20:47:45 +00:00
terkhen
281bed03f4
(svn r22565) -Codechange: Use helper functions for getting the persistent storage in the NewGRF debug GUI.
2011-06-12 20:41:17 +00:00
rubidium
4d5dbf5170
(svn r22410) -Document: some more bits ;)
2011-05-02 16:14:23 +00:00
terkhen
10caf391a1
(svn r22343) -Change: Remove pixel limiter for query strings.
2011-04-17 18:42:17 +00:00
frosch
ec9540a12a
(svn r22241) -Codechange: Add additional to-be-used parameter to OnInvalidateData().
2011-03-13 21:31:29 +00:00
frosch
f34e9ff074
(svn r22140) -Fix (r22135): I like the letter 'l' nevertheless. (Alberth)
2011-02-24 21:48:06 +00:00
frosch
19b7249ade
(svn r22135) -Fix [FS#4523]: When commands need to invalidate windows, process these events asynchronously before the next redraw. Calling window code directly from command scope uses wrong _current_company and might issue nested DoCommands() which interfer with the running command.
2011-02-23 20:54:55 +00:00
frosch
40cc3324fa
(svn r22134) -Codechange: Move ReInit() of the landinfo window from DeleteNewGRFInspectWindow() into a InvalidateData call.
2011-02-23 20:45:52 +00:00
rubidium
eb299736c1
(svn r21886) -Codechange: move documentation towards the code to make it more likely to be updated [n].
2011-01-22 09:53:15 +00:00
alberth
f5c6fd1a25
(svn r21331) -Codechange: Make drawing the widgets default behaviour in OnPaint().
2010-11-26 15:22:18 +00:00
michi_cc
406b4b3873
(svn r21065) -Fix (r19733): Crash when displaying 60+x parameters in the NewGRF inspect window.
2010-10-31 16:16:28 +00:00
rubidium
a8b992f4fd
(svn r20673) -Codechange: add support for inspecting objects
2010-08-28 19:48:46 +00:00
rubidium
30f2afac9b
(svn r20632) -Cleanup: remove "a few" unneeded includes, and add them to some headers
2010-08-26 22:01:16 +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