Rubidium
877349c13d
Codechange: use std::string for text file name resolution
2023-05-05 08:54:29 +02:00
Peter Nelson
61407840c6
Codechange: Remove STR_BLACK_RAW_STRING.
2023-05-05 07:07:54 +01:00
Peter Nelson
0880616851
Codechange: Remove various STRING strings.
2023-05-05 07:07:54 +01:00
Rubidium
3901ef9760
Codechange: use std::string for the GRF filenames
2023-05-04 23:23:32 +02:00
Rubidium
a312a6c1b2
Codechange: make md5sumToString std::string compatible
2023-05-04 23:23:32 +02:00
Tyler Trahan
6501f84b4a
Codechange: Move calendar date functions inside TimerGameCalendar ( #10753 )
2023-05-04 13:14:12 +00:00
Tyler Trahan
ba3de0383a
Codechange: Pass more std::string to StringFilter::AddLine() ( #10743 )
2023-04-30 10:23:05 +02:00
Rubidium
c829930440
Codechange: replace strnatcmp with C++ string capable version
2023-04-29 12:07:45 +02:00
Rubidium
4dd5f994be
Codechange: replace strncasecmp with case ignoring variant of StrStarts/EndsWith
2023-04-29 10:25:25 +02:00
Patric Stout
36a0818bc5
Remove: buying/selling/owning company shares ( #10709 )
2023-04-29 10:16:49 +02:00
Rubidium
b221fa3c5a
Codechange: use fmt::format_to instead of seprintf to create the search URL
2023-04-28 19:53:03 +02:00
Rubidium
3105d0b09e
Codechange: replace text-buf printf with fmt::format
2023-04-26 18:46:17 +02:00
Tyler Trahan
930f0a16d8
Codechange: Define Date/Year/Month/Day within TimerGameCalendar class
2023-04-26 07:14:03 -04:00
Rubidium
f74e26ca7e
Codechange: replace error/usererror printf variant with fmt variant and rename
2023-04-25 17:55:09 +02:00
Patric Stout
7aa2b9ab0a
Codechange: move all date-related variables inside the timer ( #10706 )
2023-04-24 15:56:01 +00:00
Charles Pigott
b282664242
Codechange: Replace all usages of alloca/AllocaM with more modern/less discouraged alternatives
2023-04-15 16:57:00 +01:00
Patric Stout
3ebc7ad16e
Codechange: migrate all game-time-related timers to the new framework
2023-04-15 13:58:55 +02:00
Patric Stout
1ba4dcc924
Codechange: migrate all Window-related timers to the new framework
...
This means we also say goodbye to GUITimers.
2023-04-15 13:58:55 +02:00
rubidium42
730687080a
Fix: Update some network documentation to match the new command system ( #10657 )
2023-04-15 09:10:09 +00:00
Peter Nelson
e5af5907ec
Change: Make all dropdown lists extend width if necessary.
...
This removes the auto_width parameter from ShowDropDown(At).
2023-04-13 20:57:47 +01:00
Peter Nelson
47e12a8790
Codechange: Check that CompanyMask fits into 16 bits during compilation.
2023-04-07 22:09:55 +01:00
Peter Nelson
b6609d1833
Fix: Network server highlight invisible with RTL layout.
2023-03-07 22:05:22 +00:00
Zachary
e17c82e32b
Add: maximum number of companies allowed to the client list
2023-02-28 20:52:46 +01:00
dP
c73b88ddca
Fix: Don't send unused tile field over the network ( #10507 )
2023-02-24 22:50:11 +01:00
Patric Stout
fdfcb09aa3
Fix #10131 : actually cancel downloads when pressing cancel
2023-02-15 23:48:06 +01:00
Patric Stout
dea2dea881
Fix: reset content download progress to zero if falling back to TCP
...
Otherwise this chain of events can happen:
- You already have a (partial) file downloaded
- You start the download, and HTTP fails
- This resets the download progress to the current size of the file
- The TCP download starts at a very large value (UINT32_MAX - filesize)
It now resets to 0% done when any negative value is being given.
As added bonus, we no longer have to query how much was already
downloaded.
2023-02-15 23:48:06 +01:00
Patric Stout
1c17556f96
Codechange: replace instance of char * with std::string
2023-02-15 23:48:06 +01:00
Patric Stout
0722bb3bf4
Change: try to detect the CA file/path for CURL ( #10481 )
...
The default is given compile-time, not run-time. So libcurl is
of no use to us.
Current list is kindly borrowed from
https://go.dev/src/crypto/x509/root_linux.go
2023-02-15 22:58:43 +01:00
Patric Stout
ea90fa24f8
Codechange: move curl into a thread so simplify code ( #10480 )
...
With a thread, we can just run curl_easy_perform() and let CURL
and threads handle the blocking part.
With async solution there are too many things to keep track of,
and it makes "when to update the GUI" tricky. By using a thread
that all gets a lot simpler, as the game-thread and download-thread
run side-by-side.
This is similar to how the WinHttp backend already works.
2023-02-15 21:56:19 +01:00
frosch
d7fcb420c4
Fix: compilation with libcurl from 2013.
2023-02-13 22:45:07 +01:00
Patric Stout
64523709bf
Add: use https:// for content-service connections ( #10448 )
...
This requires the use of WinHTTP (for Windows) or libcurl (for all
others except Emscripten). Emscripten does not support http(s)
calls currently.
On Linux it requires ca-certificates to be installed, so the HTTPS
certificate can be validated. It is really likely this is installed
on any modern machine, as most connections these days are HTTPS.
(On MacOS and Windows the certificate store is filled by default)
Reminder: in case the http(s):// connection cannot be established,
OpenTTD falls back to a custom TCP-based connection to fetch the
content from the content-service. Emscripten will always do this.
2023-02-12 12:07:31 +01:00
Loïc Guilloux
a2c8168924
Fix #10465 : Delay closing of network join progress window ( #10466 )
2023-02-11 12:32:45 +01:00
Rubidium
4e65ec1dc4
Codechange: do not declare functions in blocks
2023-01-29 20:28:45 +01:00
rubidium42
6ba55e663e
Codechange: do not hide variables with other variables
2023-01-29 07:21:34 +01:00
Rubidium
ed7685910d
Codechange: pass large objects by reference instead of value
...
Especially when they get passed on directly to the next function or via a
constructor into an instance variable
2023-01-28 13:43:21 +01:00
Rubidium
7e1d272397
Cleanup: remove unused static variables
2023-01-27 07:05:49 +01:00
Rubidium
fe2bcd2a58
Codechange: migrate size related functions to Map structure
2023-01-21 17:11:40 +01:00
Rubidium
8f9a60893d
Fix #10177 : company list password padlock showed after switching to single player
2023-01-15 11:52:51 +01:00
Rubidium
6dfd2cad69
Fix: comparison result is always the same warnings
2023-01-15 00:24:20 +01:00
Rubidium
90f1768006
Codechange: add non-nullptr asserts in cases where it should never be nullptr
...
Though where similar calls are checked for nullptr as in those instances of
the use of that function it can actually return nullptr. In other words, write
down the assumption that the function never returns nullptr in an assert.
2023-01-14 21:15:23 +01:00
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.
2023-01-14 21:15:23 +01:00
Patric Stout
1fb101eabb
Codechange: address CodeQL issue "Multiplication result converted to larger type" ( #10306 )
...
Most are very unlikely to ever be triggered in our codebase; two
stand out: linkgraph and money cheat. Those, potentially, could
wrap earlier than expected.
2023-01-02 20:30:02 +00:00
PeterN
131b7f5127
Fix: Vertically centre chat prompt. ( #10250 )
2022-12-17 12:22:02 +00:00
dP
5e14a20b3b
Feature: [GS] Scriptable league tables ( #10001 )
2022-11-26 18:03:03 +01:00
Peter Nelson
ecb5393c55
Change: Standardize progress bar layout.
...
Progress bars are drawn differently depending on when it was added, with
different layouts and sizes.
This change adds a standard padding size to use, and makes all progress
bars visually similar, with scaled padding.
2022-11-12 18:28:39 +00:00
Peter Nelson
920e588334
Change: Use standard dimensions instead of custom widths.
2022-11-12 18:28:39 +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
dd9f6bc803
Change: Use RectPadding Horizontal()/Vertical() helpers.
2022-11-12 18:28:39 +00:00
Peter Nelson
04cbe57d2a
Change: Use RectPadding for widget padding/uz_padding.
2022-11-12 18:28:39 +00:00