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
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
81f159434d
Codechange: Add EditBoxGainedFocus method to VideoDriver base class
2019-11-10 17:58:42 +00:00
Jonathan G Rennison
04cf7d5500
Fix modifier key window not always updating
2019-10-06 05:21:16 +01:00
Jonathan G Rennison
a4c677a571
Add basic IME support to SDL2 video driver
2019-10-06 01:42:06 +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
glx
410b81537c
Fix 801cbea9c
: operator< is not always the best idea
...
Also removes unused and anyway broken SmallMap::SortByKey() function.
2019-04-13 21:05:25 +02:00
glx
801cbea9cc
Codechange: use std::sort() for all std::vector types
2019-04-13 12:49:18 +01:00
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
2019-04-11 18:14:13 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Jonathan G Rennison
ba34ec7ade
Merge branch 'master' into jgrpp
...
Replace build and refit, and group collapse implementations
Fix template creation build and refit
# Conflicts:
# Makefile.bundle.in
# config.lib
# src/animated_tile.cpp
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_base.hpp
# src/blitter/8bpp_base.hpp
# src/blitter/null.hpp
# src/build_vehicle_gui.cpp
# src/command.cpp
# src/command_func.h
# src/console_gui.cpp
# src/core/smallstack_type.hpp
# src/date.cpp
# src/debug.cpp
# src/genworld_gui.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/lang/korean.txt
# src/linkgraph/linkgraph_gui.h
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/core/game.h
# src/network/core/packet.cpp
# src/network/core/udp.cpp
# src/network/core/udp.h
# src/network/network_content.cpp
# src/network/network_type.h
# src/network/network_udp.cpp
# src/newgrf_house.h
# src/openttd.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/osk_gui.cpp
# src/pathfinder/opf/opf_ship.cpp
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/smallmap_gui.h
# src/station_base.h
# src/station_cmd.cpp
# src/table/gameopt_settings.ini
# src/table/newgrf_debug_data.h
# src/table/settings.ini
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/vehiclelist.cpp
# src/viewport.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
2019-03-27 18:12:04 +00:00
Henry Wilson
c01a2e2a81
Codechange: Removed SmallVector completely
2019-03-26 20:15:57 +00:00
peter1138
f5f33da126
Codechange: Implement OnTooltip event for custom window tooltips.
...
This avoids windows from needing to know or care about tooltip delay settings.
2019-03-20 23:00:32 +00:00
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.
2019-03-20 23:00:32 +00:00
Jonathan G Rennison
828a4399f9
Fix tunnel build viewport length tooltip when hover mode is right click
2019-03-11 20:01:29 +00:00
Jonathan G Rennison
635ee89b86
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/economy.cpp
2019-02-22 01:00:38 +00:00
Peter Nelson
de9f54ccc1
Codechange: Change scrolling_scrollbar to mouse_capture_widget, and dispatch OnClick() event if widget is not a scrollbar.
...
This allows any widget to support mouse capture.
2019-02-21 08:11:35 +00:00
Jonathan G Rennison
e3d167f9f0
Merge branch 'save_ext' into jgrpp
...
# Conflicts:
# config.lib
# src/misc_gui.cpp
# src/network/network_gui.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/smallmap_gui.h
# src/station_cmd.cpp
# src/toolbar_gui.cpp
# src/vehicle_gui.cpp
# src/window.cpp
2019-01-14 00:01:44 +00:00
Peter Nelson
2a8fa5fef9
Change: Split up Window::OnTick into OnGameTick and OnRealtimeTick. Adjust timers to work with milliseconds instead of ticks.
2019-01-11 11:56:21 +00:00
Jonathan G Rennison
6573a67b69
Change window allocation/destruction to avoid undefined behaviour
...
Create a new window base class which holds the front/back pointers
and the window class.
This fixes the voluminous warning spam about deleted windows when using
UndefinedBehaviorSanitizer.
2018-06-06 18:14:51 +01:00
Jonathan G Rennison
fe1e0a9d59
Merge branch 'enhanced_viewport_overlay' into jgrpp
2018-05-26 09:15:08 +01:00
Jonathan G Rennison
64815c0d8a
Improve performance of show scrolling viewport on map
2018-05-26 09:09:39 +01:00
Jonathan G Rennison
8ab6522e7c
Add a monotonically incrementing counter to UpdateWindows calls
...
This is for checking draw cache validity
2018-01-18 20:59:14 +00:00
Jonathan G Rennison
668702dc7e
Merge branch 'enhanced_viewport_overlay' into jgrpp
...
# Conflicts:
# src/misc_gui.cpp
2017-04-26 20:26:15 +01:00
Jonathan G Rennison
d94e37d9d1
Fix viewport tooltips not being cleared when scrolling using the keyboard.
...
Fix documentation typo.
2017-04-26 20:25:50 +01:00
cirdan
33e3956b13
Remove ZeroedMemoryAllocator from WindowDesc
...
All fields are initialised in the constructor, plus no WindowDesc
is ever constructed via operator new.
(cherry picked from commit 94750756bfbf8ab5ca36e6a38f6f7b556ca31b32)
2016-09-05 22:34:48 +01:00
Jonathan G Rennison
e24839ed65
Merge branch 'master' into enhanced_viewport_overlay
...
Notes on conflict resolution:
* MarkTileDirtyByTile gained an extra param on both sides of the merge
Move bridge level offset to be after zoom level param, as it's used less.
* Add zoom level params to MarkBridgeDirty functions
* Fix undefined behaviour in colour_index cycling in ViewportMapDraw
Conflicts:
src/clear_cmd.cpp
src/pbs.cpp
src/rail_cmd.cpp
src/toolbar_gui.cpp
src/train_cmd.cpp
src/vehicle.cpp
src/viewport.cpp
src/viewport_func.h
2015-08-05 21:25:13 +01:00
patch-import
536a95dfd0
Import combined Enhanced viewport: zoom out, overlays & tooltips (r53_27127) patch
...
https://www.tt-forums.net/viewtopic.php?f=33&t=53394
2015-08-05 21:24:30 +01:00
frosch
1cf09f804b
(svn r27147) -Fix: Scale (non-custom) default window sizes according to GUI zoom.
2015-02-13 21:25:48 +00:00
frosch
5ebc0c9934
(svn r27147) -Fix: Scale (non-custom) default window sizes according to GUI zoom.
2015-02-13 21:25:48 +00:00
frosch
e113f5e4a1
(svn r27146) -Fix: Make statusbar and chat-entry window use the same width as the toolbar. Otherwise they lack a size definition.
2015-02-13 21:13:45 +00:00
frosch
abe22e594d
(svn r27146) -Fix: Make statusbar and chat-entry window use the same width as the toolbar. Otherwise they lack a size definition.
2015-02-13 21:13:45 +00:00
alberth
eb9da96a46
(svn r27085) -Fix: Always return a valid window to the world generation gui code.
2014-12-18 18:20:59 +00:00
alberth
78896895cf
(svn r27085) -Fix: Always return a valid window to the world generation gui code.
2014-12-18 18:20:59 +00:00
alberth
b67d483b46
(svn r27084) -Doc: Improve documentation of AllocateWindowDescFront.
2014-12-18 16:50:11 +00:00
alberth
edea2ce96d
(svn r27084) -Doc: Improve documentation of AllocateWindowDescFront.
2014-12-18 16:50:11 +00:00
peter1138
6872b647f1
(svn r26960) -Codechange: Draw sort button symbols as sprites, and pad sort buttons with non-static width.
2014-10-05 11:20:02 +00:00
peter1138
0877f892c5
(svn r26960) -Codechange: Draw sort button symbols as sprites, and pad sort buttons with non-static width.
2014-10-05 11:20:02 +00:00
frosch
2a71d05478
(svn r25864) -Fix: Use the actual sprite dimensions for sizing the dropdown arrow of dropdown widgets.
2013-10-13 19:18:30 +00:00
frosch
12ddbb7cb1
(svn r25864) -Fix: Use the actual sprite dimensions for sizing the dropdown arrow of dropdown widgets.
2013-10-13 19:18:30 +00:00
michi_cc
164aba8732
(svn r25692) -Add: Replacement of a part of the edit box text with a new string.
2013-08-05 20:37:57 +00:00
michi_cc
d15c1c5d4a
(svn r25692) -Add: Replacement of a part of the edit box text with a new string.
2013-08-05 20:37:57 +00:00
michi_cc
e34fe220e2
(svn r25691) -Add: [OSX] Support for mouse selection in the IME composition string.
2013-08-05 20:37:53 +00:00
michi_cc
30867c487f
(svn r25691) -Add: [OSX] Support for mouse selection in the IME composition string.
2013-08-05 20:37:53 +00:00
michi_cc
4dbe823a5f
(svn r25690) -Change: [OSX] Position the candidate window at the caret position.
2013-08-05 20:37:48 +00:00
michi_cc
e2ec0ddb03
(svn r25690) -Change: [OSX] Position the candidate window at the caret position.
2013-08-05 20:37:48 +00:00
michi_cc
88a71979dd
(svn r25689) -Add: [OSX] Display the IME composition string ourself.
2013-08-05 20:37:44 +00:00
michi_cc
f5e4131492
(svn r25689) -Add: [OSX] Display the IME composition string ourself.
2013-08-05 20:37:44 +00:00
michi_cc
d442d97cf1
(svn r25684) -Change: [Win32] Draw the composition string ourselves if possible.
2013-08-05 20:37:25 +00:00