2022-11-30 19:07:40 +08:00
|
|
|
|
using System;
|
|
|
|
|
|
using System.Collections.Generic;
|
2022-11-30 22:28:22 +08:00
|
|
|
|
using System.Linq;
|
2022-11-30 19:07:40 +08:00
|
|
|
|
using System.Text;
|
|
|
|
|
|
using System.Windows;
|
|
|
|
|
|
|
|
|
|
|
|
namespace AIStudio.Wpf.DiagramDesigner.Test.ViewModels
|
|
|
|
|
|
{
|
|
|
|
|
|
class MainWindowViewModel : BindableBase
|
|
|
|
|
|
{
|
|
|
|
|
|
public ToolBoxViewModel ToolBoxViewModel
|
|
|
|
|
|
{
|
|
|
|
|
|
get; private set;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public DiagramViewModel DiagramViewModel
|
|
|
|
|
|
{
|
|
|
|
|
|
get; private set;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
protected IDiagramServiceProvider _service
|
|
|
|
|
|
{
|
|
|
|
|
|
get
|
|
|
|
|
|
{
|
|
|
|
|
|
return DiagramServicesProvider.Instance.Provider;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-30 22:28:22 +08:00
|
|
|
|
public SelectableDesignerItemViewModelBase SelectedItem
|
|
|
|
|
|
{
|
|
|
|
|
|
get
|
|
|
|
|
|
{
|
|
|
|
|
|
return DiagramViewModel.SelectedItems?.FirstOrDefault();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2022-11-30 19:07:40 +08:00
|
|
|
|
public MainWindowViewModel()
|
|
|
|
|
|
{
|
|
|
|
|
|
ToolBoxViewModel = new ToolBoxViewModel();
|
|
|
|
|
|
DiagramViewModel = new DiagramViewModel();
|
|
|
|
|
|
DiagramViewModel.ShowGrid = true;
|
|
|
|
|
|
DiagramViewModel.GridCellSize = new Size(100, 60);
|
2022-11-30 22:28:22 +08:00
|
|
|
|
DiagramViewModel.GridMargin = 0d;
|
2022-11-30 19:07:40 +08:00
|
|
|
|
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
|
|
|
|
|
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
|
|
|
|
|
DiagramViewModel.PageSizeType = PageSizeType.Custom;
|
|
|
|
|
|
DiagramViewModel.PageSize = new Size(double.NaN, double.NaN);
|
|
|
|
|
|
|
|
|
|
|
|
_service.DrawModeViewModel.VectorLineDrawMode = DrawMode.BoundaryConnectingLine;
|
2022-11-30 22:28:22 +08:00
|
|
|
|
DiagramViewModel.PropertyChanged += DiagramViewModel_PropertyChanged;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private void DiagramViewModel_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (e.PropertyName == "IsSelected")
|
|
|
|
|
|
{
|
|
|
|
|
|
RaisePropertyChanged(nameof(SelectedItem));
|
|
|
|
|
|
}
|
2022-11-30 19:07:40 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|