mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-04-06 17:26:35 +08:00
添加节点可删除
This commit is contained in:
@@ -23,7 +23,8 @@
|
||||
<s:LineDashConverter x:Key="LineDashConverter"/>
|
||||
<s:ClipConverter x:Key="ClipConverter"/>
|
||||
<s:InvertBoolConverter x:Key="InvertBoolConverter"/>
|
||||
|
||||
<s:ConectorStyleConverter x:Key="ConectorStyleConverter"/>
|
||||
|
||||
<!-- ResizeDecorator Default Template -->
|
||||
<!--
|
||||
<ControlTemplate x:Key="ResizeDecoratorTemplate" TargetType="{x:Type Control}">
|
||||
@@ -155,7 +156,7 @@
|
||||
</Style>
|
||||
|
||||
<!-- Connector Style -->
|
||||
<Style x:Key="normalConnector" TargetType="{x:Type s:Connector}">
|
||||
<Style x:Key="DefaultConnectorStyle" TargetType="{x:Type s:Connector}">
|
||||
<Setter Property="Cursor" Value="Cross" />
|
||||
<Setter Property="SnapsToDevicePixels" Value="true" />
|
||||
<Setter Property="Template">
|
||||
@@ -187,7 +188,7 @@
|
||||
</Style>
|
||||
|
||||
<!-- Connector Style -->
|
||||
<Style x:Key="logicalConnector" TargetType="{x:Type s:Connector}">
|
||||
<Style x:Key="LogicalConnectorStyle" TargetType="{x:Type s:Connector}">
|
||||
<Setter Property="Cursor" Value="Cross" />
|
||||
<Setter Property="SnapsToDevicePixels" Value="true" />
|
||||
<Setter Property="Template">
|
||||
@@ -274,22 +275,6 @@
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!-- Connector Style -->
|
||||
<Style x:Key="pointConnector1" TargetType="{x:Type s:PointConnector}">
|
||||
<Setter Property="SnapsToDevicePixels" Value="true" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type s:PointConnector}">
|
||||
<Grid Width="{Binding ConnectorWidth}" Height="{Binding ConnectorHeight}">
|
||||
<!-- transparent extra space makes connector easier to hit -->
|
||||
<Ellipse Fill="Transparent" Margin="-2" />
|
||||
<Ellipse Fill="{Binding ColorViewModel.FillColor,Converter={StaticResource ColorBrushConverter}}" StrokeThickness="1" Stroke="{Binding ColorViewModel.LineColor,Converter={StaticResource ColorBrushConverter}}" />
|
||||
</Grid>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="normalConnectorContainer" TargetType="{x:Type s:ConnectorContainer}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
@@ -326,22 +311,22 @@
|
||||
<ControlTemplate x:Key="ConnectorDecoratorTemplate"
|
||||
TargetType="{x:Type Control}">
|
||||
<Grid Margin="-5">
|
||||
<s:Connector DataContext="{Binding LeftConnector}" Style="{StaticResource normalConnector}"
|
||||
<s:Connector DataContext="{Binding LeftConnector}" Style="{Binding Style, Converter={StaticResource ConectorStyleConverter},ConverterParameter={StaticResource DefaultConnectorStyle}}"
|
||||
Orientation="Left"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Left"
|
||||
Visibility="{Binding Path=ShowConnectors, Converter={x:Static s:BoolToVisibilityConverter.Instance}}" />
|
||||
<s:Connector DataContext="{Binding TopConnector}" Style="{StaticResource normalConnector}"
|
||||
<s:Connector DataContext="{Binding TopConnector}" Style="{Binding Style, Converter={StaticResource ConectorStyleConverter},ConverterParameter={StaticResource DefaultConnectorStyle}}"
|
||||
Orientation="Top"
|
||||
VerticalAlignment="Top"
|
||||
HorizontalAlignment="Center"
|
||||
Visibility="{Binding Path=ShowConnectors, Converter={x:Static s:BoolToVisibilityConverter.Instance}}" />
|
||||
<s:Connector DataContext="{Binding RightConnector}" Style="{StaticResource normalConnector}"
|
||||
<s:Connector DataContext="{Binding RightConnector}" Style="{Binding Style, Converter={StaticResource ConectorStyleConverter},ConverterParameter={StaticResource DefaultConnectorStyle}}"
|
||||
Orientation="Right"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Right"
|
||||
Visibility="{Binding Path=ShowConnectors, Converter={x:Static s:BoolToVisibilityConverter.Instance}}" />
|
||||
<s:Connector DataContext="{Binding BottomConnector}" Style="{StaticResource normalConnector}"
|
||||
<s:Connector DataContext="{Binding BottomConnector}" Style="{Binding Style, Converter={StaticResource ConectorStyleConverter},ConverterParameter={StaticResource DefaultConnectorStyle}}"
|
||||
Orientation="Bottom"
|
||||
VerticalAlignment="Bottom"
|
||||
HorizontalAlignment="Center"
|
||||
@@ -355,7 +340,7 @@
|
||||
<s:ConnectorContainer.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<s:Connector Style="{StaticResource normalConnector}"/>
|
||||
<s:Connector Style="{StaticResource DefaultConnectorStyle}"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</s:ConnectorContainer.ItemTemplate>
|
||||
@@ -373,6 +358,8 @@
|
||||
<ItemsControl ItemsSource="{Binding Items}"
|
||||
ItemContainerStyleSelector="{x:Static s:DesignerItemsControlItemStyleSelector.Instance}">
|
||||
<ItemsControl.Resources>
|
||||
|
||||
<!--基础类型-->
|
||||
<Style x:Key="designerItemStyle"
|
||||
TargetType="{x:Type ContentPresenter}">
|
||||
<Setter Property="Canvas.Left"
|
||||
@@ -509,6 +496,7 @@
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<!--连接线-->
|
||||
<Style x:Key="connectorItemStyle"
|
||||
TargetType="{x:Type ContentPresenter}">
|
||||
<Setter Property="Width"
|
||||
@@ -530,7 +518,7 @@
|
||||
<Grid.ContextMenu>
|
||||
<ContextMenu>
|
||||
<MenuItem Header="删除" Command="{Binding DeleteConnectionCommand}" CommandParameter="{Binding}"/>
|
||||
<MenuItem Header="添加文本" Command="{Binding AddTextCommand}" CommandParameter="{Binding}"/>
|
||||
<MenuItem Header="添加文本" Command="{Binding AddLabelCommand}" CommandParameter="{Binding}"/>
|
||||
<MenuItem Header="插入点(按住ctrl可一直插入)" IsCheckable="True" IsChecked="{Binding ShouldInsertAnchor}" />
|
||||
</ContextMenu>
|
||||
</Grid.ContextMenu>
|
||||
@@ -600,7 +588,12 @@
|
||||
<s:PointContainer.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<s:PointConnector Style="{StaticResource pointConnector1}"/>
|
||||
<Grid.ContextMenu>
|
||||
<ContextMenu>
|
||||
<MenuItem Header="删除" Command="{Binding DeleteVertexCommand}" CommandParameter="{Binding}"/>
|
||||
</ContextMenu>
|
||||
</Grid.ContextMenu>
|
||||
<s:PointConnector Style="{StaticResource pointConnector}"/>
|
||||
<c:PointDragThumb Cursor="SizeAll" Opacity="0"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
@@ -617,6 +610,11 @@
|
||||
<s:PointContainer.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid s:SelectionProps.EnabledForSelection="True" Background="{Binding ColorViewModel.FillColor,Converter={StaticResource ColorBrushConverter}}">
|
||||
<Grid.ContextMenu>
|
||||
<ContextMenu>
|
||||
<MenuItem Header="删除" Command="{Binding DeleteLabelCommand}" CommandParameter="{Binding}"/>
|
||||
</ContextMenu>
|
||||
</Grid.ContextMenu>
|
||||
<c:PointDragThumb Cursor="SizeAll" Opacity="0"/>
|
||||
<s:TextControl Margin="5" />
|
||||
</Grid>
|
||||
@@ -691,6 +689,7 @@
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!--自带的Gif样式-->
|
||||
<Style x:Key="gifimageItemStyle"
|
||||
TargetType="{x:Type ContentPresenter}">
|
||||
<Setter Property="Canvas.Top"
|
||||
@@ -736,7 +735,7 @@
|
||||
<s:ConnectorContainer x:Name="PART_ConnectorContainer" Visibility="Hidden" Style="{StaticResource normalConnectorContainer}" ItemsSource="{Binding Connectors}">
|
||||
<s:ConnectorContainer.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<s:Connector Style="{StaticResource normalConnector}"/>
|
||||
<s:Connector Style="{StaticResource DefaultConnectorStyle}"/>
|
||||
</DataTemplate>
|
||||
</s:ConnectorContainer.ItemTemplate>
|
||||
</s:ConnectorContainer>
|
||||
@@ -768,6 +767,7 @@
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!--自带的logical样式-->
|
||||
<Style x:Key="logicalItemStyle"
|
||||
TargetType="{x:Type ContentPresenter}">
|
||||
<Setter Property="Canvas.Top"
|
||||
@@ -811,7 +811,7 @@
|
||||
<s:ConnectorContainer.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<s:Connector Style="{StaticResource logicalConnector}"/>
|
||||
<s:Connector Style="{StaticResource LogicalConnectorStyle}"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</s:ConnectorContainer.ItemTemplate>
|
||||
@@ -890,7 +890,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
|
||||
<Style x:Key="linkpointItemStyle"
|
||||
TargetType="{x:Type ContentPresenter}">
|
||||
<Setter Property="Canvas.Top"
|
||||
@@ -917,7 +917,7 @@
|
||||
<!-- PART_ConnectorDecorator -->
|
||||
<Grid Margin="-5"
|
||||
x:Name="PART_ConnectorDecorator">
|
||||
<s:Connector DataContext="{Binding TopConnector}" Style="{StaticResource normalConnector}"
|
||||
<s:Connector DataContext="{Binding TopConnector}" Style="{StaticResource DefaultConnectorStyle}"
|
||||
Orientation="Right"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center"
|
||||
|
||||
Reference in New Issue
Block a user