Merge remote-tracking branch 'origin/master' into 1.6
This commit is contained in:
@@ -127,12 +127,34 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
_parameterSetNodeArchetype = info.ParameterSetNodeArchetype ?? Archetypes.Parameters.Nodes[3];
|
||||
|
||||
// Context menu dimensions
|
||||
Size = new Float2(320, 220);
|
||||
Size = new Float2(320, 248);
|
||||
|
||||
var headerPanel = new Panel(ScrollBars.None)
|
||||
{
|
||||
Parent = this,
|
||||
Height = 20,
|
||||
Width = Width - 4,
|
||||
X = 2,
|
||||
Y = 1,
|
||||
BackgroundColor = Style.Current.BackgroundNormal,
|
||||
};
|
||||
|
||||
// Title bar
|
||||
var titleLabel = new Label
|
||||
{
|
||||
Width = Width - 8,
|
||||
Height = 20,
|
||||
X = 4,
|
||||
Parent = headerPanel,
|
||||
Text = "Select Node",
|
||||
HorizontalAlignment = TextAlignment.Center,
|
||||
Font = new FontReference(Style.Current.FontLarge.Asset, 10),
|
||||
};
|
||||
|
||||
// Search box
|
||||
_searchBox = new SearchBox(false, 1, 1)
|
||||
_searchBox = new SearchBox(false, 2, 22)
|
||||
{
|
||||
Width = Width - 3,
|
||||
Width = Width - 4,
|
||||
Parent = this
|
||||
};
|
||||
_searchBox.TextChanged += OnSearchFilterChanged;
|
||||
@@ -549,6 +571,8 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
};
|
||||
|
||||
var group = CreateGroup(groupArchetype);
|
||||
group.ArrowImageOpened = new SpriteBrush(Style.Current.ArrowDown);
|
||||
group.ArrowImageClosed = new SpriteBrush(Style.Current.ArrowRight);
|
||||
group.Close(false);
|
||||
archetypeIndex = 0;
|
||||
for (int i = 0; i < parameters.Count; i++)
|
||||
|
||||
@@ -46,6 +46,11 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
ContextMenu = cm;
|
||||
Archetypes.Add(archetype);
|
||||
Name = archetype.Name;
|
||||
EnableDropDownIcon = true;
|
||||
HeaderColor = Style.Current.Background;
|
||||
ArrowImageOpened = new SpriteBrush(Style.Current.ArrowDown);
|
||||
ArrowImageClosed = new SpriteBrush(Style.Current.ArrowRight);
|
||||
CloseAnimationTime = 0;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -87,6 +87,11 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
SortScore += 5;
|
||||
}
|
||||
|
||||
private void GetTextRectangle(out Rectangle textRect)
|
||||
{
|
||||
textRect = new Rectangle(22, 0, Width - 24, Height);
|
||||
}
|
||||
|
||||
private bool CanConnectTo(Box startBox, NodeArchetype nodeArchetype)
|
||||
{
|
||||
if (startBox == null)
|
||||
@@ -123,6 +128,7 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
}
|
||||
else
|
||||
{
|
||||
GetTextRectangle(out var textRect);
|
||||
if (QueryFilterHelper.Match(filterText, _archetype.Title, out var ranges))
|
||||
{
|
||||
// Update highlights
|
||||
@@ -136,7 +142,7 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
{
|
||||
var start = font.GetCharPosition(_archetype.Title, ranges[i].StartIndex);
|
||||
var end = font.GetCharPosition(_archetype.Title, ranges[i].EndIndex);
|
||||
_highlights.Add(new Rectangle(start.X + 2, 0, end.X - start.X, Height));
|
||||
_highlights.Add(new Rectangle(start.X + textRect.X, 0, end.X - start.X, Height));
|
||||
|
||||
if (ranges[i].StartIndex <= 0)
|
||||
{
|
||||
@@ -158,7 +164,7 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
var font = style.FontSmall;
|
||||
var start = font.GetCharPosition(_archetype.Title, 0);
|
||||
var end = font.GetCharPosition(_archetype.Title, _archetype.Title.Length - 1);
|
||||
_highlights.Add(new Rectangle(start.X + 2, 0, end.X - start.X, Height));
|
||||
_highlights.Add(new Rectangle(start.X + textRect.X, 0, end.X - start.X, Height));
|
||||
_isFullMatch = true;
|
||||
Visible = true;
|
||||
}
|
||||
@@ -173,7 +179,7 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
var font = style.FontSmall;
|
||||
var start = font.GetCharPosition(_archetype.Title, 0);
|
||||
var end = font.GetCharPosition(_archetype.Title, _archetype.Title.Length - 1);
|
||||
_highlights.Add(new Rectangle(start.X + 2, 0, end.X - start.X, Height));
|
||||
_highlights.Add(new Rectangle(start.X + textRect.X, 0, end.X - start.X, Height));
|
||||
Visible = true;
|
||||
|
||||
Data = data;
|
||||
@@ -192,7 +198,7 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
{
|
||||
var style = Style.Current;
|
||||
var rect = new Rectangle(Float2.Zero, Size);
|
||||
var textRect = new Rectangle(2, 0, rect.Width - 4, rect.Height);
|
||||
GetTextRectangle(out var textRect);
|
||||
var showScoreHit = SortScore > 0.1f;
|
||||
|
||||
// Overlay
|
||||
|
||||
Reference in New Issue
Block a user