* Initial work on open function
* Further Setup
* Further Progress
* Fix Window crashing on open
* Implement on dropdown, on_resize and cursor for construction tab
* Implement on_mouse_down for construction tab
* Further Work on Construction Tab
* Fix track construction tool not working
* Implement disabled widgets for track selection
* Start work on 2nd Tab events
* Finish Station Tab
* Implement Events for signal Tab
* Implement 4th Tab events
* Fix window not displaying track and crash on selecting road bridge
* Minor Formatting
* Progress on construction on_tool_down
* Fix crash on construction _on_tool_down
* Implement on_tool_down
* Refactor construction_draw
* Fixes for CI
* Fix Station Catchment being permanently displayed
* Run clang format
* Split tabs into seperate files
* Fix for CI
* Fix Window not drawing on open
* Fix for CI
* Fix window crashing due to incorrect station type
* Replace while loops with for loops in Station and Signal Tabs
* Refactor Station Dropdown loops into Templated function
* Refactor ConstructionTab.cpp
* Fixes for CI
* Fix crash to desktop when constructing underground
* Fix incorrect tiles highlighting on tool update
* Fix for Xcode
* Fix crash to desktop when opening tram track construction window
* Fix problem in map_invalidate_selection_rect
- Fix problem which happened around the map edges,
some values are negative that time. Switching
to signed values (coord_t) solved the problem.
* Implement map_invalidate_tile_full()
Implement map_invalidate_tile_full at 0x004CBE5F
- The same code is used which is used in the hook
for 0x004CBE5F. Apparently that code was already
disassembled in the past.
* Addressed review comments
Those changes are made:
- 1088 changed to 1120 as this is in the original assembly code
- function signature changed to map_invalidate_tile_full(map::map_pos pos)
- hook at 0x004CBE5F is calling directly map_invalidate_tile_full(pos)
* Added comment about registers usage
* Remove temporary variable