add script obsolete icon to script editor
This commit is contained in:
@@ -115,7 +115,7 @@ namespace FlaxEditor.CustomEditors.Dedicated
|
||||
{
|
||||
if (actor != null)
|
||||
group.Panel.TooltipText = Surface.SurfaceUtils.GetVisualScriptTypeDescription(TypeUtils.GetObjectType(actor));
|
||||
var settingsButton = group.AddSettingsButton();
|
||||
var settingsButton = group.AddHeaderButton("Settings.", 0.0f, FlaxEngine.GUI.Style.Current.Settings);
|
||||
settingsButton.Clicked += OnSettingsButtonClicked;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -640,7 +640,7 @@ namespace FlaxEditor.CustomEditors.Dedicated
|
||||
var group = layout.Group("Missing script");
|
||||
|
||||
// Add settings button to the group
|
||||
var settingsButton = group.AddSettingsButton();
|
||||
var settingsButton = group.AddHeaderButton("Settings.", 0.0f, FlaxEngine.GUI.Style.Current.Settings);
|
||||
settingsButton.Tag = index;
|
||||
settingsButton.Clicked += MissingSettingsButtonOnClicked;
|
||||
}
|
||||
@@ -739,6 +739,8 @@ namespace FlaxEditor.CustomEditors.Dedicated
|
||||
/// <inheritdoc />
|
||||
public override void Initialize(LayoutElementsContainer layout)
|
||||
{
|
||||
var _style = FlaxEngine.GUI.Style.Current;
|
||||
|
||||
// Area for drag&drop scripts
|
||||
var dragArea = layout.CustomContainer<DragAreaControl>();
|
||||
dragArea.CustomControl.ScriptsEditor = this;
|
||||
@@ -905,11 +907,30 @@ namespace FlaxEditor.CustomEditors.Dedicated
|
||||
};
|
||||
|
||||
// Add settings button to the group
|
||||
var settingsButton = group.AddSettingsButton();
|
||||
var settingsButton = group.AddHeaderButton("Settings.", 0.0f, _style.Settings);
|
||||
settingsButton.Tag = script;
|
||||
settingsButton.Clicked += OnSettingsButtonClicked;
|
||||
|
||||
group.Panel.HeaderTextMargin = new Margin(scriptDrag.Right - 12, 15, 2, 2);
|
||||
// Add script obsolete icon to the group
|
||||
if (scriptType.HasAttribute(typeof(ObsoleteAttribute), false))
|
||||
{
|
||||
ObsoleteAttribute attribute = null;
|
||||
foreach (var e in scriptType.GetAttributes(false))
|
||||
{
|
||||
if (e is not ObsoleteAttribute obsoleteAttribute)
|
||||
continue;
|
||||
attribute = obsoleteAttribute;
|
||||
break;
|
||||
}
|
||||
|
||||
string tooltip = "Script marked as obsolete." +
|
||||
(string.IsNullOrEmpty(attribute.Message) ? "" : $"\n{attribute.Message}") +
|
||||
(string.IsNullOrEmpty(attribute.DiagnosticId) ? "" : $"\n{attribute.DiagnosticId}");
|
||||
var obsoleteButton = group.AddHeaderButton(tooltip, settingsButton.Width + FlaxEditor.Utilities.Constants.UIMargin, Editor.Instance.Icons.Info32);
|
||||
obsoleteButton.Color = Color.Orange;
|
||||
}
|
||||
|
||||
group.Panel.HeaderTextMargin = new Margin(scriptDrag.Right - 12, 35, 2, 2);
|
||||
group.Object(values, editor);
|
||||
// Remove drop down arrows and containment lines if no objects in the group
|
||||
if (group.Children.Count == 0)
|
||||
|
||||
@@ -40,21 +40,21 @@ namespace FlaxEditor.CustomEditors.Elements
|
||||
/// Adds utility settings button to the group header.
|
||||
/// </summary>
|
||||
/// <returns>The created control.</returns>
|
||||
public Image AddSettingsButton()
|
||||
public Image AddHeaderButton(string tooltipText, float xOffset, SpriteHandle sprite)
|
||||
{
|
||||
var style = Style.Current;
|
||||
var settingsButtonSize = Panel.HeaderHeight;
|
||||
return new Image
|
||||
{
|
||||
TooltipText = "Settings",
|
||||
TooltipText = tooltipText,
|
||||
AutoFocus = true,
|
||||
AnchorPreset = AnchorPresets.TopRight,
|
||||
Parent = Panel,
|
||||
Bounds = new Rectangle(Panel.Width - settingsButtonSize, 0, settingsButtonSize, settingsButtonSize),
|
||||
Bounds = new Rectangle(Panel.Width - settingsButtonSize - xOffset, 0, settingsButtonSize, settingsButtonSize),
|
||||
IsScrollable = false,
|
||||
Color = style.ForegroundGrey,
|
||||
Margin = new Margin(1),
|
||||
Brush = new SpriteBrush(style.Settings),
|
||||
Brush = new SpriteBrush(sprite),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -249,7 +249,7 @@ namespace FlaxEditor.Windows.Assets
|
||||
return;
|
||||
|
||||
var parametersGroup = SurfaceUtils.InitGraphParametersGroup(layout);
|
||||
var settingButton = parametersGroup.AddSettingsButton();
|
||||
var settingButton = parametersGroup.AddHeaderButton("Settings.", 0.0f, FlaxEngine.GUI.Style.Current.Settings);
|
||||
settingButton.Clicked += (image, button) => OnSettingsButtonClicked(image, button, proxy.Window);
|
||||
var baseMaterial = materialInstance.BaseMaterial;
|
||||
var material = baseMaterial;
|
||||
|
||||
@@ -284,7 +284,7 @@ namespace FlaxEditor.Windows.Assets
|
||||
var setupGroup = layout.Group(Path.GetFileNameWithoutExtension(sourceAsset.Path));
|
||||
setupGroup.Panel.Tag = sourceAsset;
|
||||
setupGroup.Panel.MouseButtonRightClicked += OnPanelHeaderRightClicked;
|
||||
var settingsButton = setupGroup.AddSettingsButton();
|
||||
var settingsButton = setupGroup.AddHeaderButton("Settings.", 0.0f, FlaxEngine.GUI.Style.Current.Settings);
|
||||
settingsButton.Tag = sourceAsset;
|
||||
settingsButton.Clicked += OnShowSetupSettings;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user