mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-03-03 00:00:57 +08:00
DiagramOption LayoutOption 参数整理
This commit is contained in:
@@ -32,10 +32,10 @@ namespace AIStudio.Wpf.Flowchart
|
||||
{
|
||||
base.InitDiagramViewModel();
|
||||
|
||||
DiagramViewModel.ShowGrid = true;
|
||||
DiagramViewModel.GridCellSize = new Size(100, 100);
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.ShowGrid = true;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.GridCellSize = new Size(100, 100);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineSmooth;
|
||||
}
|
||||
|
||||
|
||||
@@ -24,11 +24,11 @@ namespace AIStudio.Wpf.Logical
|
||||
{
|
||||
base.InitDiagramViewModel();
|
||||
|
||||
DiagramViewModel.ShowGrid = true;
|
||||
DiagramViewModel.GridCellSize = new Size(150, 100);
|
||||
DiagramViewModel.PageSizeOrientation = PageSizeOrientation.Horizontal;
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Left;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.None;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.ShowGrid = true;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.GridCellSize = new Size(150, 100);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeOrientation = PageSizeOrientation.Horizontal;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Left;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.None;
|
||||
|
||||
DiagramViewModel.Items.CollectionChanged += Items_CollectionChanged;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineSmooth;
|
||||
|
||||
@@ -42,9 +42,9 @@ namespace AIStudio.Wpf.Flowchart
|
||||
{
|
||||
base.InitDiagramViewModel();
|
||||
|
||||
DiagramViewModel.GridCellSize = new Size(100, 100);
|
||||
DiagramViewModel.ShowGrid = false;
|
||||
DiagramViewModel.AllowDrop = false;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.GridCellSize = new Size(100, 100);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.ShowGrid = false;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.AllowDrop = false;
|
||||
}
|
||||
|
||||
public IMindDiagramViewModel MindDiagramViewModel
|
||||
|
||||
@@ -106,24 +106,24 @@ namespace AIStudio.Wpf.DiagramApp.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
private bool _showGrid;
|
||||
public bool ShowGrid
|
||||
{
|
||||
get
|
||||
{
|
||||
return _showGrid;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (SetProperty(ref _showGrid, value))
|
||||
{
|
||||
foreach (var item in DiagramViewModels)
|
||||
{
|
||||
item.ShowGrid = _showGrid;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//private bool _showGrid;
|
||||
//public bool ShowGrid
|
||||
//{
|
||||
// get
|
||||
// {
|
||||
// return _showGrid;
|
||||
// }
|
||||
// set
|
||||
// {
|
||||
// if (SetProperty(ref _showGrid, value))
|
||||
// {
|
||||
// foreach (var item in DiagramViewModels)
|
||||
// {
|
||||
// item.DiagramOption.LayoutOption.ShowGrid = _showGrid;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
public DiagramType DiagramType
|
||||
{
|
||||
@@ -369,18 +369,18 @@ namespace AIStudio.Wpf.DiagramApp.ViewModels
|
||||
|
||||
List<DiagramViewModel> viewModels = new List<DiagramViewModel>();
|
||||
foreach (var diagramItem in diagramDocument.DiagramItems)
|
||||
{
|
||||
{
|
||||
var viewModel = GetDiagramViewModel(diagramItem.Name, diagramItem.DiagramType, false);
|
||||
viewModel.ShowGrid = diagramItem.ShowGrid;
|
||||
viewModel.PhysicalGridCellSize = diagramItem.PhysicalGridCellSize;
|
||||
viewModel.CellHorizontalAlignment = diagramItem.CellHorizontalAlignment;
|
||||
viewModel.CellVerticalAlignment = diagramItem.CellVerticalAlignment;
|
||||
viewModel.PageSizeOrientation = diagramItem.PageSizeOrientation;
|
||||
viewModel.PhysicalPageSize = diagramItem.PhysicalPageSize;
|
||||
viewModel.PageSizeType = diagramItem.PageSizeType;
|
||||
viewModel.PhysicalGridMarginSize = diagramItem.PhysicalGridMarginSize;
|
||||
viewModel.GridColor = diagramItem.GridColor;
|
||||
viewModel.AllowDrop = diagramItem.AllowDrop;
|
||||
viewModel.DiagramOption.LayoutOption.ShowGrid = diagramItem.ShowGrid;
|
||||
viewModel.DiagramOption.LayoutOption.PhysicalGridCellSize = diagramItem.PhysicalGridCellSize;
|
||||
viewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = diagramItem.CellHorizontalAlignment;
|
||||
viewModel.DiagramOption.LayoutOption.CellVerticalAlignment = diagramItem.CellVerticalAlignment;
|
||||
viewModel.DiagramOption.LayoutOption.PageSizeOrientation = diagramItem.PageSizeOrientation;
|
||||
viewModel.DiagramOption.LayoutOption.PhysicalPageSize = diagramItem.PhysicalPageSize;
|
||||
viewModel.DiagramOption.LayoutOption.PageSizeType = diagramItem.PageSizeType;
|
||||
viewModel.DiagramOption.LayoutOption.PhysicalGridMarginSize = diagramItem.PhysicalGridMarginSize;
|
||||
viewModel.DiagramOption.LayoutOption.GridColor = diagramItem.GridColor;
|
||||
viewModel.DiagramOption.LayoutOption.AllowDrop = diagramItem.AllowDrop;
|
||||
|
||||
foreach (var diagramItemData in diagramItem.DesignerItems)
|
||||
{
|
||||
|
||||
@@ -40,10 +40,10 @@ namespace AIStudio.Wpf.Flowchart
|
||||
{
|
||||
base.InitDiagramViewModel();
|
||||
|
||||
DiagramViewModel.ShowGrid = true;
|
||||
DiagramViewModel.GridCellSize = new Size(100, 60);
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.ShowGrid = true;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.GridCellSize = new Size(100, 60);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineBoundary;
|
||||
}
|
||||
|
||||
|
||||
@@ -47,8 +47,8 @@ namespace AIStudio.Wpf.DiagramApp.ViewModels
|
||||
{
|
||||
base.InitDiagramViewModel();
|
||||
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
}
|
||||
|
||||
@@ -1593,7 +1593,7 @@
|
||||
<TextBlock Text="S" VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="9"/>
|
||||
</Grid>
|
||||
</Fluent:SplitButton.LargeIcon>
|
||||
<ListBox BorderThickness="0" dd:EnumHelper.Enum="{x:Type dd:PageSizeType}" SelectedItem="{Binding PageViewModel.DiagramViewModel.PageSizeType}">
|
||||
<ListBox BorderThickness="0" dd:EnumHelper.Enum="{x:Type dd:PageSizeType}" SelectedItem="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.PageSizeType}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding .,Converter={StaticResource EnumDescriptionConverter}}" Margin="5"/>
|
||||
@@ -1610,7 +1610,7 @@
|
||||
<Fluent:SplitButton.LargeIcon>
|
||||
<iconPacks:PackIconMaterial Kind="PhoneRotateLandscape" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Fluent:SplitButton.LargeIcon>
|
||||
<ListBox BorderThickness="0" dd:EnumHelper.Enum="{x:Type dd:PageSizeOrientation}" SelectedItem="{Binding PageViewModel.DiagramViewModel.PageSizeOrientation}">
|
||||
<ListBox BorderThickness="0" dd:EnumHelper.Enum="{x:Type dd:PageSizeOrientation}" SelectedItem="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.PageSizeOrientation}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding .,Converter={StaticResource EnumDescriptionConverter}}" Margin="5"/>
|
||||
@@ -1627,7 +1627,7 @@
|
||||
<Fluent:SplitButton.LargeIcon>
|
||||
<iconPacks:PackIconMaterial Kind="RulerSquare" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Fluent:SplitButton.LargeIcon>
|
||||
<ListBox BorderThickness="0" dd:EnumHelper.Enum="{x:Type dd:PageUnit}" SelectedItem="{Binding PageViewModel.DiagramViewModel.PageUnit}">
|
||||
<ListBox BorderThickness="0" dd:EnumHelper.Enum="{x:Type dd:PageUnit}" SelectedItem="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.PageUnit}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding .,Converter={StaticResource EnumDescriptionConverter}}" Margin="5"/>
|
||||
@@ -1650,21 +1650,21 @@
|
||||
Width="190" />
|
||||
</Fluent:SplitButton.ToolTip>
|
||||
</Fluent:SplitButton>
|
||||
<Fluent:SplitButton Header="网格" Width="50" VerticalAlignment="Top" IsCheckable="True" IsChecked="{Binding PageViewModel.ShowGrid}" >
|
||||
<Fluent:SplitButton Header="网格" Width="50" VerticalAlignment="Top" IsCheckable="True" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.ShowGrid}" >
|
||||
<Fluent:SplitButton.LargeIcon>
|
||||
<iconPacks:PackIconMaterial Kind="Grid" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Fluent:SplitButton.LargeIcon>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Margin="5" Text="宽度(mm)" VerticalAlignment="Center"/>
|
||||
<Fluent:Spinner Margin="5" Width="60" Size="Small" Value="{Binding PageViewModel.DiagramViewModel.PhysicalGridCellWidth,Mode=TwoWay}" Minimum="0" Format="0" />
|
||||
<Fluent:Spinner Margin="5" Width="60" Size="Small" Value="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.PhysicalGridCellWidth,Mode=TwoWay}" Minimum="0" Format="0" />
|
||||
<TextBlock Margin="5" Text="高度(mm)" VerticalAlignment="Center"/>
|
||||
<Fluent:Spinner Margin="5" Width="60" Size="Small" Value="{Binding PageViewModel.DiagramViewModel.PhysicalGridCellHeight,Mode=TwoWay}" Minimum="0" Format="0" />
|
||||
<Fluent:Spinner Margin="5" Width="60" Size="Small" Value="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.PhysicalGridCellHeight,Mode=TwoWay}" Minimum="0" Format="0" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Margin="5" Text="左右边距(mm)" VerticalAlignment="Center"/>
|
||||
<Fluent:Spinner Margin="5" Width="60" Size="Small" Value="{Binding PageViewModel.DiagramViewModel.PhysicalGridMarginWidth,Mode=TwoWay}" Minimum="0" Format="0" />
|
||||
<Fluent:Spinner Margin="5" Width="60" Size="Small" Value="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.PhysicalGridMarginWidth,Mode=TwoWay}" Minimum="0" Format="0" />
|
||||
<TextBlock Margin="5" Text="上下边距(mm)" VerticalAlignment="Center"/>
|
||||
<Fluent:Spinner Margin="5" Width="60" Size="Small" Value="{Binding PageViewModel.DiagramViewModel.PhysicalGridMarginHeight,Mode=TwoWay}" Minimum="0" Format="0" />
|
||||
<Fluent:Spinner Margin="5" Width="60" Size="Small" Value="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.PhysicalGridMarginHeight,Mode=TwoWay}" Minimum="0" Format="0" />
|
||||
</StackPanel>
|
||||
|
||||
<Fluent:SplitButton.ToolTip>
|
||||
@@ -1675,28 +1675,28 @@
|
||||
</Fluent:SplitButton>
|
||||
<Fluent:SplitButton Header="横对齐" Width="50" VerticalAlignment="Top">
|
||||
<UniformGrid Rows="4">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.CellHorizontalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Left'}, ConverterParameter='Left'}" ToolTip="左对齐">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Left'}, ConverterParameter='Left'}" ToolTip="左对齐">
|
||||
<Fluent:ToggleButton.LargeIcon>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
<iconPacks:PackIconMaterial Foreground="Gray" Kind="FormatAlignLeft" VerticalAlignment="Center" HorizontalAlignment="Left"/>
|
||||
</Border>
|
||||
</Fluent:ToggleButton.LargeIcon>
|
||||
</Fluent:ToggleButton>
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.CellHorizontalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Center'}, ConverterParameter='Center'}" ToolTip="居中对齐">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Center'}, ConverterParameter='Center'}" ToolTip="居中对齐">
|
||||
<Fluent:ToggleButton.LargeIcon>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
<iconPacks:PackIconMaterial Foreground="Gray" Kind="FormatAlignCenter" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Border>
|
||||
</Fluent:ToggleButton.LargeIcon>
|
||||
</Fluent:ToggleButton>
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.CellHorizontalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Right'}, ConverterParameter='Right'}" ToolTip="右对齐">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Right'}, ConverterParameter='Right'}" ToolTip="右对齐">
|
||||
<Fluent:ToggleButton.LargeIcon>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
<iconPacks:PackIconMaterial Foreground="Gray" Kind="FormatAlignRight" VerticalAlignment="Center" HorizontalAlignment="Right"/>
|
||||
</Border>
|
||||
</Fluent:ToggleButton.LargeIcon>
|
||||
</Fluent:ToggleButton>
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.CellHorizontalAlignment,Converter={dd:ConverterValueMapToBool Parameter='None'}, ConverterParameter='None'}" ToolTip="无对齐">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment,Converter={dd:ConverterValueMapToBool Parameter='None'}, ConverterParameter='None'}" ToolTip="无对齐">
|
||||
<Fluent:ToggleButton.LargeIcon>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
<TextBlock Text="无" HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
||||
@@ -1719,7 +1719,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.CellHorizontalAlignment}" Value="Left">
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment}" Value="Left">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
@@ -1728,7 +1728,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.CellHorizontalAlignment}" Value="Center">
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment}" Value="Center">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
@@ -1737,7 +1737,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.CellHorizontalAlignment}" Value="Right">
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment}" Value="Right">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
@@ -1746,7 +1746,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.CellHorizontalAlignment}" Value="None">
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment}" Value="None">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
@@ -1761,28 +1761,28 @@
|
||||
</Fluent:SplitButton>
|
||||
<Fluent:SplitButton Header="竖对齐" Width="50" VerticalAlignment="Top">
|
||||
<UniformGrid Columns="4">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.CellVerticalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Top'}, ConverterParameter='Top'}" ToolTip="上对齐">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Top'}, ConverterParameter='Top'}" ToolTip="上对齐">
|
||||
<Fluent:ToggleButton.LargeIcon>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
<iconPacks:PackIconMaterial Foreground="Gray" Kind="FormatAlignLeft" RotationAngle="90" VerticalAlignment="Top" HorizontalAlignment="Center"/>
|
||||
</Border>
|
||||
</Fluent:ToggleButton.LargeIcon>
|
||||
</Fluent:ToggleButton>
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.CellVerticalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Center'}, ConverterParameter='Center'}" ToolTip="居中对齐">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Center'}, ConverterParameter='Center'}" ToolTip="居中对齐">
|
||||
<Fluent:ToggleButton.LargeIcon>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
<iconPacks:PackIconMaterial Foreground="Gray" Kind="FormatAlignCenter" RotationAngle="90" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Border>
|
||||
</Fluent:ToggleButton.LargeIcon>
|
||||
</Fluent:ToggleButton>
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.CellVerticalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Bottom'}, ConverterParameter='Bottom'}" ToolTip="下对齐">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment,Converter={dd:ConverterValueMapToBool Parameter='Bottom'}, ConverterParameter='Bottom'}" ToolTip="下对齐">
|
||||
<Fluent:ToggleButton.LargeIcon>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
<iconPacks:PackIconMaterial Foreground="Gray" Kind="FormatAlignRight" RotationAngle="90" VerticalAlignment="Bottom" HorizontalAlignment="Center"/>
|
||||
</Border>
|
||||
</Fluent:ToggleButton.LargeIcon>
|
||||
</Fluent:ToggleButton>
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.CellVerticalAlignment,Converter={dd:ConverterValueMapToBool Parameter='None'}, ConverterParameter='None'}" ToolTip="无对齐">
|
||||
<Fluent:ToggleButton Height="48" Width="48" SizeDefinition="Large" IsChecked="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment,Converter={dd:ConverterValueMapToBool Parameter='None'}, ConverterParameter='None'}" ToolTip="无对齐">
|
||||
<Fluent:ToggleButton.LargeIcon>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
<TextBlock Text="无" HorizontalAlignment="Center" VerticalAlignment="Center"/>
|
||||
@@ -1800,7 +1800,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.CellVerticalAlignment}" Value="Top">
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment}" Value="Top">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
@@ -1809,7 +1809,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.CellVerticalAlignment}" Value="Center">
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment}" Value="Center">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
@@ -1818,7 +1818,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.CellVerticalAlignment}" Value="Bottom">
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment}" Value="Bottom">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
@@ -1827,7 +1827,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.CellVerticalAlignment}" Value="None">
|
||||
<DataTrigger Binding="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment}" Value="None">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<Border BorderThickness="1" BorderBrush="Gray" Margin="6,6,6,6">
|
||||
@@ -1866,7 +1866,7 @@
|
||||
<Fluent:SplitButton.LargeIcon>
|
||||
<iconPacks:PackIconMaterial Kind="File" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Fluent:SplitButton.LargeIcon>
|
||||
<Fluent:ColorGallery SelectedColor="{Binding PageViewModel.DiagramViewModel.PageBackground, Mode=TwoWay}"
|
||||
<Fluent:ColorGallery SelectedColor="{Binding PageViewModel.DiagramViewModel.DiagramOption.LayoutOption.PageBackground, Mode=TwoWay}"
|
||||
Mode="StandardColors"
|
||||
StandardColorGridRows="3"
|
||||
Columns="10"
|
||||
@@ -2492,7 +2492,7 @@
|
||||
Focusable="False">
|
||||
<DockPanel x:Name="panel">
|
||||
<controls:Ruler x:Name="hruler"
|
||||
Unit="{Binding PageUnit,Converter={StaticResource RulerUnitConverter}}"
|
||||
Unit="{Binding DiagramOption.LayoutOption.PageUnit,Converter={StaticResource RulerUnitConverter}}"
|
||||
DockPanel.Dock="Top"
|
||||
Margin="21,0,0,0"
|
||||
Zoom="{Binding ZoomValue}"
|
||||
@@ -2502,7 +2502,7 @@
|
||||
<MultiBinding Converter="{StaticResource CountShiftConverter}" ConverterParameter="X">
|
||||
<Binding ElementName="diagram" Path="." />
|
||||
<Binding Path="DelayZoomValue"/>
|
||||
<Binding Path="PageUnit"/>
|
||||
<Binding Path="DiagramOption.LayoutOption.PageUnit"/>
|
||||
<Binding ElementName="designerScrollViewer" Path="ActualWidth"/>
|
||||
<Binding ElementName="panel" Path="ActualWidth"/>
|
||||
<Binding ElementName="diagram" Path="ActualWidth"/>
|
||||
@@ -2510,7 +2510,7 @@
|
||||
</controls:Ruler.CountShift>
|
||||
</controls:Ruler>
|
||||
<controls:Ruler x:Name="vruler"
|
||||
Unit="{Binding PageUnit,Converter={StaticResource RulerUnitConverter}}"
|
||||
Unit="{Binding DiagramOption.LayoutOption.PageUnit,Converter={StaticResource RulerUnitConverter}}"
|
||||
Marks="Up"
|
||||
RenderTransformOrigin="0,0"
|
||||
AutoSize="True"
|
||||
@@ -2528,7 +2528,7 @@
|
||||
<MultiBinding Converter="{StaticResource CountShiftConverter}" ConverterParameter="Y">
|
||||
<Binding ElementName="diagram" Path="." />
|
||||
<Binding Path="DelayZoomValue"/>
|
||||
<Binding Path="PageUnit"/>
|
||||
<Binding Path="DiagramOption.LayoutOption.PageUnit"/>
|
||||
<Binding ElementName="designerScrollViewer" Path="ActualHeight"/>
|
||||
<Binding ElementName="panel" Path="ActualHeight"/>
|
||||
<Binding ElementName="diagram" Path="ActualHeight"/>
|
||||
|
||||
@@ -21,16 +21,16 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
{
|
||||
Name = diagramView.Name;
|
||||
DiagramType = diagramView.DiagramType;
|
||||
ShowGrid = diagramView.ShowGrid;
|
||||
PhysicalGridCellSize = diagramView.PhysicalGridCellSize;
|
||||
CellHorizontalAlignment = diagramView.CellHorizontalAlignment;
|
||||
CellVerticalAlignment = diagramView.CellVerticalAlignment;
|
||||
PageSizeOrientation = diagramView.PageSizeOrientation;
|
||||
PhysicalPageSize = diagramView.PhysicalPageSize;
|
||||
PageSizeType = diagramView.PageSizeType;
|
||||
PhysicalGridMarginSize = diagramView.PhysicalGridMarginSize;
|
||||
GridColor = diagramView.GridColor;
|
||||
AllowDrop = diagramView.AllowDrop;
|
||||
ShowGrid = diagramView.DiagramOption.LayoutOption.ShowGrid;
|
||||
PhysicalGridCellSize = diagramView.DiagramOption.LayoutOption.PhysicalGridCellSize;
|
||||
CellHorizontalAlignment = diagramView.DiagramOption.LayoutOption.CellHorizontalAlignment;
|
||||
CellVerticalAlignment = diagramView.DiagramOption.LayoutOption.CellVerticalAlignment;
|
||||
PageSizeOrientation = diagramView.DiagramOption.LayoutOption.PageSizeOrientation;
|
||||
PhysicalPageSize = diagramView.DiagramOption.LayoutOption.PhysicalPageSize;
|
||||
PageSizeType = diagramView.DiagramOption.LayoutOption.PageSizeType;
|
||||
PhysicalGridMarginSize = diagramView.DiagramOption.LayoutOption.PhysicalGridMarginSize;
|
||||
GridColor = diagramView.DiagramOption.LayoutOption.GridColor;
|
||||
AllowDrop = diagramView.DiagramOption.LayoutOption.AllowDrop;
|
||||
}
|
||||
|
||||
[XmlAttribute]
|
||||
|
||||
@@ -37,8 +37,8 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
link.SourceConnectorInfoFully.Orientation,
|
||||
link.SinkConnectorInfo.MiddlePosition,
|
||||
link.IsFullConnection ? link.SinkConnectorInfoFully.Orientation : (link.SinkConnectorInfo.MiddlePosition.Y >= link.SourceConnectorInfo.MiddlePosition.Y ? ConnectorOrientation.Top : ConnectorOrientation.Bottom),
|
||||
_.GridCellSize,
|
||||
_.GridMarginSize);
|
||||
_.DiagramOption.LayoutOption.GridCellSize,
|
||||
_.DiagramOption.LayoutOption.GridMarginSize);
|
||||
|
||||
middle.Insert(0, route[0]);
|
||||
middle.Add(route[1]);
|
||||
|
||||
@@ -781,14 +781,14 @@
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<dd:DesignerCanvas
|
||||
Height="{Binding PageSize.Height}"
|
||||
Width="{Binding PageSize.Width}"
|
||||
ShowGrid="{Binding ShowGrid}"
|
||||
GridCellSize="{Binding GridCellSize}"
|
||||
GridMarginSize="{Binding GridMarginSize}"
|
||||
GridColor="{Binding GridColor}"
|
||||
Background="{Binding PageBackground,Converter={StaticResource ColorBrushConverter}}"
|
||||
AllowDrop="{Binding AllowDrop}">
|
||||
Height="{Binding DiagramOption.LayoutOption.PageSize.Height}"
|
||||
Width="{Binding DiagramOption.LayoutOption.PageSize.Width}"
|
||||
ShowGrid="{Binding DiagramOption.LayoutOption.ShowGrid}"
|
||||
GridCellSize="{Binding DiagramOption.LayoutOption.GridCellSize}"
|
||||
GridMarginSize="{Binding DiagramOption.LayoutOption.GridMarginSize}"
|
||||
GridColor="{Binding DiagramOption.LayoutOption.GridColor}"
|
||||
Background="{Binding DiagramOption.LayoutOption.PageBackground,Converter={StaticResource ColorBrushConverter}}"
|
||||
AllowDrop="{Binding DiagramOption.LayoutOption.AllowDrop}">
|
||||
<dd:DesignerCanvas.LayoutTransform>
|
||||
<ScaleTransform ScaleX="{Binding ZoomValue}" ScaleY="{Binding ZoomValue}" />
|
||||
</dd:DesignerCanvas.LayoutTransform>
|
||||
@@ -816,14 +816,14 @@
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<dd:DesignerCanvas
|
||||
Height="{Binding PageSize.Height}"
|
||||
Width="{Binding PageSize.Width}"
|
||||
ShowGrid="{Binding ShowGrid}"
|
||||
GridCellSize="{Binding GridCellSize}"
|
||||
GridMarginSize="{Binding GridMarginSize}"
|
||||
GridColor="{Binding GridColor}"
|
||||
Background="{Binding PageBackground,Converter={StaticResource ColorBrushConverter}}"
|
||||
AllowDrop="{Binding AllowDrop}">
|
||||
Height="{Binding DiagramOption.LayoutOption.PageSize.Height}"
|
||||
Width="{Binding DiagramOption.LayoutOption.PageSize.Width}"
|
||||
ShowGrid="{Binding DiagramOption.LayoutOption.ShowGrid}"
|
||||
GridCellSize="{Binding DiagramOption.LayoutOption.GridCellSize}"
|
||||
GridMarginSize="{Binding DiagramOption.LayoutOption.GridMarginSize}"
|
||||
GridColor="{Binding DiagramOption.LayoutOption.GridColor}"
|
||||
Background="{Binding DiagramOption.LayoutOption.PageBackground,Converter={StaticResource ColorBrushConverter}}"
|
||||
AllowDrop="{Binding DiagramOption.LayoutOption.AllowDrop}">
|
||||
<dd:DesignerCanvas.LayoutTransform>
|
||||
<ScaleTransform ScaleX="{Binding ZoomValue}" ScaleY="{Binding ZoomValue}" />
|
||||
</dd:DesignerCanvas.LayoutTransform>
|
||||
|
||||
@@ -601,41 +601,41 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
{
|
||||
if (!(this is TextDesignerItemViewModel))
|
||||
{
|
||||
if (Root.CellHorizontalAlignment == CellHorizontalAlignment.Center)
|
||||
if (Root.DiagramOption.LayoutOption.CellHorizontalAlignment == CellHorizontalAlignment.Center)
|
||||
{
|
||||
if (Root.GridCellSize.Width > this.ItemWidth)
|
||||
if (Root.DiagramOption.LayoutOption.GridCellSize.Width > this.ItemWidth)
|
||||
{
|
||||
this.Left = (int)(this.Left / Root.GridCellSize.Width) * Root.GridCellSize.Width + Root.GridMarginSize.Width + (Root.GridCellSize.Width - this.ItemWidth) / 2;
|
||||
this.Left = (int)(this.Left / Root.DiagramOption.LayoutOption.GridCellSize.Width) * Root.DiagramOption.LayoutOption.GridCellSize.Width + Root.DiagramOption.LayoutOption.GridMarginSize.Width + (Root.DiagramOption.LayoutOption.GridCellSize.Width - this.ItemWidth) / 2;
|
||||
}
|
||||
}
|
||||
else if (Root.CellHorizontalAlignment == CellHorizontalAlignment.Left)
|
||||
else if (Root.DiagramOption.LayoutOption.CellHorizontalAlignment == CellHorizontalAlignment.Left)
|
||||
{
|
||||
this.Left = (int)(this.Left / Root.GridCellSize.Width) * Root.GridCellSize.Width + Root.GridMarginSize.Width;
|
||||
this.Left = (int)(this.Left / Root.DiagramOption.LayoutOption.GridCellSize.Width) * Root.DiagramOption.LayoutOption.GridCellSize.Width + Root.DiagramOption.LayoutOption.GridMarginSize.Width;
|
||||
}
|
||||
else if (Root.CellHorizontalAlignment == CellHorizontalAlignment.Right)
|
||||
else if (Root.DiagramOption.LayoutOption.CellHorizontalAlignment == CellHorizontalAlignment.Right)
|
||||
{
|
||||
if (Root.GridCellSize.Width > this.ItemWidth)
|
||||
if (Root.DiagramOption.LayoutOption.GridCellSize.Width > this.ItemWidth)
|
||||
{
|
||||
this.Left = (int)(this.Left / Root.GridCellSize.Width) * Root.GridCellSize.Width + Root.GridMarginSize.Width + (Root.GridCellSize.Width - this.ItemWidth);
|
||||
this.Left = (int)(this.Left / Root.DiagramOption.LayoutOption.GridCellSize.Width) * Root.DiagramOption.LayoutOption.GridCellSize.Width + Root.DiagramOption.LayoutOption.GridMarginSize.Width + (Root.DiagramOption.LayoutOption.GridCellSize.Width - this.ItemWidth);
|
||||
}
|
||||
}
|
||||
|
||||
if (Root.CellVerticalAlignment == CellVerticalAlignment.Center)
|
||||
if (Root.DiagramOption.LayoutOption.CellVerticalAlignment == CellVerticalAlignment.Center)
|
||||
{
|
||||
if (Root.GridCellSize.Height > this.ItemHeight)
|
||||
if (Root.DiagramOption.LayoutOption.GridCellSize.Height > this.ItemHeight)
|
||||
{
|
||||
this.Top = (int)(this.Top / Root.GridCellSize.Height) * Root.GridCellSize.Height + Root.GridMarginSize.Height + (Root.GridCellSize.Height - this.ItemHeight) / 2;
|
||||
this.Top = (int)(this.Top / Root.DiagramOption.LayoutOption.GridCellSize.Height) * Root.DiagramOption.LayoutOption.GridCellSize.Height + Root.DiagramOption.LayoutOption.GridMarginSize.Height + (Root.DiagramOption.LayoutOption.GridCellSize.Height - this.ItemHeight) / 2;
|
||||
}
|
||||
}
|
||||
else if (Root.CellVerticalAlignment == CellVerticalAlignment.Top)
|
||||
else if (Root.DiagramOption.LayoutOption.CellVerticalAlignment == CellVerticalAlignment.Top)
|
||||
{
|
||||
this.Top = (int)(this.Top / Root.GridCellSize.Height) * Root.GridCellSize.Height + Root.GridMarginSize.Height;
|
||||
this.Top = (int)(this.Top / Root.DiagramOption.LayoutOption.GridCellSize.Height) * Root.DiagramOption.LayoutOption.GridCellSize.Height + Root.DiagramOption.LayoutOption.GridMarginSize.Height;
|
||||
}
|
||||
else if (Root.CellVerticalAlignment == CellVerticalAlignment.Bottom)
|
||||
else if (Root.DiagramOption.LayoutOption.CellVerticalAlignment == CellVerticalAlignment.Bottom)
|
||||
{
|
||||
if (Root.GridCellSize.Height > this.ItemHeight)
|
||||
if (Root.DiagramOption.LayoutOption.GridCellSize.Height > this.ItemHeight)
|
||||
{
|
||||
this.Top = (int)(this.Top / Root.GridCellSize.Height) * Root.GridCellSize.Height + Root.GridMarginSize.Height + (Root.GridCellSize.Height - this.ItemHeight);
|
||||
this.Top = (int)(this.Top / Root.DiagramOption.LayoutOption.GridCellSize.Height) * Root.DiagramOption.LayoutOption.GridCellSize.Height + Root.DiagramOption.LayoutOption.GridMarginSize.Height + (Root.DiagramOption.LayoutOption.GridCellSize.Height - this.ItemHeight);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,9 @@
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Text;
|
||||
using System.Windows;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace AIStudio.Wpf.DiagramDesigner
|
||||
{
|
||||
@@ -24,9 +26,350 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
} = new SnappingOption();
|
||||
}
|
||||
|
||||
public class LayoutOption
|
||||
public class LayoutOption : BindableBase
|
||||
{
|
||||
|
||||
private PageSizeType _pageSizeType = PageSizeType.A4;
|
||||
public PageSizeType PageSizeType
|
||||
{
|
||||
get
|
||||
{
|
||||
return _pageSizeType;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _pageSizeType, value);
|
||||
RaisePropertyChanged(nameof(PageSize));
|
||||
}
|
||||
}
|
||||
|
||||
private Size _pageSize = new Size(1000, 600);
|
||||
public Size PageSize
|
||||
{
|
||||
get
|
||||
{
|
||||
if (PageSizeOrientation == PageSizeOrientation.Vertical)
|
||||
{
|
||||
return GetPageSize();
|
||||
}
|
||||
else
|
||||
{
|
||||
return new Size(GetPageSize().Height, GetPageSize().Width);
|
||||
}
|
||||
}
|
||||
set
|
||||
{
|
||||
if (SetProperty(ref _pageSize, value))
|
||||
{
|
||||
RaisePropertyChanged(nameof(PhysicalPageSize));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public Size PhysicalPageSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return new Size(ScreenHelper.WidthToMm(PageSize.Width), ScreenHelper.WidthToMm(PageSize.Height));
|
||||
}
|
||||
set
|
||||
{
|
||||
PageSize = new Size(ScreenHelper.MmToWidth(value.Width), ScreenHelper.MmToWidth(value.Height));
|
||||
}
|
||||
}
|
||||
|
||||
public Size GetPageSize()
|
||||
{
|
||||
Size size = _pageSize;
|
||||
switch (PageSizeType)
|
||||
{
|
||||
case PageSizeType.A3: size = new Size(297, 420); break;
|
||||
case PageSizeType.A4: size = new Size(210, 297); break;
|
||||
case PageSizeType.A5: size = new Size(148, 210); break;
|
||||
case PageSizeType.B4: size = new Size(257, 364); break;
|
||||
case PageSizeType.B5: size = new Size(176, 250); break;
|
||||
case PageSizeType.DLEnvelope: size = new Size(110, 220); break;
|
||||
case PageSizeType.C5Envelope: size = new Size(162, 229); break;
|
||||
case PageSizeType.Quarto: size = new Size(215, 275); break;
|
||||
case PageSizeType.C6Quarto: size = new Size(114, 162); break;
|
||||
case PageSizeType.B5Quarto: size = new Size(176, 250); break;
|
||||
case PageSizeType.ItalyQuarto: size = new Size(110, 230); break;
|
||||
case PageSizeType.A4small: size = new Size(210, 297); break;
|
||||
case PageSizeType.GermanStdFanfold: size = new Size(215.9, 304.8); break;
|
||||
case PageSizeType.GermanLegalFanfold: size = new Size(203.2, 330.2); break;
|
||||
case PageSizeType.PRC16K: size = new Size(146, 215); break;
|
||||
case PageSizeType.PRC32K: size = new Size(97, 151); break;
|
||||
case PageSizeType.Letter: size = new Size(215.9, 279.4); break;
|
||||
case PageSizeType.Folio: size = new Size(215.9, 330.2); break;
|
||||
case PageSizeType.Legal: size = new Size(215.9, 355.6); break;
|
||||
case PageSizeType.Executive: size = new Size(184.15, 266.7); break;
|
||||
case PageSizeType.Statement: size = new Size(139.7, 215.9); break;
|
||||
case PageSizeType.Envelope: size = new Size(104.77, 241.3); break;
|
||||
case PageSizeType.MonarchEnvelope: size = new Size(98.425, 190.5); break;
|
||||
case PageSizeType.Tabloid: size = new Size(279.4, 431.8); break;
|
||||
case PageSizeType.LetterSmall: size = new Size(215.9, 279.4); break;
|
||||
case PageSizeType.CSheet: size = new Size(431.8, 558.8); break;
|
||||
case PageSizeType.DSheet: size = new Size(558.8, 863.6); break;
|
||||
case PageSizeType.ESheet: size = new Size(863.6, 1117.6); break;
|
||||
}
|
||||
|
||||
return new Size(ScreenHelper.MmToWidth(size.Width), ScreenHelper.MmToWidth(size.Height));
|
||||
}
|
||||
|
||||
private PageSizeOrientation _pageSizeOrientation;
|
||||
public PageSizeOrientation PageSizeOrientation
|
||||
{
|
||||
get
|
||||
{
|
||||
return _pageSizeOrientation;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _pageSizeOrientation, value);
|
||||
RaisePropertyChanged(nameof(PageSize));
|
||||
}
|
||||
}
|
||||
|
||||
private PageUnit _pageUnit = PageUnit.cm;
|
||||
[Browsable(false)]
|
||||
public PageUnit PageUnit
|
||||
{
|
||||
get
|
||||
{
|
||||
return _pageUnit;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (value != PageUnit.cm && value != PageUnit.inch)
|
||||
{
|
||||
return;
|
||||
}
|
||||
SetProperty(ref _pageUnit, value);
|
||||
}
|
||||
}
|
||||
|
||||
private Size _gridCellSize = new Size(100, 100);
|
||||
public Size GridCellSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridCellSize;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _gridCellSize, value);
|
||||
}
|
||||
}
|
||||
|
||||
public double GridCellWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridCellSize.Width;
|
||||
}
|
||||
set
|
||||
{
|
||||
_gridCellSize.Width = value;
|
||||
RaisePropertyChanged(nameof(PhysicalGridCellWidth));
|
||||
RaisePropertyChanged(nameof(GridCellSize));
|
||||
}
|
||||
}
|
||||
|
||||
public double GridCellHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridCellSize.Height;
|
||||
}
|
||||
set
|
||||
{
|
||||
_gridCellSize.Height = value;
|
||||
RaisePropertyChanged(nameof(PhysicalGridCellHeight));
|
||||
RaisePropertyChanged(nameof(GridCellSize));
|
||||
}
|
||||
}
|
||||
|
||||
public Size PhysicalGridCellSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return new Size(ScreenHelper.WidthToMm(GridCellSize.Width), ScreenHelper.WidthToMm(GridCellSize.Height));
|
||||
}
|
||||
set
|
||||
{
|
||||
GridCellSize = new Size(ScreenHelper.MmToWidth(value.Width), ScreenHelper.MmToWidth(value.Height));
|
||||
}
|
||||
}
|
||||
|
||||
public double PhysicalGridCellWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return ScreenHelper.WidthToMm(GridCellWidth);
|
||||
}
|
||||
set
|
||||
{
|
||||
GridCellWidth = ScreenHelper.MmToWidth(value);
|
||||
}
|
||||
}
|
||||
|
||||
public double PhysicalGridCellHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return ScreenHelper.WidthToMm(GridCellHeight);
|
||||
}
|
||||
set
|
||||
{
|
||||
GridCellHeight = ScreenHelper.MmToWidth(value);
|
||||
}
|
||||
}
|
||||
|
||||
private Color _pageBackground = Colors.White;
|
||||
public Color PageBackground
|
||||
{
|
||||
get
|
||||
{
|
||||
return _pageBackground;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _pageBackground, value);
|
||||
}
|
||||
}
|
||||
|
||||
private bool _showGrid = true;
|
||||
public bool ShowGrid
|
||||
{
|
||||
get
|
||||
{
|
||||
return _showGrid;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _showGrid, value);
|
||||
}
|
||||
}
|
||||
|
||||
private Color _gridColor = Colors.LightGray;
|
||||
public Color GridColor
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridColor;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _gridColor, value);
|
||||
}
|
||||
}
|
||||
|
||||
private Size _gridMarginSize = new Size(28, 28);
|
||||
public Size GridMarginSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridMarginSize;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _gridMarginSize, value);
|
||||
}
|
||||
}
|
||||
|
||||
public double GridMarginWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridMarginSize.Width;
|
||||
}
|
||||
set
|
||||
{
|
||||
_gridMarginSize.Width = value;
|
||||
RaisePropertyChanged(nameof(GridMarginSize));
|
||||
}
|
||||
}
|
||||
|
||||
public double GridMarginHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridMarginSize.Height;
|
||||
}
|
||||
set
|
||||
{
|
||||
_gridMarginSize.Height = value;
|
||||
RaisePropertyChanged(nameof(GridMarginSize));
|
||||
}
|
||||
}
|
||||
|
||||
public Size PhysicalGridMarginSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return new Size(ScreenHelper.WidthToMm(GridMarginSize.Width), ScreenHelper.WidthToMm(GridMarginSize.Height));
|
||||
}
|
||||
set
|
||||
{
|
||||
GridMarginSize = new Size(ScreenHelper.MmToWidth(value.Width), ScreenHelper.MmToWidth(value.Height));
|
||||
}
|
||||
}
|
||||
|
||||
public double PhysicalGridMarginWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return ScreenHelper.WidthToMm(GridMarginWidth);
|
||||
}
|
||||
set
|
||||
{
|
||||
GridMarginWidth = ScreenHelper.MmToWidth(value);
|
||||
}
|
||||
}
|
||||
|
||||
public double PhysicalGridMarginHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return ScreenHelper.WidthToMm(GridMarginHeight);
|
||||
}
|
||||
set
|
||||
{
|
||||
GridMarginHeight = ScreenHelper.MmToWidth(value);
|
||||
}
|
||||
}
|
||||
|
||||
private CellHorizontalAlignment _cellHorizontalAlignment;
|
||||
[Browsable(false)]
|
||||
public CellHorizontalAlignment CellHorizontalAlignment
|
||||
{
|
||||
get
|
||||
{
|
||||
return _cellHorizontalAlignment;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _cellHorizontalAlignment, value);
|
||||
}
|
||||
}
|
||||
|
||||
private CellVerticalAlignment _cellVerticalAlignment;
|
||||
[Browsable(false)]
|
||||
public CellVerticalAlignment CellVerticalAlignment
|
||||
{
|
||||
get
|
||||
{
|
||||
return _cellVerticalAlignment;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _cellVerticalAlignment, value);
|
||||
}
|
||||
}
|
||||
|
||||
public bool AllowDrop
|
||||
{
|
||||
get; set;
|
||||
} = true;
|
||||
}
|
||||
|
||||
public class SnappingOption
|
||||
|
||||
@@ -94,313 +94,17 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
get; set;
|
||||
}
|
||||
|
||||
private PageSizeType _pageSizeType = PageSizeType.A4;
|
||||
public PageSizeType PageSizeType
|
||||
{
|
||||
get
|
||||
{
|
||||
return _pageSizeType;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _pageSizeType, value);
|
||||
RaisePropertyChanged(nameof(PageSize));
|
||||
}
|
||||
}
|
||||
|
||||
private Size _pageSize = new Size(1000, 600);
|
||||
public Size PageSize
|
||||
{
|
||||
get
|
||||
{
|
||||
if (PageSizeOrientation == PageSizeOrientation.Vertical)
|
||||
{
|
||||
return GetPageSize();
|
||||
}
|
||||
else
|
||||
{
|
||||
return new Size(GetPageSize().Height, GetPageSize().Width);
|
||||
}
|
||||
}
|
||||
set
|
||||
{
|
||||
if (SetProperty(ref _pageSize, value))
|
||||
{
|
||||
RaisePropertyChanged(nameof(PhysicalPageSize));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public Size PhysicalPageSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return new Size(ScreenHelper.WidthToMm(PageSize.Width), ScreenHelper.WidthToMm(PageSize.Height));
|
||||
}
|
||||
set
|
||||
{
|
||||
PageSize = new Size(ScreenHelper.MmToWidth(value.Width), ScreenHelper.MmToWidth(value.Height));
|
||||
}
|
||||
}
|
||||
|
||||
public Size GetPageSize()
|
||||
{
|
||||
Size size = _pageSize;
|
||||
switch (PageSizeType)
|
||||
{
|
||||
case PageSizeType.A3: size = new Size(297, 420); break;
|
||||
case PageSizeType.A4: size = new Size(210, 297); break;
|
||||
case PageSizeType.A5: size = new Size(148, 210); break;
|
||||
case PageSizeType.B4: size = new Size(257, 364); break;
|
||||
case PageSizeType.B5: size = new Size(176, 250); break;
|
||||
case PageSizeType.DLEnvelope: size = new Size(110, 220); break;
|
||||
case PageSizeType.C5Envelope: size = new Size(162, 229); break;
|
||||
case PageSizeType.Quarto: size = new Size(215, 275); break;
|
||||
case PageSizeType.C6Quarto: size = new Size(114, 162); break;
|
||||
case PageSizeType.B5Quarto: size = new Size(176, 250); break;
|
||||
case PageSizeType.ItalyQuarto: size = new Size(110, 230); break;
|
||||
case PageSizeType.A4small: size = new Size(210, 297); break;
|
||||
case PageSizeType.GermanStdFanfold: size = new Size(215.9, 304.8); break;
|
||||
case PageSizeType.GermanLegalFanfold: size = new Size(203.2, 330.2); break;
|
||||
case PageSizeType.PRC16K: size = new Size(146, 215); break;
|
||||
case PageSizeType.PRC32K: size = new Size(97, 151); break;
|
||||
case PageSizeType.Letter: size = new Size(215.9, 279.4); break;
|
||||
case PageSizeType.Folio: size = new Size(215.9, 330.2); break;
|
||||
case PageSizeType.Legal: size = new Size(215.9, 355.6); break;
|
||||
case PageSizeType.Executive: size = new Size(184.15, 266.7); break;
|
||||
case PageSizeType.Statement: size = new Size(139.7, 215.9); break;
|
||||
case PageSizeType.Envelope: size = new Size(104.77, 241.3); break;
|
||||
case PageSizeType.MonarchEnvelope: size = new Size(98.425, 190.5); break;
|
||||
case PageSizeType.Tabloid: size = new Size(279.4, 431.8); break;
|
||||
case PageSizeType.LetterSmall: size = new Size(215.9, 279.4); break;
|
||||
case PageSizeType.CSheet: size = new Size(431.8, 558.8); break;
|
||||
case PageSizeType.DSheet: size = new Size(558.8, 863.6); break;
|
||||
case PageSizeType.ESheet: size = new Size(863.6, 1117.6); break;
|
||||
}
|
||||
|
||||
return new Size(ScreenHelper.MmToWidth(size.Width), ScreenHelper.MmToWidth(size.Height));
|
||||
}
|
||||
|
||||
private PageSizeOrientation _pageSizeOrientation;
|
||||
public PageSizeOrientation PageSizeOrientation
|
||||
{
|
||||
get
|
||||
{
|
||||
return _pageSizeOrientation;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _pageSizeOrientation, value);
|
||||
RaisePropertyChanged(nameof(PageSize));
|
||||
}
|
||||
}
|
||||
|
||||
private PageUnit _pageUnit = PageUnit.cm;
|
||||
private DiagramType _diagramType;
|
||||
[Browsable(false)]
|
||||
public PageUnit PageUnit
|
||||
public DiagramType DiagramType
|
||||
{
|
||||
get
|
||||
{
|
||||
return _pageUnit;
|
||||
return _diagramType;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (value != PageUnit.cm && value != PageUnit.inch)
|
||||
{
|
||||
return;
|
||||
}
|
||||
SetProperty(ref _pageUnit, value);
|
||||
}
|
||||
}
|
||||
|
||||
private Size _gridCellSize = new Size(100, 100);
|
||||
public Size GridCellSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridCellSize;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _gridCellSize, value);
|
||||
}
|
||||
}
|
||||
|
||||
public double GridCellWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridCellSize.Width;
|
||||
}
|
||||
set
|
||||
{
|
||||
_gridCellSize.Width = value;
|
||||
RaisePropertyChanged(nameof(PhysicalGridCellWidth));
|
||||
RaisePropertyChanged(nameof(GridCellSize));
|
||||
}
|
||||
}
|
||||
|
||||
public double GridCellHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridCellSize.Height;
|
||||
}
|
||||
set
|
||||
{
|
||||
_gridCellSize.Height = value;
|
||||
RaisePropertyChanged(nameof(PhysicalGridCellHeight));
|
||||
RaisePropertyChanged(nameof(GridCellSize));
|
||||
}
|
||||
}
|
||||
|
||||
public Size PhysicalGridCellSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return new Size(ScreenHelper.WidthToMm(GridCellSize.Width), ScreenHelper.WidthToMm(GridCellSize.Height));
|
||||
}
|
||||
set
|
||||
{
|
||||
GridCellSize = new Size(ScreenHelper.MmToWidth(value.Width), ScreenHelper.MmToWidth(value.Height));
|
||||
}
|
||||
}
|
||||
|
||||
public double PhysicalGridCellWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return ScreenHelper.WidthToMm(GridCellWidth);
|
||||
}
|
||||
set
|
||||
{
|
||||
GridCellWidth = ScreenHelper.MmToWidth(value);
|
||||
}
|
||||
}
|
||||
|
||||
public double PhysicalGridCellHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return ScreenHelper.WidthToMm(GridCellHeight);
|
||||
}
|
||||
set
|
||||
{
|
||||
GridCellHeight = ScreenHelper.MmToWidth(value);
|
||||
}
|
||||
}
|
||||
|
||||
private Color _pageBackground = Colors.White;
|
||||
public Color PageBackground
|
||||
{
|
||||
get
|
||||
{
|
||||
return _pageBackground;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _pageBackground, value);
|
||||
}
|
||||
}
|
||||
|
||||
private bool _showGrid = true;
|
||||
public bool ShowGrid
|
||||
{
|
||||
get
|
||||
{
|
||||
return _showGrid;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _showGrid, value);
|
||||
}
|
||||
}
|
||||
|
||||
private Color _gridColor = Colors.LightGray;
|
||||
public Color GridColor
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridColor;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _gridColor, value);
|
||||
}
|
||||
}
|
||||
|
||||
private Size _gridMarginSize = new Size(28, 28);
|
||||
public Size GridMarginSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridMarginSize;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _gridMarginSize, value);
|
||||
}
|
||||
}
|
||||
|
||||
public double GridMarginWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridMarginSize.Width;
|
||||
}
|
||||
set
|
||||
{
|
||||
_gridMarginSize.Width = value;
|
||||
RaisePropertyChanged(nameof(GridMarginSize));
|
||||
}
|
||||
}
|
||||
|
||||
public double GridMarginHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return _gridMarginSize.Height;
|
||||
}
|
||||
set
|
||||
{
|
||||
_gridMarginSize.Height = value;
|
||||
RaisePropertyChanged(nameof(GridMarginSize));
|
||||
}
|
||||
}
|
||||
|
||||
public Size PhysicalGridMarginSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return new Size(ScreenHelper.WidthToMm(GridMarginSize.Width), ScreenHelper.WidthToMm(GridMarginSize.Height));
|
||||
}
|
||||
set
|
||||
{
|
||||
GridMarginSize = new Size(ScreenHelper.MmToWidth(value.Width), ScreenHelper.MmToWidth(value.Height));
|
||||
}
|
||||
}
|
||||
|
||||
public double PhysicalGridMarginWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return ScreenHelper.WidthToMm(GridMarginWidth);
|
||||
}
|
||||
set
|
||||
{
|
||||
GridMarginWidth = ScreenHelper.MmToWidth(value);
|
||||
}
|
||||
}
|
||||
|
||||
public double PhysicalGridMarginHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return ScreenHelper.WidthToMm(GridMarginHeight);
|
||||
}
|
||||
set
|
||||
{
|
||||
GridMarginHeight = ScreenHelper.MmToWidth(value);
|
||||
SetProperty(ref _diagramType, value);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -500,47 +204,7 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
}
|
||||
}
|
||||
|
||||
private DiagramType _diagramType;
|
||||
[Browsable(false)]
|
||||
public DiagramType DiagramType
|
||||
{
|
||||
get
|
||||
{
|
||||
return _diagramType;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _diagramType, value);
|
||||
}
|
||||
}
|
||||
|
||||
private CellHorizontalAlignment _cellHorizontalAlignment;
|
||||
[Browsable(false)]
|
||||
public CellHorizontalAlignment CellHorizontalAlignment
|
||||
{
|
||||
get
|
||||
{
|
||||
return _cellHorizontalAlignment;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _cellHorizontalAlignment, value);
|
||||
}
|
||||
}
|
||||
|
||||
private CellVerticalAlignment _cellVerticalAlignment;
|
||||
[Browsable(false)]
|
||||
public CellVerticalAlignment CellVerticalAlignment
|
||||
{
|
||||
get
|
||||
{
|
||||
return _cellVerticalAlignment;
|
||||
}
|
||||
set
|
||||
{
|
||||
SetProperty(ref _cellVerticalAlignment, value);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private bool _isEditName;
|
||||
[Browsable(false)]
|
||||
@@ -691,11 +355,6 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
get; set;
|
||||
} = new DiagramOption();
|
||||
|
||||
public bool AllowDrop
|
||||
{
|
||||
get; set;
|
||||
} = true;
|
||||
|
||||
public DoCommandManager DoCommandManager { get; private set; } = new DoCommandManager();
|
||||
|
||||
public event DiagramEventHandler Event;
|
||||
@@ -1170,16 +829,16 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
public DiagramViewModel(DiagramItem diagramItem) : this()
|
||||
{
|
||||
DiagramType = diagramItem.DiagramType;
|
||||
ShowGrid = diagramItem.ShowGrid;
|
||||
PhysicalGridCellSize = diagramItem.PhysicalGridCellSize;
|
||||
CellHorizontalAlignment = diagramItem.CellHorizontalAlignment;
|
||||
CellVerticalAlignment = diagramItem.CellVerticalAlignment;
|
||||
PageSizeOrientation = diagramItem.PageSizeOrientation;
|
||||
PhysicalPageSize = diagramItem.PhysicalPageSize;
|
||||
PageSizeType = diagramItem.PageSizeType;
|
||||
PhysicalGridMarginSize = diagramItem.PhysicalGridMarginSize;
|
||||
GridColor = diagramItem.GridColor;
|
||||
AllowDrop = diagramItem.AllowDrop;
|
||||
DiagramOption.LayoutOption.ShowGrid = diagramItem.ShowGrid;
|
||||
DiagramOption.LayoutOption.PhysicalGridCellSize = diagramItem.PhysicalGridCellSize;
|
||||
DiagramOption.LayoutOption.CellHorizontalAlignment = diagramItem.CellHorizontalAlignment;
|
||||
DiagramOption.LayoutOption.CellVerticalAlignment = diagramItem.CellVerticalAlignment;
|
||||
DiagramOption.LayoutOption.PageSizeOrientation = diagramItem.PageSizeOrientation;
|
||||
DiagramOption.LayoutOption.PhysicalPageSize = diagramItem.PhysicalPageSize;
|
||||
DiagramOption.LayoutOption.PageSizeType = diagramItem.PageSizeType;
|
||||
DiagramOption.LayoutOption.PhysicalGridMarginSize = diagramItem.PhysicalGridMarginSize;
|
||||
DiagramOption.LayoutOption.GridColor = diagramItem.GridColor;
|
||||
DiagramOption.LayoutOption.AllowDrop = diagramItem.AllowDrop;
|
||||
|
||||
Init(true);
|
||||
}
|
||||
@@ -2601,8 +2260,8 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
var oldcenter = BoundingRect.Center;
|
||||
foreach (var item in selectedItems.OfType<DesignerItemViewModelBase>())
|
||||
{
|
||||
item.Left = item.Left - oldcenter.X + PageSize.Width / 2;
|
||||
item.Top = item.Top - oldcenter.Y + PageSize.Height / 2;
|
||||
item.Left = item.Left - oldcenter.X + DiagramOption.LayoutOption.PageSize.Width / 2;
|
||||
item.Top = item.Top - oldcenter.Y + DiagramOption.LayoutOption.PageSize.Height / 2;
|
||||
}
|
||||
|
||||
FitViewModel = new FitViewModel() { BoundingRect = DiagramViewModelHelper.GetBoundingRectangle(selectedItems) };
|
||||
|
||||
@@ -234,6 +234,11 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
get;
|
||||
}
|
||||
|
||||
DiagramType DiagramType
|
||||
{
|
||||
get;set;
|
||||
}
|
||||
|
||||
event DiagramEventHandler Event;
|
||||
|
||||
bool IsReadOnly
|
||||
@@ -243,59 +248,7 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
bool IsLoading
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
Size PageSize
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
Size PhysicalPageSize
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
PageSizeType PageSizeType
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
bool ShowGrid
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
Size GridCellSize
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
Size PhysicalGridCellSize
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
PageSizeOrientation PageSizeOrientation
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
CellHorizontalAlignment CellHorizontalAlignment
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
CellVerticalAlignment CellVerticalAlignment
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
Size GridMarginSize
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
Size PhysicalGridMarginSize
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
Color GridColor
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
DiagramType DiagramType
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
}
|
||||
double ZoomValue
|
||||
{
|
||||
get; set;
|
||||
@@ -311,11 +264,7 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
bool DefaultZoomBox
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
bool AllowDrop
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
}
|
||||
System.Windows.Point CurrentPoint
|
||||
{
|
||||
get; set;
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "An example of reconnecting links to the closest ports.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "Line path motion animationr.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "Line flow motion animation.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "Creating your own custom groups is very easy!";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "Creating your own custom links is very easy!";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "Creating your own custom design is very easy!";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "Creating your own custom port is very easy!";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -17,13 +17,13 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
|
||||
ToolBoxViewModel = new FlowchartToolBoxViewModel();
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.ShowGrid = true;
|
||||
DiagramViewModel.GridCellSize = new Size(100, 100);
|
||||
DiagramViewModel.GridMarginSize = new Size(0, 0);
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.ShowGrid = true;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.GridCellSize = new Size(100, 100);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.GridMarginSize = new Size(0, 0);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
|
||||
DiagramViewModel.PropertyChanged += DiagramViewModel_PropertyChanged;
|
||||
}
|
||||
|
||||
@@ -15,8 +15,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"Also, the Diagram and every Model have a Changed event.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels.Groups
|
||||
"Currently, the library doesn't handle nested groups yet nor ports.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "You can customize what needs to be pressed to group selected nodes. CTRL+SHIFT+K in this example.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
DiagramViewModel.DiagramOption.ShortcutOption.Group = e => e.KeyboardDevice.Modifiers == (ModifierKeys.Control | ModifierKeys.Shift) && e.Key == Key.K;
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"Currently, the library doesn't handle nested groups yet nor ports.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"The content of the labels is still limited because of Blazor's poor SVG support.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "Markers are SVG Paths that you can put at the beginning or at the end of your links.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,10 +14,10 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"alongside the markers positions and their angles. There are currently two generators: Straight and Smooth.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"There are currently two routers: Normal and Orthogonal.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,9 +13,10 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "While dragging a new link, it will try to find (and link) to the closest target within a radius.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DrawModeViewModel = new DrawModeViewModel() { EnableSnapping = true };
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.SnappingOption.EnableSnapping = true;
|
||||
DiagramViewModel.DrawModeViewModel = new DrawModeViewModel() { };
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"You can drag the vertices around.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -16,10 +16,10 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"Newly created links aren't locked, so they can be deleted.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "Creating your own defined design is very easy!";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "A node with a gradient background.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels.Nodes
|
||||
Info = "A simple example of AIStudio.Wpf.DiagramDesigner.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,10 +14,10 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "You can also have SVG nodes! All you need to do is to set the Layer to RenderLayer.SVG.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "This diagram contains 100 nodes and 50 links";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(1000, 1000);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(1000, 1000);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"All you need to specify is the shape of your nodes in order to calculate the connection points.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -16,8 +16,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
"In this example, you can only attach links from/to ports with the same color.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "You can add connection points inside a node";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "A simple example of AIStudio.Wpf.DiagramDesigner.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,10 +13,10 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "This diagram has a grid size of 100, moving nodes will make them automatically snap.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
DiagramViewModel.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange;
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels
|
||||
Info = "A text node of AIStudio.Wpf.DiagramDesigner.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
|
||||
TextDesignerItemViewModel node1 = new TextDesignerItemViewModel(DiagramViewModel) { Left = 50, Top = 50, ItemWidth = 230, Text = "竹外桃花三两枝,春江水暖鸭先知。\r\n蒌蒿满地芦芽短,正是河豚欲上时。" };
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels.Texts
|
||||
Info = "A text node of AIStudio.Wpf.DiagramDesigner.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
|
||||
TextDesignerItemViewModel node1 = new TextDesignerItemViewModel(DiagramViewModel) { Left = 50, Top = 50, ItemWidth = 230, Text = "竹外桃花三两枝,春江水暖鸭先知。\r\n蒌蒿满地芦芽短,正是河豚欲上时。" };
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels.Texts
|
||||
Info = "A text node of AIStudio.Wpf.DiagramDesigner.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
|
||||
TextDesignerItemViewModel node1 = new TextDesignerItemViewModel(DiagramViewModel) { Left = 30, Top = 50, ItemWidth = 260, Text = "竹外桃花三两枝,春江水暖鸭先知。\r\n蒌蒿满地芦芽短,正是河豚欲上时。" };
|
||||
|
||||
@@ -14,8 +14,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels.Texts
|
||||
Info = "A text node of AIStudio.Wpf.DiagramDesigner.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
|
||||
OutLineTextDesignerItemViewModel node1 = new OutLineTextDesignerItemViewModel(DiagramViewModel) { Left = 50, Top = 50, ItemWidth = 600, ItemHeight = 100, Text = "竹外桃花三两枝,春江水暖鸭先知。\r\n蒌蒿满地芦芽短,正是河豚欲上时。" };
|
||||
|
||||
@@ -13,8 +13,8 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels.Texts
|
||||
Info = "A text node of AIStudio.Wpf.DiagramDesigner.";
|
||||
|
||||
DiagramViewModel = new DiagramViewModel();
|
||||
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
DiagramViewModel.DiagramOption.LayoutOption.PageSize = new Size(double.NaN, double.NaN);
|
||||
DiagramViewModel.ColorViewModel = new ColorViewModel();
|
||||
|
||||
TextDesignerItemViewModel node1 = new TextDesignerItemViewModel(DiagramViewModel) { Left = 50, Top = 50, ItemWidth=230, Text = "竹外桃花三两枝,春江水暖鸭先知。\r\n蒌蒿满地芦芽短,正是河豚欲上时。" };
|
||||
|
||||
@@ -33,13 +33,13 @@ namespace AIStudio.Wpf.Flowchart.Controls
|
||||
public FlowchartEditor()
|
||||
{
|
||||
_diagramViewModel = new DiagramViewModel();
|
||||
_diagramViewModel.ShowGrid = true;
|
||||
_diagramViewModel.GridCellSize = new SizeBase(125 / ScreenHelper.ScreenScale, 125 / ScreenHelper.ScreenScale);
|
||||
_diagramViewModel.GridMarginSize = new Size(0, 0);
|
||||
_diagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
_diagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
_diagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
_diagramViewModel.PageSize = new SizeBase(double.NaN, double.NaN);
|
||||
_diagramViewModel.DiagramOption.LayoutOption.ShowGrid = true;
|
||||
_diagramViewModel.DiagramOption.LayoutOption.GridCellSize = new SizeBase(125 / ScreenHelper.ScreenScale, 125 / ScreenHelper.ScreenScale);
|
||||
_diagramViewModel.DiagramOption.LayoutOption.GridMarginSize = new Size(0, 0);
|
||||
_diagramViewModel.DiagramOption.LayoutOption.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
_diagramViewModel.DiagramOption.LayoutOption.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
_diagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
_diagramViewModel.DiagramOption.LayoutOption.PageSize = new SizeBase(double.NaN, double.NaN);
|
||||
_diagramViewModel.ColorViewModel = new ColorViewModel() { LineWidth = 2 };
|
||||
_diagramViewModel.DrawModeViewModel = new DrawModeViewModel() { LineDrawMode = DrawMode.ConnectingLineSmooth };
|
||||
|
||||
|
||||
@@ -40,10 +40,10 @@ namespace AIStudio.Wpf.Mind.Controls
|
||||
public MindEditor()
|
||||
{
|
||||
_diagramViewModel = new MindDiagramViewModel();
|
||||
_diagramViewModel.GridMarginSize = new Size(0, 0);
|
||||
_diagramViewModel.PageSizeType = PageSizeType.Custom;
|
||||
_diagramViewModel.PageSize = new SizeBase(1000d, 1000d);
|
||||
_diagramViewModel.ShowGrid= false;
|
||||
_diagramViewModel.DiagramOption.LayoutOption.GridMarginSize = new Size(0, 0);
|
||||
_diagramViewModel.DiagramOption.LayoutOption.PageSizeType = PageSizeType.Custom;
|
||||
_diagramViewModel.DiagramOption.LayoutOption.PageSize = new SizeBase(1000d, 1000d);
|
||||
_diagramViewModel.DiagramOption.LayoutOption.ShowGrid = false;
|
||||
_diagramViewModel.DefaultZoomBox = true;
|
||||
|
||||
_diagramViewModel.PropertyChanged += DiagramViewModel_PropertyChanged;
|
||||
|
||||
@@ -1132,11 +1132,11 @@ namespace AIStudio.Wpf.Mind.ViewModels
|
||||
var mindThemeModel = MindThemeHelper.GetTheme(newMindTheme);
|
||||
if (mindThemeModel?.Dark == true)
|
||||
{
|
||||
PageBackground = Colors.Black;
|
||||
DiagramOption.LayoutOption.PageBackground = Colors.Black;
|
||||
}
|
||||
else
|
||||
{
|
||||
PageBackground = Colors.White;
|
||||
DiagramOption.LayoutOption.PageBackground = Colors.White;
|
||||
}
|
||||
roots.ForEach(p => p.MindTheme = newMindTheme);
|
||||
roots.SelectMany(p => p.GetChildren(true)).ToList().ForEach(item => { item.ThemeChange(); });
|
||||
@@ -1146,11 +1146,11 @@ namespace AIStudio.Wpf.Mind.ViewModels
|
||||
var mindThemeModel = MindThemeHelper.GetTheme(oldMindTheme);
|
||||
if (mindThemeModel?.Dark == true)
|
||||
{
|
||||
PageBackground = Colors.Black;
|
||||
DiagramOption.LayoutOption.PageBackground = Colors.Black;
|
||||
}
|
||||
else
|
||||
{
|
||||
PageBackground = Colors.White;
|
||||
DiagramOption.LayoutOption.PageBackground = Colors.White;
|
||||
}
|
||||
roots.ForEach(p => p.MindTheme = oldMindTheme);
|
||||
roots.SelectMany(p => p.GetChildren(true)).ToList().ForEach(item => { item.ThemeChange(); });
|
||||
@@ -1275,9 +1275,9 @@ namespace AIStudio.Wpf.Mind.ViewModels
|
||||
{
|
||||
|
||||
if (left == null)
|
||||
left = (PageSize.Width - rootitem.ItemWidth) / 2;
|
||||
left = (DiagramOption.LayoutOption.PageSize.Width - rootitem.ItemWidth) / 2;
|
||||
if (top == null)
|
||||
top = (PageSize.Height - rootitem.ItemHeight) / 2;
|
||||
top = (DiagramOption.LayoutOption.PageSize.Height - rootitem.ItemHeight) / 2;
|
||||
var offset = rootitem.Offset;
|
||||
rootitem.Left = left.Value;
|
||||
rootitem.Top = top.Value;
|
||||
|
||||
Reference in New Issue
Block a user