Charles Pigott
860c270c73
Codechange: Replace assert_compile macro with static_assert
2020-12-27 10:55:42 +00:00
Jonathan G Rennison
5fe5884613
Debug: Add experimental command to switch baseset
2020-12-26 10:54:01 +00:00
Patric Stout
d5b9f7ac37
Add: [Emscripten] use "relative mouse mode" with SDL2
...
This mode doesn't wrap the mouse constantly, but requests SDL
to lock the mouse pointer. This is needed, as with Emscripten
you are not allowed to change the mouse poisition (only to lock
it into place).
2020-12-15 15:46:39 +01:00
Jonathan G Rennison
6ecf232edd
Fix rendering artefacts in colour news window viewports
...
Off by one error in applying dimming recolour created
doubly-dimmed lines on dirty block redrawing boundaries.
2020-12-09 22:56:49 +00:00
Jonathan G Rennison
0902243ab3
Allow changing the colour of plans
2020-11-06 22:40:02 +00:00
Jonathan G Rennison
ab4026c28d
Fix assertion failure when redrawing window/widget wholly off-screen
2020-10-23 17:30:57 +01:00
Jonathan G Rennison
d29a08dfe1
Add gfx_debug console command
2020-10-02 02:10:09 +01:00
Jonathan G Rennison
a474e71243
Viewport: Cache landscape pixels in map mode
...
Avoid invalidating landscape pixels for non-landscape updates
(vehicles, overlays, etc.)
2020-10-01 23:18:39 +01:00
Jonathan G Rennison
35565a115b
Viewport: Fix casing of ClearViewportCache(s)
2020-10-01 23:18:39 +01:00
Jonathan G Rennison
5b78090a61
Merge branch 'master' into jgrpp
...
# Conflicts:
# CMakeLists.txt
# src/saveload/town_sl.cpp
# src/screenshot.h
# src/script/api/ai/ai_date.hpp.sq
# src/script/api/ai/ai_marine.hpp.sq
# src/script/api/ai/ai_station.hpp.sq
# src/script/api/game/game_date.hpp.sq
# src/script/api/game/game_marine.hpp.sq
# src/script/api/game/game_station.hpp.sq
# src/script/api/game/game_window.hpp.sq
# src/script/api/script_window.hpp
# src/script/api/template/template_window.hpp.sq
# src/signal.cpp
# src/statusbar_gui.cpp
# src/toolbar_gui.cpp
# src/viewport.cpp
# src/viewport_func.h
2020-08-27 18:31:09 +01:00
Jonathan G Rennison
48b15bb7b8
Avoid superfluous calls to SetDirtyAsBlocks when dragging window
...
See: #170
2020-07-09 20:27:51 +01:00
TechGeekNZ
cf8ea74733
Update: Merge branch 'jgrpp_master_cmake' into jgrpp_cmake
2020-06-28 21:56:43 +01:00
TechGeekNZ
fd2a120c9d
Cleanup: Improve documentation of dirty block system.
...
Partially re-applies 8652a4db76
, which
was reverted to allow commits to be cherry-picked from JGRPP.
2020-06-27 11:34:30 +12:00
TechGeekNZ
c9abf6ade6
Revert: "Cleanup: Give SetDirtyBlocks
a more descriptive name."
...
This reverts commit 8652a4db76
.
This is necessary to aid in the cherry-picking of commits from JGRPP.
2020-06-27 11:32:26 +12:00
TechGeekNZ
8652a4db76
Cleanup: Give SetDirtyBlocks
a more descriptive name.
2020-06-09 13:15:47 +01:00
TechGeekNZ
3d8597d42e
Cleanup: Add undocumented parameter to GetSpriteSize.
2020-06-07 01:04:41 +01:00
Jonathan G Rennison
4c59dfb6b1
Fix data race during palette animation with threaded blitters
2020-04-12 00:12:58 +01:00
Jonathan G Rennison
c061675001
Allow modal progress sleep to finish early on completion
2020-04-12 00:12:58 +01:00
Jonathan G Rennison
e2ab622a14
Avoid data race in modal progress mode
2020-04-12 00:12:58 +01:00
Jonathan G Rennison
0a6a38886d
Viewport: Fix viewport updates being applied to shaded windows
2020-03-28 23:54:01 +00:00
Jonathan G Rennison
c227d30801
Fix window re-rendering when ReInit() called within OnPaint/draw handler
2020-03-23 00:22:46 +00:00
Jonathan G Rennison
722af5f77a
Do not assert when attempting to draw 0 size sprite
...
Silently drop instead
2020-03-18 11:22:11 +00:00
Jonathan G Rennison
b4a814d371
Improve performance of vehicle route overlay rendering
2020-03-05 23:06:01 +00:00
Jonathan G Rennison
a4608f6f72
Cache vehicle positions across draw blocks in viewport map mode
2020-03-05 23:06:01 +00:00
Jonathan G Rennison
8f442500ea
Change how dirty screen, window and viewport areas are tracked for later redrawing
...
Track dirty viewport areas seperately form general screen redraws.
Maintain a dirty block grid per viewport, with a smaller block size.
Use even smaller block size in viewport map mode.
Use a rectangle array for general screen redraws instead of a block grid.
Add a dirty bit to windows and widgets, to simplify the common case
of repainting a whole window or widget, without catching
neighbouring windows or viewports.
2020-03-05 00:27:17 +00:00
Jonathan G Rennison
a152e2327c
Viewport: Reduce unnecessary region redraws when scrolling viewports
2020-02-09 10:54:32 +00:00
Jonathan G Rennison
4adfe0c9ae
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/industry_gui.cpp
# src/lang/korean.txt
# src/town.h
# src/town_gui.cpp
2020-01-08 18:40:34 +00:00
Niels Martin Hansen
35c55dfe70
Add: Filled polygon drawing function
2020-01-07 18:13:58 +01:00
Jonathan G Rennison
7960db35f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# config.lib
# projects/openttd_vs140.vcxproj
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj
# projects/openttd_vs142.vcxproj.filters
# src/aircraft_cmd.cpp
# src/base_station_base.h
# src/core/pool_type.hpp
# src/disaster_vehicle.cpp
# src/economy.cpp
# src/engine.cpp
# src/group.h
# src/group_cmd.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/linkgraph/linkgraph_gui.cpp
# src/network/network_command.cpp
# src/network/network_server.cpp
# src/openttd.cpp
# src/order_cmd.cpp
# src/road_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/cargopacket_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/station_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/screenshot.cpp
# src/screenshot.h
# src/settings_gui.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/table/settings.ini
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/train.h
# src/train_cmd.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehiclelist.cpp
# src/window_type.h
2020-01-06 18:45:51 +00:00
glx
42144ecd56
Add: a TextColour flag to ignore colour changes from strings
2019-12-23 17:30:13 +00:00
Jonathan G Rennison
fe9b024f1a
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/signs_cmd.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/town_cmd.cpp
# src/viewport.cpp
# src/waypoint.cpp
# src/waypoint_cmd.cpp
2019-12-11 18:20:24 +00:00
stormcone
40ebf3c765
Fix: Do not refer to a function in the documentation that was removed years ago ( #7844 )
...
The 'DoDrawString' was removed with this commit: f11300d
2019-11-25 22:59:03 +01:00
Jonathan G Rennison
cbdd9f84d8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_gui.cpp
# src/lang/korean.txt
# src/video/sdl2_v.cpp
# src/video/sdl2_v.h
# src/window.cpp
# src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Jonathan G Rennison
edfd378e93
Merge branch 'master' into jgrpp
...
# Conflicts:
# source.list
# src/blitter/32bpp_anim.cpp
# src/linkgraph/linkgraphjob.cpp
# src/order_cmd.cpp
# src/vehicle.cpp
# src/vehicle_type.h
2019-10-05 21:45:54 +01:00
JMcKiern
04f659e768
Fix: Some typos found using codespell
2019-09-29 21:27:32 +01:00
Jonathan G Rennison
b3431512ee
Add modifier key window for toggling shift/ctrl key states using mouse
2019-09-05 23:21:41 +01:00
Jonathan G Rennison
36eb4165b8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/bridge_map.h
# src/crashlog.cpp
# src/industry.h
# src/linkgraph/linkgraph_type.h
# src/order_type.h
# src/saveload/afterload.cpp
# src/settings.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/stdafx.h
# src/table/settings.h.preamble
# src/train.h
# src/vehicle.cpp
# src/viewport.cpp
# src/viewport_func.h
# src/widgets/station_widget.h
# src/zoom_func.h
# src/zoom_type.h
2019-07-08 16:19:07 +01:00
Charles Pigott
327ff89808
Codechange: Remove PauseModeByte
2019-04-29 17:40:22 +01:00
Charles Pigott
96a4787710
Codechange: Set ZoomLevel's base type to byte instead of using ZoomLevelByte
2019-04-29 17:40:22 +01:00
Jonathan G Rennison
bd2fdde759
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/core/sort_func.hpp
# src/rail_cmd.cpp
# src/timetable_cmd.cpp
# src/video/sdl_v.cpp
# src/video/win32_v.cpp
2019-04-23 08:11:52 +01:00
glx
9195f2337a
Codechange: use std::vector for _resolutions
2019-04-18 21:49:34 +02:00
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
2019-04-11 18:14:13 +01:00
Jonathan G Rennison
f5747bf753
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/genworld_gui.cpp
# src/group_gui.cpp
# src/saveload/saveload.cpp
# src/settings_gui.cpp
# src/toolbar_gui.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_type.h
2019-04-11 18:12:22 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +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
Jonathan G Rennison
361758b516
Merge branches 'crashlog_improvements', 'save_ext' into jgrpp
...
# Conflicts:
# Makefile.src.in
# projects/openttd_vs140.vcxproj
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj
# projects/openttd_vs142.vcxproj.filters
# src/core/smallstack_type.hpp
# src/linkgraph/linkgraphjob.cpp
# src/linkgraph/linkgraphjob.h
# src/misc.cpp
# src/network/network_udp.cpp
# src/openttd.cpp
# src/saveload/saveload.cpp
2019-04-09 19:06:26 +01: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
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