Fix button being interactable when collapsed

Did not match the expandable button in distance snap toolbox.
This commit is contained in:
Bartłomiej Dach 2024-10-01 11:27:45 +02:00
parent 44b982864c
commit 9dad38c457
No known key found for this signature in database
1 changed files with 10 additions and 8 deletions

View File

@ -202,12 +202,6 @@ protected override void LoadComplete()
gridLinesRotationSlider.ExpandedLabelText = $"Rotation: {rotation.NewValue:#,0.##}"; gridLinesRotationSlider.ExpandedLabelText = $"Rotation: {rotation.NewValue:#,0.##}";
}, true); }, true);
expandingContainer?.Expanded.BindValueChanged(v =>
{
gridTypeButtons.FadeTo(v.NewValue ? 1f : 0f, 500, Easing.OutQuint);
gridTypeButtons.BypassAutoSizeAxes = !v.NewValue ? Axes.Y : Axes.None;
}, true);
GridType.BindValueChanged(v => GridType.BindValueChanged(v =>
{ {
GridLinesRotation.Disabled = v.NewValue == PositionSnapGridType.Circle; GridLinesRotation.Disabled = v.NewValue == PositionSnapGridType.Circle;
@ -229,12 +223,20 @@ protected override void LoadComplete()
}, true); }, true);
editorBeatmap.BeatmapReprocessed += updateEnabledStates; editorBeatmap.BeatmapReprocessed += updateEnabledStates;
editorBeatmap.SelectedHitObjects.BindCollectionChanged((_, _) => updateEnabledStates(), true); editorBeatmap.SelectedHitObjects.BindCollectionChanged((_, _) => updateEnabledStates());
expandingContainer?.Expanded.BindValueChanged(v =>
{
gridTypeButtons.FadeTo(v.NewValue ? 1f : 0f, 500, Easing.OutQuint);
gridTypeButtons.BypassAutoSizeAxes = !v.NewValue ? Axes.Y : Axes.None;
updateEnabledStates();
}, true);
} }
private void updateEnabledStates() private void updateEnabledStates()
{ {
useSelectedObjectPositionButton.Enabled.Value = editorBeatmap.SelectedHitObjects.Count == 1 && StartPosition.Value != ((IHasPosition)editorBeatmap.SelectedHitObjects.Single()).Position; useSelectedObjectPositionButton.Enabled.Value = expandingContainer?.Expanded.Value == true
&& editorBeatmap.SelectedHitObjects.Count == 1
&& StartPosition.Value != ((IHasPosition)editorBeatmap.SelectedHitObjects.Single()).Position;
} }
private void nextGridSize() private void nextGridSize()