线条动画支持大小切换

This commit is contained in:
艾竹
2023-04-29 18:36:50 +08:00
parent f4268b9fc2
commit 4a3f278a97
30 changed files with 1095 additions and 317 deletions

View File

@@ -76,42 +76,42 @@ namespace AIStudio.Wpf.Logical
ConnectionViewModel connector1 = new ConnectionViewModel(in1.Output[0], item1.Input[0], _service.DrawModeViewModel.LineDrawMode, _service.DrawModeViewModel.LineRouterMode);
connector1.ColorViewModel.FillColor.Color = Colors.Green;
connector1.ColorViewModel.LineAnimation = LineAnimation.PathAnimation;
connector1.AnimationViewModel.Animation = LineAnimation.PathAnimation;
DiagramViewModel.Add(connector1);
ConnectionViewModel connector2 = new ConnectionViewModel(in2.Output[0], item1.Input[1], _service.DrawModeViewModel.LineDrawMode, _service.DrawModeViewModel.LineRouterMode);
connector2.ColorViewModel.FillColor.Color = Colors.Green;
connector2.ColorViewModel.LineAnimation = LineAnimation.PathAnimation;
connector2.AnimationViewModel.Animation = LineAnimation.PathAnimation;
DiagramViewModel.Add(connector2);
ConnectionViewModel connector3 = new ConnectionViewModel(item1.Output[0], gTGate.Input[0], _service.DrawModeViewModel.LineDrawMode, _service.DrawModeViewModel.LineRouterMode);
connector3.ColorViewModel.FillColor.Color = Colors.Green;
connector3.ColorViewModel.LineAnimation = LineAnimation.PathAnimation;
connector3.AnimationViewModel.Animation = LineAnimation.PathAnimation;
DiagramViewModel.Add(connector3);
ConnectionViewModel connector4 = new ConnectionViewModel(constant.Output[0], gTGate.Input[1], _service.DrawModeViewModel.LineDrawMode, _service.DrawModeViewModel.LineRouterMode);
connector4.ColorViewModel.FillColor.Color = Colors.Green;
connector4.ColorViewModel.LineAnimation = LineAnimation.PathAnimation;
connector4.AnimationViewModel.Animation = LineAnimation.PathAnimation;
DiagramViewModel.Add(connector4);
ConnectionViewModel connector5 = new ConnectionViewModel(gTGate.Output[0], sELGate.Input[0], _service.DrawModeViewModel.LineDrawMode, _service.DrawModeViewModel.LineRouterMode);
connector5.ColorViewModel.FillColor.Color = Colors.Green;
connector5.ColorViewModel.LineAnimation = LineAnimation.PathAnimation;
connector5.AnimationViewModel.Animation = LineAnimation.PathAnimation;
DiagramViewModel.Add(connector5);
ConnectionViewModel connector6 = new ConnectionViewModel(in3.Output[0], sELGate.Input[1], _service.DrawModeViewModel.LineDrawMode, _service.DrawModeViewModel.LineRouterMode);
connector6.ColorViewModel.FillColor.Color = Colors.Green;
connector6.ColorViewModel.LineAnimation = LineAnimation.PathAnimation;
connector6.AnimationViewModel.Animation = LineAnimation.PathAnimation;
DiagramViewModel.Add(connector6);
ConnectionViewModel connector7 = new ConnectionViewModel(in4.Output[0], sELGate.Input[2], _service.DrawModeViewModel.LineDrawMode, _service.DrawModeViewModel.LineRouterMode);
connector7.ColorViewModel.FillColor.Color = Colors.Green;
connector7.ColorViewModel.LineAnimation = LineAnimation.PathAnimation;
connector7.AnimationViewModel.Animation = LineAnimation.PathAnimation;
DiagramViewModel.Add(connector7);
ConnectionViewModel connector8 = new ConnectionViewModel(sELGate.Output[0], out1.Input[0], _service.DrawModeViewModel.LineDrawMode, _service.DrawModeViewModel.LineRouterMode);
connector8.ColorViewModel.FillColor.Color = Colors.Green;
connector8.ColorViewModel.LineAnimation = LineAnimation.PathAnimation;
connector8.AnimationViewModel.Animation = LineAnimation.PathAnimation;
DiagramViewModel.Add(connector8);
}

View File

