mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-11-08 18:50:34 +01:00
feat(editor): the panel of a signal picked swaps its template for another of its kind and mount, the name, the plate, the place and the read event kept, a head leaning to one side for its counterpart leaning towards the track; one step of undo, the selftest signalswap
This commit is contained in:
@@ -50,7 +50,7 @@ http://mozilla.org/MPL/2.0/.
|
||||
|
||||
editor_mode::selftest_result editor_mode::selftest_signal(std::string const &command, std::istringstream &words)
|
||||
{
|
||||
if (command == "signal" || command == "signalmove" || command == "signaldelete" || command == "signalrename" || command == "signalprobe" || command == "signalflip" || command == "signalturn")
|
||||
if (command == "signal" || command == "signalmove" || command == "signaldelete" || command == "signalrename" || command == "signalprobe" || command == "signalflip" || command == "signalturn" || command == "signalselect" || command == "signalswap")
|
||||
{
|
||||
auto values{selftest_values(words)};
|
||||
show_track_tab(track_tab::signals);
|
||||
@@ -141,6 +141,24 @@ editor_mode::selftest_result editor_mode::selftest_signal(std::string const &com
|
||||
auto const done{standing != nullptr && (command == "signalflip" ? signal_flip(standing->include.instance) : signal_turn(standing->include.instance))};
|
||||
WriteLog("SELFTEST " + command + " " + values["name"] + (done ? ": " : ": failed, ") + tool.status);
|
||||
}
|
||||
else if (command == "signalselect" || command == "signalswap")
|
||||
{
|
||||
auto const *standing{standing_named(values["name"])};
|
||||
if (standing == nullptr)
|
||||
{
|
||||
WriteLog("SELFTEST " + command + ": no signal " + values["name"]);
|
||||
return selftest_result::handled;
|
||||
}
|
||||
auto const instance{standing->include.instance};
|
||||
signal_select(instance);
|
||||
if (command == "signalswap")
|
||||
{
|
||||
auto const done{signal_swap(instance, values["file"])};
|
||||
WriteLog("SELFTEST signalswap " + values["name"] + (done ? ": " : ": failed, ") + tool.status);
|
||||
}
|
||||
else
|
||||
WriteLog("SELFTEST signalselect " + values["name"] + ": " + standing->include.file);
|
||||
}
|
||||
else if (command == "signaldelete")
|
||||
{
|
||||
auto const *standing{standing_named(values["name"])};
|
||||
|
||||
Reference in New Issue
Block a user