Michael Lutz
8b1880187a
Remove: AutoFreeSmallVector.
...
The last use was for storing a list of memory blocks. As the way these lists are accessed is very
specific, it is easier to just write an explicit destructor instead of trying to exactly match the behaviour.
2019-04-09 22:45:15 +02:00
Michael Lutz
e804173595
Codechange: If something is a vector of strings, use a vector of strings instead of an AutoFreeSmallVector.
2019-04-09 22:45:15 +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
Michael Lutz
d3e113eb5f
Codechange: Use std::vector instead of AutoDeleteSmallVector in GS text handling.
2019-04-09 22:45:15 +02:00
Michael Lutz
baf9229931
Codechange: Replace AutoDeleteSmallVector with direct std::vector use in text layout code.
2019-04-09 22:45:15 +02:00
Michael Lutz
329bb52613
Codechange: Store text layout runs directly as values in a std::vector instead of heap allocated.
...
This reduces memory allocations and heap fragmentation.
2019-04-09 22:45:15 +02:00
Michael Lutz
9325d63d8e
Fix: Forgotten override keywords for DropDownListIconItem.
2019-04-09 22:45:15 +02:00
Michael Lutz
fbc4cef180
Codechange: Use override specifier for text layout classes.
2019-04-09 22:45:15 +02:00
Michael Lutz
d95c7083ea
Fix: Don't crash if reading a GS string file from disk produces an error.
...
The raw_strings vector may not include NULLs as no consumer can deal with it.
2019-04-09 22:45:15 +02:00
translators
0a883afe19
Update: Translations from eints
...
luxembourgish: 20 changes by Phreeze
2019-04-09 19:45:42 +02:00
PeterN
812886ca61
Fix #7478 : Don't remove NewGRF objects on company take-over. ( #7483 )
2019-04-08 19:20:43 +01:00
kiwitreekor
bc9b47d2e5
Fix #6222 : Advanced sprite layout sometimes showed incorrect railtype ground tile
2019-04-08 18:41:07 +01:00
glx22
3e608afa6c
Fix: [Windows] OpenTTD window may be inactive when an error happens ( #7482 )
2019-04-07 21:52:30 +02:00
Michael Lutz
967b27a2c1
Codechange: C++11 STL has a function for getting the number of CPU cores.
2019-04-06 11:27:39 +02:00
Michael Lutz
ae748166d0
Codechange: Use platform independent C++11 function for sleeping on a thread.
2019-04-06 11:27:39 +02:00
Michael Lutz
94c5269fa7
Codechange: Use atomic variables for thread synchronization where useful.
2019-04-06 11:27:39 +02:00
Michael Lutz
05bc2ed7cb
Codechange: Replace custom thread code with C++11 thread objects.
...
We assume a conforming C++11 compiler environment that has a valid <thread>-header.
Failure to run a real thread is handled gracefully.
2019-04-06 11:27:39 +02:00
Michael Lutz
05f4e73608
Codechange: Replace custom mutex code with C++11 mutex'es.
...
A conforming compiler with a valid <mutex>-header is expected.
Most parts of the code assume that locking a mutex will never fail unexpectedly,
which is generally true on all common platforms that don't just pretend to
be C++11. The use of condition variables in driver code is checked.
2019-04-06 11:27:39 +02:00
glx22
a1e492d0d8
Fix #7439 : don't overwrite CompanyRemoveReason with ClientID ( #7465 )
2019-04-05 15:11:52 +02:00
Samu
fb6e31ca43
Cleanup 3f32711: Don't apply forbid 90 deg turn settings for ships.
2019-04-05 10:03:54 +01:00
peter1138
8114bad033
Fix #7469 : Desync when using build and refit feature.
2019-04-04 23:29:43 +01:00
translators
24fc25164a
Update: Translations from eints
...
french: 3 changes by glx
croatian: 17 changes by VoyagerOne
2019-04-02 19:45:45 +02:00
Niels Martin Hansen
cebdd72146
Fix #7440 : Remove town sign when deleting town, not add it once more
2019-04-02 09:46:33 +02:00
translators
92d5835495
Update: Translations from eints
...
dutch: 2 changes by JanWillem
french: 19 changes by glx
2019-04-01 19:45:46 +02:00
translators
cb449049ff
Update: Translations from eints
...
english (us): 3 changes by Supercheese
spanish (mexican): 18 changes by Absay
hungarian: 2 changes by Brumi
latin: 33 changes by Supercheese
2019-03-31 19:45:45 +02:00
peter1138
f0336f1f17
Codechange: Remove ship max order distance from script API.
2019-03-31 17:22:54 +01:00
peter1138
f656f5e8eb
Change: Remove ship max order distance.
...
It is skipped when NPF is in use.
It is trivial to work around by adding and removing dummy orders.
It is mostly alleviated by the ship path cache in YAPF.
2019-03-31 17:22:54 +01:00
peter1138
66bed86bbb
Fix #7062 , Revert 7af53d7588: Don't test ship max order distance when pathfinding.
2019-03-31 17:22:54 +01:00
glx
d0e8060182
Fix 6fc60d8c4f: forgot to update API changelog
2019-03-31 03:33:03 +02:00
PeterN
6d1cc142c2
Change: Shorten engine rail type drop down in autoreplace window. ( #7448 )
...
In the autoreplace window, the rail type drop down is for choosing engines
of the given time. Many rail types do not have engines specifically designed for them,
and are merely compatible with other rail types. This list is thus unwieldy and many
options have no engines available.
As this drop down is for choosing _engine_ rail type rather than compatible rail types,
we can list just the rail types explicitly listed by engines.
2019-03-31 02:05:23 +01:00
PeterN
e1069eee05
Codechange: Check airport layout would fit within map bounds before iterating tiles. ( #7429 )
2019-03-30 22:20:26 +00:00
PeterN
32fda83d39
Fix aa7ca7fe6: Linkgraph node index order must be maintained due to other references. ( #7431 )
...
Linkgraph nodes require a specific order that was maintained by swapping just the last
element for the node to be removed. std::vector::erase() changed this to removing the
node is then shuffling the remain items down, which upsets other references to this
indices.
This is fixed by switching back to the original swap & pop method.
2019-03-30 22:19:50 +00:00
Andy
423aea5c32
Change: adjust Violet smallmap colour 1 shade darker, to compensate for legibility against darker blue of sea introduced by #7436
2019-03-30 22:57:07 +01:00
glx22
e93630541d
Fix #7433 : don't use AirportSpec substitute if it's not set ( #7435 )
2019-03-30 22:12:25 +01:00
Niels Martin Hansen
df673e9b2c
Fix: Fluidsynth should not try to lock sample data in memory
2019-03-30 22:11:32 +01:00
Niels Martin Hansen
66c60e52ba
Change: [SDL] Do not offer video smaller than 640x480
2019-03-30 22:02:14 +01:00
frosch
0cf25e84df
Fix #7447 , 3357cac847: Action 4 has feature 48 'original strings'. ( #7449 )
2019-03-30 19:56:43 +00:00
translators
3118f1430f
Update: Translations from eints
...
italian: 25 changes by lorenzodv
portuguese: 3 changes by JayCity
2019-03-30 19:45:46 +01:00
SamuXarick
ed51fba7ed
Change: Dark Blue company and water were indistinguishable in small map. ( #7436 )
2019-03-29 19:00:43 +00:00
translators
1d14e31be3
Update: Translations from eints
...
korean: 14 changes by telk5093
2019-03-29 19:45:45 +01:00
PeterN
b6e3e30d86
Codechange: Distance between town and airport has already just been found, so use it. ( #7427 )
...
Previously the distance was thrown away, only to be expensively recalculated again.
2019-03-29 17:43:06 +00:00
PeterN
9244dad3f1
Fix #7434 : Incorrect use of vector iterator. ( #7437 )
2019-03-29 17:42:32 +00:00
glx22
acb09eb9a8
Fix: [Win64] settingsgen MSVC compile warnings ( #7432 )
2019-03-28 21:25:21 +01:00
translators
cd3767bec2
Update: Translations from eints
...
luxembourgish: 29 changes by Phreeze
russian: 2 changes by Lone_Wolf
latin: 4 changes by Supercheese
portuguese: 1 change by JayCity
2019-03-28 19:45:46 +01:00
Michael Lutz
21d9e87b46
Fix #7165 : Const overload SmallMap::Contains(key) compared wrong types.
...
Const and non-const Find() have different return types.
2019-03-28 00:04:28 +00:00
stormcone
ee260e4704
Fix #7165 : SmallMap::Erase(key) does not work correctly
2019-03-28 00:04:28 +00:00
PeterN
7fb77ff35a
Fix: Incorrect display of industry production around tiles. ( #7426 )
...
Display of industry production around tiles (as shown when placing a station)
did not take account of the station catchment changes, so still showed production
from an industry even if it was not covered by a tile.
This is fixed by making a set of nearby industries that are covered, instead of
looping over all possible industries.
2019-03-27 23:10:02 +00:00
glx22
66dd7c3879
Fix: MSVC warnings ( #7423 )
2019-03-28 00:09:33 +01:00
translators
e817951bfd
Update: Translations from eints
...
finnish: 2 changes by hpiirai
english (us): 17 changes by Supercheese
luxembourgish: 10 changes by Phreeze
dutch: 20 changes by JanWillem
norwegian (bokmal): 2 changes by Leifbk
latin: 16 changes by Supercheese
portuguese: 3 changes by JayCity
2019-03-27 19:45:44 +01:00
Johannes E. Krause
fdaf67d924
Add: [Newgrf] Some 60+ Vars for industries that were missed in #6867
2019-03-27 10:44:21 +00:00
Johannes E. Krause
1a4c7a4e54
Cleanup: use switch for industry cargo vars
2019-03-27 10:44:21 +00:00
Charles Pigott
49f7332b75
Feature #6053 : Collapsible vehicle groups (3298)
2019-03-27 06:58:48 +00:00
Charles Pigott
8890436af1
Add #6189 : Groups now count the total number of vehicles in subgroups (3298)
2019-03-27 06:58:48 +00:00
Charles Pigott
a393c94695
Change #5977 : Use specific error message when attempting to create a circular group hierarchy (3298)
2019-03-27 06:58:48 +00:00
Charles Pigott
ed9005690a
Fix #7421 : Don't (directly) dereference std::vector::end() in SmallMap
2019-03-27 06:31:49 +00:00
stormcone
b913c92aa7
Fix #7165 : Missed 'Append() --> push_back()' replacement
2019-03-26 22:20:56 +00:00
glx22
427d9d483f
Fix #6564 : enforce types of arguments for station name strings ( #7419 )
2019-03-26 22:50:56 +01:00
Charles Pigott
a065d4623e
Codechange: Move 2 constants into the ifdef where they're used
2019-03-26 20:54:40 +00:00
Charles Pigott
7c81f8e076
Codechange: Simplify refit cargo filter condition and stop mixing enum types
2019-03-26 20:54:40 +00:00
Charles Pigott
e453572b6a
Codechange: Initialise a few variables that -flto seems to think could possibly be uninitialised
2019-03-26 20:54:40 +00:00
Henry Wilson
03ca3190c9
Codechange: Use range-based for-loop in Auto[Free|Delete]SmallVector
2019-03-26 20:15:57 +00:00
Henry Wilson
cc62f4163f
Cleanup: Remove unused size template parameters from SmallMap and Auto[Free|Delete]SmallVector
2019-03-26 20:15:57 +00:00
Henry Wilson
c01a2e2a81
Codechange: Removed SmallVector completely
2019-03-26 20:15:57 +00:00
Henry Wilson
6570f7989f
Codechange: Declare SmallVector as an alias for std::vector
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
297fd3dda3
Codechange: Replaced SmallVector::Include() with include()
2019-03-26 20:15:57 +00:00
Henry Wilson
2bc2de9034
Codechange: Replaced SmallVector::Find() with std::find()
2019-03-26 20:15:57 +00:00
Henry Wilson
e0c58bf5ee
Codechange: Removed SmallVector::Insert()
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
ca2f33c6d0
Codechange: Replaced SmallVector::Erase() with std::vector::erase()
2019-03-26 20:15:57 +00:00
Henry Wilson
097328c3d7
Codechange: Replaced SmallVector::Get() const with std alternatives
2019-03-26 20:15:57 +00:00
Henry Wilson
aa7ca7fe64
Codechange: Replaced SmallVector::Get(n) non-const with std::vector::data() + n
2019-03-26 20:15:57 +00:00
Henry Wilson
bc7dcaffca
Codechange: Removed SmallVector::Assign()
2019-03-26 20:15:57 +00:00
Henry Wilson
5795f66d2e
Codechange: Replaced SmallVector::Contains() with std::find() pattern
2019-03-26 20:15:57 +00:00
Henry Wilson
b1f5119d3a
Codechange: Replaced SmallVector::ErasePreservingOrder(pos, count) with std::vector::erase()
2019-03-26 20:15:57 +00:00
Henry Wilson
9b5cc73f3e
Codechange: Replaced SmallVector::ErasePreservingOrder(it, count) with std::vector::erase()
2019-03-26 20:15:57 +00:00
Henry Wilson
8460952240
Codechange: Replaced SmallVector::Find() const with suitable alternatives
...
The use of std::none_of in network/core/host.cpp is driven by the non-const
comparison operator use by NetworkAddress. A future commit should address
the const_casts in that class to ensure const-correctness.
2019-03-26 20:15:57 +00:00
Henry Wilson
81315939b9
Codechange: Replaced SmallVector::Find() non-const with std::find()
2019-03-26 20:15:57 +00:00
Henry Wilson
f3938fdb83
Codechange: Replaced SmallVector::Reset() with std::vector::clear() + shrink_to_fit()
2019-03-26 20:15:57 +00:00
Henry Wilson
bad2c2154b
Codechange: Replaced SmallVector::Resize() with std::vector::resize()
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
Henry Wilson
56ae855dc2
Codechange: Removed SmallVector::operator[]
2019-03-26 20:15:57 +00:00
Henry Wilson
9cba6f7193
Codechange: Replaced SmallVector::Compact() with std::vector::shrink_to_fit()
2019-03-26 20:15:57 +00:00
Henry Wilson
bfd79e59dc
Codechange: Replace SmallVector::Clear() with std::vector::clear()
2019-03-26 20:15:57 +00:00
Henry Wilson
4b349c0f90
Codechange: [core] Implement SmallVector using std::vector
...
The public and protected interface to SmallVector are unchanged
SmallVector now requires that items be default constructible
This isn't an issue since some contained items were previously created
uninitialized.
Temporary default constructors are added to the following structs
- SmallPair
- SmallStackItem
- GRFPresence
Where vector<bool> is required, transition immediately to std::vector
to avoid returning proxy object references.
2019-03-26 20:15:57 +00:00
translators
7a32cf1401
Update: Translations from eints
...
greek: 51 changes by Jubilee
russian: 17 changes by Lone_Wolf
latin: 19 changes by Supercheese
portuguese: 53 changes by JayCity
2019-03-26 19:45:43 +01:00
PeterN
e3ea758c46
Fix #7414 : Reinstate marking sign dirty before removal. ( #7416 )
2019-03-25 23:24:40 +00:00
stormcone
8acca3a72b
Change: Do not display a newspaper about old vehicles for which replacement is activated.
2019-03-25 23:41:06 +01:00
PeterN
698241e16e
Fix #7410 : Sign position/width not set on initial creation. ( #7413 )
...
Sign width was only updated when the text was changed. This seems to work for player-placed
signs as there is always a rename operation, however AIs can create a sign with text in one
go, in which case the width was never set.
2019-03-25 20:01:55 +00:00
PeterN
a4073895ae
Fix #7411 : Use industry production callback (if used) on initial industry cargo generation. ( #7412 )
2019-03-25 19:30:23 +00:00
translators
10f0c1e3cd
Update: Translations from eints
...
finnish: 12 changes by hpiirai
greek: 40 changes by Jubilee
luxembourgish: 2 changes by Phreeze
dutch: 12 changes by JanWillem
french: 4 changes by romazoon
norwegian (bokmal): 12 changes by Leifbk
hungarian: 14 changes by Brumi
portuguese: 51 changes by JayCity, 11 changes by vesgo
2019-03-25 19:45:45 +01:00
translators
37b9fdc0c1
Update: Translations from eints
...
finnish: 13 changes by hpiirai
korean: 1 change by telk5093
2019-03-24 19:45:44 +01:00
Niels Martin Hansen
ce10d9be3f
Fix #7374 : Ensure k-d trees are always updated when station sign moves
2019-03-24 19:26:13 +01:00
peter1138
3860a2ce2a
Codechange: Use override keyword for smallmap window.
2019-03-24 17:38:42 +00:00
peter1138
07de9d6c3f
Codechange: Use override keyword in networking classes.
2019-03-24 17:38:42 +00:00
peter1138
b1fb3f4fb8
Codechange: More use of override keyword.
2019-03-24 17:38:42 +00:00
peter1138
e6bb90543e
Change: Show additional cost and refitted capacity in build vehicle window.
2019-03-24 15:28:48 +00:00
glx
f8e6cd10ef
Add: script API functions for build with refit feature
2019-03-24 15:28:48 +00:00
peter1138
d54b6ac09b
Feature: When filtering purchase list by cargo type, make buy button perform a refit if required.
2019-03-24 15:28:48 +00:00
Peter Nelson
f6264e5212
Change: Bump savegame version for tree tile water class conversion.
2019-03-24 15:16:54 +00:00