mirror of
https://github.com/Artemis-RGB/Artemis
synced 2025-12-12 21:38:38 +00:00
WIP - Changed Bindings into CompiledBindings
This commit is contained in:
parent
33f375e608
commit
59f9479d9a
@ -1,6 +1,8 @@
|
||||
<Application xmlns="https://github.com/avaloniaui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:ui="clr-namespace:Artemis.UI;assembly=Artemis.UI"
|
||||
xmlns:root="clr-namespace:Artemis.UI.Screens.Root;assembly=Artemis.UI"
|
||||
x:DataType="root:RootViewModel"
|
||||
x:Class="Artemis.UI.Linux.App">
|
||||
<Application.DataTemplates>
|
||||
<ui:ViewLocator />
|
||||
@ -12,16 +14,16 @@
|
||||
|
||||
<TrayIcon.Icons>
|
||||
<TrayIcons>
|
||||
<TrayIcon Icon="avares://Artemis.UI/Assets/Images/Logo/application.ico" ToolTipText="Artemis" Command="{Binding OpenScreen}" CommandParameter="Home">
|
||||
<TrayIcon Icon="avares://Artemis.UI/Assets/Images/Logo/application.ico" ToolTipText="Artemis" Command="{CompiledBinding OpenScreen}" CommandParameter="Home">
|
||||
<TrayIcon.Menu>
|
||||
<NativeMenu>
|
||||
<NativeMenuItem Header="Home" Command="{Binding OpenScreen}" CommandParameter="Home" />
|
||||
<!-- <NativeMenuItem Header="Workshop" Command="{Binding OpenScreen}" CommandParameter="Workshop" /> -->
|
||||
<NativeMenuItem Header="Surface Editor" Command="{Binding OpenScreen}" CommandParameter="Surface Editor" />
|
||||
<NativeMenuItem Header="Settings" Command="{Binding OpenScreen}" CommandParameter="Settings" />
|
||||
<NativeMenuItem Header="Home" Command="{CompiledBinding OpenScreen}" CommandParameter="Home" />
|
||||
<!-- <NativeMenuItem Header="Workshop" Command="{CompiledBinding OpenScreen}" CommandParameter="Workshop" /> -->
|
||||
<NativeMenuItem Header="Surface Editor" Command="{CompiledBinding OpenScreen}" CommandParameter="Surface Editor" />
|
||||
<NativeMenuItem Header="Settings" Command="{CompiledBinding OpenScreen}" CommandParameter="Settings" />
|
||||
<NativeMenuItemSeparator />
|
||||
<NativeMenuItem Header="Debugger" Command="{Binding OpenDebugger}" />
|
||||
<NativeMenuItem Header="Exit" Command="{Binding Exit}" />
|
||||
<NativeMenuItem Header="Debugger" Command="{CompiledBinding OpenDebugger}" />
|
||||
<NativeMenuItem Header="Exit" Command="{CompiledBinding Exit}" />
|
||||
</NativeMenu>
|
||||
</TrayIcon.Menu>
|
||||
</TrayIcon>
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
<Application xmlns="https://github.com/avaloniaui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:ui="clr-namespace:Artemis.UI;assembly=Artemis.UI"
|
||||
xmlns:root="clr-namespace:Artemis.UI.Screens.Root;assembly=Artemis.UI"
|
||||
x:DataType="root:RootViewModel"
|
||||
x:Class="Artemis.UI.MacOS.App">
|
||||
<Application.DataTemplates>
|
||||
<ui:ViewLocator />
|
||||
@ -12,16 +14,16 @@
|
||||
|
||||
<TrayIcon.Icons>
|
||||
<TrayIcons>
|
||||
<TrayIcon Icon="avares://Artemis.UI/Assets/Images/Logo/application.ico" ToolTipText="Artemis" Command="{Binding OpenScreen}" CommandParameter="Home">
|
||||
<TrayIcon Icon="avares://Artemis.UI/Assets/Images/Logo/application.ico" ToolTipText="Artemis" Command="{CompiledBinding OpenScreen}" CommandParameter="Home">
|
||||
<TrayIcon.Menu>
|
||||
<NativeMenu>
|
||||
<NativeMenuItem Header="Home" Command="{Binding OpenScreen}" CommandParameter="Home" />
|
||||
<!-- <NativeMenuItem Header="Workshop" Command="{Binding OpenScreen}" CommandParameter="Workshop" /> -->
|
||||
<NativeMenuItem Header="Surface Editor" Command="{Binding OpenScreen}" CommandParameter="Surface Editor" />
|
||||
<NativeMenuItem Header="Settings" Command="{Binding OpenScreen}" CommandParameter="Settings" />
|
||||
<NativeMenuItem Header="Home" Command="{CompiledBinding OpenScreen}" CommandParameter="Home" />
|
||||
<!-- <NativeMenuItem Header="Workshop" Command="{CompiledBinding OpenScreen}" CommandParameter="Workshop" /> -->
|
||||
<NativeMenuItem Header="Surface Editor" Command="{CompiledBinding OpenScreen}" CommandParameter="Surface Editor" />
|
||||
<NativeMenuItem Header="Settings" Command="{CompiledBinding OpenScreen}" CommandParameter="Settings" />
|
||||
<NativeMenuItemSeparator />
|
||||
<NativeMenuItem Header="Debugger" Command="{Binding OpenDebugger}" />
|
||||
<NativeMenuItem Header="Exit" Command="{Binding Exit}" />
|
||||
<NativeMenuItem Header="Debugger" Command="{CompiledBinding OpenDebugger}" />
|
||||
<NativeMenuItem Header="Exit" Command="{CompiledBinding Exit}" />
|
||||
</NativeMenu>
|
||||
</TrayIcon.Menu>
|
||||
</TrayIcon>
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
<UserControl xmlns="https://github.com/avaloniaui"
|
||||
<UserControl xmlns="https://github.com/avaloniaui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
@ -25,12 +25,12 @@
|
||||
<Panel>
|
||||
<controls:NumberBox Name="InnerNumberBox"
|
||||
AcceptsExpression="True"
|
||||
LargeChange="{Binding $parent[sharedControls:DraggableNumberBox].LargeChange}"
|
||||
SmallChange="{Binding $parent[sharedControls:DraggableNumberBox].SmallChange}"
|
||||
SimpleNumberFormat="{Binding $parent[sharedControls:DraggableNumberBox].SimpleNumberFormat}"
|
||||
attachedProperties:NumberBoxAssist.PrefixText="{Binding $parent[sharedControls:DraggableNumberBox].Prefix}"
|
||||
attachedProperties:NumberBoxAssist.SuffixText="{Binding $parent[sharedControls:DraggableNumberBox].Suffix}"
|
||||
HorizontalAlignment="{Binding $parent[sharedControls:DraggableNumberBox].HorizontalAlignment}"
|
||||
LargeChange="{CompiledBinding $parent[sharedControls:DraggableNumberBox].LargeChange}"
|
||||
SmallChange="{CompiledBinding $parent[sharedControls:DraggableNumberBox].SmallChange}"
|
||||
SimpleNumberFormat="{CompiledBinding $parent[sharedControls:DraggableNumberBox].SimpleNumberFormat}"
|
||||
attachedProperties:NumberBoxAssist.PrefixText="{CompiledBinding $parent[sharedControls:DraggableNumberBox].Prefix}"
|
||||
attachedProperties:NumberBoxAssist.SuffixText="{CompiledBinding $parent[sharedControls:DraggableNumberBox].Suffix}"
|
||||
HorizontalAlignment="{CompiledBinding $parent[sharedControls:DraggableNumberBox].HorizontalAlignment}"
|
||||
ValueChanged="NumberBox_OnValueChanged"/>
|
||||
<Rectangle Name="DragCollider" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Fill="Transparent"></Rectangle>
|
||||
</Panel>
|
||||
|
||||
@ -26,8 +26,8 @@
|
||||
</UserControl.Styles>
|
||||
|
||||
<shared:NoInputTextBox x:Name="DisplayTextBox"
|
||||
Watermark="{Binding $parent.Watermark}"
|
||||
UseFloatingWatermark="{Binding $parent.UseFloatingWatermark}"
|
||||
Watermark="{CompiledBinding $parent.Watermark}"
|
||||
UseFloatingWatermark="{CompiledBinding $parent.UseFloatingWatermark}"
|
||||
Classes="clearButton"
|
||||
IsReadOnly="True"
|
||||
HorizontalAlignment="Stretch" />
|
||||
|
||||
@ -35,6 +35,7 @@ public partial class HotkeyBox : UserControl
|
||||
UpdateDisplayTextBox();
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void OnGotFocus(GotFocusEventArgs e)
|
||||
{
|
||||
_inputService.KeyboardKeyDown += InputServiceOnKeyboardKeyDown;
|
||||
@ -43,6 +44,7 @@ public partial class HotkeyBox : UserControl
|
||||
base.OnGotFocus(e);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void OnLostFocus(RoutedEventArgs e)
|
||||
{
|
||||
_inputService.KeyboardKeyDown -= InputServiceOnKeyboardKeyDown;
|
||||
|
||||
@ -3,22 +3,24 @@
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
xmlns:local="clr-namespace:Artemis.UI.Shared.DefaultTypes.DataModel.Display"
|
||||
x:DataType="local:DefaultDataModelDisplayViewModel"
|
||||
x:Class="Artemis.UI.Shared.DefaultTypes.DataModel.Display.DefaultDataModelDisplayView">
|
||||
<Grid ColumnDefinitions="*,Auto,Auto">
|
||||
<!-- Prefix -->
|
||||
<TextBlock Grid.Column="0"
|
||||
Text="{Binding PropertyDescription.Prefix}"
|
||||
IsVisible="{Binding PropertyDescription.Prefix, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||
Text="{CompiledBinding PropertyDescription.Prefix}"
|
||||
IsVisible="{CompiledBinding PropertyDescription.Prefix, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||
TextAlignment="Right"
|
||||
Margin="0 0 5 0" />
|
||||
|
||||
<!-- Value -->
|
||||
<TextBlock Grid.Column="1" Text="{Binding Display, Mode=OneWay}" HorizontalAlignment="Right"/>
|
||||
<TextBlock Grid.Column="1" Text="{CompiledBinding Display, Mode=OneWay}" HorizontalAlignment="Right"/>
|
||||
|
||||
<!-- Affix -->
|
||||
<TextBlock Grid.Column="2"
|
||||
Text="{Binding PropertyDescription.Affix}"
|
||||
IsVisible="{Binding PropertyDescription.Affix, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||
Text="{CompiledBinding PropertyDescription.Affix}"
|
||||
IsVisible="{CompiledBinding PropertyDescription.Affix, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||
Margin="5 0 0 0" />
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
||||
@ -2,9 +2,11 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:Artemis.UI.Shared.Services"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="800"
|
||||
x:Class="Artemis.UI.Shared.Services.ExceptionDialogView"
|
||||
Title="{Binding Title}"
|
||||
x:DataType="local:ExceptionDialogViewModel"
|
||||
Title="{CompiledBinding Title}"
|
||||
ExtendClientAreaToDecorationsHint="True"
|
||||
Width="800"
|
||||
Height="800"
|
||||
@ -16,7 +18,7 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Margin="10" Grid.Row="1" IsHitTestVisible="False" Text="{Binding Title}" />
|
||||
<TextBlock Margin="10" Grid.Row="1" IsHitTestVisible="False" Text="{CompiledBinding Title}" />
|
||||
|
||||
<StackPanel Grid.Row="2" Margin="20">
|
||||
<TextBlock Classes="h3">Awww :(</TextBlock>
|
||||
@ -27,7 +29,7 @@
|
||||
|
||||
<Grid Grid.Row="3" ColumnDefinitions="*,Auto" RowDefinitions="*,Auto">
|
||||
<ScrollViewer Grid.Row="0" Grid.ColumnSpan="2" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" Margin="20 0">
|
||||
<TextBox Text="{Binding Exception, Mode=OneTime}"
|
||||
<TextBox Text="{CompiledBinding Exception, Mode=OneTime}"
|
||||
AcceptsReturn="True"
|
||||
IsReadOnly="True"
|
||||
FontFamily="Consolas"
|
||||
@ -39,10 +41,10 @@
|
||||
When reporting errors please don't take a screenshot of the error, instead copy the text, thanks!
|
||||
</TextBlock>
|
||||
<StackPanel Grid.Row="1" Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Right" Margin="15">
|
||||
<Button Command="{Binding CopyException}" Classes="AppBarButton" Width="150" Margin="0 0 5 0">
|
||||
<Button Command="{CompiledBinding CopyException}" Classes="AppBarButton" Width="150" Margin="0 0 5 0">
|
||||
Copy exception
|
||||
</Button>
|
||||
<Button Command="{Binding Close}" Width="150" Margin="5 0 0 0">
|
||||
<Button Command="{CompiledBinding Close}" Width="150" Margin="5 0 0 0">
|
||||
Close
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
@ -19,7 +19,7 @@
|
||||
<Grid ColumnDefinitions="Auto,*"
|
||||
RowDefinitions="*"
|
||||
MinHeight="38"
|
||||
IsVisible="{Binding DataModelPath, RelativeSource={RelativeSource TemplatedParent}, Converter={x:Static ObjectConverters.IsNotNull}}">
|
||||
IsVisible="{CompiledBinding DataModelPath, RelativeSource={RelativeSource TemplatedParent}, Converter={x:Static ObjectConverters.IsNotNull}}">
|
||||
<avalonia:MaterialIcon Grid.Column="0"
|
||||
Grid.Row="0"
|
||||
Name="CurrentPathIcon"
|
||||
@ -27,7 +27,7 @@
|
||||
Height="22"
|
||||
Width="22"
|
||||
Margin="5 0 15 0"
|
||||
IsVisible="{Binding !IsEventPicker, RelativeSource={RelativeSource TemplatedParent}}"/>
|
||||
IsVisible="{CompiledBinding !IsEventPicker, RelativeSource={RelativeSource TemplatedParent}}"/>
|
||||
<avalonia:MaterialIcon Grid.Column="0"
|
||||
Grid.Row="0"
|
||||
Name="EventIcon"
|
||||
@ -35,14 +35,14 @@
|
||||
Height="22"
|
||||
Width="22"
|
||||
Margin="5 0 15 0"
|
||||
IsVisible="{Binding IsEventPicker, RelativeSource={RelativeSource TemplatedParent}}"/>
|
||||
IsVisible="{CompiledBinding IsEventPicker, RelativeSource={RelativeSource TemplatedParent}}"/>
|
||||
<StackPanel Grid.Column="1" Grid.Row="0" VerticalAlignment="Center">
|
||||
<TextBlock Name="CurrentPathDisplay" Classes="BodyStrongTextBlockStyle" MaxHeight="50" />
|
||||
<TextBlock Name="CurrentPathDescription" Classes="BodyTextBlockStyle" Foreground="{DynamicResource TextFillColorSecondary}" MaxHeight="50" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<Grid MinHeight="38"
|
||||
IsVisible="{Binding DataModelPath, RelativeSource={RelativeSource TemplatedParent}, Converter={x:Static ObjectConverters.IsNull}}" ColumnDefinitions="*,Auto"
|
||||
IsVisible="{CompiledBinding DataModelPath, RelativeSource={RelativeSource TemplatedParent}, Converter={x:Static ObjectConverters.IsNull}}" ColumnDefinitions="*,Auto"
|
||||
RowDefinitions="*,*">
|
||||
<TextBlock Grid.Column="0" Grid.Row="0" Classes="BodyStrongTextBlockStyle">Welcome to the data model picker</TextBlock>
|
||||
<TextBlock Grid.Column="0" Grid.Row="1" Foreground="{DynamicResource TextFillColorSecondary}">Select a value from the data model below</TextBlock>
|
||||
@ -53,19 +53,19 @@
|
||||
|
||||
<TreeView Grid.Row="2"
|
||||
Name="DataModelTreeView"
|
||||
ItemsSource="{Binding DataModelViewModel.Children, RelativeSource={RelativeSource TemplatedParent}}">
|
||||
ItemsSource="{CompiledBinding DataModelViewModel.Children, RelativeSource={RelativeSource TemplatedParent}}">
|
||||
<TreeView.Styles>
|
||||
<Style Selector="TreeViewItem">
|
||||
<Setter Property="IsExpanded" Value="{Binding IsVisualizationExpanded, Mode=TwoWay}" />
|
||||
<Setter Property="IsEnabled" Value="{Binding IsMatchingFilteredTypes, Mode=OneWay}" />
|
||||
<Setter Property="IsExpanded" Value="{CompiledBinding IsVisualizationExpanded, Mode=TwoWay, DataType=dataModel:DataModelVisualizationViewModel}" />
|
||||
<Setter Property="IsEnabled" Value="{CompiledBinding IsMatchingFilteredTypes, Mode=OneWay, DataType=dataModel:DataModelVisualizationViewModel}" />
|
||||
</Style>
|
||||
</TreeView.Styles>
|
||||
<TreeView.DataTemplates>
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelPropertiesViewModel}" ItemsSource="{Binding Children}">
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelPropertiesViewModel}" ItemsSource="{CompiledBinding Children}">
|
||||
<Grid ColumnDefinitions="Auto,*">
|
||||
<TextBlock Grid.Column="0" Text="{Binding PropertyDescription.Name}" ToolTip.Tip="{Binding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="0" Text="{CompiledBinding PropertyDescription.Name}" ToolTip.Tip="{CompiledBinding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="1"
|
||||
Text="{Binding DisplayValue}"
|
||||
Text="{CompiledBinding DisplayValue}"
|
||||
FontFamily="Consolas"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="0 0 10 0" />
|
||||
@ -75,29 +75,29 @@
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelPropertyViewModel}">
|
||||
<Grid ColumnDefinitions="Auto,*">
|
||||
<StackPanel Grid.Column="0" Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding PropertyDescription.Name}" ToolTip.Tip="{Binding PropertyDescription.Description}" />
|
||||
<TextBlock Text="{CompiledBinding PropertyDescription.Name}" ToolTip.Tip="{CompiledBinding PropertyDescription.Description}" />
|
||||
<TextBlock Text=" changed"
|
||||
ToolTip.Tip="{Binding PropertyDescription.Description}"
|
||||
IsVisible="{Binding IsEventPicker, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type dataModelPicker:DataModelPicker}}}"/>
|
||||
ToolTip.Tip="{CompiledBinding PropertyDescription.Description}"
|
||||
IsVisible="{CompiledBinding IsEventPicker, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type dataModelPicker:DataModelPicker}}}"/>
|
||||
</StackPanel>
|
||||
|
||||
<ContentControl Grid.Column="1" Content="{Binding DisplayViewModel}" FontFamily="Consolas" Margin="0 0 10 0" />
|
||||
<ContentControl Grid.Column="1" Content="{CompiledBinding DisplayViewModel}" FontFamily="Consolas" Margin="0 0 10 0" />
|
||||
</Grid>
|
||||
</TreeDataTemplate>
|
||||
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelListViewModel}">
|
||||
<Grid ColumnDefinitions="Auto,*">
|
||||
<TextBlock Grid.Column="0" Text="{Binding PropertyDescription.Name}" ToolTip.Tip="{Binding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="0" Text="{CompiledBinding PropertyDescription.Name}" ToolTip.Tip="{CompiledBinding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="1"
|
||||
Text="{Binding CountDisplay, Mode=OneWay}"
|
||||
Text="{CompiledBinding CountDisplay, Mode=OneWay}"
|
||||
FontFamily="Consolas"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="0 0 10 0" />
|
||||
</Grid>
|
||||
</TreeDataTemplate>
|
||||
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelEventViewModel}" ItemsSource="{Binding Children}">
|
||||
<TextBlock Text="{Binding PropertyDescription.Name}" ToolTip.Tip="{Binding PropertyDescription.Description}" />
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelEventViewModel}" ItemsSource="{CompiledBinding Children}">
|
||||
<TextBlock Text="{CompiledBinding PropertyDescription.Name}" ToolTip.Tip="{CompiledBinding PropertyDescription.Description}" />
|
||||
</TreeDataTemplate>
|
||||
</TreeView.DataTemplates>
|
||||
</TreeView>
|
||||
|
||||
@ -103,10 +103,10 @@
|
||||
</ItemsControl.Styles>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate DataType="core:ColorGradientStop">
|
||||
<gradientPicker:GradientPickerColorStop ColorStop="{Binding}"
|
||||
PositionReference="{Binding $parent[Border]}"
|
||||
<gradientPicker:GradientPickerColorStop ColorStop="{CompiledBinding}"
|
||||
PositionReference="{CompiledBinding $parent[Border]}"
|
||||
Classes="gradient-handle"
|
||||
GradientPicker="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type gradientPicker:GradientPicker}}}">
|
||||
GradientPicker="{CompiledBinding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type gradientPicker:GradientPicker}}}">
|
||||
</gradientPicker:GradientPickerColorStop>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
@ -152,7 +152,7 @@
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate DataType="core:ColorGradientStop">
|
||||
<Border Classes="stop-position">
|
||||
<TextBlock Text="{Binding Position}"></TextBlock>
|
||||
<TextBlock Text="{CompiledBinding Position}"></TextBlock>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
@ -174,8 +174,8 @@
|
||||
UseColorTriangle="True"
|
||||
IsMoreButtonVisible="True"
|
||||
IsVisible="{TemplateBinding SelectedColorStop, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||
IsCompact="{Binding IsCompact, RelativeSource={RelativeSource TemplatedParent}}"
|
||||
Color="{Binding SelectedColorStop.Color, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource SKColorToColorConverter}}" />
|
||||
IsCompact="{CompiledBinding IsCompact, RelativeSource={RelativeSource TemplatedParent}}"
|
||||
Color="{CompiledBinding SelectedColorStop.Color, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource SKColorToColorConverter}}" />
|
||||
</Border>
|
||||
|
||||
<Grid Grid.Row="2" Grid.Column="1" RowDefinitions="*,Auto">
|
||||
@ -196,19 +196,19 @@
|
||||
BorderBrush="{DynamicResource ButtonBorderBrush}"
|
||||
ClipToBounds="True"
|
||||
Background="{DynamicResource LightCheckerboardBrush}">
|
||||
<Border CornerRadius="4" Margin="-2" Background="{Binding Color, Converter={StaticResource SKColorToBrushConverter}}" />
|
||||
<Border CornerRadius="4" Margin="-2" Background="{CompiledBinding Color, Converter={StaticResource SKColorToBrushConverter}}" />
|
||||
</Border>
|
||||
<TextBox Grid.Column="1" Text="{Binding Color, Converter={StaticResource SKColorToStringConverter}}" />
|
||||
<TextBox Grid.Column="1" Text="{CompiledBinding Color, Converter={StaticResource SKColorToStringConverter}}" />
|
||||
<NumericUpDown Grid.Column="2" FormatString="F3" ShowButtonSpinner="False" Margin="5 0" Minimum="0" Maximum="1" Increment="0.01">
|
||||
<Interaction.Behaviors>
|
||||
<behaviors:LostFocusNumericUpDownBindingBehavior Value="{Binding Position}" />
|
||||
<behaviors:LostFocusNumericUpDownBindingBehavior Value="{CompiledBinding Position}" />
|
||||
</Interaction.Behaviors>
|
||||
</NumericUpDown>
|
||||
<Button Name="DeleteButton"
|
||||
Grid.Column="3"
|
||||
Classes="icon-button"
|
||||
Command="{Binding DeleteStop, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type gradientPicker:GradientPicker}}}"
|
||||
CommandParameter="{Binding}">
|
||||
Command="{CompiledBinding DeleteStop, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type gradientPicker:GradientPicker}}}"
|
||||
CommandParameter="{CompiledBinding}">
|
||||
<avalonia:MaterialIcon Kind="Close" />
|
||||
</Button>
|
||||
</Grid>
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
<Application xmlns="https://github.com/avaloniaui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:ui="clr-namespace:Artemis.UI;assembly=Artemis.UI"
|
||||
xmlns:root="clr-namespace:Artemis.UI.Screens.Root;assembly=Artemis.UI"
|
||||
x:DataType="root:RootViewModel"
|
||||
x:Class="Artemis.UI.Windows.App">
|
||||
<Application.DataTemplates>
|
||||
<ui:ViewLocator />
|
||||
@ -12,16 +14,16 @@
|
||||
|
||||
<TrayIcon.Icons>
|
||||
<TrayIcons>
|
||||
<TrayIcon Icon="avares://Artemis.UI/Assets/Images/Logo/application.ico" ToolTipText="Artemis" Command="{Binding OpenScreen}" CommandParameter="Home">
|
||||
<TrayIcon Icon="avares://Artemis.UI/Assets/Images/Logo/application.ico" ToolTipText="Artemis" Command="{CompiledBinding OpenScreen}" CommandParameter="Home">
|
||||
<TrayIcon.Menu>
|
||||
<NativeMenu>
|
||||
<NativeMenuItem Header="Home" Command="{Binding OpenScreen}" CommandParameter="Home" />
|
||||
<!-- <NativeMenuItem Header="Workshop" Command="{Binding OpenScreen}" CommandParameter="Workshop" /> -->
|
||||
<NativeMenuItem Header="Surface Editor" Command="{Binding OpenScreen}" CommandParameter="Surface Editor" />
|
||||
<NativeMenuItem Header="Settings" Command="{Binding OpenScreen}" CommandParameter="Settings" />
|
||||
<NativeMenuItem Header="Home" Command="{CompiledBinding OpenScreen}" CommandParameter="Home" />
|
||||
<!-- <NativeMenuItem Header="Workshop" Command="{CompiledBinding OpenScreen}" CommandParameter="Workshop" /> -->
|
||||
<NativeMenuItem Header="Surface Editor" Command="{CompiledBinding OpenScreen}" CommandParameter="Surface Editor" />
|
||||
<NativeMenuItem Header="Settings" Command="{CompiledBinding OpenScreen}" CommandParameter="Settings" />
|
||||
<NativeMenuItemSeparator />
|
||||
<NativeMenuItem Header="Debugger" Command="{Binding OpenDebugger}" />
|
||||
<NativeMenuItem Header="Exit" Command="{Binding Exit}" />
|
||||
<NativeMenuItem Header="Debugger" Command="{CompiledBinding OpenDebugger}" />
|
||||
<NativeMenuItem Header="Exit" Command="{CompiledBinding Exit}" />
|
||||
</NativeMenu>
|
||||
</TrayIcon.Menu>
|
||||
</TrayIcon>
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
<Grid ColumnDefinitions="30,*" RowDefinitions="Auto,Auto">
|
||||
<avalonia:MaterialIcon Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Kind="{Binding Icon}"
|
||||
Kind="{CompiledBinding Icon}"
|
||||
Height="20"
|
||||
Width="20"
|
||||
VerticalAlignment="Center"
|
||||
|
||||
@ -23,11 +23,11 @@
|
||||
<Style.Resources>
|
||||
<ControlTemplate x:Key="TooltipDataValidationLeftContentTemplate" TargetType="DataValidationErrors">
|
||||
<DockPanel LastChildFill="True">
|
||||
<ContentControl Content="{Binding (DataValidationErrors.Errors)}"
|
||||
<ContentControl Content="{CompiledBinding (DataValidationErrors.Errors)}"
|
||||
ContentTemplate="{TemplateBinding ErrorTemplate}"
|
||||
DataContext="{TemplateBinding Owner}"
|
||||
DockPanel.Dock="Left"
|
||||
IsVisible="{Binding (DataValidationErrors.HasErrors)}" />
|
||||
IsVisible="{CompiledBinding (DataValidationErrors.HasErrors)}" />
|
||||
<ContentPresenter Name="PART_ContentPresenter"
|
||||
Padding="{TemplateBinding Padding}"
|
||||
Background="{TemplateBinding Background}"
|
||||
|
||||
@ -2,10 +2,11 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:controls="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia"
|
||||
xmlns:windowing="clr-namespace:FluentAvalonia.UI.Windowing;assembly=FluentAvalonia"
|
||||
xmlns:vm="clr-namespace:Artemis.UI.Screens.Root"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="Artemis.UI.MainWindow"
|
||||
x:DataType="vm:RootViewModel"
|
||||
Icon="/Assets/Images/Logo/application.ico"
|
||||
Title="Artemis 2.0"
|
||||
MinWidth="600"
|
||||
@ -22,7 +23,7 @@
|
||||
</windowing:AppWindow.Styles>
|
||||
<Panel Name="RootPanel">
|
||||
<DockPanel>
|
||||
<ContentControl Name="SidebarContentControl" Content="{Binding SidebarViewModel}" DockPanel.Dock="Left" Width="240">
|
||||
<ContentControl Name="SidebarContentControl" Content="{CompiledBinding SidebarViewModel}" DockPanel.Dock="Left" Width="240">
|
||||
<ContentControl.Transitions>
|
||||
<Transitions>
|
||||
<DoubleTransition Property="Width" Duration="0:0:0.2" Easing="CubicEaseOut"></DoubleTransition>
|
||||
@ -30,9 +31,9 @@
|
||||
</ContentControl.Transitions>
|
||||
</ContentControl>
|
||||
<Border Name="TitleBarContainer" DockPanel.Dock="Top">
|
||||
<ContentControl Content="{Binding TitleBarViewModel}"/>
|
||||
<ContentControl Content="{CompiledBinding TitleBarViewModel}"/>
|
||||
</Border>
|
||||
<ContentControl Content="{Binding}" />
|
||||
<ContentControl Content="{CompiledBinding}" />
|
||||
</DockPanel>
|
||||
<StackPanel Classes="notification-container" Name="NotificationContainer" VerticalAlignment="Bottom" HorizontalAlignment="Right"/>
|
||||
</Panel>
|
||||
|
||||
@ -5,7 +5,9 @@
|
||||
xmlns:dataModel="clr-namespace:Artemis.UI.Shared.DataModelVisualization.Shared;assembly=Artemis.UI.Shared"
|
||||
xmlns:converters="clr-namespace:Artemis.UI.Shared.Converters;assembly=Artemis.UI.Shared"
|
||||
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"
|
||||
xmlns:local="clr-namespace:Artemis.UI.Screens.Debugger.DataModel"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:DataType="local:DataModelDebugViewModel"
|
||||
x:Class="Artemis.UI.Screens.Debugger.DataModel.DataModelDebugView">
|
||||
<UserControl.Resources>
|
||||
<converters:TypeToStringConverter x:Key="TypeToStringConverter" />
|
||||
@ -21,14 +23,14 @@
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
|
||||
<TreeView Grid.Row="1" ItemsSource="{Binding MainDataModel.Children}">
|
||||
<TreeView Grid.Row="1" ItemsSource="{CompiledBinding MainDataModel.Children}">
|
||||
<TreeView.Styles>
|
||||
<Style Selector="TreeViewItem">
|
||||
<Setter Property="IsExpanded" Value="{Binding IsVisualizationExpanded, Mode=TwoWay}" />
|
||||
<Setter Property="IsExpanded" Value="{CompiledBinding IsVisualizationExpanded, Mode=TwoWay,DataType=dataModel:DataModelVisualizationViewModel}" />
|
||||
<Setter Property="ContextFlyout">
|
||||
<Setter.Value>
|
||||
<MenuFlyout>
|
||||
<MenuItem Header="Copy path" Command="{Binding CopyPath}">
|
||||
<MenuItem Header="Copy path" Command="{CompiledBinding CopyPath, DataType=dataModel:DataModelVisualizationViewModel}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="ContentCopy" />
|
||||
</MenuItem.Icon>
|
||||
@ -39,32 +41,32 @@
|
||||
</Style>
|
||||
</TreeView.Styles>
|
||||
<TreeView.DataTemplates>
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelPropertiesViewModel}" ItemsSource="{Binding Children}">
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelPropertiesViewModel}" ItemsSource="{CompiledBinding Children}">
|
||||
<Grid ColumnDefinitions="Auto,Auto,*">
|
||||
<StackPanel Grid.Column="0" Orientation="Horizontal" Margin="0 0 5 0">
|
||||
<TextBlock FontWeight="Bold">[</TextBlock>
|
||||
<TextBlock FontWeight="Bold" Text="{Binding DisplayValueType, Converter={StaticResource TypeToStringConverter}, Mode=OneWay}" />
|
||||
<TextBlock FontWeight="Bold" Text="{CompiledBinding DisplayValueType, Converter={StaticResource TypeToStringConverter}, Mode=OneWay}" />
|
||||
<TextBlock FontWeight="Bold">]</TextBlock>
|
||||
</StackPanel>
|
||||
|
||||
<TextBlock Grid.Column="1" Text="{Binding PropertyDescription.Name}" ToolTip.Tip="{Binding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="1" Text="{CompiledBinding PropertyDescription.Name}" ToolTip.Tip="{CompiledBinding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="2"
|
||||
Text="{Binding DisplayValue}"
|
||||
Text="{CompiledBinding DisplayValue}"
|
||||
FontFamily="Consolas"
|
||||
HorizontalAlignment="Right" />
|
||||
</Grid>
|
||||
|
||||
</TreeDataTemplate>
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelListViewModel}" ItemsSource="{Binding ListChildren}">
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelListViewModel}" ItemsSource="{CompiledBinding ListChildren}">
|
||||
<Grid ColumnDefinitions="Auto,Auto,*">
|
||||
<StackPanel Grid.Column="0" Orientation="Horizontal" Margin="0 0 5 0">
|
||||
<TextBlock FontWeight="Bold">[</TextBlock>
|
||||
<TextBlock FontWeight="Bold" Text="{Binding DisplayValueType, Converter={StaticResource TypeToStringConverter}, Mode=OneWay}" />
|
||||
<TextBlock FontWeight="Bold" Text="{CompiledBinding DisplayValueType, Converter={StaticResource TypeToStringConverter}, Mode=OneWay}" />
|
||||
<TextBlock FontWeight="Bold">]</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Grid.Column="1" Text="{Binding PropertyDescription.Name}" ToolTip.Tip="{Binding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="1" Text="{CompiledBinding PropertyDescription.Name}" ToolTip.Tip="{CompiledBinding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="2"
|
||||
Text="{Binding CountDisplay, Mode=OneWay}"
|
||||
Text="{CompiledBinding CountDisplay, Mode=OneWay}"
|
||||
FontFamily="Consolas"
|
||||
HorizontalAlignment="Right" />
|
||||
</Grid>
|
||||
@ -74,13 +76,13 @@
|
||||
<!-- Value description -->
|
||||
<StackPanel Grid.Column="0" Orientation="Horizontal" Margin="0 0 5 0">
|
||||
<TextBlock FontWeight="Bold">[</TextBlock>
|
||||
<TextBlock FontWeight="Bold" Text="{Binding DisplayValueType, Converter={StaticResource TypeToStringConverter}, Mode=OneWay}" />
|
||||
<TextBlock FontWeight="Bold" Text="{CompiledBinding DisplayValueType, Converter={StaticResource TypeToStringConverter}, Mode=OneWay}" />
|
||||
<TextBlock FontWeight="Bold">]</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Grid.Column="1" Text="{Binding PropertyDescription.Name}" ToolTip.Tip="{Binding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="1" Text="{CompiledBinding PropertyDescription.Name}" ToolTip.Tip="{CompiledBinding PropertyDescription.Description}" />
|
||||
|
||||
<!-- Value display -->
|
||||
<ContentControl Grid.Column="2" Content="{Binding DisplayViewModel}" FontFamily="Consolas" />
|
||||
<ContentControl Grid.Column="2" Content="{CompiledBinding DisplayViewModel}" FontFamily="Consolas" />
|
||||
</Grid>
|
||||
</TreeDataTemplate>
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelListItemViewModel}">
|
||||
@ -88,29 +90,29 @@
|
||||
<!-- Value description -->
|
||||
<StackPanel Grid.Column="0" Orientation="Horizontal" Margin="0 0 5 0">
|
||||
<TextBlock FontWeight="Bold">[</TextBlock>
|
||||
<TextBlock FontWeight="Bold" Text="{Binding ListType, Converter={StaticResource TypeToStringConverter}}" />
|
||||
<TextBlock FontWeight="Bold" Text="{CompiledBinding ListType, Converter={StaticResource TypeToStringConverter}}" />
|
||||
<TextBlock FontWeight="Bold">]</TextBlock>
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Column="1" Orientation="Horizontal" Margin="0 0 5 0">
|
||||
<TextBlock>List item #</TextBlock>
|
||||
<TextBlock Text="{Binding Index, Mode=OneWay}" />
|
||||
<TextBlock Text="{CompiledBinding Index, Mode=OneWay}" />
|
||||
</StackPanel>
|
||||
|
||||
<!-- Value display -->
|
||||
<ContentControl Grid.Column="2" Content="{Binding DisplayViewModel}" FontFamily="Consolas" />
|
||||
<ContentControl Grid.Column="2" Content="{CompiledBinding DisplayViewModel}" FontFamily="Consolas" />
|
||||
</Grid>
|
||||
</TreeDataTemplate>
|
||||
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelEventViewModel}" ItemsSource="{Binding Children}">
|
||||
<TreeDataTemplate DataType="{x:Type dataModel:DataModelEventViewModel}" ItemsSource="{CompiledBinding Children}">
|
||||
<Grid ColumnDefinitions="Auto,Auto,*">
|
||||
<StackPanel Grid.Column="0" Orientation="Horizontal" Margin="0 0 5 0">
|
||||
<TextBlock FontWeight="Bold">[</TextBlock>
|
||||
<TextBlock FontWeight="Bold" Text="{Binding DisplayValueType, Converter={StaticResource TypeToStringConverter}, Mode=OneWay}" />
|
||||
<TextBlock FontWeight="Bold" Text="{CompiledBinding DisplayValueType, Converter={StaticResource TypeToStringConverter}, Mode=OneWay}" />
|
||||
<TextBlock FontWeight="Bold">]</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Grid.Column="1" Text="{Binding PropertyDescription.Name}" ToolTip.Tip="{Binding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="1" Text="{CompiledBinding PropertyDescription.Name}" ToolTip.Tip="{CompiledBinding PropertyDescription.Description}" />
|
||||
<TextBlock Grid.Column="2"
|
||||
Text="{Binding CountDisplay, Mode=OneWay}"
|
||||
Text="{CompiledBinding Path=CountDisplay, DataType=dataModel:DataModelListViewModel ,Mode=OneWay}"
|
||||
FontFamily="Consolas"
|
||||
HorizontalAlignment="Right" />
|
||||
</Grid>
|
||||
|
||||
@ -4,15 +4,17 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:shared="clr-namespace:Artemis.UI.Shared;assembly=Artemis.UI.Shared"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
xmlns:vm="clr-namespace:Artemis.UI.Screens.Debugger.Performance"
|
||||
x:DataType="vm:PerformanceDebugPluginViewModel"
|
||||
x:Class="Artemis.UI.Screens.Debugger.Performance.PerformanceDebugPluginView">
|
||||
<Border Classes="card-condensed" Margin="0 5">
|
||||
<StackPanel>
|
||||
<Grid ColumnDefinitions="40,*">
|
||||
<shared:ArtemisIcon Grid.Column="0" Icon="{Binding Plugin.Info.ResolvedIcon}" Width="24" Height="24" />
|
||||
<TextBlock Grid.Column="1" VerticalAlignment="Center" Classes="h5" Text="{Binding Plugin.Info.Name}" />
|
||||
<shared:ArtemisIcon Grid.Column="0" Icon="{CompiledBinding Plugin.Info.ResolvedIcon}" Width="24" Height="24" />
|
||||
<TextBlock Grid.Column="1" VerticalAlignment="Center" Classes="h5" Text="{CompiledBinding Plugin.Info.Name}" />
|
||||
</Grid>
|
||||
|
||||
<ItemsControl ItemsSource="{Binding Profilers}" />
|
||||
<ItemsControl ItemsSource="{CompiledBinding Profilers}" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</UserControl>
|
||||
@ -4,11 +4,12 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:Artemis.UI.Screens.Debugger.Performance"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:DataType="local:PerformanceDebugProfilerViewModel"
|
||||
x:Class="Artemis.UI.Screens.Debugger.Performance.PerformanceDebugProfilerView">
|
||||
<StackPanel>
|
||||
<TextBlock Classes="subtitle" Text="{Binding Profiler.Name}" Margin="10 10 0 0" />
|
||||
<TextBlock Classes="subtitle" Text="{CompiledBinding Profiler.Name}" Margin="10 10 0 0" />
|
||||
|
||||
<DataGrid ItemsSource="{Binding Measurements}"
|
||||
<DataGrid ItemsSource="{CompiledBinding Measurements}"
|
||||
CanUserSortColumns="True"
|
||||
IsReadOnly="True"
|
||||
AutoGenerateColumns="False"
|
||||
@ -16,12 +17,12 @@
|
||||
CanUserResizeColumns="False"
|
||||
Margin="10 5 10 10">
|
||||
<DataGrid.Columns>
|
||||
<DataGridTextColumn Binding="{Binding Measurement.Identifier}" Header="Identifier" />
|
||||
<DataGridTextColumn Binding="{Binding Last}" Header="Last" />
|
||||
<DataGridTextColumn Binding="{Binding Min}" Header="Min" />
|
||||
<DataGridTextColumn Binding="{Binding Max}" Header="Max" />
|
||||
<DataGridTextColumn Binding="{Binding Average}" Header="Average" />
|
||||
<DataGridTextColumn Binding="{Binding Percentile}" Header="95th percentile" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding Measurement.Identifier}" Header="Identifier" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding Last}" Header="Last" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding Min}" Header="Min" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding Max}" Header="Max" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding Average}" Header="Average" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding Percentile}" Header="95th percentile" />
|
||||
</DataGrid.Columns>
|
||||
</DataGrid>
|
||||
</StackPanel>
|
||||
|
||||
@ -3,7 +3,9 @@
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:controls="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia"
|
||||
xmlns:debugger="clr-namespace:Artemis.UI.Screens.Debugger.Performance;assembly=Artemis.UI"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:DataType="debugger:PerformanceDebugViewModel"
|
||||
x:Class="Artemis.UI.Screens.Debugger.Performance.PerformanceDebugView">
|
||||
<Grid RowDefinitions="Auto,Auto,*">
|
||||
<StackPanel Grid.Row="0">
|
||||
@ -23,18 +25,18 @@
|
||||
|
||||
<StackPanel Grid.Row="1" Orientation="Horizontal" HorizontalAlignment="Right" Margin="10 0">
|
||||
<TextBlock Text="FPS: " />
|
||||
<TextBlock FontWeight="Bold" Text="{Binding CurrentFps}" />
|
||||
<TextBlock FontWeight="Bold" Text="{CompiledBinding CurrentFps}" />
|
||||
<TextBlock Text=" at " />
|
||||
<TextBlock Text="{Binding RenderWidth}" />
|
||||
<TextBlock Text="{CompiledBinding RenderWidth}" />
|
||||
<TextBlock Text="x" />
|
||||
<TextBlock Text="{Binding RenderHeight}" />
|
||||
<TextBlock Text="{CompiledBinding RenderHeight}" />
|
||||
<TextBlock Text=" - Renderer: " />
|
||||
<TextBlock Text="{Binding Renderer}" />
|
||||
<TextBlock Text="{CompiledBinding Renderer}" />
|
||||
</StackPanel>
|
||||
|
||||
|
||||
<ScrollViewer Grid.Row="2" VerticalScrollBarVisibility="Auto">
|
||||
<ItemsControl ItemsSource="{Binding Items}" Margin="0 0 10 0" />
|
||||
<ItemsControl ItemsSource="{CompiledBinding Items}" Margin="0 0 10 0" />
|
||||
</ScrollViewer>
|
||||
</Grid>
|
||||
|
||||
|
||||
@ -2,7 +2,9 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:Artemis.UI.Screens.Debugger.Render"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:DataType="local:RenderDebugViewModel"
|
||||
x:Class="Artemis.UI.Screens.Debugger.Render.RenderDebugView">
|
||||
<StackPanel>
|
||||
<TextBlock Classes="h3">Render</TextBlock>
|
||||
@ -15,17 +17,17 @@
|
||||
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<TextBlock Text="FPS: " />
|
||||
<TextBlock FontWeight="Bold" Text="{Binding CurrentFps}" />
|
||||
<TextBlock FontWeight="Bold" Text="{CompiledBinding CurrentFps}" />
|
||||
<TextBlock Text=" at " />
|
||||
<TextBlock Text="{Binding RenderWidth}" />
|
||||
<TextBlock Text="{CompiledBinding RenderWidth}" />
|
||||
<TextBlock Text="x" />
|
||||
<TextBlock Text="{Binding RenderHeight}" />
|
||||
<TextBlock Text="{CompiledBinding RenderHeight}" />
|
||||
<TextBlock Text=" - Renderer: " />
|
||||
<TextBlock Text="{Binding Renderer}" />
|
||||
<TextBlock Text="{CompiledBinding Renderer}" />
|
||||
</StackPanel>
|
||||
|
||||
<Border Classes="card" Padding="10">
|
||||
<Image Name="Visualization" Source="{Binding CurrentFrame}">
|
||||
<Image Name="Visualization" Source="{CompiledBinding CurrentFrame}">
|
||||
<Image.Transitions>
|
||||
<Transitions>
|
||||
<TransformOperationsTransition Property="RenderTransform" Duration="0:0:0.2" Easing="CubicEaseOut" />
|
||||
|
||||
@ -4,6 +4,8 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"
|
||||
mc:Ignorable="d" d:DesignWidth="500" d:DesignHeight="1050"
|
||||
xmlns:devicedetectinput="clr-namespace:Artemis.UI.Screens.Device;assembly=Artemis.UI"
|
||||
x:DataType="devicedetectinput:DeviceDetectInputViewModel"
|
||||
x:Class="Artemis.UI.Screens.Device.DeviceDetectInputView">
|
||||
<StackPanel Width="500">
|
||||
<!-- TODO: Replace with Text.Run stuff once available -->
|
||||
@ -15,12 +17,12 @@
|
||||
Width="300"
|
||||
Height="300"
|
||||
HorizontalAlignment="Center"
|
||||
IsVisible="{Binding !IsMouse}" />
|
||||
IsVisible="{CompiledBinding !IsMouse}" />
|
||||
<avalonia:MaterialIcon Kind="Mouse"
|
||||
Width="300"
|
||||
Height="300"
|
||||
HorizontalAlignment="Center"
|
||||
IsVisible="{Binding IsMouse}" />
|
||||
IsVisible="{CompiledBinding IsMouse}" />
|
||||
|
||||
<TextBlock TextWrapping="Wrap" Margin="0 10">
|
||||
This will teach Artemis to associate button/key presses with this specific device.
|
||||
|
||||
@ -5,7 +5,9 @@
|
||||
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"
|
||||
xmlns:controls="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia"
|
||||
xmlns:shared="clr-namespace:Artemis.UI.Shared;assembly=Artemis.UI.Shared"
|
||||
xmlns:local="clr-namespace:Artemis.UI.Screens.Device"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:DataType="local:DeviceSettingsViewModel"
|
||||
x:Class="Artemis.UI.Screens.Device.DeviceSettingsView">
|
||||
<Border Classes="card" Padding="0" Width="200" ClipToBounds="True" Margin="5">
|
||||
<Grid RowDefinitions="140,*,Auto">
|
||||
@ -14,7 +16,7 @@
|
||||
HorizontalAlignment="Center"
|
||||
Margin="5"
|
||||
ShowColors="False"
|
||||
Device="{Binding Device}"
|
||||
Device="{CompiledBinding Device}"
|
||||
Grid.Row="0" />
|
||||
<Button Grid.Row="0"
|
||||
Classes="icon-button icon-button-large"
|
||||
@ -22,29 +24,29 @@
|
||||
HorizontalAlignment="Right"
|
||||
Margin="5"
|
||||
ToolTip.Tip="Identify"
|
||||
Command="{Binding IdentifyDevice}">
|
||||
Command="{CompiledBinding IdentifyDevice}">
|
||||
<avalonia:MaterialIcon Kind="AlarmLight" />
|
||||
</Button>
|
||||
<StackPanel Grid.Row="1" Margin="8 24 8 0">
|
||||
<TextBlock Text="{Binding Device.RgbDevice.DeviceInfo.Model}" />
|
||||
<TextBlock Text="{CompiledBinding Device.RgbDevice.DeviceInfo.Model}" />
|
||||
<StackPanel>
|
||||
<TextBlock TextWrapping="Wrap" Classes="subtitle" Text="{Binding Device.RgbDevice.DeviceInfo.Manufacturer, Mode=OneWay}" />
|
||||
<TextBlock TextWrapping="Wrap" Classes="subtitle" Text="{Binding Device.DeviceType, Mode=OneWay}" />
|
||||
<TextBlock TextWrapping="Wrap" Classes="subtitle" Text="{CompiledBinding Device.RgbDevice.DeviceInfo.Manufacturer, Mode=OneWay}" />
|
||||
<TextBlock TextWrapping="Wrap" Classes="subtitle" Text="{CompiledBinding Device.DeviceType, Mode=OneWay}" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
|
||||
<Grid Grid.Row="2" Margin="10" ColumnDefinitions="25,*">
|
||||
<CheckBox IsChecked="{Binding IsDeviceEnabled}" />
|
||||
<CheckBox IsChecked="{CompiledBinding IsDeviceEnabled}" />
|
||||
|
||||
<SplitButton Grid.Column="1" Content="Properties" Command="{Binding ViewProperties}" HorizontalAlignment="Right">
|
||||
<SplitButton Grid.Column="1" Content="Properties" Command="{CompiledBinding ViewProperties}" HorizontalAlignment="Right">
|
||||
<SplitButton.Flyout>
|
||||
<MenuFlyout Placement="Bottom">
|
||||
<MenuItem Header="Open plugin directory" Command="{Binding OpenPluginDirectory}">
|
||||
<MenuItem Header="Open plugin directory" Command="{CompiledBinding OpenPluginDirectory}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="FolderOpen" />
|
||||
</MenuItem.Icon>
|
||||
</MenuItem>
|
||||
<MenuItem Header="Identity input" Command="{Binding DetectInput}">
|
||||
<MenuItem Header="Identity input" Command="{CompiledBinding DetectInput}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="GestureDoubleTap" />
|
||||
</MenuItem.Icon>
|
||||
|
||||
@ -14,21 +14,21 @@
|
||||
<shared:ToStringConverter x:Key="ToStringConverter" />
|
||||
</UserControl.Resources>
|
||||
<DataGrid ItemsSource="{CompiledBinding LedViewModels}" CanUserSortColumns="True" AutoGenerateColumns="False">
|
||||
<DataGrid.Columns >
|
||||
<DataGridTemplateColumn CanUserSort="False" CanUserReorder="False" Header="Highlight">
|
||||
<DataGrid.Columns>
|
||||
<DataGridTemplateColumn CanUserSort="False" CanUserReorder="False" Header="Highlight">
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay}" />
|
||||
<CheckBox IsChecked="{CompiledBinding IsSelected, Mode=TwoWay}" />
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
<DataGridTextColumn Binding="{Binding ArtemisLed.RgbLed.Id, Converter={StaticResource LedIdToStringConverter}, Mode=OneWay}" Header="LED ID" Width="Auto" />
|
||||
<DataGridTextColumn Binding="{Binding ArtemisLed.RgbLed.Color, Converter={StaticResource ToStringConverter}, Mode=OneWay}" Header="Color (ARGB)" Width="Auto" CanUserSort="False" />
|
||||
<DataGridTextColumn Binding="{Binding ArtemisLed.Layout.Image, Converter={StaticResource UriToFileNameConverter}, Mode=OneWay}" Header="Image file" CanUserSort="False" />
|
||||
<DataGridTextColumn Binding="{Binding ArtemisLed.RgbLed.Shape}" Header="Shape" />
|
||||
<DataGridTextColumn Binding="{Binding ArtemisLed.RgbLed.Location, Converter={StaticResource ToStringConverter}, Mode=OneWay}" Header="Location" Width="Auto" CanUserSort="False" />
|
||||
<DataGridTextColumn Binding="{Binding ArtemisLed.RgbLed.Size, Converter={StaticResource ToStringConverter}, Mode=OneWay}" Header="Size" Width="Auto" CanUserSort="False" />
|
||||
<DataGridTextColumn Binding="{Binding ArtemisLed.RgbLed.CustomData}" Header="LED data" Width="Auto" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding ArtemisLed.RgbLed.Id, Converter={StaticResource LedIdToStringConverter}, Mode=OneWay}" Header="LED ID" Width="Auto" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding ArtemisLed.RgbLed.Color, Converter={StaticResource ToStringConverter}, Mode=OneWay}" Header="Color (ARGB)" Width="Auto" CanUserSort="False" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding ArtemisLed.Layout.Image, Converter={StaticResource UriToFileNameConverter}, Mode=OneWay}" Header="Image file" CanUserSort="False" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding ArtemisLed.RgbLed.Shape}" Header="Shape" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding ArtemisLed.RgbLed.Location, Converter={StaticResource ToStringConverter}, Mode=OneWay}" Header="Location" Width="Auto" CanUserSort="False" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding ArtemisLed.RgbLed.Size, Converter={StaticResource ToStringConverter}, Mode=OneWay}" Header="Size" Width="Auto" CanUserSort="False" />
|
||||
<DataGridTextColumn Binding="{CompiledBinding ArtemisLed.RgbLed.CustomData}" Header="LED data" Width="Auto" />
|
||||
</DataGrid.Columns>
|
||||
</DataGrid>
|
||||
</UserControl>
|
||||
@ -18,7 +18,7 @@
|
||||
<AutoCompleteBox HorizontalAlignment="Stretch"
|
||||
ItemsSource="{CompiledBinding Regions}"
|
||||
SelectedItem="{CompiledBinding SelectedRegion}"
|
||||
ValueMemberBinding="{Binding EnglishName}"
|
||||
ValueMemberBinding="{CompiledBinding EnglishName, DataType=globalization:RegionInfo}"
|
||||
Watermark="Enter keyboard country name"
|
||||
FilterMode="Custom"
|
||||
MaxDropDownHeight="200"
|
||||
|
||||
@ -157,7 +157,7 @@
|
||||
The device layout is used to determine the position of LEDs and to create the visual representation of the device you see on the left side of this window.
|
||||
</TextBlock>
|
||||
|
||||
<CheckBox Margin="0 0 0 5" IsChecked="{Binding Device.DisableDefaultLayout}">
|
||||
<CheckBox Margin="0 0 0 5" IsChecked="{CompiledBinding Device.DisableDefaultLayout}">
|
||||
<CheckBox.Content>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock>Don't load default layout</TextBlock>
|
||||
@ -169,13 +169,13 @@
|
||||
</CheckBox>
|
||||
|
||||
<Grid>
|
||||
<TextBox Text="{Binding Device.CustomLayoutPath}"
|
||||
<TextBox Text="{CompiledBinding Device.CustomLayoutPath}"
|
||||
Watermark="Custom layout path"
|
||||
UseFloatingWatermark="True"
|
||||
IsReadOnly="True"
|
||||
PointerReleased="InputElement_OnPointerReleased"
|
||||
Padding="10 5 36 6" />
|
||||
<Button Classes="AppBarButton" HorizontalAlignment="Right" Command="{Binding ClearCustomLayout}" Padding="6" Margin="5 0">
|
||||
<Button Classes="AppBarButton" HorizontalAlignment="Right" Command="{CompiledBinding ClearCustomLayout}" Padding="6" Margin="5 0">
|
||||
<avalonia:MaterialIcon Kind="CloseCircle" />
|
||||
</Button>
|
||||
</Grid>
|
||||
@ -189,14 +189,14 @@
|
||||
<Grid Grid.Row="1" ColumnDefinitions="Auto,*">
|
||||
<Button Grid.Column="0"
|
||||
IsVisible="{CompiledBinding RequiresManualSetup}"
|
||||
Command="{Binding RestartSetup}"
|
||||
Command="{CompiledBinding RestartSetup}"
|
||||
ToolTip.Tip="Restart device setup, allowing you to select a new physical and logical layout">
|
||||
Restart setup
|
||||
</Button>
|
||||
|
||||
<StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<Button IsCancel="True" Command="{Binding Reset}" Margin="0 0 5 0">Reset</Button>
|
||||
<Button Classes="accent" IsDefault="True" Command="{Binding Apply}">Apply</Button>
|
||||
<Button IsCancel="True" Command="{CompiledBinding Reset}" Margin="0 0 5 0">Reset</Button>
|
||||
<Button Classes="accent" IsDefault="True" Command="{CompiledBinding Apply}">Apply</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
@ -38,7 +38,7 @@
|
||||
IsVisible="{CompiledBinding LoadException, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||
Foreground="#E74C4C"
|
||||
ToolTip.Tip="An exception occurred while enabling this feature, click to view"
|
||||
Command="{Binding ViewLoadException}">
|
||||
Command="{CompiledBinding ViewLoadException}">
|
||||
<avalonia:MaterialIcon Kind="AlertCircle" />
|
||||
</Button>
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@
|
||||
Height="800"
|
||||
WindowStartupLocation="CenterOwner">
|
||||
<Panel>
|
||||
<ContentControl Content="{Binding ConfigurationViewModel}"></ContentControl>
|
||||
<ContentControl Content="{CompiledBinding ConfigurationViewModel}"></ContentControl>
|
||||
<StackPanel Classes="notification-container" Name="NotificationContainer" VerticalAlignment="Bottom" HorizontalAlignment="Right" />
|
||||
</Panel>
|
||||
</windowing:AppWindow>
|
||||
@ -46,7 +46,7 @@
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Border Classes="card-condensed">
|
||||
<ContentControl Content="{Binding}"></ContentControl>
|
||||
<ContentControl Content="{CompiledBinding}"></ContentControl>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
@ -67,22 +67,22 @@
|
||||
</Border>
|
||||
|
||||
<Grid Grid.Row="2" ColumnDefinitions="*,Auto">
|
||||
<Button Grid.Row="0" Grid.Column="0" Command="{Binding AutoDetermineHints}">Auto-determine hints</Button>
|
||||
<Button Grid.Row="0" Grid.Column="0" Command="{CompiledBinding AutoDetermineHints}">Auto-determine hints</Button>
|
||||
<StackPanel Grid.Row="0" Grid.Column="1" Orientation="Horizontal" Spacing="5">
|
||||
<DropDownButton>
|
||||
<DropDownButton.Flyout>
|
||||
<MenuFlyout Placement="Top">
|
||||
<MenuItem Header="Category hint" Command="{Binding AddCategoryHint}">
|
||||
<MenuItem Header="Category hint" Command="{CompiledBinding AddCategoryHint}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="Desk" />
|
||||
</MenuItem.Icon>
|
||||
</MenuItem>
|
||||
<MenuItem Header="Device type hint" Command="{Binding AddDeviceHint}">
|
||||
<MenuItem Header="Device type hint" Command="{CompiledBinding AddDeviceHint}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="Devices" />
|
||||
</MenuItem.Icon>
|
||||
</MenuItem>
|
||||
<MenuItem Header="Keyboard-section hint" Command="{Binding AddKeyboardSectionHint}">
|
||||
<MenuItem Header="Keyboard-section hint" Command="{CompiledBinding AddKeyboardSectionHint}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="Keyboard" />
|
||||
</MenuItem.Icon>
|
||||
@ -91,7 +91,7 @@
|
||||
</DropDownButton.Flyout>
|
||||
Add hint
|
||||
</DropDownButton>
|
||||
<Button Command="{Binding Finish}">Close</Button>
|
||||
<Button Command="{CompiledBinding Finish}">Close</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
|
||||
@ -20,11 +20,11 @@
|
||||
<avalonia:MaterialIcon Grid.Column="1"
|
||||
Kind="Folder"
|
||||
Margin="0 0 5 0"
|
||||
IsVisible="{Binding !IsExpanded, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TreeViewItem}}}" />
|
||||
IsVisible="{CompiledBinding !IsExpanded, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TreeViewItem}}}" />
|
||||
<avalonia:MaterialIcon Grid.Column="1"
|
||||
Kind="FolderOpen"
|
||||
Margin="0 0 5 0"
|
||||
IsVisible="{Binding IsExpanded, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TreeViewItem}}}" />
|
||||
IsVisible="{CompiledBinding IsExpanded, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TreeViewItem}}}" />
|
||||
|
||||
<TextBlock Grid.Column="2" Text="{CompiledBinding Folder.Name}" VerticalAlignment="Center" />
|
||||
|
||||
|
||||
@ -54,8 +54,8 @@
|
||||
<LinearGradientBrush StartPoint="0,0" EndPoint="0,28">
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.0" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.05" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.05" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.25" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.05" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.25" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@ -66,10 +66,10 @@
|
||||
<LinearGradientBrush StartPoint="0,0" EndPoint="0,28">
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.0" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.05" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.05" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.25" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.75" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.95" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.05" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.25" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.75" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.95" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.95" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
@ -80,8 +80,8 @@
|
||||
<Setter Property="Background">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush StartPoint="0,0" EndPoint="0,28">
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.75" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.95" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.75" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.95" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.95" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
@ -96,12 +96,12 @@
|
||||
SelectionChanged="ProfileTreeView_OnSelectionChanged">
|
||||
<TreeView.Styles>
|
||||
<Style Selector="TreeViewItem">
|
||||
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
|
||||
<Setter Property="IsExpanded" Value="{CompiledBinding IsExpanded, Mode=TwoWay}" />
|
||||
</Style>
|
||||
</TreeView.Styles>
|
||||
<TreeView.ItemTemplate>
|
||||
<TreeDataTemplate ItemsSource="{Binding Children}">
|
||||
<ContentControl Content="{Binding}" x:DataType="profileTree:TreeItemViewModel" Background="Transparent">
|
||||
<TreeDataTemplate ItemsSource="{CompiledBinding Children}">
|
||||
<ContentControl Content="{CompiledBinding}" x:DataType="profileTree:TreeItemViewModel" Background="Transparent">
|
||||
<ContentControl.ContextFlyout>
|
||||
<MenuFlyout IsOpen="{CompiledBinding IsFlyoutOpen, Mode=OneWayToSource}">
|
||||
<MenuItem Header="Add new folder" Command="{CompiledBinding AddFolder}">
|
||||
|
||||
@ -26,7 +26,7 @@
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="10"
|
||||
Command="{Binding OpenEditor}">
|
||||
Command="{CompiledBinding OpenEditor}">
|
||||
<avalonia:MaterialIcon Kind="OpenInNew" />
|
||||
</Button>
|
||||
</Grid>
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<avalonia:MaterialIcon Kind="Edit" />
|
||||
</MenuItem.Icon>
|
||||
</MenuItem>
|
||||
<MenuItem Header="Remove segment" Command="{Binding RemoveSegment}">
|
||||
<MenuItem Header="Remove segment" Command="{CompiledBinding RemoveSegment}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="Remove" />
|
||||
</MenuItem.Icon>
|
||||
@ -38,7 +38,7 @@
|
||||
Name="AddMainSegment"
|
||||
Classes="AppBarButton icon-button icon-button-small"
|
||||
ToolTip.Tip="Add main segment"
|
||||
Command="{Binding AddMainSegment}"
|
||||
Command="{CompiledBinding AddMainSegment}"
|
||||
IsVisible="{CompiledBinding ShowAddMain}">
|
||||
<avalonia:MaterialIcon Kind="PlusCircle" />
|
||||
</Button>
|
||||
@ -52,7 +52,7 @@
|
||||
<Button Name="SegmentClose"
|
||||
Classes="AppBarButton icon-button icon-button-small"
|
||||
ToolTip.Tip="Remove this segment"
|
||||
Command="{Binding RemoveSegment}">
|
||||
Command="{CompiledBinding RemoveSegment}">
|
||||
<avalonia:MaterialIcon Kind="CloseCircle" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<avalonia:MaterialIcon Kind="Edit" />
|
||||
</MenuItem.Icon>
|
||||
</MenuItem>
|
||||
<MenuItem Header="Remove segment" Command="{Binding RemoveSegment}">
|
||||
<MenuItem Header="Remove segment" Command="{CompiledBinding RemoveSegment}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="Remove" />
|
||||
</MenuItem.Icon>
|
||||
@ -39,7 +39,7 @@
|
||||
Classes="AppBarButton icon-button icon-button-small"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip.Tip="Add a start segment"
|
||||
Command="{Binding AddStartSegment}"
|
||||
Command="{CompiledBinding AddStartSegment}"
|
||||
IsVisible="{CompiledBinding ShowAddStart}">
|
||||
<avalonia:MaterialIcon Kind="PlusCircle" />
|
||||
</Button>
|
||||
@ -56,7 +56,7 @@
|
||||
<Button Name="SegmentClose"
|
||||
Classes="AppBarButton icon-button icon-button-small"
|
||||
ToolTip.Tip="Remove this segment"
|
||||
Command="{Binding RemoveSegment}">
|
||||
Command="{CompiledBinding RemoveSegment}">
|
||||
<avalonia:MaterialIcon Kind="CloseCircle" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
@ -66,7 +66,7 @@
|
||||
Classes="AppBarButton icon-button icon-button-small"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip.Tip="Add an end segment"
|
||||
Command="{Binding AddEndSegment}"
|
||||
Command="{CompiledBinding AddEndSegment}"
|
||||
IsVisible="{CompiledBinding ShowAddEnd}">
|
||||
<avalonia:MaterialIcon Kind="PlusCircle" />
|
||||
</Button>
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
<avalonia:MaterialIcon Kind="Edit" />
|
||||
</MenuItem.Icon>
|
||||
</MenuItem>
|
||||
<MenuItem Header="Remove segment" Command="{Binding RemoveSegment}">
|
||||
<MenuItem Header="Remove segment" Command="{CompiledBinding RemoveSegment}">
|
||||
<MenuItem.Icon>
|
||||
<avalonia:MaterialIcon Kind="Remove" />
|
||||
</MenuItem.Icon>
|
||||
@ -39,7 +39,7 @@
|
||||
<Button Name="SegmentClose"
|
||||
Classes="AppBarButton icon-button icon-button-small"
|
||||
ToolTip.Tip="Remove this segment"
|
||||
Command="{Binding RemoveSegment}">
|
||||
Command="{CompiledBinding RemoveSegment}">
|
||||
<avalonia:MaterialIcon Kind="CloseCircle" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
@ -48,7 +48,7 @@
|
||||
Name="AddMainSegment"
|
||||
Classes="AppBarButton icon-button icon-button-small"
|
||||
ToolTip.Tip="Add main segment"
|
||||
Command="{Binding AddMainSegment}"
|
||||
Command="{CompiledBinding AddMainSegment}"
|
||||
IsVisible="{CompiledBinding ShowAddMain}">
|
||||
<avalonia:MaterialIcon Kind="PlusCircle" />
|
||||
</Button>
|
||||
|
||||
@ -4,6 +4,7 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:properties="clr-namespace:Artemis.UI.Screens.ProfileEditor.Properties"
|
||||
xmlns:timeline="clr-namespace:Artemis.UI.Screens.ProfileEditor.Properties.Timeline"
|
||||
xmlns:system="clr-namespace:System;assembly=netstandard"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.Properties.Timeline.TimelineGroupView"
|
||||
x:DataType="timeline:TimelineGroupViewModel">
|
||||
@ -19,8 +20,8 @@
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.Styles>
|
||||
<Style Selector="ContentPresenter">
|
||||
<Setter Property="Canvas.Left" Value="{Binding}" />
|
||||
<Style Selector="ContentPresenter" x:DataType="system:Double">
|
||||
<Setter Property="Canvas.Left" Value="{CompiledBinding}" />
|
||||
<Setter Property="Canvas.Top" Value="9" />
|
||||
</Style>
|
||||
</ItemsControl.Styles>
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
x:DataType="timeline:TimelineViewModel">
|
||||
<UserControl.Resources>
|
||||
</UserControl.Resources>
|
||||
<Grid Background="Transparent" PointerReleased="InputElement_OnPointerReleased" Focusable="True" MinWidth="{Binding MinWidth}">
|
||||
<Grid Background="Transparent" PointerReleased="InputElement_OnPointerReleased" Focusable="True" MinWidth="{CompiledBinding MinWidth}">
|
||||
<Grid.KeyBindings>
|
||||
<KeyBinding Command="{CompiledBinding CopySelectedKeyframes}" Gesture="Ctrl+C" />
|
||||
<KeyBinding Command="{CompiledBinding DuplicateSelectedKeyframes}" Gesture="Ctrl+D" />
|
||||
|
||||
@ -25,7 +25,7 @@
|
||||
BorderBrush="{DynamicResource ButtonBorderBrush}"
|
||||
BorderThickness="0,0,0,1"
|
||||
Height="29">
|
||||
<Grid Margin="{Binding Converter={StaticResource PropertyTreeMarginConverter}}" ColumnDefinitions="19,*">
|
||||
<Grid Margin="{CompiledBinding Converter={StaticResource PropertyTreeMarginConverter}}" ColumnDefinitions="19,*">
|
||||
|
||||
<avalonia:MaterialIcon Classes.chevron-collapsed="{CompiledBinding !PropertyGroupViewModel.IsExpanded}"
|
||||
IsVisible="{CompiledBinding PropertyGroupViewModel.HasChildren}"
|
||||
|
||||
@ -3,16 +3,18 @@
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:windowing="clr-namespace:FluentAvalonia.UI.Windowing;assembly=FluentAvalonia"
|
||||
xmlns:local="clr-namespace:Artemis.UI.Screens.ProfileEditor.Properties.Windows"
|
||||
x:DataType="local:BrushConfigurationWindowViewModel"
|
||||
mc:Ignorable="d"
|
||||
d:DesignWidth="800"
|
||||
d:DesignHeight="450"
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.Properties.Windows.BrushConfigurationWindowView"
|
||||
Icon="/Assets/Images/Logo/application.ico"
|
||||
Title="Artemis | Brush configuration"
|
||||
Width="{Binding Configuration.DialogWidth}"
|
||||
Height="{Binding Configuration.DialogHeight}"
|
||||
Width="{CompiledBinding Configuration.DialogWidth}"
|
||||
Height="{CompiledBinding Configuration.DialogHeight}"
|
||||
WindowStartupLocation="CenterOwner">
|
||||
<Panel>
|
||||
<ContentControl Content="{Binding ConfigurationViewModel}" />
|
||||
<ContentControl Content="{CompiledBinding ConfigurationViewModel}" />
|
||||
</Panel>
|
||||
</windowing:AppWindow>
|
||||
@ -3,16 +3,18 @@
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:windowing="clr-namespace:FluentAvalonia.UI.Windowing;assembly=FluentAvalonia"
|
||||
xmlns:local="clr-namespace:Artemis.UI.Screens.ProfileEditor.Properties.Windows"
|
||||
x:DataType="local:EffectConfigurationWindowViewModel"
|
||||
mc:Ignorable="d"
|
||||
d:DesignWidth="800"
|
||||
d:DesignHeight="450"
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.Properties.Windows.EffectConfigurationWindowView"
|
||||
Icon="/Assets/Images/Logo/application.ico"
|
||||
Title="Artemis | Effect configuration"
|
||||
Width="{Binding Configuration.DialogWidth}"
|
||||
Height="{Binding Configuration.DialogHeight}"
|
||||
Width="{CompiledBinding Configuration.DialogWidth}"
|
||||
Height="{CompiledBinding Configuration.DialogHeight}"
|
||||
WindowStartupLocation="CenterOwner">
|
||||
<Panel>
|
||||
<ContentControl Content="{Binding ConfigurationViewModel}" />
|
||||
<ContentControl Content="{CompiledBinding ConfigurationViewModel}" />
|
||||
</Panel>
|
||||
</windowing:AppWindow>
|
||||
@ -5,7 +5,9 @@
|
||||
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"
|
||||
xmlns:core="clr-namespace:Artemis.Core;assembly=Artemis.Core"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="23"
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.StatusBar.StatusBarView">
|
||||
xmlns:vm="clr-namespace:Artemis.UI.Screens.ProfileEditor.StatusBar;assembly=Artemis.UI"
|
||||
x:DataType="vm:StatusBarViewModel"
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.StatusBar.StatusBarView">
|
||||
<UserControl.Styles>
|
||||
<Style Selector="Border.status-message-border">
|
||||
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderBrush}" />
|
||||
@ -24,21 +26,21 @@
|
||||
</Style>
|
||||
</UserControl.Styles>
|
||||
<Grid ColumnDefinitions="Auto, Auto,*,*" Height="23" Margin="5 0">
|
||||
<ContentControl Grid.Column="0" Content="{Binding ProfileElement}">
|
||||
<ContentControl Grid.Column="0" Content="{CompiledBinding ProfileElement}">
|
||||
<ContentControl.DataTemplates>
|
||||
<DataTemplate DataType="core:Folder">
|
||||
<avalonia:MaterialIcon Kind="Folder" Margin="0 0 5 0" />
|
||||
</DataTemplate>
|
||||
<DataTemplate DataType="core:Layer">
|
||||
<avalonia:MaterialIcon Kind="{Binding LayerBrush.Descriptor.Icon}" Margin="0 0 5 0" />
|
||||
<avalonia:MaterialIcon Kind="{CompiledBinding LayerBrush.Descriptor.Icon}" Margin="0 0 5 0" />
|
||||
</DataTemplate>
|
||||
</ContentControl.DataTemplates>
|
||||
</ContentControl>
|
||||
|
||||
<TextBlock Grid.Column="1" Text="{Binding ProfileElement.Name, FallbackValue=Select a layer to get started}" VerticalAlignment="Center" />
|
||||
<TextBlock Grid.Column="1" Text="{CompiledBinding ProfileElement.Name, FallbackValue=Select a layer to get started}" VerticalAlignment="Center" />
|
||||
|
||||
<Border Grid.Column="2" Classes="status-message-border" Classes.hidden="{Binding !ShowStatusMessage}">
|
||||
<TextBlock Margin="5 0 0 0" Text="{Binding StatusMessage}" />
|
||||
<Border Grid.Column="2" Classes="status-message-border" Classes.hidden="{CompiledBinding !ShowStatusMessage}">
|
||||
<TextBlock Margin="5 0 0 0" Text="{CompiledBinding StatusMessage}" />
|
||||
</Border>
|
||||
|
||||
<Slider Grid.Column="3"
|
||||
@ -46,7 +48,7 @@
|
||||
Minimum="31"
|
||||
Maximum="350"
|
||||
Width="319"
|
||||
Value="{Binding PixelsPerSecond}"
|
||||
Value="{CompiledBinding PixelsPerSecond}"
|
||||
HorizontalAlignment="Right" />
|
||||
</Grid>
|
||||
</UserControl>
|
||||
@ -6,12 +6,12 @@
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.VisualEditor.Tools.SelectionAddToolView" ClipToBounds="False">
|
||||
<Grid>
|
||||
<shared:SelectionRectangle InputElement="{Binding $parent[ZoomBorder]}"
|
||||
<shared:SelectionRectangle InputElement="{CompiledBinding $parent[ZoomBorder]}"
|
||||
BorderBrush="{DynamicResource SystemAccentColor}"
|
||||
BorderRadius="8"
|
||||
BorderThickness="1"
|
||||
SelectionFinished="SelectionRectangle_OnSelectionFinished"
|
||||
ZoomRatio="{Binding $parent[ZoomBorder].ZoomX}">
|
||||
ZoomRatio="{CompiledBinding $parent[ZoomBorder].ZoomX}">
|
||||
<shared:SelectionRectangle.Background>
|
||||
<SolidColorBrush Color="{DynamicResource SystemAccentColorLight1}" Opacity="0.2" />
|
||||
</shared:SelectionRectangle.Background>
|
||||
|
||||
@ -8,12 +8,12 @@
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.VisualEditor.Tools.SelectionRemoveToolView"
|
||||
ClipToBounds="False">
|
||||
<Grid>
|
||||
<shared:SelectionRectangle InputElement="{Binding $parent[paz:ZoomBorder]}"
|
||||
<shared:SelectionRectangle InputElement="{CompiledBinding $parent[paz:ZoomBorder]}"
|
||||
BorderBrush="{DynamicResource SystemAccentColor}"
|
||||
BorderRadius="8"
|
||||
BorderThickness="1"
|
||||
SelectionFinished="SelectionRectangle_OnSelectionFinished"
|
||||
ZoomRatio="{Binding $parent[ZoomBorder].ZoomX}">
|
||||
ZoomRatio="{CompiledBinding $parent[ZoomBorder].ZoomX}">
|
||||
<shared:SelectionRectangle.Background>
|
||||
<SolidColorBrush Color="{DynamicResource SystemAccentColorLight1}" Opacity="0.2" />
|
||||
</shared:SelectionRectangle.Background>
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
xmlns:paz="clr-namespace:Avalonia.Controls.PanAndZoom;assembly=Avalonia.Controls.PanAndZoom"
|
||||
xmlns:core="clr-namespace:Artemis.Core;assembly=Artemis.Core"
|
||||
xmlns:visualEditor="clr-namespace:Artemis.UI.Screens.ProfileEditor.VisualEditor"
|
||||
xmlns:vis="clr-namespace:Artemis.UI.Screens.ProfileEditor.VisualEditor.Visualizers"
|
||||
xmlns:shared="clr-namespace:Artemis.UI.Shared;assembly=Artemis.UI.Shared"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.VisualEditor.VisualEditorView"
|
||||
@ -40,9 +41,9 @@
|
||||
<!-- The bottom layer consists of devices -->
|
||||
<ItemsControl Name="DevicesContainer" ItemsSource="{CompiledBinding Devices}" ClipToBounds="False">
|
||||
<ItemsControl.Styles>
|
||||
<Style Selector="ContentPresenter">
|
||||
<Setter Property="Canvas.Left" Value="{Binding X}" />
|
||||
<Setter Property="Canvas.Top" Value="{Binding Y}" />
|
||||
<Style Selector="ContentPresenter" x:DataType="core:ArtemisDevice">
|
||||
<Setter Property="Canvas.Left" Value="{CompiledBinding X}" />
|
||||
<Setter Property="Canvas.Top" Value="{CompiledBinding Y}" />
|
||||
</Style>
|
||||
</ItemsControl.Styles>
|
||||
<ItemsControl.ItemsPanel>
|
||||
@ -52,7 +53,7 @@
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate DataType="core:ArtemisDevice">
|
||||
<shared:DeviceVisualizer Device="{Binding}" ShowColors="True" />
|
||||
<shared:DeviceVisualizer Device="{CompiledBinding}" ShowColors="True" />
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
@ -60,9 +61,9 @@
|
||||
<!-- The middle layer contains visualizers -->
|
||||
<ItemsControl ItemsSource="{CompiledBinding Visualizers}" ClipToBounds="False" IsVisible="{CompiledBinding !SuspendedEditing}">
|
||||
<ItemsControl.Styles>
|
||||
<Style Selector="ContentPresenter">
|
||||
<Setter Property="Canvas.Left" Value="{Binding X}" />
|
||||
<Setter Property="Canvas.Top" Value="{Binding Y}" />
|
||||
<Style Selector="ContentPresenter" x:DataType="vis:IVisualizerViewModel">
|
||||
<Setter Property="Canvas.Left" Value="{CompiledBinding X}" />
|
||||
<Setter Property="Canvas.Top" Value="{CompiledBinding Y}" />
|
||||
</Style>
|
||||
</ItemsControl.Styles>
|
||||
<ItemsControl.ItemsPanel>
|
||||
|
||||
@ -4,9 +4,11 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"
|
||||
xmlns:windowing="clr-namespace:FluentAvalonia.UI.Windowing;assembly=FluentAvalonia"
|
||||
xmlns:root="clr-namespace:Artemis.UI.Screens.Root;assembly=Artemis.UI"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:DataType="root:DefaultTitleBarViewModel"
|
||||
x:Class="Artemis.UI.Screens.Root.DefaultTitleBarView">
|
||||
<Button Classes="title-bar-button" Command="{Binding ShowDebugger}" VerticalAlignment="Top" HorizontalAlignment="Right" windowing:AppWindow.AllowInteractionInTitleBar="True" >
|
||||
<Button Classes="title-bar-button" Command="{CompiledBinding ShowDebugger}" VerticalAlignment="Top" HorizontalAlignment="Right" windowing:AppWindow.AllowInteractionInTitleBar="True" >
|
||||
<avalonia:MaterialIcon Kind="Bug"></avalonia:MaterialIcon>
|
||||
</Button>
|
||||
</UserControl>
|
||||
@ -4,8 +4,10 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:reactiveUi="http://reactiveui.net"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
xmlns:vm="clr-namespace:Artemis.UI.Screens.Root;assembly=Artemis.UI"
|
||||
x:DataType="vm:RootViewModel"
|
||||
x:Class="Artemis.UI.Screens.Root.RootView">
|
||||
<reactiveUi:RoutedViewHost Router="{Binding Router}">
|
||||
<reactiveUi:RoutedViewHost Router="{CompiledBinding Router}">
|
||||
<reactiveUi:RoutedViewHost.PageTransition>
|
||||
<CrossFade Duration="0.1" />
|
||||
</reactiveUi:RoutedViewHost.PageTransition>
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
<TabControl Margin="12" ItemsSource="{CompiledBinding SettingTabs}" SelectedItem="{CompiledBinding SelectedTab}">
|
||||
<TabControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DisplayName}" />
|
||||
<TextBlock Text="{CompiledBinding DisplayName}" />
|
||||
</DataTemplate>
|
||||
</TabControl.ItemTemplate>
|
||||
</TabControl>
|
||||
|
||||
@ -4,6 +4,8 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:controls="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia"
|
||||
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"
|
||||
xmlns:vm="clr-namespace:Artemis.UI.Screens.Settings;assembly=Artemis.UI"
|
||||
x:DataType="vm:AboutTabViewModel"
|
||||
mc:Ignorable="d" d:DesignWidth="1000" d:DesignHeight="1400"
|
||||
x:Class="Artemis.UI.Screens.Settings.AboutTabView">
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">
|
||||
@ -30,7 +32,7 @@
|
||||
Grid.Column="1"
|
||||
VerticalAlignment="Top"
|
||||
Classes="subtitle"
|
||||
Text="{Binding Version}" />
|
||||
Text="{CompiledBinding Version}" />
|
||||
|
||||
<controls:HyperlinkButton Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
@ -50,9 +52,9 @@
|
||||
Height="75"
|
||||
Width="75"
|
||||
Margin="0 0 15 0"
|
||||
IsVisible="{Binding RobertProfileImage, Converter={x:Static StringConverters.IsNotNullOrEmpty}}">
|
||||
IsVisible="{CompiledBinding RobertProfileImage, Converter={x:Static StringConverters.IsNotNullOrEmpty}}">
|
||||
<Ellipse.Fill>
|
||||
<ImageBrush Source="{Binding RobertProfileImage}" BitmapInterpolationMode="HighQuality" />
|
||||
<ImageBrush Source="{CompiledBinding RobertProfileImage}" BitmapInterpolationMode="HighQuality" />
|
||||
</Ellipse.Fill>
|
||||
</Ellipse>
|
||||
<TextBlock Grid.Row="0" Grid.Column="1" Padding="0">
|
||||
@ -78,9 +80,9 @@
|
||||
Height="75"
|
||||
Width="75"
|
||||
Margin="0 0 15 0"
|
||||
IsVisible="{Binding DarthAffeProfileImage, Converter={x:Static StringConverters.IsNotNullOrEmpty}}">
|
||||
IsVisible="{CompiledBinding DarthAffeProfileImage, Converter={x:Static StringConverters.IsNotNullOrEmpty}}">
|
||||
<Ellipse.Fill>
|
||||
<ImageBrush Source="{Binding DarthAffeProfileImage}" BitmapInterpolationMode="HighQuality" />
|
||||
<ImageBrush Source="{CompiledBinding DarthAffeProfileImage}" BitmapInterpolationMode="HighQuality" />
|
||||
</Ellipse.Fill>
|
||||
</Ellipse>
|
||||
<TextBlock Grid.Row="0" Grid.Column="1" Padding="0">
|
||||
@ -106,9 +108,9 @@
|
||||
Height="75"
|
||||
Width="75"
|
||||
Margin="0 0 15 0"
|
||||
IsVisible="{Binding DrMeteorProfileImage, Converter={x:Static StringConverters.IsNotNullOrEmpty}}">
|
||||
IsVisible="{CompiledBinding DrMeteorProfileImage, Converter={x:Static StringConverters.IsNotNullOrEmpty}}">
|
||||
<Ellipse.Fill>
|
||||
<ImageBrush Source="{Binding DrMeteorProfileImage}" BitmapInterpolationMode="HighQuality" />
|
||||
<ImageBrush Source="{CompiledBinding DrMeteorProfileImage}" BitmapInterpolationMode="HighQuality" />
|
||||
</Ellipse.Fill>
|
||||
</Ellipse>
|
||||
<TextBlock Grid.Row="0" Grid.Column="1" Padding="0">
|
||||
@ -134,9 +136,9 @@
|
||||
Height="75"
|
||||
Width="75"
|
||||
Margin="0 0 15 0"
|
||||
IsVisible="{Binding KaiProfileImage, Converter={x:Static StringConverters.IsNotNullOrEmpty}}">
|
||||
IsVisible="{CompiledBinding KaiProfileImage, Converter={x:Static StringConverters.IsNotNullOrEmpty}}">
|
||||
<Ellipse.Fill>
|
||||
<ImageBrush Source="{Binding KaiProfileImage}" BitmapInterpolationMode="HighQuality" />
|
||||
<ImageBrush Source="{CompiledBinding KaiProfileImage}" BitmapInterpolationMode="HighQuality" />
|
||||
</Ellipse.Fill>
|
||||
</Ellipse>
|
||||
<TextBlock Grid.Row="0" Grid.Column="1" Padding="0">
|
||||
|
||||
@ -115,8 +115,8 @@
|
||||
<LinearGradientBrush StartPoint="0,0" EndPoint="0,30">
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.0" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.05" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.05" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.25" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.05" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.25" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@ -125,8 +125,8 @@
|
||||
<Setter Property="Background">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush StartPoint="0,0" EndPoint="0,32">
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.75" />
|
||||
<GradientStop Color="{Binding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.95" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0}" Offset="0.75" />
|
||||
<GradientStop Color="{CompiledBinding Source={StaticResource SystemAccentColorLight3}, Converter={StaticResource ColorOpacityConverter}, ConverterParameter=0.25}" Offset="0.95" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="0.95" />
|
||||
<GradientStop Color="{StaticResource SystemAccentColorLight3}" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
@ -139,8 +139,8 @@
|
||||
Margin="0 8 0 0"
|
||||
RowDefinitions="Auto,*"
|
||||
ContextFlyout="{StaticResource CategoryMenuFlyout}"
|
||||
Classes.flyout-open="{Binding IsOpen, Source={StaticResource CategoryMenuFlyout}}"
|
||||
Classes.plus-flyout-open="{Binding IsOpen, Source={StaticResource PlusMenuFlyout}}">
|
||||
Classes.flyout-open="{CompiledBinding IsOpen, Source={StaticResource CategoryMenuFlyout}}"
|
||||
Classes.plus-flyout-open="{CompiledBinding IsOpen, Source={StaticResource PlusMenuFlyout}}">
|
||||
<Grid Grid.Row="0" Background="Transparent" Margin="0 0 6 0" ColumnDefinitions="Auto,*,Auto,Auto,Auto">
|
||||
<avalonia:MaterialIcon Classes.chevron-collapsed="{CompiledBinding !IsCollapsed}"
|
||||
Kind="ChevronUp"
|
||||
|
||||
@ -71,7 +71,7 @@
|
||||
ColumnDefinitions="Auto,*,Auto,Auto"
|
||||
Background="Transparent"
|
||||
ContextFlyout="{StaticResource ProfileMenuFlyout}"
|
||||
Classes.flyout-open="{Binding IsOpen, Source={StaticResource ProfileMenuFlyout}}">
|
||||
Classes.flyout-open="{CompiledBinding IsOpen, Source={StaticResource ProfileMenuFlyout}}">
|
||||
<shared:ProfileConfigurationIcon Grid.Column="0"
|
||||
x:Name="ProfileIcon"
|
||||
VerticalAlignment="Center"
|
||||
|
||||
@ -3,10 +3,12 @@
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:avalonia="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"
|
||||
xmlns:vm="clr-namespace:Artemis.UI.Screens.Sidebar;assembly=Artemis.UI"
|
||||
x:DataType="vm:SidebarScreenViewModel"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="Artemis.UI.Screens.Sidebar.SidebarScreenView">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<avalonia:MaterialIcon Kind="{Binding Icon}" Width="16" Height="16" />
|
||||
<TextBlock FontSize="12" Margin="10 0" VerticalAlignment="Center" Text="{Binding DisplayName}" />
|
||||
<avalonia:MaterialIcon Kind="{CompiledBinding Icon}" Width="16" Height="16" />
|
||||
<TextBlock FontSize="12" Margin="10 0" VerticalAlignment="Center" Text="{CompiledBinding DisplayName}" />
|
||||
</StackPanel>
|
||||
</UserControl>
|
||||
@ -28,7 +28,7 @@
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Border Classes="card-condensed" Margin="4">
|
||||
<ContentControl Content="{Binding}"></ContentControl>
|
||||
<ContentControl Content="{CompiledBinding}"></ContentControl>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
|
||||
@ -31,7 +31,7 @@
|
||||
Grid.Column="1"
|
||||
VerticalAlignment="Top"
|
||||
Classes="subtitle"
|
||||
Text="{Binding Version}" />
|
||||
Text="{CompiledBinding Version}" />
|
||||
|
||||
<controls:HyperlinkButton Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
|
||||
@ -54,7 +54,7 @@
|
||||
ClipToBounds="True">
|
||||
<Border CornerRadius="4">
|
||||
<Border.Background>
|
||||
<SolidColorBrush Color="{Binding Converter={StaticResource SKColorToColorConverter}, Mode=OneWay}" />
|
||||
<SolidColorBrush Color="{CompiledBinding Converter={StaticResource SKColorToColorConverter}, Mode=OneWay}" />
|
||||
</Border.Background>
|
||||
</Border>
|
||||
</Border>
|
||||
@ -64,13 +64,13 @@
|
||||
<TextBlock Text="Color gradient" FontFamily="Consolas" />
|
||||
</DataTemplate>
|
||||
<DataTemplate DataType="core:Numeric">
|
||||
<TextBlock Text="{Binding Mode=OneWay}" FontFamily="Consolas" />
|
||||
<TextBlock Text=" {CompiledBinding Mode=OneWay}" FontFamily="Consolas" />
|
||||
</DataTemplate>
|
||||
<DataTemplate DataType="collections:IList">
|
||||
<TextBlock Text="{Binding Count, StringFormat='List - {0} item(s)', Mode=OneWay}" FontFamily="Consolas" />
|
||||
<TextBlock Text="{CompiledBinding Count, StringFormat='List - {0} item(s)', Mode=OneWay}" FontFamily="Consolas" />
|
||||
</DataTemplate>
|
||||
<DataTemplate DataType="system:Object">
|
||||
<TextBlock Text="{Binding Mode=OneWay}" FontFamily="Consolas" />
|
||||
<TextBlock Text="{CompiledBinding Mode=OneWay}" FontFamily="Consolas" />
|
||||
</DataTemplate>
|
||||
</ContentControl.DataTemplates>
|
||||
</ContentControl>
|
||||
|
||||
@ -19,12 +19,12 @@
|
||||
<Button Content=""
|
||||
FontFamily="{StaticResource SymbolThemeFontFamily}"
|
||||
Theme="{StaticResource TransparentButton}"
|
||||
Command="{Binding $parent[TextBox].Clear}"
|
||||
IsVisible="{Binding Text, RelativeSource={RelativeSource FindAncestor, AncestorType=TextBox}, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
|
||||
Command="{CompiledBinding $parent[TextBox].Clear}"
|
||||
IsVisible="{CompiledBinding Text, RelativeSource={RelativeSource FindAncestor, AncestorType=TextBox}, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
|
||||
<Button Content=""
|
||||
FontFamily="{StaticResource SymbolThemeFontFamily}"
|
||||
Theme="{StaticResource TransparentButton}"
|
||||
Command="{Binding $parent[TextBox].Clear}"
|
||||
Command="{CompiledBinding $parent[TextBox].Clear}"
|
||||
IsHitTestVisible="False"/>
|
||||
</StackPanel>
|
||||
</Template>
|
||||
@ -48,12 +48,12 @@
|
||||
<TreeView.DataTemplates>
|
||||
<TreeDataTemplate DataType="core:NodeData">
|
||||
<StackPanel Margin="-15 1 0 1" Background="Transparent" PointerReleased="InputElement_OnPointerReleased">
|
||||
<TextBlock Classes="BodyStrongTextBlockStyle" Text="{Binding Name}" TextWrapping="Wrap"></TextBlock>
|
||||
<TextBlock Foreground="{DynamicResource TextFillColorSecondary}" Text="{Binding Description}" TextWrapping="Wrap"></TextBlock>
|
||||
<TextBlock Classes="BodyStrongTextBlockStyle" Text="{CompiledBinding Name}" TextWrapping="Wrap"></TextBlock>
|
||||
<TextBlock Foreground="{DynamicResource TextFillColorSecondary}" Text="{CompiledBinding Description}" TextWrapping="Wrap"></TextBlock>
|
||||
</StackPanel>
|
||||
</TreeDataTemplate>
|
||||
<TreeDataTemplate DataType="visualScripting:NodeCategoryViewModel" ItemsSource="{Binding Nodes}">
|
||||
<TextBlock Text="{Binding Category}"></TextBlock>
|
||||
<TreeDataTemplate DataType="visualScripting:NodeCategoryViewModel" ItemsSource="{CompiledBinding Nodes}">
|
||||
<TextBlock Text="{CompiledBinding Category}"></TextBlock>
|
||||
</TreeDataTemplate>
|
||||
</TreeView.DataTemplates>
|
||||
<TreeView.ItemsPanel>
|
||||
|
||||
@ -78,15 +78,15 @@
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.Styles>
|
||||
<Style Selector="ItemsControl#NodesContainer > ContentPresenter">
|
||||
<Setter Property="Canvas.Left" Value="{Binding Node.X}" />
|
||||
<Setter Property="Canvas.Top" Value="{Binding Node.Y}" />
|
||||
<Style Selector="ItemsControl#NodesContainer > ContentPresenter" x:DataType="visualScripting:NodeViewModel">
|
||||
<Setter Property="Canvas.Left" Value="{CompiledBinding Node.X}" />
|
||||
<Setter Property="Canvas.Top" Value="{CompiledBinding Node.Y}" />
|
||||
</Style>
|
||||
</ItemsControl.Styles>
|
||||
</ItemsControl>
|
||||
|
||||
<shared:SelectionRectangle Name="SelectionRectangle"
|
||||
InputElement="{Binding #NodeScriptZoomBorder}"
|
||||
InputElement="{CompiledBinding #NodeScriptZoomBorder}"
|
||||
SelectionUpdated="SelectionRectangle_OnSelectionUpdated"
|
||||
SelectionFinished="SelectionRectangle_OnSelectionFinished"
|
||||
BorderBrush="{DynamicResource SystemAccentColor}"
|
||||
|
||||
@ -28,10 +28,10 @@
|
||||
<avalonia:MaterialIcon Kind="Plus" />
|
||||
</MenuItem.Icon>
|
||||
<MenuItem.Styles>
|
||||
<Style Selector="MenuItem > MenuItem > MenuItem">
|
||||
<Setter Property="Command" Value="{Binding CreateNode}" />
|
||||
<Setter Property="Header" Value="{Binding Header}" />
|
||||
<Setter Property="ItemsSource" Value="{Binding Items}" />
|
||||
<Style Selector="MenuItem > MenuItem > MenuItem" x:DataType="visualScripting:NodeMenuItemViewModel">
|
||||
<Setter Property="Command" Value="{CompiledBinding CreateNode}" />
|
||||
<Setter Property="Header" Value="{CompiledBinding Header}" />
|
||||
<Setter Property="ItemsSource" Value="{CompiledBinding Items}" />
|
||||
</Style>
|
||||
</MenuItem.Styles>
|
||||
</MenuItem>
|
||||
|
||||
@ -55,7 +55,7 @@
|
||||
<shared:EnumComboBox Value="{CompiledBinding SelectedCursor}"></shared:EnumComboBox>
|
||||
</StackPanel>
|
||||
|
||||
<Button Command="{Binding CreateRandomGradient}">
|
||||
<Button Command="{CompiledBinding CreateRandomGradient}">
|
||||
Create random gradient
|
||||
</Button>
|
||||
<gradientPicker:GradientPickerButton ColorGradient="{CompiledBinding ColorGradient}" IsCompact="True" />
|
||||
|
||||
@ -38,7 +38,7 @@
|
||||
ClipToBounds="True">
|
||||
<Border CornerRadius="4">
|
||||
<Border.Background>
|
||||
<SolidColorBrush Color="{Binding Converter={StaticResource SKColorToColorConverter}}" />
|
||||
<SolidColorBrush Color="{CompiledBinding Converter={StaticResource SKColorToColorConverter}}" />
|
||||
</Border.Background>
|
||||
</Border>
|
||||
</Border>
|
||||
@ -46,7 +46,7 @@
|
||||
</DataTemplate>
|
||||
<DataTemplate DataType="system:Object">
|
||||
<Border Classes="card-condensed" Margin="0,5,5,5 ">
|
||||
<TextBlock Text="{Binding Converter={StaticResource JsonConverter}}" FontFamily="Consolas"/>
|
||||
<TextBlock Text="{CompiledBinding Converter={StaticResource JsonConverter}}" FontFamily="Consolas"/>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
</ContentControl.DataTemplates>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user