mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-11-04 19:59:25 +01:00
feat(editor): track editor driven by what the cursor is over: the outline and a label show what a click or a drag does, snapping to free ends on the screen, handles and ends dragged directly, no rotation gizmo; laying from a free end the same in every mode, straight with Shift, the curve of a switch going on past its diverging end; height 0 where there's no terrain; placed switch leaves the switch mode, double slips listed apart, a drive of the switch placed with it by the //$e switch description of its template; compound curves of any number of radii; dragged end of a straight fits the curve beside it; name of a path, followed by the memory cells and the includes taking it; turntable placed from a template described as one, tracks led out of it and the tracks around fitted to it, its positions written to the include; infrastructure bound to the path whose events read its memory cell; terrain made where the route has none and shaped to the formation under the ballast; models along the track over the selected path and on along the joined ones while dragged, rarely used settings folded; vehicles and trainsets placed on any path, switches included, facing the way the arrow shows; joined paths spread into the selection; New scenery in the File menu starts the editor again with the wizard; ortho zoom towards the cursor; scripted self tests; Polish translation
This commit is contained in:
@@ -68,6 +68,7 @@ class editor_ui : public ui_layer
|
||||
}
|
||||
// actions of the file menu, performed by the editor mode
|
||||
void set_file_actions(std::function<void()> Save, std::function<void()> Export);
|
||||
void set_new_scenery(std::function<void()> New) { m_newscenery = std::move(New); }
|
||||
// shows outcome of an operation in the layers window
|
||||
void set_status(std::string const &Status, bool const Error = false);
|
||||
|
||||
@@ -84,6 +85,7 @@ class editor_ui : public ui_layer
|
||||
includes_panel m_includespanel{"Include database", false};
|
||||
std::function<void()> m_save;
|
||||
std::function<void()> m_export;
|
||||
std::function<void()> m_newscenery;
|
||||
brush_object_list m_brushobjects;
|
||||
bool m_insertrandom{false}; // insert mode picks a random template from m_insertset
|
||||
model_set_ref m_insertset;
|
||||
|
||||
Reference in New Issue
Block a user