diff --git a/Source/Editor/Windows/Search/ContentFinder.cs b/Source/Editor/Windows/Search/ContentFinder.cs
index 5b7ec18df..06b5852dd 100644
--- a/Source/Editor/Windows/Search/ContentFinder.cs
+++ b/Source/Editor/Windows/Search/ContentFinder.cs
@@ -139,8 +139,8 @@ namespace FlaxEditor.Windows.Search
{
var item = items[i];
SearchItem searchItem;
- if (item.Item is AssetItem assetItem)
- searchItem = new AssetSearchItem(item.Name, item.Type, assetItem, this, itemsWidth, itemHeight);
+ if (item.Item is ContentItem contentItem)
+ searchItem = new ContentSearchItem(item.Name, item.Type, contentItem, this, itemsWidth, itemHeight);
else
searchItem = new SearchItem(item.Name, item.Type, item.Item, this, itemsWidth, itemHeight);
searchItem.Y = i * itemHeight;
diff --git a/Source/Editor/Windows/Search/SearchItem.cs b/Source/Editor/Windows/Search/SearchItem.cs
index 780b43346..577f75dc0 100644
--- a/Source/Editor/Windows/Search/SearchItem.cs
+++ b/Source/Editor/Windows/Search/SearchItem.cs
@@ -113,17 +113,17 @@ namespace FlaxEditor.Windows.Search
}
///
- /// The for assets. Supports using asset thumbnail.
+ /// The for assets. Supports using content item thumbnail.
///
///
///
- internal class AssetSearchItem : SearchItem, IContentItemOwner
+ internal class ContentSearchItem : SearchItem, IContentItemOwner
{
- private AssetItem _asset;
- private FlaxEditor.GUI.ContextMenu.ContextMenu _cm;
+ private ContentItem _asset;
+ private ContextMenu _cm;
///
- public AssetSearchItem(string name, string type, AssetItem item, ContentFinder finder, float width, float height)
+ public ContentSearchItem(string name, string type, ContentItem item, ContentFinder finder, float width, float height)
: base(name, type, item, finder, width, height)
{
_asset = item;
@@ -136,31 +136,41 @@ namespace FlaxEditor.Windows.Search
///
public override bool OnShowTooltip(out string text, out Float2 location, out Rectangle area)
{
- if (string.IsNullOrEmpty(TooltipText) && Item is AssetItem assetItem)
+ if (string.IsNullOrEmpty(TooltipText) && Item is ContentItem contentItem)
{
- assetItem.UpdateTooltipText();
- TooltipText = assetItem.TooltipText;
+ contentItem.UpdateTooltipText();
+ TooltipText = contentItem.TooltipText;
}
return base.OnShowTooltip(out text, out location, out area);
}
+ ///
+ public override bool OnMouseDown(Float2 location, MouseButton button)
+ {
+ if (base.OnMouseDown(location, button))
+ return true;
+ if (button == MouseButton.Right && Item is ContentItem)
+ return true;
+ return false;
+ }
+
///
public override bool OnMouseUp(Float2 location, MouseButton button)
{
if (base.OnMouseUp(location, button))
return true;
- if (button == MouseButton.Right && Item is AssetItem assetItem)
+ if (button == MouseButton.Right && Item is ContentItem contentItem)
{
// Show context menu
- var proxy = Editor.Instance.ContentDatabase.GetProxy(assetItem);
+ var proxy = Editor.Instance.ContentDatabase.GetProxy(contentItem);
ContextMenuButton b;
- var cm = new FlaxEditor.GUI.ContextMenu.ContextMenu { Tag = assetItem };
+ var cm = new ContextMenu { Tag = contentItem };
b = cm.AddButton("Open", () => Editor.Instance.ContentFinding.Open(Item));
cm.AddSeparator();
- cm.AddButton(Utilities.Constants.ShowInExplorer, () => FileSystem.ShowFileExplorer(System.IO.Path.GetDirectoryName(assetItem.Path)));
- cm.AddButton("Show in Content window", () => Editor.Instance.Windows.ContentWin.Select(assetItem, true));
- b.Enabled = proxy != null && proxy.CanReimport(assetItem);
- if (assetItem is BinaryAssetItem binaryAsset)
+ cm.AddButton(Utilities.Constants.ShowInExplorer, () => FileSystem.ShowFileExplorer(System.IO.Path.GetDirectoryName(contentItem.Path)));
+ cm.AddButton("Show in Content window", () => Editor.Instance.Windows.ContentWin.Select(contentItem, true));
+ b.Enabled = proxy != null && proxy.CanReimport(contentItem);
+ if (contentItem is BinaryAssetItem binaryAsset)
{
if (!binaryAsset.GetImportPath(out string importPath))
{
@@ -172,14 +182,17 @@ namespace FlaxEditor.Windows.Search
}
}
cm.AddSeparator();
- cm.AddButton("Copy asset ID", () => Clipboard.Text = FlaxEngine.Json.JsonSerializer.GetStringID(assetItem.ID));
- cm.AddButton("Select actors using this asset", () => Editor.Instance.SceneEditing.SelectActorsUsingAsset(assetItem.ID));
- cm.AddButton("Show asset references graph", () => Editor.Instance.Windows.Open(new AssetReferencesGraphWindow(Editor.Instance, assetItem)));
- cm.AddSeparator();
- proxy?.OnContentWindowContextMenu(cm, assetItem);
- assetItem.OnContextMenu(cm);
- cm.AddButton("Copy name to Clipboard", () => Clipboard.Text = assetItem.NamePath);
- cm.AddButton("Copy path to Clipboard", () => Clipboard.Text = assetItem.Path);
+ if (contentItem is AssetItem assetItem)
+ {
+ cm.AddButton("Copy asset ID", () => Clipboard.Text = FlaxEngine.Json.JsonSerializer.GetStringID(assetItem.ID));
+ cm.AddButton("Select actors using this asset", () => Editor.Instance.SceneEditing.SelectActorsUsingAsset(assetItem.ID));
+ cm.AddButton("Show asset references graph", () => Editor.Instance.Windows.Open(new AssetReferencesGraphWindow(Editor.Instance, assetItem)));
+ cm.AddButton("Copy name to Clipboard", () => Clipboard.Text = assetItem.NamePath);
+ cm.AddButton("Copy path to Clipboard", () => Clipboard.Text = assetItem.Path);
+ cm.AddSeparator();
+ }
+ proxy?.OnContentWindowContextMenu(cm, contentItem);
+ contentItem.OnContextMenu(cm);
cm.Show(this, location);
_cm = cm;
return true;