Commit Graph

568 Commits (32b0fb9f6ebe5f607550d4d35ce112b2e1c7442e)

Author SHA1 Message Date
Rubidium 7b539fa7c9 Fix: fmt's {:#04X} yields '0X00', not '0x0000'
Technically the 0X vs 0x is not a big problem, just not pretty. However, the
length also including the 0x results in unexpected behaviour, so it probably
better to not use it.
1 year ago
Patric Stout 1ba4dcc924 Codechange: migrate all Window-related timers to the new framework
This means we also say goodbye to GUITimers.
1 year ago
PeterN f1144de509
Feature: Separate rail/road and sea/air velocity units, and add knots. (#10594)
This is achieved by packing vehicle type along with the velocity so that
the string system can decode and pick the appropriate unit.
1 year ago
PeterN 73474b08fe
Fix: Clicking on editbox clear button didn't take account of padding. (#10583) 1 year ago
Tyler Trahan 066ae6f3fb Codechange: Simplify some CodeQL-flagged trivial switches 1 year ago
Rubidium 580d0a6343 Codechange: make use of Tile in for all direct map accesses 1 year ago
Rubidium f001e84e5e Codechange: use RAII to automatically restore _cur_dpi after use 1 year ago
Rubidium bcfe0fb076 Codechange: introduce GetMainWindow() to properly account for nullptr checks
Some nullptr checks have been removed as they were not triggered with nullptr
with the null video driver and in dedicated server mode.
1 year ago
PeterN 23eec0b7b3
Fix #8971: Resize QueryStrings with interface scale change. (#10281)
* Fix: Use width of caret symbol '_' for text entry.

This replaces an arbitrary pixel width with the space actually required.

* Fix #8971: Update QueryString sizes with interface scale change.
2 years ago
PeterN 485368f607
Fix: Missing extra padding when drawing tooltip text. (#10201)
* Fix: Missing extra padding when drawing tooltip text.

This padding is included when calculating the size of the tooltips, the
difference caused a mismatch in height for some tooltips.

* Codechange: Don't draw grey panel underneath tooltip.

This removes the default framerect padding so it is now added explicitly.
SetMinimalSize is also removed as this is overridden in UpdateWidgetSize
anyway.
2 years ago
Tyler Trahan b846c574d7
Update: Developer credits (#10190) 2 years ago
Peter Nelson dff03124e5 Change: Use modalpopup padding for error/query windows. 2 years ago
Peter Nelson 890b2666d3 Change: Use scaled WidgetDimensions. 2 years ago
Peter Nelson b6ed595176 Codechange: Prefer suggested widget padding. 2 years ago
Peter Nelson cb059fc081 Change: Use Rect for QueryString editor. 2 years ago
Peter Nelson 6f95e04005 Change: Use Rect helpers for widget drawing.
This replaces repetitive and sometimes unwieldy use of constants.
2 years ago
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.
2 years ago
Nicolas Chappe 65530a76f6 Codechange: Allow use of SetDParam for tooltips 2 years ago
Patric Stout 8ac0ab47b0
Update: to all the friends we have lost and those we have gained (#10000) 2 years ago
Charles Pigott 146827c458
Fix #9877: GS could trigger 'Cost: 0' cost message (#9878) 2 years ago
Michael Lutz c6d7b98808 Codechange: Un-bitstuff landscape commands. 3 years ago
Michael Lutz e740c24eb7 Codechange: Template DoCommand to automagically reflect the parameters of the command proc.
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
3 years ago
Michael Lutz b6933a2ebd Codechange: Move command arguments to the back of the DoCommand function call. 3 years ago
rubidium42 55a11710a6 Codechange: convert printf DEBUG statements to fmt Debug statements 3 years ago
Michael Lutz 418e0ea85f Codechange: Use dynamic string list for contents of land info window. 3 years ago
glx22 5799402f7a Codechange: Rename window related DeleteXXX to match new behaviour 3 years ago
glx22 994bf19aef Fix f6d5c01: Delay deletion when closing windows 3 years ago
Patric Stout ca9a7df752
Codechange: rename str_validate to StrMakeValid(InPlace) (#9304)
This to be more explicit the function changes the value, and not
returns yes/no.
3 years ago
frosch f96f113951 Codechange: use IterateFromBack/Front only if the order is important.
Use Iterate if the order does not matter.
3 years ago
Peter Nelson 8321ef0061 Codechange: Set specific widgets dirty instead of window. 3 years ago
PeterN 08781d96ed
Fix: Query windows may be partially drawn initially. (#9184)
Query window was not marked dirty after being moved on init. It was then marked dirty once the white border flash completed.
3 years ago
glx22 14e92bd8e2 Codechange: Replace window related FOR_ALL with range-based for loops 3 years ago
Leif Linse 3b9b177b36
Update: Developer credits (#9091) 3 years ago
Peter Nelson 59b6e46bce Fix: Adjust scrolling interval of credits to account for text line height 3 years ago
Jonathan G Rennison 3ede756d23 Fix: Viewport drag tooltips not being removed when dragging over other windows 3 years ago
Jonathan G Rennison ae94b2d296 Fix: Viewport drag tooltip flickering when dragging outside window 3 years ago
Patric Stout ac2b5e57cf
Fix: mention our websites with https:// (instead of http://) (#8657)
It is 2021. Nobody should advertise http anymore. Not even us.
3 years ago
frosch e339188ded Add: a go-to-location button to the LandInfo window. 4 years ago
Charles Pigott 9b800a96ed
Codechange: Remove min/max functions in favour of STL variants (#8502) 4 years ago
Patric Stout 62cdadb582 Change: move "give money" from client-list to company window
This is a much better location for this button, as you send
money from one company to another company, not from player
to player.

This is based on work done by JGRPP in:
f820543391
and surrounding commits, which took the work from estys:
https://www.tt-forums.net/viewtopic.php?p=1183311#p1183311

We did modify it to fix several bugs and clean up the code while
here anyway.

The callback was removed, as it meant a modified client could
prevent anyone from seeing money was transfered. The message
is now generated in the command itself, making that impossible.
4 years ago
Charles Pigott 860c270c73 Codechange: Replace assert_compile macro with static_assert 4 years ago
Patric Stout 68f9925cd4
Codechange: use \u to indicate unicode chars in strings (#8379)
With \x, we sometimes had to do the "" trick, as the length is not
predefined. With C++11 bringing \u to the specs, which has a preset
length, we no longer need the "" trick.

We set the strings to u8, to ensure all compilers use UTF-8 encoding
for the \u characters.

This was triggered by newer CLangs, which start to warn if you
use "" in the middle of a string, wondering if that was your
intention. It is a good question. And this is our answer :)
4 years ago
glx e0d20a44d2 Codechange: Use a dynamic copyright year 4 years ago
S. D. Cloudt 13cc8a0cee Cleanup: Removed SVN headers 5 years ago
Charles Pigott a407db54cf Add: Me 5 years ago
peter1138 c02ef3e456 Feature: Add NotRoadTypes (NRT) 5 years ago
Niels Martin Hansen d5841109f0 Fix dcb2571: Missing override keywords 5 years ago
Niels Martin Hansen a64bd6e22c Fix: Also breaking for warning text in set company password 5 years ago
Niels Martin Hansen 08284e005d Fix: Automatic line breaking of the warning 5 years ago
Niels Martin Hansen dcb2571888 Add: Warn players that company passwords are not truly secure 5 years ago
Henry Wilson 7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 5 years ago
peter1138 317f69c152 Codechange: Use override specifier in Window-derived classes. 5 years ago
peter1138 4da83d2f66 Fix #7386: Measurement tooltip for tunnels, aqueducts & docks did not display or flickered.
Measurement tooltip was auto-closed as the hover/right-click test for tooltips was not
satisfied in this case. This is fixed by keeping the tooltip visible and instead explicitly
closing the tooltip when the PlaceObject is cancelled/completed.
5 years ago
Peter Nelson 806e7d25dd Change: Use GUITimer class instead of bare int/uints. 6 years ago
Peter Nelson 2a8fa5fef9 Change: Split up Window::OnTick into OnGameTick and OnRealtimeTick. Adjust timers to work with milliseconds instead of ticks. 6 years ago
Niels Martin Hansen 68e6b5531a Update: Developer credits 6 years ago
Charles Pigott f5b1115039 Doc: Lots and lots of doxymentation fixes 6 years ago
Niels Martin Hansen 350395a6c2 Fix: Missing m8 data in console when using Query tool
When map array 8 was added, the Query tool wasn't updated to also
print the value there to the console, in debug builds.
6 years ago
Miguel Horta 42b00c3b39 Fix #6938: Don't change company value to perform cost estimations (#6939)
These meddling kids dared to play with magic, but the ancients texts
weren't ready for that.
Refactors logic to estimate costs that dated to even before OpenTTD 0.1;
6 years ago
Jonathan G Rennison 71450881fc Codechange: Avoid call to memcpy using null pointer in TooltipsWindow constructor
Strictly speaking, calling memcpy with src as a nullptr is undefined behaviour
and the optimiser is entitled to delete any null ptr checks which occur afterwards.
This removes the warning emitted by UndefinedBehaviorSantizer.
6 years ago
Michael Lutz b91e85003e Fix: Theoretical string overflow when building the cargo acceptance list for the land info window. 6 years ago
frosch ebe6564e8b (svn r27979) -Add: adf88 to readme 6 years ago
frosch b4b98e5165 (svn r27893) -Codechange: Use fallthrough attribute. (LordAro) 7 years ago
frosch 10293c5fb1 (svn r27686) -Change: List railtype of rail tiles explicitly in the tile info window. 8 years ago
frosch 3cb7d9703b (svn r27628) -Codechange: Prepare for drawing cursors consisting of multiple sprites. 8 years ago
matthijs 53982003ee (svn r27560) -Fix: typos in comments and string 8 years ago
michi_cc 2b8bb12d62 (svn r27381) -Fix: Warnings due to C++11 requirements for explicit narrowing conversions in initializer lists. 9 years ago
frosch a8080b6256 (svn r27134) -Codechange: Simplify GUI scaling by adding UnScaleGUI() and ScaleGUITrad(). 10 years ago
frosch c9114af706 (svn r27131) -Fix: Dropdown- and tooltip-windows should not steal the focus. 10 years ago
rubidium 8739a7b7d0 (svn r27037) -Fix [FS#6150] (r26878): m6 was moved from Tile To TileExtended, but it wasn't properly removed from Tile (patch by Juanjo) 10 years ago
peter1138 3730ed67cb (svn r27023) -Codechange: Scale tooltip size by UI scale. 10 years ago
peter1138 ffe820c792 (svn r26924) -Codechange: Fit YES/NO query window buttons to window, instead of unaligned. 10 years ago
rubidium 04e2324b8f (svn r26873) -Change: split type_height into a type and height array (ic111) 10 years ago
planetmaker bcb9c64ac8 (svn r26709) -Fix (r15892 and others) [FS#6069]: [OSX] Compilation fails with some lzo2 versions if we define __LP64__ as 0 instead of checking whether it is defined (kernigh2) 10 years ago
rubidium 9ed12b0f07 (svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL) 10 years ago
rubidium 5b82822c12 (svn r26486) -Codechange: replace a number of snprintfs with seprintf 10 years ago
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 10 years ago
frosch f0e7f9982a (svn r26277) -Add [FS#5849]: Display speed limit also for road bridges in the TileInfo window. 11 years ago
michi_cc 30867c487f (svn r25691) -Add: [OSX] Support for mouse selection in the IME composition string. 11 years ago
michi_cc e2ec0ddb03 (svn r25690) -Change: [OSX] Position the candidate window at the caret position. 11 years ago
michi_cc 64d2fc4d1e (svn r25683) -Add: Support for a marked/selected range to the textbuf. 11 years ago
michi_cc da09fd3077 (svn r25681) -Change: [Win32] Position the IME composition window at the caret position. 11 years ago
michi_cc b911f4a452 (svn r25668) -Codechange: Pass proper Unicode UCS-4 characters instead of just UCS-2 to the window key press handlers. 11 years ago
fonsinchen f9b08b1aec (svn r25375) -Update: add fonsinchen to credits 11 years ago
frosch 8157a8afd8 (svn r25290) -Add: Assign string names to notable windows. 11 years ago
frosch 56e4a8c4d6 (svn r25287) -Codechange: Keep a reference to the WindowDesc in the Window after construction. 11 years ago
frosch c2c50b0c50 (svn r25092) -Codechange: Deduplicate keyboard handling between console and editboxes. 11 years ago
frosch 579ee7a592 (svn r25089) -Codechange: Move CharSetFilter from QueryString to Textbuf. 11 years ago
rubidium 446d50f658 (svn r25011) -Codechange: allow vehicle transfer and profit text effects to be shown at the same time (fonsinchen) 12 years ago
rubidium e65a710986 (svn r24960) -Fix [FS#5423]: inconsistencies in the "thanks to" lists 12 years ago
planetmaker c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 12 years ago
frosch 5b2da98ca3 (svn r24785) -Add: Various methods to open the OSK. (based on patch by Eagle_rainbow) 12 years ago
frosch 5dfd5e58ee (svn r24774) -Fix: Invert the focus handling of the OSK. Keep the focus at the OSK and close it on losing focus. This makes the editbox in the OSK behave correctly. 12 years ago
frosch 155a9d784c (svn r24772) -Codechange: Call Window::OnEditboxChanged only when the content changes, not when only moving the cursor. 12 years ago
frosch 5e8238c75c (svn r24748) -Add: Clear button to all editboxes. 12 years ago
frosch aed11012d4 (svn r24746) -Cleanup: Remove weird lowering of editboxes. 12 years ago
frosch 1b3e8a8af6 (svn r24745) -Codechange: Draw complete editbox via QueryString. 12 years ago
frosch c8c040d057 (svn r24744) -Codechange: Handle clicking on editboxed also via QueryString. 12 years ago
frosch f5d8ba5d7f (svn r24742) -Codechange: Remove QueryStringBaseWindow and store QueryStrings per widget instead. 12 years ago
frosch 6e6d94a2d1 (svn r24740) -Codechange: Remove duplicate members from QueryStringBaseWindow and directly use QueryString. 12 years ago