Skip to content

Commit a8423d7

Browse files
committed
for debug enable
1 parent 8675e89 commit a8423d7

File tree

4 files changed

+29
-67
lines changed

4 files changed

+29
-67
lines changed

SimpleStateMachineNodeEditor/View/MainWindow.xaml.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -67,12 +67,7 @@ private void SetupBinding()
6767
this.BindCommand(this.ViewModel, x => x.CommandCopyError, x => x.ItemCopyError, SelectedItem).DisposeWith(disposable);
6868

6969
this.OneWayBind(this.ViewModel, x => x.Messages, x => x.MessageList.ItemsSource).DisposeWith(disposable);
70-
71-
72-
//this.NodesCanvas.ViewModel.Messages.Find
73-
74-
75-
//this.BindCommand(this.ViewModel, x=>this.CommandSave, x=>x.ButtonSave).DisposeWith(disposable);
70+
this.OneWayBind(this.ViewModel, x=>x.DebugEnable, x=>x.LabelDebug.Visibility).DisposeWith(disposable);
7671

7772

7873
});

SimpleStateMachineNodeEditor/ViewModel/ViewModelMainWindow.cs

Lines changed: 25 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -16,71 +16,54 @@ namespace SimpleStateMachineNodeEditor.ViewModel
1616
{
1717
public class ViewModelMainWindow: ReactiveObject
1818
{
19-
//public ReadOnlyObservableCollection<ViewModelMessage> Messages;
20-
//[Reactive] public ObservableCollection<ViewModelMessage> Messages { get { return new ObservableCollection<ViewModelMessage>(NodesCanvas.Messages.Where(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All)); } set { } }
2119
public ObservableCollectionExtended<ViewModelMessage> Messages { get; set; } = new ObservableCollectionExtended<ViewModelMessage>();
22-
//public ReadOnlyObservableCollection<ViewModelMessage> Messages;
20+
2321
[Reactive] public ViewModelNodesCanvas NodesCanvas { get; set; }
22+
2423
[Reactive] public TypeMessage DisplayMessageType { get; set; }
2524

25+
[Reactive] public bool? DebugEnable { get; set; }
26+
2627
private IDisposable ConnectToMessages;
2728

2829
public double MaxHeightMessagePanel = 150;
2930

30-
public int CountShowingMessage = 5;
31-
3231
public ViewModelMainWindow()
3332
{
3433
SetupCommands();
35-
SetupSubscriptions();
36-
34+
SetupSubscriptions();
3735
}
36+
3837
#region Setup Subscriptions
3938

4039
private void SetupSubscriptions()
4140
{
42-
this.WhenAnyValue(x => x.NodesCanvas).Where(x=>x!=null).Subscribe(_ => UpdateMessages());
43-
this.WhenAnyValue(x => x.NodesCanvas.DisplayMessageType).Subscribe(_ => Test());
44-
//this.WhenAnyValue(x => x.NodesCanvas.DisplayMessageType).Subscribe(_ => Test());
45-
//this.WhenAnyValue(x => x.NodesCanvas.Messages).Subscribe(_ => Test());
41+
this.WhenAnyValue(x => x.NodesCanvas.DisplayMessageType).Subscribe(_ => UpdateMessages());
4642

4743
}
48-
private void Test()
44+
private void UpdateMessages()
4945
{
5046
ConnectToMessages?.Dispose();
5147
Messages.Clear();
52-
//Messages.AddRange(this.NodesCanvas.Messages.Where(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All));
53-
ConnectToMessages = this.NodesCanvas.Messages.ToObservableChangeSet().Filter(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All).
54-
ObserveOnDispatcher().Bind(Messages).DisposeMany().Subscribe();
55-
}
56-
private void UpdateMessages()
57-
{
5848

59-
//var t = NodesCanvas.Messages.Where(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType).ToList();
60-
//Messages = t ;
61-
62-
//var observable = this.NodesCanvas.ObservableForProperty(x => x.DisplayMessageType).Select(x => x.Value);
63-
//this.NodesCanvas.DisplayMessageType.T
64-
// Observable
65-
//var observable = this.NodesCanvas.ObservableForProperty(x => x.DisplayMessageType);
66-
//NodesCanvas.Messages.Connect().Filter(x=>x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType==TypeMessage.All).ObserveOnDispatcher().Bind(out Messages).DisposeMany().Subscribe();
67-
//NodesCanvas.Messages.Connect().Filter(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All).ObserveOnDispatcher().Bind(out Messages).DisposeMany().Subscribe();
68-
//NodesCanvas.Messages.Connect().Filter(x => x!=null).ObserveOnDispatcher().Bind(out Messages).DisposeMany().Subscribe();
69-
//Messages = ;
70-
//NodesCanvas.Messages.
71-
//NodesCanvas.Messages.Connect().ObserveOnDispatcher().Bind(out Messages).DisposeMany().Subscribe();
72-
//NodesCanvas.Messages.Where(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All).ToObservable().\
73-
74-
//Correct for new
75-
//NodesCanvas.Messages.ToObservableChangeSet().Filter(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All).ObserveOnDispatcher().Bind(out Messages).DisposeMany().Subscribe();
76-
//NodesCanvas.Messages.Connect(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All).ObserveOnDispatcher().Bind(out Messages).DisposeMany().Subscribe();
77-
//var mySource = NodesCanvas.Messages.Connect().Filter(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All);
78-
//var myBindingOperation = mySource.ObserveOn(RxApp.MainThreadScheduler).Bind(out Messages).Subscribe();
79-
80-
//NodesCanvas.Messages.All(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All).ObservableForProperty(x=>x.M)
81-
//NodesCanvas.Messages.ToObservableChangeSet().Filter(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType).ObserveOnDispatcher().Bind(out Messages).DisposeMany().Subscribe();
82-
//NodesCanvas.Messages.Connect().Filter(x => x.TypeMessage == this.NodesCanvas.DisplayMessageType || this.NodesCanvas.DisplayMessageType == TypeMessage.All).Bind(out Messages).Subscribe();
49+
bool debugEnable = DebugEnable.HasValue && DebugEnable.Value;
50+
bool displayAll = this.NodesCanvas.DisplayMessageType == TypeMessage.All;
51+
52+
ConnectToMessages = this.NodesCanvas.Messages.ToObservableChangeSet().Filter(x=> CheckForDisplay(x.TypeMessage)).ObserveOnDispatcher().Bind(Messages).DisposeMany().Subscribe();
53+
54+
bool CheckForDisplay(TypeMessage typeMessage)
55+
{
56+
if (typeMessage == this.NodesCanvas.DisplayMessageType)
57+
{
58+
return true;
59+
}
60+
else if(typeMessage==TypeMessage.Debug)
61+
{
62+
return debugEnable && displayAll;
63+
}
8364

65+
return displayAll;
66+
}
8467
}
8568
#endregion Setup Subscriptions
8669
#region Setup Commands

SimpleStateMachineNodeEditor/ViewModel/ViewModelNode.cs

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,31 +21,18 @@ namespace SimpleStateMachineNodeEditor.ViewModel
2121
public class ViewModelNode : ReactiveValidationObject<ViewModelNode>
2222
{
2323
[Reactive] public MyPoint Point1 { get; set; } = new MyPoint();
24-
2524
[Reactive] public MyPoint Point2 { get; set; } = new MyPoint();
26-
2725
[Reactive] public Size Size { get; set; }
28-
2926
[Reactive] public string Name { get; set; }
30-
3127
[Reactive] public bool NameEnable { get; set; } = true;
32-
3328
[Reactive] public bool Selected { get; set; }
34-
3529
[Reactive] public Brush BorderBrush { get; set; } = Application.Current.Resources["ColorNodeBorder"] as SolidColorBrush;
36-
3730
[Reactive] public bool? TransitionsVisible { get; set; } = true;
38-
3931
[Reactive] public bool? RollUpVisible { get; set; } = true;
40-
4132
[Reactive] public bool CanBeDelete { get; set; } = true;
42-
4333
[Reactive] public ViewModelConnector Input { get; set; }
44-
4534
[Reactive] public ViewModelConnector Output { get; set; }
46-
4735
[Reactive] public ViewModelConnector CurrentConnector { get; set; }
48-
4936
[Reactive] public ViewModelNodesCanvas NodesCanvas { get; set; }
5037

5138
public int Zindex { get; private set; }

SimpleStateMachineNodeEditor/ViewModel/ViewModelNodesCanvas.cs

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,23 +26,19 @@ namespace SimpleStateMachineNodeEditor.ViewModel
2626
public class ViewModelNodesCanvas : ReactiveObject
2727
{
2828
public IObservableCollection<ViewModelConnect> Connects = new ObservableCollectionExtended<ViewModelConnect>();
29+
2930
public IObservableCollection<ViewModelNode> Nodes = new ObservableCollectionExtended<ViewModelNode>();
31+
3032
[Reactive] public ViewModelSelector Selector { get; set; } = new ViewModelSelector();
3133
[Reactive] public ViewModelCutter Cutter { get; set; }
3234
[Reactive] public ViewModelConnect DraggedConnect { get; set; }
3335
[Reactive] public ViewModelConnector ConnectorPreviewForDrop { get; set; }
3436
[Reactive] public ViewModelNode StartState { get; set; }
35-
3637
[Reactive] public bool ItSaved { get; set; } = true;
37-
3838
[Reactive] public string Path { get; set; }
39-
4039
[Reactive] public TypeMessage DisplayMessageType { get; set; }
4140
public ObservableCollectionExtended<ViewModelMessage> Messages { get; set; } = new ObservableCollectionExtended<ViewModelMessage>();
4241

43-
/// <summary>
44-
/// Масштаб
45-
/// </summary>
4642
[Reactive] public Scale Scale { get; set; } = new Scale();
4743

4844
public ViewModelNodesCanvas()
@@ -207,6 +203,7 @@ public void LogWarning(string message)
207203
}
208204

209205
#endregion Logging
206+
210207
private void StartSelect(MyPoint point)
211208
{
212209
Selector.CommandStartSelect.Execute(point);

0 commit comments

Comments
 (0)