diff --git a/src/BizHawk.Client.EmuHawk/CustomControls/InputRoll/InputRoll.cs b/src/BizHawk.Client.EmuHawk/CustomControls/InputRoll/InputRoll.cs index d01d04b083..7651ebb0a0 100644 --- a/src/BizHawk.Client.EmuHawk/CustomControls/InputRoll/InputRoll.cs +++ b/src/BizHawk.Client.EmuHawk/CustomControls/InputRoll/InputRoll.cs @@ -477,6 +477,10 @@ namespace BizHawk.Client.EmuHawk [Description("Occurs when a cell is dragged and then dropped into a new cell, old cell is the cell that was being dragged, new cell is its new destination")] public event CellDroppedEvent CellDropped; + [Category("Property Changed")] + [Description("Fires after rotation has been changed.")] + public event EventHandler RotationChanged; + /// /// Retrieve the text for a cell /// @@ -1568,6 +1572,7 @@ namespace BizHawk.Client.EmuHawk private void OrientationChanged() { + RotationChanged?.Invoke(this, EventArgs.Empty); // TODO scroll to correct positions ColumnChangedCallback(); Refresh(); diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs index 6997cb1822..07e9e8ffb0 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.Designer.cs @@ -895,6 +895,7 @@ namespace BizHawk.Client.EmuHawk this.TasView.RightMouseScrolled += new BizHawk.Client.EmuHawk.InputRoll.RightMouseScrollEventHandler(this.TasView_MouseWheel); this.TasView.ColumnReordered += new BizHawk.Client.EmuHawk.InputRoll.ColumnReorderedEventHandler(this.TasView_ColumnReordered); this.TasView.CellDropped += new BizHawk.Client.EmuHawk.InputRoll.CellDroppedEvent(this.TasView_CellDropped); + this.TasView.RotationChanged += new System.EventHandler(this.HandleRotationChanged); this.TasView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TasView_KeyDown); this.TasView.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.TasView_MouseDoubleClick); this.TasView.MouseDown += new System.Windows.Forms.MouseEventHandler(this.TasView_MouseDown); diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs index 65827341e8..9a556f78b2 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.MenuItems.cs @@ -1019,7 +1019,6 @@ namespace BizHawk.Client.EmuHawk private void RotateMenuItem_Click(object sender, EventArgs e) { TasView.HorizontalOrientation = !TasView.HorizontalOrientation; - CurrentTasMovie.FlagChanges(); } private void HideLagFramesX_Click(object sender, EventArgs e) diff --git a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs index a663dda2c4..8aeaa498d9 100644 --- a/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs +++ b/src/BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs @@ -180,16 +180,7 @@ namespace BizHawk.Client.EmuHawk return; } - if (TasView.Rotatable) - { - RightClickMenu.Items.AddRange(TasView.GenerateContextMenuItems() - .ToArray()); - - RightClickMenu.Items - .OfType() - .First(t => t.Name == "RotateMenuItem") - .Click += (o, ov) => { CurrentTasMovie.FlagChanges(); }; - } + RightClickMenu.Items.AddRange(TasView.GenerateContextMenuItems().ToArray()); TasView.ScrollSpeed = Settings.ScrollSpeed; TasView.AlwaysScroll = Settings.FollowCursorAlwaysScroll; @@ -1251,5 +1242,20 @@ namespace BizHawk.Client.EmuHawk } } } + + private void HandleRotationChanged(object sender, EventArgs e) + { + CurrentTasMovie.FlagChanges(); + if (TasView.HorizontalOrientation) + { + BranchesMarkersSplit.Orientation = Orientation.Vertical; + BranchesMarkersSplit.SplitterDistance = 200; + } + else + { + BranchesMarkersSplit.Orientation = Orientation.Horizontal; + BranchesMarkersSplit.SplitterDistance = _defaultBranchMarkerSplitDistance; + } + } } }