可以切换主题

This commit is contained in:
艾竹
2023-03-11 22:27:23 +08:00
parent 84f413320f
commit fb7858fe74
22 changed files with 1061 additions and 208 deletions

View File

@@ -739,7 +739,7 @@ namespace AIStudio.Wpf.DiagramDesigner
}
private SimpleCommand _selectAllCommand;
public SimpleCommand SelectAllCommand
public virtual SimpleCommand SelectAllCommand
{
get
{
@@ -747,6 +747,15 @@ namespace AIStudio.Wpf.DiagramDesigner
}
}
private SimpleCommand _selectInverseCommand;
public virtual SimpleCommand SelectInverseCommand
{
get
{
return this._selectInverseCommand ?? (this._selectInverseCommand = new SimpleCommand(ExecuteEnable, ExecuteSelectInverseCommand));
}
}
private SimpleCommand _selectItemCommand;
public SimpleCommand SelectItemCommand
{
@@ -936,15 +945,6 @@ namespace AIStudio.Wpf.DiagramDesigner
}
}
private SimpleCommand _initLayoutCommand;
public SimpleCommand InitLayoutCommand
{
get
{
return this._initLayoutCommand ?? (this._initLayoutCommand = new SimpleCommand(ExecuteEnable, this.ExecutedInitLayoutCommand));
}
}
private SimpleCommand _resetLayoutCommand;
public SimpleCommand ResetLayoutCommand
{
@@ -1061,12 +1061,6 @@ namespace AIStudio.Wpf.DiagramDesigner
}
#endregion
protected virtual void ExecutedInitLayoutCommand(object obj)
{
throw new NotImplementedException();
}
protected virtual void ExecutedResetLayoutCommand(object obj)
{
throw new NotImplementedException();
@@ -1096,9 +1090,13 @@ namespace AIStudio.Wpf.DiagramDesigner
private void Item_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
RaisePropertyChanged(sender, e.PropertyName);
if (e.PropertyName == "IsSelected")
{
RaisePropertyChanged(nameof(SelectedItem));
}
//连续改变需要特殊处理不单独触发属性改变ReDo
if (sender is DesignerItemViewModelBase designer)
//连续改变需要特殊处理不单独触发属性改变ReDo
if (sender is DesignerItemViewModelBase designer)
{
if (designer.BeginDo) return;
}
@@ -1308,6 +1306,18 @@ namespace AIStudio.Wpf.DiagramDesigner
}
}
private void ExecuteSelectInverseCommand(object parameter)
{
foreach (var item in SelectedItems)
{
item.IsSelected = false;
}
foreach (var item in Items.Except(SelectedItems))
{
item.IsSelected = true;
}
}
public void ExecuteSelectItemCommand(object parameter)
{
if (parameter is ISelectable selectable)
@@ -2099,6 +2109,29 @@ namespace AIStudio.Wpf.DiagramDesigner
Delete(parameter);
}
protected void ExecuteSelectBrotherCommand(object parameter)
{
}
protected void ExecuteSelectPearCommand(object parameter)
{
}
protected void ExecuteSelectRouteCommand(object parameter)
{
}
protected void ExecuteSelectChildCommand(object parameter)
{
}
protected virtual bool Delete(object parameter)
{
List<SelectableDesignerItemViewModelBase> itemsToRemove;