mirror of
https://git.do.srb2.org/STJr/ZoneBuilder.git
synced 2025-01-30 20:50:41 +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
af365fed73
commit
672e5ba6f6
1 changed files with 13 additions and 0 deletions
|
@ -1933,6 +1933,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)
|
||||
|
@ -1943,6 +1945,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;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1967,6 +1972,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;
|
||||
}
|
||||
|
||||
|
@ -1989,6 +1999,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