diff --git a/DeedyDesigner/Deedy.Activity/ActionViewer.cs b/DeedyDesigner/Deedy.Activity/ActionViewer.cs
index 4e690d7..d3595f2 100644
--- a/DeedyDesigner/Deedy.Activity/ActionViewer.cs
+++ b/DeedyDesigner/Deedy.Activity/ActionViewer.cs
@@ -86,20 +86,70 @@ namespace Deedy.Activity
field = value;
OnPropertyChanged(propertyName);
return true;
- }
+ }
- [AllowNull, DefaultValue(null)]
+ public Runtime Runtime => throw new NotImplementedException();
+
+ public Visibility ShowBreakHandle => throw new NotImplementedException();
+
+ public Visibility ShowContinueHandle => throw new NotImplementedException();
+
+ public Visibility ShowExitHandle => throw new NotImplementedException();
+
+ public Visibility ShowReturnHandle => throw new NotImplementedException();
+
+ public Visibility ShowCustomHandle => throw new NotImplementedException();
+
+ public Visibility ShowHeader => throw new NotImplementedException();
+
+ public Visibility ShowFooter => throw new NotImplementedException();
+
+ public Visibility ShowInfoHandle => throw new NotImplementedException();
+
+ public Visibility ShowDeleteHandle => throw new NotImplementedException();
+
+ public Visibility ShowLeftExitline => throw new NotImplementedException();
+
+ public Visibility ShowRightExitline => throw new NotImplementedException();
+ public LogInfo InstantInfo => throw new NotImplementedException();
+
+ public LogInfoCollection LogInfos => throw new NotImplementedException();
+
+ public uint ElementCount => throw new NotImplementedException();
+
+ public bool IsSelectable => throw new NotImplementedException();
+
+ public bool IsSelected => throw new NotImplementedException();
+
+ public bool IsCanExpand => throw new NotImplementedException();
+
+ public bool IsExpanded => throw new NotImplementedException();
+
+ public ViewerState ViewerState => throw new NotImplementedException();
+
+ public WorkMode WorkMode => throw new NotImplementedException();
+
+ public Brush FillBrush => throw new NotImplementedException();
+
+ public Brush StrokeBrush => throw new NotImplementedException();
+
+ public double StrokeThickness => throw new NotImplementedException();
+
+ public Thickness MarginCorrection_Top => throw new NotImplementedException();
+
+ public Thickness MarginCorrection_Bottom => throw new NotImplementedException();
+
+ public Thickness MarginCorrection_TopBottom => throw new NotImplementedException();
///
/// 动作节点
///
+ [AllowNull, DefaultValue(null)]
public IActionElement ActionElement
{
get { return (IActionElement)GetValue(ActionElementProperty); }
set { SetValue(ActionElementProperty, value); }
}
- public Runtime Runtime => throw new NotImplementedException();
-
public static readonly DependencyProperty ActionElementProperty =
DependencyProperty.Register("ActionElement", typeof(IActionElement), typeof(ActionViewer), new PropertyMetadata(null,
(d, e) => (d as ActionViewer)?.ActionElement_PropertyChangedCallback(e)));
@@ -108,8 +158,24 @@ namespace Deedy.Activity
///
protected virtual void ActionElement_PropertyChangedCallback(DependencyPropertyChangedEventArgs e)
{
- //
+ if (e.OldValue is IActionElement oldValue)
+ oldValue.PropertyChanged -= ActionElement_PropertyChanged;
+ if (e.NewValue is IActionElement newValue)
+ {
+ newValue.PropertyChanged += ActionElement_PropertyChanged;
+ //TODO:根据节点的特征与当前工作状态来判定如何处理当前视图的属性
+ }
}
+
+ private void ActionElement_PropertyChanged(object? sender, PropertyChangedEventArgs e)
+ {
+ switch (e.PropertyName)
+ {
+ //TODO:处理托管的IActionElement节点的属性变更
+ default: break;
+ }
+ }
+
public void ReadyToWorking(IElement? element = null, Output? output = null)
{
throw new NotImplementedException();
diff --git a/DeedyDesigner/Deedy.Activity/Collection/LogInfoCollection.cs b/DeedyDesigner/Deedy.Activity/Collection/LogInfoCollection.cs
new file mode 100644
index 0000000..600da22
--- /dev/null
+++ b/DeedyDesigner/Deedy.Activity/Collection/LogInfoCollection.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Deedy.Activity
+{
+ public class LogInfoCollection : ObservableCollection
+ {
+ }
+}
diff --git a/DeedyDesigner/Deedy.Activity/Collection/OutputCollection.cs b/DeedyDesigner/Deedy.Activity/Collection/OutputCollection.cs
new file mode 100644
index 0000000..d621491
--- /dev/null
+++ b/DeedyDesigner/Deedy.Activity/Collection/OutputCollection.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Deedy.Activity
+{
+ public class OutputCollection : ObservableCollection