@@ -447,6 +447,10 @@ namespace AIStudio.Wpf.DiagramApp.ViewModels
{
PageViewModel.DiagramViewModel.SetSharp(sender as IShapeViewModel, e.PropertyName, PageViewModel.DiagramViewModel.SelectedItems);
}
else if (sender is IAnimationViewModel)
{
PageViewModel.DiagramViewModel.SetAnimation(sender as IAnimationViewModel, e.PropertyName, PageViewModel.DiagramViewModel.SelectedItems);
}
else if (sender is IQuickThemeViewModel)
{
PageViewModel.DiagramViewModel.SetQuickItem(sender as IQuickThemeViewModel, e.PropertyName, PageViewModel.DiagramViewModel.SelectedItems);

View File

@@ -1169,7 +1169,7 @@
<StackPanel>
<TextBlock Text="箭头样式" Margin="5"/>
<StackPanel Orientation="Horizontal">
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:ArrowPathStyle}" SelectedItem="{Binding ShapeViewModel.SourceMarker.PathStyle}">
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:PathStyle}" SelectedItem="{Binding ShapeViewModel.SourceMarker.PathStyle}">
<Fluent:ComboBox.ItemTemplate>
<DataTemplate>
<DockPanel>
@@ -1196,7 +1196,7 @@
</Fluent:ComboBox.ItemTemplate>
</Fluent:ComboBox>
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:ArrowPathStyle}" SelectedItem="{Binding ShapeViewModel.SinkMarker.PathStyle}">
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:PathStyle}" SelectedItem="{Binding ShapeViewModel.SinkMarker.PathStyle}">
<Fluent:ComboBox.ItemTemplate>
<DataTemplate>
<DockPanel>
@@ -1233,14 +1233,14 @@
<StackPanel>
<TextBlock Text="箭头样式" Margin="5"/>
<StackPanel Orientation="Horizontal">
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:ArrowSizeStyle}" SelectedItem="{Binding ShapeViewModel.SourceMarker.SizeStyle}">
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:SizeStyle}" SelectedItem="{Binding ShapeViewModel.SourceMarker.SizeStyle}">
<Fluent:ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding .,Converter={StaticResource EnumDescriptionConverter}}" />
</DataTemplate>
</Fluent:ComboBox.ItemTemplate>
</Fluent:ComboBox>
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:ArrowSizeStyle}" SelectedItem="{Binding ShapeViewModel.SinkMarker.SizeStyle}">
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:SizeStyle}" SelectedItem="{Binding ShapeViewModel.SinkMarker.SizeStyle}">
<Fluent:ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding .,Converter={StaticResource EnumDescriptionConverter}}" />
@@ -1268,7 +1268,7 @@
</StackPanel>
<StackPanel>
<TextBlock Text="线条动画" Margin="5"/>
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:LineAnimation}" SelectedItem="{Binding AnimationViewModel.LineAnimation}">
<Fluent:ComboBox Size="Small" Width="140" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:LineAnimation}" SelectedItem="{Binding AnimationViewModel.Animation}">
<Fluent:ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding .,Converter={StaticResource EnumDescriptionConverter}}" />
@@ -1276,6 +1276,43 @@
</Fluent:ComboBox.ItemTemplate>
</Fluent:ComboBox>
</StackPanel>
<StackPanel>
<TextBlock Text="动画样式" Margin="5"/>
<StackPanel Orientation="Horizontal">
<Fluent:ComboBox Size="Small" Width="60" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:PathStyle}" SelectedItem="{Binding AnimationViewModel.AnimationPath.PathStyle}">
<Fluent:ComboBox.ItemTemplate>
<DataTemplate>
<DockPanel>
<Grid>
<Path
Data="{Binding .,Converter={StaticResource ArrowPathConverter}}"
HorizontalAlignment="Left"
Width="10"
Height="10"
Stretch="Fill"
Stroke="Black"
Fill="Black"
VerticalAlignment="Center"
RenderTransformOrigin="0.5,0.5">
<Path.RenderTransform>
<RotateTransform x:Name="rightrot" Angle="180" />
</Path.RenderTransform>
</Path>
</Grid>
<TextBlock DockPanel.Dock="Right" Margin="2,0" Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplatedParent.(ItemsControl.AlternationIndex),Converter={StaticResource NumberConverter}}"></TextBlock>
</DockPanel>
</DataTemplate>
</Fluent:ComboBox.ItemTemplate>
</Fluent:ComboBox>
<Fluent:ComboBox Size="Small" Width="70" Margin="5" IsEditable="False" dd:EnumHelper.Enum="{x:Type dd:SizeStyle}" SelectedItem="{Binding AnimationViewModel.AnimationPath.SizeStyle}">
<Fluent:ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding .,Converter={StaticResource EnumDescriptionConverter}}" />
</DataTemplate>
</Fluent:ComboBox.ItemTemplate>
</Fluent:ComboBox>
</StackPanel>
</StackPanel>
</StackPanel>
<Fluent:DropDownButton.ToolTip>
<Fluent:ScreenTip Title="LineStyle"