mirror of
https://github.com/Artemis-RGB/Artemis
synced 2025-12-13 05:48:35 +00:00
Fix node picker not opening at cursor
This commit is contained in:
parent
5a5a6819b1
commit
0116bac346
@ -6,6 +6,7 @@ using Artemis.UI.Shared.Events;
|
|||||||
using Avalonia;
|
using Avalonia;
|
||||||
using Avalonia.Controls;
|
using Avalonia.Controls;
|
||||||
using Avalonia.Controls.PanAndZoom;
|
using Avalonia.Controls.PanAndZoom;
|
||||||
|
using Avalonia.Controls.Primitives;
|
||||||
using Avalonia.Input;
|
using Avalonia.Input;
|
||||||
using Avalonia.Interactivity;
|
using Avalonia.Interactivity;
|
||||||
using Avalonia.Markup.Xaml;
|
using Avalonia.Markup.Xaml;
|
||||||
@ -69,7 +70,7 @@ public partial class NodeScriptView : ReactiveUserControl<NodeScriptViewModel>
|
|||||||
if (ViewModel == null)
|
if (ViewModel == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
NodeScriptZoomBorder?.ContextFlyout?.ShowAt(NodeScriptZoomBorder);
|
((PopupFlyoutBase?) NodeScriptZoomBorder?.ContextFlyout)?.ShowAt(NodeScriptZoomBorder, true);
|
||||||
ViewModel.NodePickerViewModel.Position = point;
|
ViewModel.NodePickerViewModel.Position = point;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
26
src/Artemis.VisualScripting/Converters/JsonConverter.cs
Normal file
26
src/Artemis.VisualScripting/Converters/JsonConverter.cs
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
using System.Globalization;
|
||||||
|
using Artemis.Core;
|
||||||
|
using Avalonia.Data.Converters;
|
||||||
|
using Newtonsoft.Json;
|
||||||
|
|
||||||
|
namespace Artemis.VisualScripting.Converters;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Converts input into <see cref="Numeric" />.
|
||||||
|
/// </summary>
|
||||||
|
public class JsonConverter : IValueConverter
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public object? Convert(object? value, Type targetType, object? parameter, CultureInfo culture)
|
||||||
|
{
|
||||||
|
return JsonConvert.SerializeObject(value, Formatting.Indented);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
public object? ConvertBack(object? value, Type targetType, object? parameter, CultureInfo culture)
|
||||||
|
{
|
||||||
|
if (value == null)
|
||||||
|
return null;
|
||||||
|
return JsonConvert.DeserializeObject(value.ToString(), targetType);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -7,12 +7,15 @@
|
|||||||
xmlns:core="clr-namespace:Artemis.Core;assembly=Artemis.Core"
|
xmlns:core="clr-namespace:Artemis.Core;assembly=Artemis.Core"
|
||||||
xmlns:converters1="clr-namespace:Artemis.UI.Shared.Converters;assembly=Artemis.UI.Shared"
|
xmlns:converters1="clr-namespace:Artemis.UI.Shared.Converters;assembly=Artemis.UI.Shared"
|
||||||
xmlns:collections="clr-namespace:System.Collections;assembly=System.Runtime"
|
xmlns:collections="clr-namespace:System.Collections;assembly=System.Runtime"
|
||||||
|
xmlns:system="clr-namespace:System;assembly=System.Runtime"
|
||||||
|
xmlns:converters="clr-namespace:Artemis.VisualScripting.Converters"
|
||||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||||
x:Class="Artemis.VisualScripting.Nodes.Static.Screens.DisplayValueNodeCustomView"
|
x:Class="Artemis.VisualScripting.Nodes.Static.Screens.DisplayValueNodeCustomView"
|
||||||
x:DataType="screens:DisplayValueNodeCustomViewModel">
|
x:DataType="screens:DisplayValueNodeCustomViewModel">
|
||||||
<UserControl.Resources>
|
<UserControl.Resources>
|
||||||
<converters1:SKColorToStringConverter x:Key="SKColorToStringConverter" />
|
<converters1:SKColorToStringConverter x:Key="SKColorToStringConverter" />
|
||||||
<converters1:SKColorToColorConverter x:Key="SKColorToColorConverter" />
|
<converters1:SKColorToColorConverter x:Key="SKColorToColorConverter" />
|
||||||
|
<converters:JsonConverter x:Key="JsonConverter" />
|
||||||
</UserControl.Resources>
|
</UserControl.Resources>
|
||||||
<ContentControl Content="{CompiledBinding CurrentValue}" VerticalContentAlignment="Center">
|
<ContentControl Content="{CompiledBinding CurrentValue}" VerticalContentAlignment="Center">
|
||||||
<ContentControl.DataTemplates>
|
<ContentControl.DataTemplates>
|
||||||
@ -44,11 +47,9 @@
|
|||||||
<DataTemplate DataType="core:Numeric">
|
<DataTemplate DataType="core:Numeric">
|
||||||
<TextBlock Text="{Binding}" FontFamily="Consolas"/>
|
<TextBlock Text="{Binding}" FontFamily="Consolas"/>
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
<DataTemplate DataType="collections:IList">
|
|
||||||
<TextBlock Text="{Binding Count, StringFormat='List - {0} item(s)'}" FontFamily="Consolas"/>
|
<DataTemplate DataType="system:Object">
|
||||||
</DataTemplate>
|
<TextBlock Text="{Binding Converter={StaticResource JsonConverter}}" FontFamily="Consolas"/>
|
||||||
<DataTemplate>
|
|
||||||
<TextBlock Text="{Binding}" FontFamily="Consolas"/>
|
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ContentControl.DataTemplates>
|
</ContentControl.DataTemplates>
|
||||||
</ContentControl>
|
</ContentControl>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user