disable edit tangents buttons when don't have any tangent or point selected

This commit is contained in:
Ruan Lucas
2023-07-19 08:43:11 -04:00
parent 590a892f16
commit 1ec2df1a29

View File

@@ -226,6 +226,12 @@ namespace FlaxEditor.CustomEditors.Dedicated
/// </summary>
public Spline SelectedSpline => !Values.HasDifferentValues && Values[0] is Spline ? (Spline)Values[0] : null;
private bool HasTangentsSelected => _selectedTangentIn != null || _selectedTangentOut != null;
private bool HasPointSelected => _lastPointSelected != null;
private bool CanSetTangentMode => HasPointSelected || HasTangentsSelected;
/// <summary>
/// Create a Spline editor
/// </summary>
@@ -273,6 +279,15 @@ namespace FlaxEditor.CustomEditors.Dedicated
UpdateSelectedPoint();
UpdateSelectedTangent();
_freeTangentButton.Button.Enabled = CanSetTangentMode;
_linearTangentButton.Button.Enabled = CanSetTangentMode;
_alignedTangentButton.Button.Enabled = CanSetTangentMode;
if (_lastPointSelected == null)
{
return;
}
var index = _lastPointSelected.Index;
var currentTangentInPosition = SelectedSpline.GetSplineLocalTangent(index, true).Translation;
var currentTangentOutPosition = SelectedSpline.GetSplineLocalTangent(index, false).Translation;
@@ -366,6 +381,8 @@ namespace FlaxEditor.CustomEditors.Dedicated
_selectedTangentOut = null;
}
private void OnSetTangentsLinear()
{
var enableUndo = Presenter.Undo != null && Presenter.Undo.Enabled;