mirror of
https://git.do.srb2.org/STJr/UltimateZoneBuilder.git
synced 2025-02-20 19:02:12 +00:00
Linedefs Mode: fixed a problem where flipping a highlighted linedef would also select the linedef. Fixes #571
This commit is contained in:
parent
3e9d86e4b3
commit
e0f620827d
1 changed files with 13 additions and 0 deletions
|
@ -1603,6 +1603,8 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
[BeginAction("fliplinedefs")]
|
||||
public void FlipLinedefs()
|
||||
{
|
||||
bool deselect = false;
|
||||
|
||||
// No selected lines?
|
||||
ICollection<Linedef> selected = General.Map.Map.GetSelectedLinedefs(true);
|
||||
if(selected.Count == 0)
|
||||
|
@ -1613,6 +1615,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
// Select the highlighted item
|
||||
highlighted.Selected = true;
|
||||
selected.Add(highlighted);
|
||||
|
||||
// If nothing was selected we want to deselect the highlighted line when we're done
|
||||
deselect = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1637,6 +1642,11 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
{
|
||||
General.Interface.DisplayStatus(StatusType.Warning, (selectedcount > 1 ? "Selected linedefs already point in the right direction!"
|
||||
: "Selected linedef already points in the right direction!"));
|
||||
|
||||
// There might be linedefs that were filtered out, so deselect all linedefs (if necessary) anyway
|
||||
if (deselect)
|
||||
General.Map.Map.ClearSelectedLinedefs();
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -1659,6 +1669,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
l.FlipSidedefs();
|
||||
}
|
||||
|
||||
if(deselect)
|
||||
General.Map.Map.ClearSelectedLinedefs();
|
||||
|
||||
// Redraw
|
||||
General.Map.Map.Update();
|
||||
General.Map.IsChanged = true;
|
||||
|
|
Loading…
Reference in a new issue