mirror of
https://github.com/osukey/osukey.git
synced 2025-08-04 15:16:38 +09:00
Merge branch 'master' into delete-selection
This commit is contained in:
@ -218,12 +218,17 @@ namespace osu.Game.Screens.Edit.Compose.Components
|
||||
}
|
||||
|
||||
AddInternal(marker = new Marker());
|
||||
}
|
||||
|
||||
CurrentNumber.ValueChanged += div =>
|
||||
protected override void LoadComplete()
|
||||
{
|
||||
base.LoadComplete();
|
||||
|
||||
CurrentNumber.BindValueChanged(div =>
|
||||
{
|
||||
marker.MoveToX(getMappedPosition(div.NewValue), 100, Easing.OutQuint);
|
||||
marker.Flash();
|
||||
};
|
||||
}, true);
|
||||
}
|
||||
|
||||
protected override void UpdateValue(float value)
|
||||
|
@ -226,7 +226,7 @@ namespace osu.Game.Screens.Edit.Compose.Components
|
||||
{
|
||||
get
|
||||
{
|
||||
if (!SelectedBlueprints.Any())
|
||||
if (!selectedBlueprints.Any(b => b.IsHovered))
|
||||
return Array.Empty<MenuItem>();
|
||||
|
||||
return new MenuItem[]
|
||||
@ -247,36 +247,36 @@ namespace osu.Game.Screens.Edit.Compose.Components
|
||||
|
||||
private MenuItem createHitSampleMenuItem(string name, string sampleName)
|
||||
{
|
||||
return new ThreeStateMenuItem(name, MenuItemType.Standard, setHitSampleState)
|
||||
return new TernaryStateMenuItem(name, MenuItemType.Standard, setHitSampleState)
|
||||
{
|
||||
State = { Value = getHitSampleState() }
|
||||
};
|
||||
|
||||
void setHitSampleState(ThreeStates state)
|
||||
void setHitSampleState(TernaryState state)
|
||||
{
|
||||
switch (state)
|
||||
{
|
||||
case ThreeStates.Disabled:
|
||||
case TernaryState.False:
|
||||
RemoveHitSample(sampleName);
|
||||
break;
|
||||
|
||||
case ThreeStates.Enabled:
|
||||
case TernaryState.True:
|
||||
AddHitSample(sampleName);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
ThreeStates getHitSampleState()
|
||||
TernaryState getHitSampleState()
|
||||
{
|
||||
int countExisting = SelectedHitObjects.Count(h => h.Samples.Any(s => s.Name == sampleName));
|
||||
|
||||
if (countExisting == 0)
|
||||
return ThreeStates.Disabled;
|
||||
return TernaryState.False;
|
||||
|
||||
if (countExisting < SelectedHitObjects.Count())
|
||||
return ThreeStates.Indeterminate;
|
||||
return TernaryState.Indeterminate;
|
||||
|
||||
return ThreeStates.Enabled;
|
||||
return TernaryState.True;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user