mirror of
https://github.com/Artemis-RGB/Artemis
synced 2026-11-11 19:36:28 +00:00
UI - Update Avalonia to preview7
UI - Update FluentAvalonia to preview7
This commit is contained in:
1 parent
b1e39dbd39
commit
c50a572363
82 files changed
+214
-208
No files matched your search
+1
-1
@@ -24,7 +24,7 @@
|
||||
Grid.Row="1"
|
||||
Classes="condition-type"
|
||||
PlaceholderText="Select an activation type"
|
||||
Items="{CompiledBinding ConditionTypeViewModels}"
|
||||
ItemsSource="{CompiledBinding ConditionTypeViewModels}"
|
||||
IsEnabled="{CompiledBinding ProfileElement, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||
SelectedItem="{CompiledBinding SelectedConditionTypeViewModel}"
|
||||
HorizontalAlignment="Stretch">
|
||||
|
||||
@@ -55,11 +55,11 @@ public class PlaybackViewModel : ActivatableViewModelBase
|
||||
_keyBindingsEnabled = Shared.UI.KeyBindingsEnabled.ToProperty(this, vm => vm.KeyBindingsEnabled).DisposeWith(d);
|
||||
|
||||
_lastUpdate = DateTime.MinValue;
|
||||
DispatcherTimer updateTimer = new(TimeSpan.FromMilliseconds(60.0 / 1000), DispatcherPriority.Render, Update);
|
||||
DispatcherTimer updateTimer = new(TimeSpan.FromMilliseconds(60.0 / 1000), DispatcherPriority.Background, Update);
|
||||
updateTimer.Start();
|
||||
Disposable.Create(() =>
|
||||
{
|
||||
updateTimer.Stop();
|
||||
// updateTimer.Stop();
|
||||
_settingsService.GetSetting("ProfileEditor.RepeatTimeline", true).Value = _repeating && _repeatTimeline;
|
||||
_settingsService.GetSetting("ProfileEditor.RepeatSegment", false).Value = _repeating && _repeatSegment;
|
||||
}).DisposeWith(d);
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@
|
||||
<Border Grid.Row="1" Classes="card" Margin="0 15">
|
||||
<Panel>
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Hidden" IsVisible="{CompiledBinding AdaptionHints.Count}">
|
||||
<ItemsControl Items="{CompiledBinding AdaptionHints}" Classes="adaption-hints">
|
||||
<ItemsControl ItemsSource="{CompiledBinding AdaptionHints}" Classes="adaption-hints">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel Spacing="10" />
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
</UserControl.Styles>
|
||||
<Grid RowDefinitions="*,Auto">
|
||||
<TreeView Name="Profile" Classes="no-right-margin draggable"
|
||||
Items="{CompiledBinding Children}"
|
||||
ItemsSource="{CompiledBinding Children}"
|
||||
SelectedItem="{CompiledBinding SelectedChild}"
|
||||
SelectionChanged="ProfileTreeView_OnSelectionChanged">
|
||||
<TreeView.Styles>
|
||||
|
||||
@@ -256,15 +256,9 @@ public abstract class TreeItemViewModel : ActivatableViewModelBase
|
||||
|
||||
private async void UpdateCanPaste(bool isFlyoutOpen)
|
||||
{
|
||||
if (Application.Current?.Clipboard == null)
|
||||
{
|
||||
CanPaste = false;
|
||||
return;
|
||||
}
|
||||
|
||||
string[] formats = await Application.Current.Clipboard.GetFormatsAsync();
|
||||
string[] formats = await Shared.UI.Clipboard.GetFormatsAsync();
|
||||
//diogotr7: This can be null on Linux sometimes. I'm not sure why.
|
||||
if (formats == null)
|
||||
if (formats == null!)
|
||||
{
|
||||
CanPaste = false;
|
||||
return;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<TextBox Name="SearchBox" Text="{CompiledBinding SearchText}" Margin="0 0 0 15" Watermark="Search" />
|
||||
<ListBox Name="EffectDescriptorsList"
|
||||
Grid.Row="1"
|
||||
Items="{CompiledBinding LayerEffectDescriptors}"
|
||||
ItemsSource="{CompiledBinding LayerEffectDescriptors}"
|
||||
IsVisible="{CompiledBinding LayerEffectDescriptors.Count}"
|
||||
Height="300">
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
Name="TreeScrollViewer"
|
||||
Offset="{CompiledBinding #TimelineScrollViewer.Offset, Mode=OneWay}">
|
||||
<Grid RowDefinitions="*,Auto">
|
||||
<ItemsControl Items="{CompiledBinding PropertyGroupViewModels}" Padding="0 0 8 0">
|
||||
<ItemsControl ItemsSource="{CompiledBinding PropertyGroupViewModels}" Padding="0 0 8 0">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<TreeDataTemplate DataType="{x:Type local:PropertyGroupViewModel}" ItemsSource="{CompiledBinding Children}">
|
||||
<ContentControl Content="{CompiledBinding TreeGroupViewModel}" />
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@
|
||||
</Ellipse.Transitions>
|
||||
<Ellipse.ContextFlyout>
|
||||
<MenuFlyout Opening="FlyoutBase_OnOpening">
|
||||
<MenuItem Header="Easing" Items="{Binding EasingViewModels}">
|
||||
<MenuItem Header="Easing" ItemsSource="{Binding EasingViewModels}">
|
||||
<MenuItem.Styles>
|
||||
<Style Selector="MenuItem > MenuItem">
|
||||
<Setter Property="Icon">
|
||||
|
||||
+3
-15
@@ -150,9 +150,6 @@ public class TimelineKeyframeViewModel<T> : ActivatableViewModelBase, ITimelineK
|
||||
|
||||
private async Task ExecuteCopy()
|
||||
{
|
||||
if (Application.Current?.Clipboard == null)
|
||||
return;
|
||||
|
||||
List<KeyframeClipboardModel> keyframes = new();
|
||||
if (!IsSelected)
|
||||
keyframes.Add(new KeyframeClipboardModel(Keyframe));
|
||||
@@ -162,15 +159,12 @@ public class TimelineKeyframeViewModel<T> : ActivatableViewModelBase, ITimelineK
|
||||
string copy = CoreJson.SerializeObject(keyframes, true);
|
||||
DataObject dataObject = new();
|
||||
dataObject.Set(KeyframeClipboardModel.ClipboardDataFormat, copy);
|
||||
await Application.Current.Clipboard.SetDataObjectAsync(dataObject);
|
||||
await Shared.UI.Clipboard.SetDataObjectAsync(dataObject);
|
||||
}
|
||||
|
||||
private async Task ExecutePaste()
|
||||
{
|
||||
if (Application.Current?.Clipboard == null)
|
||||
return;
|
||||
|
||||
List<KeyframeClipboardModel>? keyframes = await Application.Current.Clipboard.GetJsonAsync<List<KeyframeClipboardModel>>(KeyframeClipboardModel.ClipboardDataFormat);
|
||||
List<KeyframeClipboardModel>? keyframes = await Shared.UI.Clipboard.GetJsonAsync<List<KeyframeClipboardModel>>(KeyframeClipboardModel.ClipboardDataFormat);
|
||||
if (keyframes == null)
|
||||
return;
|
||||
|
||||
@@ -201,13 +195,7 @@ public class TimelineKeyframeViewModel<T> : ActivatableViewModelBase, ITimelineK
|
||||
|
||||
private async void UpdateCanPaste(bool isFlyoutOpen)
|
||||
{
|
||||
if (Application.Current?.Clipboard == null)
|
||||
{
|
||||
CanPaste = false;
|
||||
return;
|
||||
}
|
||||
|
||||
string[] formats = await Application.Current.Clipboard.GetFormatsAsync();
|
||||
string[] formats = await Shared.UI.Clipboard.GetFormatsAsync();
|
||||
CanPaste = formats.Contains("Artemis.Keyframes");
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -11,7 +11,7 @@
|
||||
<ItemsControl Grid.Row="0"
|
||||
Height="28"
|
||||
IsVisible="{CompiledBinding !PropertyGroupViewModel.IsExpanded}"
|
||||
Items="{CompiledBinding KeyframePositions}"
|
||||
ItemsSource="{CompiledBinding KeyframePositions}"
|
||||
HorizontalAlignment="Stretch">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
@@ -39,7 +39,7 @@
|
||||
<Rectangle Grid.Row="1" HorizontalAlignment="Stretch" Fill="{DynamicResource ButtonBorderBrush}" Height="1" />
|
||||
|
||||
<ItemsControl Grid.Row="2"
|
||||
Items="{CompiledBinding Children}"
|
||||
ItemsSource="{CompiledBinding Children}"
|
||||
IsVisible="{CompiledBinding PropertyGroupViewModel.IsExpanded}"
|
||||
HorizontalAlignment="Stretch">
|
||||
<ItemsControl.DataTemplates>
|
||||
|
||||
+1
-1
@@ -5,7 +5,7 @@
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="Artemis.UI.Screens.ProfileEditor.Properties.Timeline.TimelinePropertyView">
|
||||
<Border Height="29" BorderThickness="0,0,0,1" BorderBrush="{DynamicResource ButtonBorderBrush}">
|
||||
<ItemsControl Items="{Binding KeyframeViewModels}">
|
||||
<ItemsControl ItemsSource="{Binding KeyframeViewModels}">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<Canvas />
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<KeyBinding Command="{CompiledBinding PasteKeyframes}" Gesture="Ctrl+V" />
|
||||
<KeyBinding Command="{CompiledBinding DeleteSelectedKeyframes}" Gesture="Delete" />
|
||||
</Grid.KeyBindings>
|
||||
<ItemsControl Items="{CompiledBinding PropertyGroupViewModels}">
|
||||
<ItemsControl ItemsSource="{CompiledBinding PropertyGroupViewModels}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<TreeDataTemplate DataType="{x:Type local:PropertyGroupViewModel}" ItemsSource="{CompiledBinding Children}">
|
||||
<ContentControl Content="{CompiledBinding TimelineGroupViewModel}" />
|
||||
|
||||
+2
-2
@@ -169,10 +169,10 @@ public class TimelineViewModel : ActivatableViewModelBase
|
||||
|
||||
private async Task ExecutePasteKeyframes()
|
||||
{
|
||||
if (_profileElement == null || Application.Current?.Clipboard == null)
|
||||
if (_profileElement == null)
|
||||
return;
|
||||
|
||||
List<KeyframeClipboardModel>? keyframes = await Application.Current.Clipboard.GetJsonAsync<List<KeyframeClipboardModel>>(KeyframeClipboardModel.ClipboardDataFormat);
|
||||
List<KeyframeClipboardModel>? keyframes = await Shared.UI.Clipboard.GetJsonAsync<List<KeyframeClipboardModel>>(KeyframeClipboardModel.ClipboardDataFormat);
|
||||
if (keyframes == null)
|
||||
return;
|
||||
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@
|
||||
<TextBox Name="SearchBox" Text="{CompiledBinding SearchText}" Margin="0 0 0 15" Watermark="Search" />
|
||||
<ListBox Name="EffectDescriptorsList"
|
||||
Grid.Row="1"
|
||||
Items="{CompiledBinding Presets}"
|
||||
ItemsSource="{CompiledBinding Presets}"
|
||||
IsVisible="{CompiledBinding Presets.Count}"
|
||||
Height="300">
|
||||
|
||||
|
||||
@@ -171,7 +171,7 @@
|
||||
Do not bind directly to the PropertyGroupViewModel.Children collection
|
||||
Instead use a reference provided by the VM that is null when collapsed, virtualization for noobs
|
||||
-->
|
||||
<ItemsControl Items="{CompiledBinding Children}"
|
||||
<ItemsControl ItemsSource="{CompiledBinding Children}"
|
||||
IsVisible="{CompiledBinding PropertyGroupViewModel.IsExpanded}"
|
||||
HorizontalAlignment="Stretch">
|
||||
<ItemsControl.DataTemplates>
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
</Grid.Transitions>
|
||||
|
||||
<!-- The bottom layer consists of devices -->
|
||||
<ItemsControl Name="DevicesContainer" Items="{CompiledBinding Devices}" ClipToBounds="False">
|
||||
<ItemsControl Name="DevicesContainer" ItemsSource="{CompiledBinding Devices}" ClipToBounds="False">
|
||||
<ItemsControl.Styles>
|
||||
<Style Selector="ContentPresenter">
|
||||
<Setter Property="Canvas.Left" Value="{Binding X}" />
|
||||
@@ -58,7 +58,7 @@
|
||||
</ItemsControl>
|
||||
|
||||
<!-- The middle layer contains visualizers -->
|
||||
<ItemsControl Items="{CompiledBinding Visualizers}" ClipToBounds="False" IsVisible="{CompiledBinding !SuspendedEditing}">
|
||||
<ItemsControl ItemsSource="{CompiledBinding Visualizers}" ClipToBounds="False" IsVisible="{CompiledBinding !SuspendedEditing}">
|
||||
<ItemsControl.Styles>
|
||||
<Style Selector="ContentPresenter">
|
||||
<Setter Property="Canvas.Left" Value="{Binding X}" />
|
||||
@@ -73,7 +73,7 @@
|
||||
</ItemsControl>
|
||||
|
||||
<!-- The top layer contains tools -->
|
||||
<ItemsControl Items="{CompiledBinding Tools}" ClipToBounds="False" IsVisible="{CompiledBinding !SuspendedEditing}">
|
||||
<ItemsControl ItemsSource="{CompiledBinding Tools}" ClipToBounds="False" IsVisible="{CompiledBinding !SuspendedEditing}">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<Grid />
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
<Border Grid.Row="0" Classes="card" Padding="0" Margin="4 0 4 4" ClipToBounds="True">
|
||||
<Grid ColumnDefinitions="Auto,*">
|
||||
<Border Grid.Column="0">
|
||||
<ItemsControl Items="{CompiledBinding Tools}">
|
||||
<ItemsControl ItemsSource="{CompiledBinding Tools}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate DataType="shared:IToolViewModel">
|
||||
<ToggleButton Classes="icon-button editor-sidebar-button"
|
||||
@@ -86,9 +86,9 @@
|
||||
<ContentControl Grid.Column="1" Content="{CompiledBinding VisualEditorViewModel}" />
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
|
||||
<GridSplitter Grid.Row="1" Classes="editor-grid-splitter-horizontal" />
|
||||
|
||||
|
||||
<Border Grid.Row="2" Classes="card card-condensed" Margin="4" Padding="0" ClipToBounds="True">
|
||||
<Panel>
|
||||
<ContentControl Content="{CompiledBinding PropertiesViewModel}" />
|
||||
@@ -109,9 +109,9 @@
|
||||
</Panel>
|
||||
</Border>
|
||||
</Grid>
|
||||
|
||||
|
||||
<GridSplitter Grid.Row="0" Grid.Column="1" Classes="editor-grid-splitter-vertical" />
|
||||
|
||||
|
||||
<Grid Grid.Row="0" Grid.Column="2">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
@@ -124,9 +124,9 @@
|
||||
<Border Classes="suspended-editing" />
|
||||
</Panel>
|
||||
</Border>
|
||||
|
||||
|
||||
<GridSplitter Grid.Row="1" Classes="editor-grid-splitter-horizontal" />
|
||||
|
||||
|
||||
<Border Grid.Row="2" Classes="card card-condensed" Margin="4">
|
||||
<Panel>
|
||||
<ContentControl Content="{CompiledBinding DisplayConditionScriptViewModel}" />
|
||||
|
||||
Reference in new issue
Block a user