Commit a9f21e7255a21c19dbabeee4abb7c4ee281a3a32

Authored by doan
1 parent de88262974
Exists in master

Update Task 2046

Showing 22 changed files with 282 additions and 155 deletions Inline Diff

sources/RoboforkApp.AWS/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache
No preview for this file type
sources/RoboforkApp.AWS/obj/Release/RoboforkApp.AWS.csproj.FileListAbsolute.txt
File was created 1 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp.AWS\obj\Release\RoboforkApp.AWS.csprojResolveAssemblyReference.cache
2
sources/RoboforkApp.AWS/obj/Release/RoboforkApp.AWS.csprojResolveAssemblyReference.cache
No preview for this file type
sources/RoboforkApp/Controls/DesignerCanvas.cs
1 using RoboforkApp.DataModel; 1 using RoboforkApp.DataModel;
2 using RoboforkApp.Entities; 2 using RoboforkApp.Entities;
3 using RoboforkApp.Services; 3 using RoboforkApp.Services;
4 using System; 4 using System;
5 using System.Collections.Generic; 5 using System.Collections.Generic;
6 using System.Linq; 6 using System.Linq;
7 using System.Windows; 7 using System.Windows;
8 using System.Windows.Controls; 8 using System.Windows.Controls;
9 using System.Windows.Documents; 9 using System.Windows.Documents;
10 using System.Windows.Input; 10 using System.Windows.Input;
11 using System.Windows.Markup; 11 using System.Windows.Markup;
12 using System.Windows.Media; 12 using System.Windows.Media;
13 using System.Windows.Shapes; 13 using System.Windows.Shapes;
14 using System.Xml; 14 using System.Xml;
15 15
16 namespace RoboforkApp 16 namespace RoboforkApp
17 { 17 {
18 public class DesignerCanvas : Canvas 18 public class DesignerCanvas : Canvas
19 { 19 {
20 const double RADIUS_NODE = 25d; //8d; 20 const double RADIUS_NODE = 25d; //8d;
21 const double RADIUS_CURVER_LINE = 130d; 21 const double RADIUS_CURVER_LINE = 130d;
22 const double DISTANCE_AUTO_NODES = 100d; 22 const double DISTANCE_AUTO_NODES = 100d;
23 const double DISTANCE_START_NODES = 30d; 23 const double DISTANCE_START_NODES = 30d;
24 const double DISTANCE_END_NODES = 30d; 24 const double DISTANCE_END_NODES = 30d;
25 const double DISTANCE_FREE_NODES = 40d; 25 const double DISTANCE_FREE_NODES = 40d;
26 const double STROKE_ROOT_LINE = 6d; 26 const double STROKE_ROOT_LINE = 6d;
27 const double STROKE_LINE = 4d; 27 const double STROKE_LINE = 4d;
28 const double STROKE_NODE = 1d; 28 const double STROKE_NODE = 1d;
29 const double DISTANCE_RATIO = 100; 29 const double DISTANCE_RATIO = 100;
30 30
31 const double UCNODE_SETLEFT = 17; 31 const double UCNODE_SETLEFT = 17;
32 const double UCNODE_SETTOP = 17; 32 const double UCNODE_SETTOP = 17;
33 const double UCNODE_WIDTH = 34; 33 const double UCNODE_WIDTH = 34;
34 const double UCNODE_HEIGHT = 34; 34 const double UCNODE_HEIGHT = 34;
35 35
36 private List<Rectangle> shapeList = new List<Rectangle>(); 36 private List<Rectangle> shapeList = new List<Rectangle>();
37 private TextBlock shapePosIndicator; 37 private TextBlock shapePosIndicator;
38 private TextBlock shapeSizeIndicator; 38 private TextBlock shapeSizeIndicator;
39 private int currentLine; 39 private int currentLine;
40 private ucStartEndButton _startPoint; 40 private ucStartEndButton _startPoint;
41 private ucNode _ucNodeFree; 41 private ucNode _ucNodeFree;
42 private ucStartEndButton _goalPoint; 42 private ucStartEndButton _goalPoint;
43 private ucDisplayCoordinate _displayAxiPosition; 43 private ucDisplayCoordinate _displayAxiPosition;
44 44
45 // Add variable for draw route 45 // Add variable for draw route
46 public Path pLine = new Path(); 46 public Path pLine = new Path();
47 public Path pRootLine = new Path(); 47 public Path pRootLine = new Path();
48 public Path pCurverLine = new Path(); 48 public Path pCurverLine = new Path();
49 public Path pRedNode = new Path(); 49 public Path pRedNode = new Path();
50 public Path pYellowNode = new Path(); 50 public Path pYellowNode = new Path();
51 public GeometryGroup gGrpLine = new GeometryGroup(); 51 public GeometryGroup gGrpLine = new GeometryGroup();
52 public GeometryGroup gGrpRootLine = new GeometryGroup(); 52 public GeometryGroup gGrpRootLine = new GeometryGroup();
53 public GeometryGroup gGrpCurverLine = new GeometryGroup(); 53 public GeometryGroup gGrpCurverLine = new GeometryGroup();
54 public GeometryGroup gGrpRedNode = new GeometryGroup(); 54 public GeometryGroup gGrpRedNode = new GeometryGroup();
55 public GeometryGroup gGrpYellowNode = new GeometryGroup(); 55 public GeometryGroup gGrpYellowNode = new GeometryGroup();
56 public int currentShape; 56 public int currentShape;
57 public static bool isStartDrawRoute = false; 57 public static bool isStartDrawRoute = false;
58 public static bool isGoalDrawRoute = false; 58 public static bool isGoalDrawRoute = false;
59 59
60 public struct NodeInfo 60 public struct NodeInfo
61 { 61 {
62 public double X; 62 public double X;
63 public double Y; 63 public double Y;
64 public String Mode1; 64 public String Mode1;
65 public String Mode2; 65 public String Mode2;
66 public String Mode3; 66 public String Mode3;
67 } 67 }
68 List<NodeInfo> NodeInfo_List = new List<NodeInfo>(); 68 List<NodeInfo> NodeInfo_List = new List<NodeInfo>();
69 69
70 // Add variable for Set Schedule 70 // Add variable for Set Schedule
71 public Path pScheduleNode = new Path(); 71 public Path pScheduleNode = new Path();
72 public Path pScheduleLine = new Path(); 72 public Path pScheduleLine = new Path();
73 public GeometryGroup gGrpScheduleNode = new GeometryGroup(); 73 public GeometryGroup gGrpScheduleNode = new GeometryGroup();
74 public GeometryGroup gGrpScheduleLine = new GeometryGroup(); 74 public GeometryGroup gGrpScheduleLine = new GeometryGroup();
75 75
76 public static bool EditNodeFlag = false; 76 public static bool EditNodeFlag = false;
77 public static bool DragDeltaFlag = false; 77 public static bool DragDeltaFlag = false;
78 78
79 //Add variable for Vehicle Item click 79 //Add variable for Vehicle Item click
80 public string VehicleItem = "FK_15"; 80 public string VehicleItem = "FK_15";
81 public VehicleModel VehicleModel = new VehicleModel(); 81 public VehicleModel VehicleModel = new VehicleModel();
82 public int VehicleIndex = 0; 82 public int VehicleIndex = 0;
83 public string ColorNode_Add = "Blue"; 83 public string ColorNode_Add = "Blue";
84 public string ColorNode_Insert = "Brown"; 84 public string ColorNode_Insert = "Brown";
85 85
86 //2017/03/04 NAM ADD START 86 //2017/03/04 NAM ADD START
87 public static bool isDrawingNode = false; 87 public static bool isDrawingNode = false;
88 public static bool isDragNode = false; 88 public static bool isDragNode = false;
89 public Path pNewLine = new Path(); 89 public Path pNewLine = new Path();
90 public GeometryGroup gGrpNewLine = new GeometryGroup(); 90 public GeometryGroup gGrpNewLine = new GeometryGroup();
91 91
92 public struct NewNodeInfo 92 public struct NewNodeInfo
93 { 93 {
94 public double X; 94 public double X;
95 public double Y; 95 public double Y;
96 public String Mode; 96 public String Mode;
97 } 97 }
98 List<NewNodeInfo> NewNodeInfo_List = new List<NewNodeInfo>(); 98 List<NewNodeInfo> NewNodeInfo_List = new List<NewNodeInfo>();
99 99
100 //List Node's Info 100 //List Node's Info
101 List<Node_tmp> Lst_Node_tmp = new List<Node_tmp>(); 101 List<Node_tmp> Lst_Node_tmp = new List<Node_tmp>();
102 102
103 103
104 104
105 105
106 List<TextBlock> NodeNo = new List<TextBlock>(); 106 List<TextBlock> NodeNo = new List<TextBlock>();
107 List<ucNode> ucNode_Lst = new List<ucNode>(); 107 List<ucNode> ucNode_Lst = new List<ucNode>();
108 public List<ucNode> ucScheduleNode_Lst = new List<ucNode>(); 108 public List<ucNode> ucScheduleNode_Lst = new List<ucNode>();
109 int stt = 1; 109 int stt = 1;
110 //2017/03/04 NAM ADD END 110 //2017/03/04 NAM ADD END
111 public struct ListIndexNodeInsert 111 public struct ListIndexNodeInsert
112 { 112 {
113 public double X; 113 public double X;
114 public double Y; 114 public double Y;
115 } 115 }
116 List<ListIndexNodeInsert> IndexNodeInsert_List = new List<ListIndexNodeInsert>(); 116 List<ListIndexNodeInsert> IndexNodeInsert_List = new List<ListIndexNodeInsert>();
117 117
118 118
119 public ScheduleCanvas scheduleCanvas = new ScheduleCanvas(); 119 public ScheduleCanvas scheduleCanvas = new ScheduleCanvas();
120 120
121 // Add variable for Set Auto Nodes 121 // Add variable for Set Auto Nodes
122 public Path pBlueNode = new Path(); 122 public Path pBlueNode = new Path();
123 private GeometryGroup gGrpBlueNode = new GeometryGroup(); 123 private GeometryGroup gGrpBlueNode = new GeometryGroup();
124 124
125 // Add variable for Set Free Nodes 125 // Add variable for Set Free Nodes
126 public Path pFreeNode = new Path(); 126 public Path pFreeNode = new Path();
127 //private GeometryGroup gGrpFreeNode = new GeometryGroup(); 127 //private GeometryGroup gGrpFreeNode = new GeometryGroup();
128 128
129 // The part of the rectangle the mouse is over. 129 // The part of the rectangle the mouse is over.
130 private enum HitType 130 private enum HitType
131 { 131 {
132 None, Body, UL, UR, LR, LL, L, R, T, B 132 None, Body, UL, UR, LR, LL, L, R, T, B
133 }; 133 };
134 public enum OperationState 134 public enum OperationState
135 { 135 {
136 None, DrawObstract, DrawRoute, DrawSetFreeNode, EditNode, NewDrawSetFreeNode 136 None, DrawObstract, DrawRoute, DrawSetFreeNode, EditNode, NewDrawSetFreeNode
137 }; 137 };
138 public enum MouseState 138 public enum MouseState
139 { 139 {
140 None, Draw, Drag, 140 None, Draw, Drag,
141 } 141 }
142 public OperationState Operation = OperationState.None; 142 public OperationState Operation = OperationState.None;
143 public MouseState mouseState = MouseState.None; 143 public MouseState mouseState = MouseState.None;
144 144
145 // The draw start point. 145 // The draw start point.
146 private Point StartDrawPoint; 146 private Point StartDrawPoint;
147 147
148 // The drag's last point. 148 // The drag's last point.
149 private Point LastPoint; 149 private Point LastPoint;
150 150
151 // The part of the rectangle under the mouse. 151 // The part of the rectangle under the mouse.
152 HitType MouseHitType = HitType.None; 152 HitType MouseHitType = HitType.None;
153 153
154 public void Init() 154 public void Init()
155 { 155 {
156 if (shapePosIndicator == null) 156 if (shapePosIndicator == null)
157 { 157 {
158 shapePosIndicator = new TextBlock() 158 shapePosIndicator = new TextBlock()
159 { 159 {
160 Foreground = Brushes.Black, 160 Foreground = Brushes.Black,
161 Background = Brushes.Transparent, 161 Background = Brushes.Transparent,
162 FontSize = 20, 162 FontSize = 20,
163 }; 163 };
164 } 164 }
165 if (shapeSizeIndicator == null) 165 if (shapeSizeIndicator == null)
166 { 166 {
167 shapeSizeIndicator = new TextBlock() 167 shapeSizeIndicator = new TextBlock()
168 { 168 {
169 Foreground = Brushes.Black, 169 Foreground = Brushes.Black,
170 Background = Brushes.Transparent, 170 Background = Brushes.Transparent,
171 FontSize = 20, 171 FontSize = 20,
172 }; 172 };
173 } 173 }
174 } 174 }
175 175
176 // Return a HitType value to indicate what is at the point. 176 // Return a HitType value to indicate what is at the point.
177 private HitType SetHitType(Point point) 177 private HitType SetHitType(Point point)
178 { 178 {
179 if (shapeList.Count == 0) 179 if (shapeList.Count == 0)
180 { 180 {
181 currentShape = 0; 181 currentShape = 0;
182 return HitType.None; 182 return HitType.None;
183 } 183 }
184 for (int i = 0; i < shapeList.Count; i++) 184 for (int i = 0; i < shapeList.Count; i++)
185 { 185 {
186 Rectangle rect = shapeList[i]; 186 Rectangle rect = shapeList[i];
187 double left = Canvas.GetLeft(rect); 187 double left = Canvas.GetLeft(rect);
188 double top = Canvas.GetTop(rect); 188 double top = Canvas.GetTop(rect);
189 double right = left + rect.Width; 189 double right = left + rect.Width;
190 double bottom = top + rect.Height; 190 double bottom = top + rect.Height;
191 if (point.X < left) continue; 191 if (point.X < left) continue;
192 if (point.X > right) continue; 192 if (point.X > right) continue;
193 if (point.Y < top) continue; 193 if (point.Y < top) continue;
194 if (point.Y > bottom) continue; 194 if (point.Y > bottom) continue;
195 currentShape = i; 195 currentShape = i;
196 196
197 const double GAP = 10; 197 const double GAP = 10;
198 if (point.X - left < GAP) 198 if (point.X - left < GAP)
199 { 199 {
200 // Left edge. 200 // Left edge.
201 if (point.Y - top < GAP) return HitType.UL; 201 if (point.Y - top < GAP) return HitType.UL;
202 if (bottom - point.Y < GAP) return HitType.LL; 202 if (bottom - point.Y < GAP) return HitType.LL;
203 return HitType.L; 203 return HitType.L;
204 } 204 }
205 if (right - point.X < GAP) 205 if (right - point.X < GAP)
206 { 206 {
207 // Right edge. 207 // Right edge.
208 if (point.Y - top < GAP) return HitType.UR; 208 if (point.Y - top < GAP) return HitType.UR;
209 if (bottom - point.Y < GAP) return HitType.LR; 209 if (bottom - point.Y < GAP) return HitType.LR;
210 return HitType.R; 210 return HitType.R;
211 } 211 }
212 if (point.Y - top < GAP) return HitType.T; 212 if (point.Y - top < GAP) return HitType.T;
213 if (bottom - point.Y < GAP) return HitType.B; 213 if (bottom - point.Y < GAP) return HitType.B;
214 return HitType.Body; 214 return HitType.Body;
215 } 215 }
216 currentShape = 0; 216 currentShape = 0;
217 return HitType.None; 217 return HitType.None;
218 } 218 }
219 219
220 // Set a mouse cursor appropriate for the current hit type. 220 // Set a mouse cursor appropriate for the current hit type.
221 private void SetMouseCursor() 221 private void SetMouseCursor()
222 { 222 {
223 // See what cursor we should display. 223 // See what cursor we should display.
224 Cursor desired_cursor = Cursors.Arrow; 224 Cursor desired_cursor = Cursors.Arrow;
225 switch (MouseHitType) 225 switch (MouseHitType)
226 { 226 {
227 case HitType.None: 227 case HitType.None:
228 desired_cursor = Cursors.Arrow; 228 desired_cursor = Cursors.Arrow;
229 break; 229 break;
230 case HitType.Body: 230 case HitType.Body:
231 desired_cursor = Cursors.ScrollAll; 231 desired_cursor = Cursors.ScrollAll;
232 break; 232 break;
233 case HitType.UL: 233 case HitType.UL:
234 case HitType.LR: 234 case HitType.LR:
235 desired_cursor = Cursors.SizeNWSE; 235 desired_cursor = Cursors.SizeNWSE;
236 break; 236 break;
237 case HitType.LL: 237 case HitType.LL:
238 case HitType.UR: 238 case HitType.UR:
239 desired_cursor = Cursors.SizeNESW; 239 desired_cursor = Cursors.SizeNESW;
240 break; 240 break;
241 case HitType.T: 241 case HitType.T:
242 case HitType.B: 242 case HitType.B:
243 desired_cursor = Cursors.SizeNS; 243 desired_cursor = Cursors.SizeNS;
244 break; 244 break;
245 case HitType.L: 245 case HitType.L:
246 case HitType.R: 246 case HitType.R:
247 desired_cursor = Cursors.SizeWE; 247 desired_cursor = Cursors.SizeWE;
248 break; 248 break;
249 } 249 }
250 250
251 // Display the desired cursor. 251 // Display the desired cursor.
252 if (Cursor != desired_cursor) Cursor = desired_cursor; 252 if (Cursor != desired_cursor) Cursor = desired_cursor;
253 } 253 }
254 254
255 // constance 255 // constance
256 int indicatorAligment = 2; 256 int indicatorAligment = 2;
257 257
258 /* 258 /*
259 private Point? dragStartPoint = null; 259 private Point? dragStartPoint = null;
260 260
261 */ 261 */
262 public IEnumerable<DesignerItem> SelectedItems 262 public IEnumerable<DesignerItem> SelectedItems
263 { 263 {
264 get 264 get
265 { 265 {
266 var selectedItems = from item in this.Children.OfType<DesignerItem>() 266 var selectedItems = from item in this.Children.OfType<DesignerItem>()
267 where item.IsSelected == true 267 where item.IsSelected == true
268 select item; 268 select item;
269 269
270 return selectedItems; 270 return selectedItems;
271 } 271 }
272 } 272 }
273 273
274 public void DeselectAll() 274 public void DeselectAll()
275 { 275 {
276 /* 276 /*
277 foreach (DesignerItem item in this.SelectedItems) 277 foreach (DesignerItem item in this.SelectedItems)
278 { 278 {
279 item.IsSelected = false; 279 item.IsSelected = false;
280 }*/ 280 }*/
281 } 281 }
282 282
283 protected override void OnMouseDown(MouseButtonEventArgs e) 283 protected override void OnMouseDown(MouseButtonEventArgs e)
284 { 284 {
285 base.OnMouseDown(e); 285 base.OnMouseDown(e);
286 286
287 MouseHitType = SetHitType(Mouse.GetPosition(this)); 287 MouseHitType = SetHitType(Mouse.GetPosition(this));
288 SetMouseCursor(); 288 SetMouseCursor();
289 289
290 if (Operation == OperationState.DrawRoute && isStartDrawRoute) 290 if (Operation == OperationState.DrawRoute && isStartDrawRoute)
291 { 291 {
292 if (isGoalDrawRoute) 292 if (isGoalDrawRoute)
293 { 293 {
294 return; 294 return;
295 } 295 }
296 296
297 // Check state draw 297 // Check state draw
298 if (MouseHitType == HitType.None) 298 if (MouseHitType == HitType.None)
299 { 299 {
300 if (gGrpLine.Children.Count == 1) 300 if (gGrpLine.Children.Count == 1)
301 { 301 {
302 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[0]; 302 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[0];
303 lineGeometry.EndPoint = LastPoint; 303 lineGeometry.EndPoint = LastPoint;
304 304
305 // Check end route 305 // Check end route
306 if (IsEndRoute(_goalPoint, lineGeometry)) 306 if (IsEndRoute(_goalPoint, lineGeometry))
307 { 307 {
308 isGoalDrawRoute = true; 308 isGoalDrawRoute = true;
309 ProcessEndRoute(); 309 ProcessEndRoute();
310 return; 310 return;
311 } 311 }
312 } 312 }
313 else if (IsCurverNode((LineGeometry)gGrpLine.Children[currentLine - 1] 313 else if (IsCurverNode((LineGeometry)gGrpLine.Children[currentLine - 1]
314 , (LineGeometry)gGrpLine.Children[currentLine])) 314 , (LineGeometry)gGrpLine.Children[currentLine]))
315 { 315 {
316 // Set end point to finish draw line 316 // Set end point to finish draw line
317 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[currentLine]; 317 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[currentLine];
318 lineGeometry.EndPoint = LastPoint; 318 lineGeometry.EndPoint = LastPoint;
319 319
320 // Add node to curver postion 320 // Add node to curver postion
321 AddNode(lineGeometry.StartPoint, gGrpRedNode); 321 AddNode(lineGeometry.StartPoint, gGrpRedNode);
322 322
323 // Check end route 323 // Check end route
324 if (IsEndRoute(_goalPoint, lineGeometry)) 324 if (IsEndRoute(_goalPoint, lineGeometry))
325 { 325 {
326 isGoalDrawRoute = true; 326 isGoalDrawRoute = true;
327 ProcessEndRoute(); 327 ProcessEndRoute();
328 return; 328 return;
329 } 329 }
330 } 330 }
331 else 331 else
332 { 332 {
333 // Remove current line 333 // Remove current line
334 gGrpLine.Children.RemoveAt(currentLine); 334 gGrpLine.Children.RemoveAt(currentLine);
335 335
336 // Set end point to finish draw line 336 // Set end point to finish draw line
337 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[currentLine - 1]; 337 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[currentLine - 1];
338 lineGeometry.EndPoint = LastPoint; 338 lineGeometry.EndPoint = LastPoint;
339 339
340 // Check end route 340 // Check end route
341 if (IsEndRoute(_goalPoint, lineGeometry)) 341 if (IsEndRoute(_goalPoint, lineGeometry))
342 { 342 {
343 isGoalDrawRoute = true; 343 isGoalDrawRoute = true;
344 ProcessEndRoute(); 344 ProcessEndRoute();
345 return; 345 return;
346 } 346 }
347 } 347 }
348 348
349 // Draw new line 349 // Draw new line
350 DrawLine(LastPoint, LastPoint, gGrpLine); 350 DrawLine(LastPoint, LastPoint, gGrpLine);
351 // Setting start point for new line 351 // Setting start point for new line
352 StartDrawPoint = LastPoint; 352 StartDrawPoint = LastPoint;
353 353
354 mouseState = MouseState.Draw; 354 mouseState = MouseState.Draw;
355 currentLine = gGrpLine.Children.Count - 1; 355 currentLine = gGrpLine.Children.Count - 1;
356 return; 356 return;
357 } 357 }
358 } 358 }
359 else if (Operation == OperationState.DrawSetFreeNode) 359 else if (Operation == OperationState.DrawSetFreeNode)
360 { 360 {
361 bool RightClick = false; 361 bool RightClick = false;
362 if (IsStopDrawRoute(e)) 362 if (IsStopDrawRoute(e))
363 RightClick = true; 363 RightClick = true;
364 364
365 StartDrawPoint = e.MouseDevice.GetPosition(this); 365 StartDrawPoint = e.MouseDevice.GetPosition(this);
366 366
367 SetFreeNodes(StartDrawPoint, RightClick); 367 SetFreeNodes(StartDrawPoint, RightClick);
368 } 368 }
369 369
370 else if (Operation == OperationState.EditNode) 370 else if (Operation == OperationState.EditNode)
371 { 371 {
372 Point node_edited = e.MouseDevice.GetPosition(this); 372 Point node_edited = e.MouseDevice.GetPosition(this);
373 373
374 // start Edit Node Infor 374 // start Edit Node Infor
375 EditNode(node_edited); 375 EditNode(node_edited);
376 376
377 } 377 }
378 else if (Operation == OperationState.DrawObstract) 378 else if (Operation == OperationState.DrawObstract)
379 { 379 {
380 if (MouseHitType == HitType.None) 380 if (MouseHitType == HitType.None)
381 { 381 {
382 Rectangle shape = new Rectangle(); 382 Rectangle shape = new Rectangle();
383 shape.Width = 1; 383 shape.Width = 1;
384 shape.Height = 1; 384 shape.Height = 1;
385 // Create a SolidColorBrush and use it to 385 // Create a SolidColorBrush and use it to
386 // paint the rectangle. 386 // paint the rectangle.
387 shape.Stroke = Brushes.Blue; 387 shape.Stroke = Brushes.Blue;
388 shape.StrokeThickness = 1; 388 shape.StrokeThickness = 1;
389 shape.Fill = new SolidColorBrush(Colors.LightCyan); 389 shape.Fill = new SolidColorBrush(Colors.LightCyan);
390 StartDrawPoint = e.MouseDevice.GetPosition(this); 390 StartDrawPoint = e.MouseDevice.GetPosition(this);
391 shape.SetValue(Canvas.LeftProperty, StartDrawPoint.X); 391 shape.SetValue(Canvas.LeftProperty, StartDrawPoint.X);
392 shape.SetValue(Canvas.TopProperty, StartDrawPoint.Y); 392 shape.SetValue(Canvas.TopProperty, StartDrawPoint.Y);
393 this.Children.Add(shape); 393 this.Children.Add(shape);
394 shapeList.Add(shape); 394 shapeList.Add(shape);
395 395
396 mouseState = MouseState.Draw; 396 mouseState = MouseState.Draw;
397 currentShape = shapeList.Count() - 1; 397 currentShape = shapeList.Count() - 1;
398 398
399 double shapeX = Canvas.GetLeft(shapeList[currentShape]); 399 double shapeX = Canvas.GetLeft(shapeList[currentShape]);
400 double shapeY = Canvas.GetTop(shapeList[currentShape]); 400 double shapeY = Canvas.GetTop(shapeList[currentShape]);
401 shapePosIndicator.Text = "(" + Math.Round(shapeX, 0) + "," + Math.Round(shapeY, 0) + ")"; 401 shapePosIndicator.Text = "(" + Math.Round(shapeX, 0) + "," + Math.Round(shapeY, 0) + ")";
402 shapePosIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment); 402 shapePosIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment);
403 shapePosIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment); 403 shapePosIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment);
404 404
405 double width = (int)shapeList[currentShape].Width; 405 double width = (int)shapeList[currentShape].Width;
406 double height = (int)shapeList[currentShape].Height; 406 double height = (int)shapeList[currentShape].Height;
407 shapeSizeIndicator.Text = "(" + Math.Round(width, 0) + "," + Math.Round(height, 0) + ")"; 407 shapeSizeIndicator.Text = "(" + Math.Round(width, 0) + "," + Math.Round(height, 0) + ")";
408 shapeSizeIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment + width); 408 shapeSizeIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment + width);
409 shapeSizeIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment + height); 409 shapeSizeIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment + height);
410 410
411 this.Children.Add(shapePosIndicator); 411 this.Children.Add(shapePosIndicator);
412 this.Children.Add(shapeSizeIndicator); 412 this.Children.Add(shapeSizeIndicator);
413 413
414 414
415 return; 415 return;
416 } 416 }
417 else 417 else
418 { 418 {
419 if (shapeList.Count() != 0) 419 if (shapeList.Count() != 0)
420 shapeList[currentShape].Fill = new SolidColorBrush(Colors.LightCyan); 420 shapeList[currentShape].Fill = new SolidColorBrush(Colors.LightCyan);
421 421
422 double shapeX = Canvas.GetLeft(shapeList[currentShape]); 422 double shapeX = Canvas.GetLeft(shapeList[currentShape]);
423 double shapeY = Canvas.GetTop(shapeList[currentShape]); 423 double shapeY = Canvas.GetTop(shapeList[currentShape]);
424 shapePosIndicator.Text = "(" + Math.Round(shapeX, 0) + "," + Math.Round(shapeY, 0) + ")"; 424 shapePosIndicator.Text = "(" + Math.Round(shapeX, 0) + "," + Math.Round(shapeY, 0) + ")";
425 shapePosIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment); 425 shapePosIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment);
426 shapePosIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment); 426 shapePosIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment);
427 427
428 double width = (int)shapeList[currentShape].Width; 428 double width = (int)shapeList[currentShape].Width;
429 double height = (int)shapeList[currentShape].Height; 429 double height = (int)shapeList[currentShape].Height;
430 shapeSizeIndicator.Text = "(" + Math.Round(width, 0) + "," + Math.Round(height, 0) + ")"; 430 shapeSizeIndicator.Text = "(" + Math.Round(width, 0) + "," + Math.Round(height, 0) + ")";
431 shapeSizeIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment + width); 431 shapeSizeIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment + width);
432 shapeSizeIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment + height); 432 shapeSizeIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment + height);
433 433
434 this.Children.Add(shapePosIndicator); 434 this.Children.Add(shapePosIndicator);
435 this.Children.Add(shapeSizeIndicator); 435 this.Children.Add(shapeSizeIndicator);
436 } 436 }
437 437
438 LastPoint = Mouse.GetPosition(this); 438 LastPoint = Mouse.GetPosition(this);
439 mouseState = MouseState.Drag; 439 mouseState = MouseState.Drag;
440 } 440 }
441 e.Handled = true; 441 e.Handled = true;
442 } 442 }
443 443
444 protected override void OnMouseMove(MouseEventArgs e) 444 protected override void OnMouseMove(MouseEventArgs e)
445 { 445 {
446 base.OnMouseMove(e); 446 base.OnMouseMove(e);
447 447
448 if (mouseState == MouseState.None) 448 if (mouseState == MouseState.None)
449 { 449 {
450 MouseHitType = SetHitType(Mouse.GetPosition(this)); 450 MouseHitType = SetHitType(Mouse.GetPosition(this));
451 SetMouseCursor(); 451 SetMouseCursor();
452 } 452 }
453 else if (Operation == OperationState.DrawRoute && isStartDrawRoute) 453 else if (Operation == OperationState.DrawRoute && isStartDrawRoute)
454 { 454 {
455 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[currentLine]; 455 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[currentLine];
456 456
457 // See how much the mouse has moved. 457 // See how much the mouse has moved.
458 Point point = Mouse.GetPosition(this); 458 Point point = Mouse.GetPosition(this);
459 double offset_x = point.X - StartDrawPoint.X; 459 double offset_x = point.X - StartDrawPoint.X;
460 double offset_y = point.Y - StartDrawPoint.Y; 460 double offset_y = point.Y - StartDrawPoint.Y;
461 461
462 // Get the line's current position. 462 // Get the line's current position.
463 double new_x = lineGeometry.StartPoint.X; 463 double new_x = lineGeometry.StartPoint.X;
464 double new_y = lineGeometry.StartPoint.Y; 464 double new_y = lineGeometry.StartPoint.Y;
465 465
466 if (offset_x != 0 || offset_y != 0) 466 if (offset_x != 0 || offset_y != 0)
467 { 467 {
468 if (Math.Abs(offset_x) >= Math.Abs(offset_y)) 468 if (Math.Abs(offset_x) >= Math.Abs(offset_y))
469 { 469 {
470 new_x = point.X; 470 new_x = point.X;
471 } 471 }
472 else 472 else
473 { 473 {
474 new_y = point.Y; 474 new_y = point.Y;
475 } 475 }
476 } 476 }
477 477
478 // Set end point of current line 478 // Set end point of current line
479 LastPoint = new Point(new_x, new_y); 479 LastPoint = new Point(new_x, new_y);
480 lineGeometry.EndPoint = LastPoint; 480 lineGeometry.EndPoint = LastPoint;
481 DisplayCoordinate(LastPoint); 481 DisplayCoordinate(LastPoint);
482 } 482 }
483 else if (Operation == OperationState.DrawObstract) 483 else if (Operation == OperationState.DrawObstract)
484 { 484 {
485 if (mouseState == MouseState.Drag) 485 if (mouseState == MouseState.Drag)
486 { 486 {
487 // See how much the mouse has moved. 487 // See how much the mouse has moved.
488 Point point = Mouse.GetPosition(this); 488 Point point = Mouse.GetPosition(this);
489 double offset_x = point.X - LastPoint.X; 489 double offset_x = point.X - LastPoint.X;
490 double offset_y = point.Y - LastPoint.Y; 490 double offset_y = point.Y - LastPoint.Y;
491 491
492 // Get the rectangle's current position. 492 // Get the rectangle's current position.
493 double new_x = Canvas.GetLeft(shapeList[currentShape]); 493 double new_x = Canvas.GetLeft(shapeList[currentShape]);
494 double new_y = Canvas.GetTop(shapeList[currentShape]); 494 double new_y = Canvas.GetTop(shapeList[currentShape]);
495 double new_width = shapeList[currentShape].Width; 495 double new_width = shapeList[currentShape].Width;
496 double new_height = shapeList[currentShape].Height; 496 double new_height = shapeList[currentShape].Height;
497 497
498 // Update the rectangle. 498 // Update the rectangle.
499 switch (MouseHitType) 499 switch (MouseHitType)
500 { 500 {
501 case HitType.Body: 501 case HitType.Body:
502 new_x += offset_x; 502 new_x += offset_x;
503 new_y += offset_y; 503 new_y += offset_y;
504 break; 504 break;
505 case HitType.UL: 505 case HitType.UL:
506 new_x += offset_x; 506 new_x += offset_x;
507 new_y += offset_y; 507 new_y += offset_y;
508 new_width -= offset_x; 508 new_width -= offset_x;
509 new_height -= offset_y; 509 new_height -= offset_y;
510 break; 510 break;
511 case HitType.UR: 511 case HitType.UR:
512 new_y += offset_y; 512 new_y += offset_y;
513 new_width += offset_x; 513 new_width += offset_x;
514 new_height -= offset_y; 514 new_height -= offset_y;
515 break; 515 break;
516 case HitType.LR: 516 case HitType.LR:
517 new_width += offset_x; 517 new_width += offset_x;
518 new_height += offset_y; 518 new_height += offset_y;
519 break; 519 break;
520 case HitType.LL: 520 case HitType.LL:
521 new_x += offset_x; 521 new_x += offset_x;
522 new_width -= offset_x; 522 new_width -= offset_x;
523 new_height += offset_y; 523 new_height += offset_y;
524 break; 524 break;
525 case HitType.L: 525 case HitType.L:
526 new_x += offset_x; 526 new_x += offset_x;
527 new_width -= offset_x; 527 new_width -= offset_x;
528 break; 528 break;
529 case HitType.R: 529 case HitType.R:
530 new_width += offset_x; 530 new_width += offset_x;
531 break; 531 break;
532 case HitType.B: 532 case HitType.B:
533 new_height += offset_y; 533 new_height += offset_y;
534 break; 534 break;
535 case HitType.T: 535 case HitType.T:
536 new_y += offset_y; 536 new_y += offset_y;
537 new_height -= offset_y; 537 new_height -= offset_y;
538 break; 538 break;
539 } 539 }
540 // Don't use negative width or height. 540 // Don't use negative width or height.
541 if ((new_width > 0) && (new_height > 0)) 541 if ((new_width > 0) && (new_height > 0))
542 { 542 {
543 // Update the rectangle. 543 // Update the rectangle.
544 Canvas.SetLeft(shapeList[currentShape], new_x); 544 Canvas.SetLeft(shapeList[currentShape], new_x);
545 Canvas.SetTop(shapeList[currentShape], new_y); 545 Canvas.SetTop(shapeList[currentShape], new_y);
546 shapeList[currentShape].Width = new_width; 546 shapeList[currentShape].Width = new_width;
547 shapeList[currentShape].Height = new_height; 547 shapeList[currentShape].Height = new_height;
548 548
549 // Save the mouse's new location. 549 // Save the mouse's new location.
550 LastPoint = point; 550 LastPoint = point;
551 551
552 } 552 }
553 } 553 }
554 else if (mouseState == MouseState.Draw) 554 else if (mouseState == MouseState.Draw)
555 { 555 {
556 556
557 // See how much the mouse has moved. 557 // See how much the mouse has moved.
558 Point point = Mouse.GetPosition(this); 558 Point point = Mouse.GetPosition(this);
559 559
560 560
561 double offset_x = point.X - StartDrawPoint.X; 561 double offset_x = point.X - StartDrawPoint.X;
562 double offset_y = point.Y - StartDrawPoint.Y; 562 double offset_y = point.Y - StartDrawPoint.Y;
563 563
564 // Get the rectangle's current position. 564 // Get the rectangle's current position.
565 double start_x = Canvas.GetLeft(shapeList[currentShape]); 565 double start_x = Canvas.GetLeft(shapeList[currentShape]);
566 double start_y = Canvas.GetTop(shapeList[currentShape]); 566 double start_y = Canvas.GetTop(shapeList[currentShape]);
567 double new_x = Canvas.GetLeft(shapeList[currentShape]); 567 double new_x = Canvas.GetLeft(shapeList[currentShape]);
568 double new_y = Canvas.GetTop(shapeList[currentShape]); 568 double new_y = Canvas.GetTop(shapeList[currentShape]);
569 double new_width = offset_x; 569 double new_width = offset_x;
570 double new_height = offset_y; 570 double new_height = offset_y;
571 if (offset_x < 0) 571 if (offset_x < 0)
572 { 572 {
573 new_x = point.X; 573 new_x = point.X;
574 new_width = -offset_x; 574 new_width = -offset_x;
575 } 575 }
576 if (offset_y < 0) 576 if (offset_y < 0)
577 { 577 {
578 new_y = point.Y; 578 new_y = point.Y;
579 new_height = -offset_y; 579 new_height = -offset_y;
580 } 580 }
581 Canvas.SetLeft(shapeList[currentShape], new_x); 581 Canvas.SetLeft(shapeList[currentShape], new_x);
582 Canvas.SetTop(shapeList[currentShape], new_y); 582 Canvas.SetTop(shapeList[currentShape], new_y);
583 shapeList[currentShape].Width = new_width; 583 shapeList[currentShape].Width = new_width;
584 shapeList[currentShape].Height = new_height; 584 shapeList[currentShape].Height = new_height;
585 585
586 } 586 }
587 587
588 double shapeX = Canvas.GetLeft(shapeList[currentShape]); 588 double shapeX = Canvas.GetLeft(shapeList[currentShape]);
589 double shapeY = Canvas.GetTop(shapeList[currentShape]); 589 double shapeY = Canvas.GetTop(shapeList[currentShape]);
590 shapePosIndicator.Text = "(" + Math.Round(shapeX, 0) + "," + Math.Round(shapeY, 0) + ")"; 590 shapePosIndicator.Text = "(" + Math.Round(shapeX, 0) + "," + Math.Round(shapeY, 0) + ")";
591 shapePosIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment); 591 shapePosIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment);
592 shapePosIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment); 592 shapePosIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment);
593 593
594 double width = (int)shapeList[currentShape].Width; 594 double width = (int)shapeList[currentShape].Width;
595 double height = (int)shapeList[currentShape].Height; 595 double height = (int)shapeList[currentShape].Height;
596 shapeSizeIndicator.Text = "(" + Math.Round(width, 0) + "," + Math.Round(height, 0) + ")"; 596 shapeSizeIndicator.Text = "(" + Math.Round(width, 0) + "," + Math.Round(height, 0) + ")";
597 shapeSizeIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment + width); 597 shapeSizeIndicator.SetValue(Canvas.LeftProperty, shapeX + indicatorAligment + width);
598 shapeSizeIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment + height); 598 shapeSizeIndicator.SetValue(Canvas.TopProperty, shapeY + indicatorAligment + height);
599 } 599 }
600 e.Handled = true; 600 e.Handled = true;
601 } 601 }
602 602
603 protected override void OnMouseUp(MouseButtonEventArgs e) 603 protected override void OnMouseUp(MouseButtonEventArgs e)
604 { 604 {
605 base.OnMouseUp(e); 605 base.OnMouseUp(e);
606 if (Operation == OperationState.DrawObstract) 606 if (Operation == OperationState.DrawObstract)
607 { 607 {
608 if (shapeList.Count() != 0) 608 if (shapeList.Count() != 0)
609 shapeList[currentShape].Fill = new SolidColorBrush(Colors.Blue); 609 shapeList[currentShape].Fill = new SolidColorBrush(Colors.Blue);
610 shapePosIndicator.Text = ""; 610 shapePosIndicator.Text = "";
611 shapeSizeIndicator.Text = ""; 611 shapeSizeIndicator.Text = "";
612 this.Children.Remove(shapePosIndicator); 612 this.Children.Remove(shapePosIndicator);
613 this.Children.Remove(shapeSizeIndicator); 613 this.Children.Remove(shapeSizeIndicator);
614 614
615 mouseState = MouseState.None; 615 mouseState = MouseState.None;
616 currentShape = 0; 616 currentShape = 0;
617 } 617 }
618 e.Handled = true; 618 e.Handled = true;
619 } 619 }
620 620
621 protected override void OnPreviewMouseUp(MouseButtonEventArgs e) 621 protected override void OnPreviewMouseUp(MouseButtonEventArgs e)
622 { 622 {
623 base.OnPreviewMouseUp(e); 623 base.OnPreviewMouseUp(e);
624 624
625 EllipseGeometry ellipseGeometry; 625 EllipseGeometry ellipseGeometry;
626 bool flag = false; 626 bool flag = false;
627 627
628 StartDrawPoint = e.MouseDevice.GetPosition(this); 628 StartDrawPoint = e.MouseDevice.GetPosition(this);
629 629
630 if (EditNodeFlag == true) 630 if (EditNodeFlag == true)
631 { 631 {
632 execEditNode(StartDrawPoint); 632 execEditNode(StartDrawPoint);
633 EditNodeFlag = false; 633 EditNodeFlag = false;
634 return; 634 return;
635 } 635 }
636 636
637 if (DragDeltaFlag == true) 637 if (DragDeltaFlag == true)
638 { 638 {
639 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 639 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
640 { 640 {
641 641
642 for (int j = 0; j < ucNode_Lst.Count; j++) 642 for (int j = 0; j < ucNode_Lst.Count; j++)
643 { 643 {
644 if (j == i) 644 if (j == i)
645 { 645 {
646 _ucNodeFree = ucNode_Lst[j]; 646 _ucNodeFree = ucNode_Lst[j];
647 flag = true; 647 flag = true;
648 } 648 }
649 } 649 }
650 if (flag) 650 if (flag)
651 { 651 {
652 if (gGrpNewLine.Children.Count > 0) 652 if (gGrpNewLine.Children.Count > 0)
653 { 653 {
654 for (int k = 0; k < gGrpNewLine.Children.Count; k++) 654 for (int k = 0; k < gGrpNewLine.Children.Count; k++)
655 { 655 {
656 LineGeometry lineGeometry = (LineGeometry)gGrpNewLine.Children[k]; 656 LineGeometry lineGeometry = (LineGeometry)gGrpNewLine.Children[k];
657 Point p1 = lineGeometry.StartPoint; 657 Point p1 = lineGeometry.StartPoint;
658 Point p2 = lineGeometry.EndPoint; 658 Point p2 = lineGeometry.EndPoint;
659 659
660 //bool pInL = PointInLine(StartDrawPoint, p1, p2, 25); 660 //bool pInL = PointInLine(StartDrawPoint, p1, p2, 25);
661 661
662 //if (pInL) 662 //if (pInL)
663 //{ 663 //{
664 664
665 // //this.Children.Remove(_ucNodeFree); 665 // //this.Children.Remove(_ucNodeFree);
666 // //this.Children.Add(_ucNodeFree); 666 // //this.Children.Add(_ucNodeFree);
667 // return; 667 // return;
668 //} 668 //}
669 } 669 }
670 } 670 }
671 671
672 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 672 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
673 673
674 ellipseGeometry.Center = new Point(StartDrawPoint.X, StartDrawPoint.Y); 674 ellipseGeometry.Center = new Point(StartDrawPoint.X, StartDrawPoint.Y);
675 675
676 double centerY = Canvas.GetTop(_ucNodeFree); 676 double centerY = Canvas.GetTop(_ucNodeFree);
677 double centerX = Canvas.GetLeft(_ucNodeFree); 677 double centerX = Canvas.GetLeft(_ucNodeFree);
678 678
679 mouseState = MouseState.Draw; 679 mouseState = MouseState.Draw;
680 680
681 681
682 StartDrawPoint = new Point(centerX + UCNODE_SETLEFT, centerY + UCNODE_SETTOP); 682 StartDrawPoint = new Point(centerX + UCNODE_SETLEFT, centerY + UCNODE_SETTOP);
683 ellipseGeometry.Center = new Point(centerX + UCNODE_SETLEFT, centerY + UCNODE_SETTOP); 683 ellipseGeometry.Center = new Point(centerX + UCNODE_SETLEFT, centerY + UCNODE_SETTOP);
684 684
685 this.Children.Remove(_ucNodeFree); 685 this.Children.Remove(_ucNodeFree);
686 this.Children.Add(_ucNodeFree); 686 this.Children.Add(_ucNodeFree);
687 } 687 }
688 } 688 }
689 689
690 ReDrawAllNode(); 690 ReDrawAllNode();
691 691
692 SetScheduleRoute(); 692 SetScheduleRoute();
693 DragDeltaFlag = false; 693 DragDeltaFlag = false;
694 } 694 }
695 695
696 696
697 697
698 return; 698 return;
699 } 699 }
700 700
701 /// <summary> 701 /// <summary>
702 /// On Preview Mouse Down 702 /// On Preview Mouse Down
703 /// </summary> 703 /// </summary>
704 /// <param name="e"></param> 704 /// <param name="e"></param>
705 protected override void OnPreviewMouseDown(MouseButtonEventArgs e) 705 protected override void OnPreviewMouseDown(MouseButtonEventArgs e)
706 { 706 {
707 base.OnPreviewMouseDown(e); 707 base.OnPreviewMouseDown(e);
708 if (Operation != OperationState.NewDrawSetFreeNode) 708 if (Operation != OperationState.NewDrawSetFreeNode)
709 { 709 {
710 return; 710 return;
711 } 711 }
712 712
713 Point currentPoint = e.MouseDevice.GetPosition(this); 713 Point currentPoint = e.MouseDevice.GetPosition(this);
714 714
715 if (isDrawingNode == false) 715 if (isDrawingNode == false)
716 { 716 {
717 717
718 isDrawingNode = true; 718 isDrawingNode = true;
719 //InitDrawRoute(); 719 //InitDrawRoute();
720 mouseState = MouseState.Draw; 720 mouseState = MouseState.Draw;
721 721
722 StartDrawPoint = e.MouseDevice.GetPosition(this); 722 StartDrawPoint = e.MouseDevice.GetPosition(this);
723 723
724 724
725 execCreateNode(StartDrawPoint); 725 execCreateNode(StartDrawPoint);
726 726
727 //backup DB 727 //backup DB
728 CreateVehicleNode(); 728 CreateVehicleNode();
729 729
730 return; 730 return;
731 } 731 }
732 else 732 else
733 { 733 {
734 734
735 bool RightClick = false; 735 bool RightClick = false;
736 bool LeftClick = false; 736 bool LeftClick = false;
737 737
738 738
739 if (IsMouseLeftClick(e)) 739 if (IsMouseLeftClick(e))
740 LeftClick = true; 740 LeftClick = true;
741 if (IsStopDrawRoute(e)) 741 if (IsStopDrawRoute(e))
742 RightClick = true; 742 RightClick = true;
743 743
744 StartDrawPoint = e.MouseDevice.GetPosition(this); 744 StartDrawPoint = e.MouseDevice.GetPosition(this);
745 745
746 if (RightClick) 746 if (RightClick)
747 { 747 {
748 execDeleteNode(StartDrawPoint); 748 execDeleteNode(StartDrawPoint);
749 749
750 //backup DB 750 //backup DB
751 CreateVehicleNode(); 751 CreateVehicleNode();
752 } 752 }
753 else if (LeftClick) 753 else if (LeftClick)
754 { 754 {
755 //check click to exist node 755 //check click to exist node
756 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 756 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
757 { 757 {
758 EllipseGeometry ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 758 EllipseGeometry ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
759 Point node = ellipseGeometry.Center; 759 Point node = ellipseGeometry.Center;
760 bool isEditNode = CheckIsNode(StartDrawPoint, node, RADIUS_NODE); 760 bool isEditNode = CheckIsNode(StartDrawPoint, node, RADIUS_NODE);
761 761
762 if (isEditNode) 762 if (isEditNode)
763 { 763 {
764 return; 764 return;
765 } 765 }
766 } 766 }
767 767
768 execCreateNode(StartDrawPoint); 768 execCreateNode(StartDrawPoint);
769 769
770 //backup DB 770 //backup DB
771 CreateVehicleNode(); 771 CreateVehicleNode();
772 } 772 }
773 773
774 } 774 }
775 } 775 }
776 776
777 #region Functions for draw route 777 #region Functions for draw route
778 778
779 /// <summary> 779 /// <summary>
780 /// Check start or end draw route 780 /// Check start or end draw route
781 /// </summary> 781 /// </summary>
782 /// <param name="_ucStartEndButton">Button start</param> 782 /// <param name="_ucStartEndButton">Button start</param>
783 /// <param name="currentPoint">Position for check</param> 783 /// <param name="currentPoint">Position for check</param>
784 /// <returns>true: start, false: not start</returns> 784 /// <returns>true: start, false: not start</returns>
785 private bool IsStartEndRoute(ucStartEndButton _ucStartEndButton, Point currentPoint) 785 private bool IsStartEndRoute(ucStartEndButton _ucStartEndButton, Point currentPoint)
786 { 786 {
787 if (_ucStartEndButton == null) 787 if (_ucStartEndButton == null)
788 { 788 {
789 return false; 789 return false;
790 } 790 }
791 791
792 double centerX = Canvas.GetLeft(_ucStartEndButton); 792 double centerX = Canvas.GetLeft(_ucStartEndButton);
793 double centerY = Canvas.GetTop(_ucStartEndButton); 793 double centerY = Canvas.GetTop(_ucStartEndButton);
794 794
795 if (currentPoint.X < centerX + 50 && currentPoint.X > centerX 795 if (currentPoint.X < centerX + 50 && currentPoint.X > centerX
796 && currentPoint.Y < centerY + 50 && currentPoint.Y > centerY) 796 && currentPoint.Y < centerY + 50 && currentPoint.Y > centerY)
797 { 797 {
798 return true; 798 return true;
799 } 799 }
800 return false; 800 return false;
801 } 801 }
802 802
803 /// <summary> 803 /// <summary>
804 /// Process when end draw route 804 /// Process when end draw route
805 /// </summary> 805 /// </summary>
806 private void ProcessEndRoute() 806 private void ProcessEndRoute()
807 { 807 {
808 Operation = OperationState.None; 808 Operation = OperationState.None;
809 AutoEditLine(); 809 AutoEditLine();
810 this.Children.Remove(_displayAxiPosition); 810 this.Children.Remove(_displayAxiPosition);
811 this.Children.Remove(_goalPoint); 811 this.Children.Remove(_goalPoint);
812 this.Children.Add(_goalPoint); 812 this.Children.Add(_goalPoint);
813 } 813 }
814 814
815 /// <summary> 815 /// <summary>
816 /// Check end draw route 816 /// Check end draw route
817 /// </summary> 817 /// </summary>
818 /// <param name="_ucStartEndButton">Button end</param> 818 /// <param name="_ucStartEndButton">Button end</param>
819 /// <param name="currentPoint">Position for check</param> 819 /// <param name="currentPoint">Position for check</param>
820 /// <returns>true: end, false: not end</returns> 820 /// <returns>true: end, false: not end</returns>
821 private bool IsEndRoute(ucStartEndButton _ucStartEndButton, LineGeometry lineGeometry) 821 private bool IsEndRoute(ucStartEndButton _ucStartEndButton, LineGeometry lineGeometry)
822 { 822 {
823 if (_ucStartEndButton == null) 823 if (_ucStartEndButton == null)
824 { 824 {
825 return false; 825 return false;
826 } 826 }
827 827
828 double centerX = Canvas.GetLeft(_ucStartEndButton); 828 double centerX = Canvas.GetLeft(_ucStartEndButton);
829 double centerY = Canvas.GetTop(_ucStartEndButton); 829 double centerY = Canvas.GetTop(_ucStartEndButton);
830 Point startPoint = lineGeometry.StartPoint; 830 Point startPoint = lineGeometry.StartPoint;
831 Point endPoint = lineGeometry.EndPoint; 831 Point endPoint = lineGeometry.EndPoint;
832 832
833 if (IsVerticalLine(lineGeometry)) 833 if (IsVerticalLine(lineGeometry))
834 { 834 {
835 if (endPoint.X < centerX || endPoint.X > centerX + 50) 835 if (endPoint.X < centerX || endPoint.X > centerX + 50)
836 return false; 836 return false;
837 837
838 if (startPoint.Y > centerY + 50 && endPoint.Y > centerY + 50) 838 if (startPoint.Y > centerY + 50 && endPoint.Y > centerY + 50)
839 return false; 839 return false;
840 840
841 if (startPoint.Y < centerY && endPoint.Y < centerY) 841 if (startPoint.Y < centerY && endPoint.Y < centerY)
842 return false; 842 return false;
843 } 843 }
844 else 844 else
845 { 845 {
846 if (endPoint.Y < centerY || endPoint.Y > centerY + 50) 846 if (endPoint.Y < centerY || endPoint.Y > centerY + 50)
847 return false; 847 return false;
848 848
849 if (startPoint.X > centerX + 50 && endPoint.X > centerX + 50) 849 if (startPoint.X > centerX + 50 && endPoint.X > centerX + 50)
850 return false; 850 return false;
851 851
852 if (startPoint.X < centerX && endPoint.X < centerX) 852 if (startPoint.X < centerX && endPoint.X < centerX)
853 return false; 853 return false;
854 } 854 }
855 855
856 return true; 856 return true;
857 } 857 }
858 858
859 /// <summary> 859 /// <summary>
860 /// Make root 860 /// Make root
861 /// </summary> 861 /// </summary>
862 public void MakeRoot() 862 public void MakeRoot()
863 { 863 {
864 // If still not route 864 // If still not route
865 if (gGrpLine.Children.Count == 0) 865 if (gGrpLine.Children.Count == 0)
866 return; 866 return;
867 867
868 pLine.Stroke = new SolidColorBrush(Colors.Red); 868 pLine.Stroke = new SolidColorBrush(Colors.Red);
869 pLine.StrokeThickness = STROKE_ROOT_LINE; 869 pLine.StrokeThickness = STROKE_ROOT_LINE;
870 870
871 } 871 }
872 872
873 /// <summary> 873 /// <summary>
874 /// Auto edit leght of line 874 /// Auto edit leght of line
875 /// </summary> 875 /// </summary>
876 private void AutoEditLine() 876 private void AutoEditLine()
877 { 877 {
878 double temp; 878 double temp;
879 int index = gGrpLine.Children.Count - 1; 879 int index = gGrpLine.Children.Count - 1;
880 double centerY = Canvas.GetTop(_goalPoint) + 25; 880 double centerY = Canvas.GetTop(_goalPoint) + 25;
881 double centerX = Canvas.GetLeft(_goalPoint) + 25; 881 double centerX = Canvas.GetLeft(_goalPoint) + 25;
882 LineGeometry lastLine = (LineGeometry)gGrpLine.Children[index]; 882 LineGeometry lastLine = (LineGeometry)gGrpLine.Children[index];
883 LineGeometry beforeLastLine = (LineGeometry)gGrpLine.Children[index]; 883 LineGeometry beforeLastLine = (LineGeometry)gGrpLine.Children[index];
884 884
885 if (gGrpLine.Children.Count > 1) 885 if (gGrpLine.Children.Count > 1)
886 { 886 {
887 beforeLastLine = (LineGeometry)gGrpLine.Children[index - 1]; 887 beforeLastLine = (LineGeometry)gGrpLine.Children[index - 1];
888 888
889 if (!IsCurverNode(beforeLastLine, lastLine)) 889 if (!IsCurverNode(beforeLastLine, lastLine))
890 { 890 {
891 beforeLastLine.EndPoint = lastLine.EndPoint; 891 beforeLastLine.EndPoint = lastLine.EndPoint;
892 gGrpLine.Children.RemoveAt(index); 892 gGrpLine.Children.RemoveAt(index);
893 index = index - 1; 893 index = index - 1;
894 lastLine = (LineGeometry)gGrpLine.Children[index]; 894 lastLine = (LineGeometry)gGrpLine.Children[index];
895 } 895 }
896 } 896 }
897 897
898 if (index == gGrpRedNode.Children.Count + 1) 898 if (index == gGrpRedNode.Children.Count + 1)
899 { 899 {
900 AddNode(lastLine.StartPoint, gGrpRedNode); 900 AddNode(lastLine.StartPoint, gGrpRedNode);
901 } 901 }
902 902
903 if (lastLine.EndPoint.X == centerX && lastLine.EndPoint.Y == centerY) 903 if (lastLine.EndPoint.X == centerX && lastLine.EndPoint.Y == centerY)
904 return; 904 return;
905 905
906 if (IsVerticalLine(lastLine)) 906 if (IsVerticalLine(lastLine))
907 { 907 {
908 temp = lastLine.StartPoint.Y; 908 temp = lastLine.StartPoint.Y;
909 lastLine.StartPoint = new Point(centerX, temp); 909 lastLine.StartPoint = new Point(centerX, temp);
910 lastLine.EndPoint = new Point(centerX, centerY); 910 lastLine.EndPoint = new Point(centerX, centerY);
911 911
912 if (gGrpLine.Children.Count > 1) 912 if (gGrpLine.Children.Count > 1)
913 { 913 {
914 beforeLastLine = (LineGeometry)gGrpLine.Children[index - 1]; 914 beforeLastLine = (LineGeometry)gGrpLine.Children[index - 1];
915 temp = beforeLastLine.EndPoint.Y; 915 temp = beforeLastLine.EndPoint.Y;
916 beforeLastLine.EndPoint = new Point(centerX, temp); 916 beforeLastLine.EndPoint = new Point(centerX, temp);
917 } 917 }
918 } 918 }
919 else 919 else
920 { 920 {
921 temp = lastLine.StartPoint.X; 921 temp = lastLine.StartPoint.X;
922 lastLine.StartPoint = new Point(temp, centerY); 922 lastLine.StartPoint = new Point(temp, centerY);
923 lastLine.EndPoint = new Point(centerX, centerY); 923 lastLine.EndPoint = new Point(centerX, centerY);
924 if (gGrpLine.Children.Count > 1) 924 if (gGrpLine.Children.Count > 1)
925 { 925 {
926 beforeLastLine = (LineGeometry)gGrpLine.Children[index - 1]; 926 beforeLastLine = (LineGeometry)gGrpLine.Children[index - 1];
927 temp = beforeLastLine.EndPoint.X; 927 temp = beforeLastLine.EndPoint.X;
928 beforeLastLine.EndPoint = new Point(temp, centerY); 928 beforeLastLine.EndPoint = new Point(temp, centerY);
929 } 929 }
930 } 930 }
931 931
932 // Draw curver line 932 // Draw curver line
933 if (IsCurverNode(beforeLastLine, lastLine)) 933 if (IsCurverNode(beforeLastLine, lastLine))
934 { 934 {
935 EllipseGeometry ellipseGeometry = (EllipseGeometry)gGrpRedNode.Children[gGrpRedNode.Children.Count - 1]; 935 EllipseGeometry ellipseGeometry = (EllipseGeometry)gGrpRedNode.Children[gGrpRedNode.Children.Count - 1];
936 ellipseGeometry.Center = lastLine.StartPoint; 936 ellipseGeometry.Center = lastLine.StartPoint;
937 } 937 }
938 } 938 }
939 939
940 /// <summary> 940 /// <summary>
941 /// Check draw curver node 941 /// Check draw curver node
942 /// </summary> 942 /// </summary>
943 /// <param name="oldLine">Old line</param> 943 /// <param name="oldLine">Old line</param>
944 /// <param name="newLine">New line</param> 944 /// <param name="newLine">New line</param>
945 /// <returns>true:is curver, fasle: not curver</returns> 945 /// <returns>true:is curver, fasle: not curver</returns>
946 private bool IsCurverNode(LineGeometry oldLine, LineGeometry newLine) 946 private bool IsCurverNode(LineGeometry oldLine, LineGeometry newLine)
947 { 947 {
948 if (oldLine.StartPoint.Y == oldLine.EndPoint.Y && oldLine.StartPoint.Y == newLine.EndPoint.Y) 948 if (oldLine.StartPoint.Y == oldLine.EndPoint.Y && oldLine.StartPoint.Y == newLine.EndPoint.Y)
949 { 949 {
950 return false; 950 return false;
951 } 951 }
952 952
953 if (oldLine.StartPoint.X == oldLine.EndPoint.X && oldLine.StartPoint.X == newLine.EndPoint.X) 953 if (oldLine.StartPoint.X == oldLine.EndPoint.X && oldLine.StartPoint.X == newLine.EndPoint.X)
954 { 954 {
955 return false; 955 return false;
956 } 956 }
957 957
958 return true; 958 return true;
959 } 959 }
960 960
961 /// <summary> 961 /// <summary>
962 /// Check timming to stop draw route 962 /// Check timming to stop draw route
963 /// </summary> 963 /// </summary>
964 /// <param name="e"></param> 964 /// <param name="e"></param>
965 /// <returns>true:stop; false:continue</returns> 965 /// <returns>true:stop; false:continue</returns>
966 private bool IsStopDrawRoute(MouseEventArgs e) 966 private bool IsStopDrawRoute(MouseEventArgs e)
967 { 967 {
968 if (e.RightButton == MouseButtonState.Pressed) 968 if (e.RightButton == MouseButtonState.Pressed)
969 { 969 {
970 return true; 970 return true;
971 } 971 }
972 972
973 return false; 973 return false;
974 } 974 }
975 975
976 //2017/03/05 NAM ADD START 976 //2017/03/05 NAM ADD START
977 private bool IsMouseLeftClick(MouseEventArgs e) 977 private bool IsMouseLeftClick(MouseEventArgs e)
978 { 978 {
979 if (e.LeftButton == MouseButtonState.Pressed) 979 if (e.LeftButton == MouseButtonState.Pressed)
980 { 980 {
981 return true; 981 return true;
982 } 982 }
983 983
984 return false; 984 return false;
985 } 985 }
986 //2017/03/05 NAM ADD END 986 //2017/03/05 NAM ADD END
987 987
988 /// <summary> 988 /// <summary>
989 /// Draw curver line and yellow node 989 /// Draw curver line and yellow node
990 /// </summary> 990 /// </summary>
991 /// <param name="oldLine">Old line</param> 991 /// <param name="oldLine">Old line</param>
992 /// <param name="newLine">New line</param> 992 /// <param name="newLine">New line</param>
993 private void DrawCurver(LineGeometry oldLine, LineGeometry newLine) 993 private void DrawCurver(LineGeometry oldLine, LineGeometry newLine)
994 { 994 {
995 double radius = RADIUS_CURVER_LINE; 995 double radius = RADIUS_CURVER_LINE;
996 996
997 Point startPoint; 997 Point startPoint;
998 Point endPoint; 998 Point endPoint;
999 999
1000 // Get postion of yellow node on old line 1000 // Get postion of yellow node on old line
1001 if (IsVerticalLine(oldLine)) 1001 if (IsVerticalLine(oldLine))
1002 { 1002 {
1003 if (oldLine.StartPoint.Y > oldLine.EndPoint.Y) 1003 if (oldLine.StartPoint.Y > oldLine.EndPoint.Y)
1004 startPoint = new Point(oldLine.EndPoint.X, oldLine.EndPoint.Y + radius); 1004 startPoint = new Point(oldLine.EndPoint.X, oldLine.EndPoint.Y + radius);
1005 else 1005 else
1006 startPoint = new Point(oldLine.EndPoint.X, oldLine.EndPoint.Y - radius); 1006 startPoint = new Point(oldLine.EndPoint.X, oldLine.EndPoint.Y - radius);
1007 } 1007 }
1008 else 1008 else
1009 { 1009 {
1010 if (oldLine.StartPoint.X > oldLine.EndPoint.X) 1010 if (oldLine.StartPoint.X > oldLine.EndPoint.X)
1011 startPoint = new Point(oldLine.EndPoint.X + radius, oldLine.EndPoint.Y); 1011 startPoint = new Point(oldLine.EndPoint.X + radius, oldLine.EndPoint.Y);
1012 else 1012 else
1013 startPoint = new Point(oldLine.EndPoint.X - radius, oldLine.EndPoint.Y); 1013 startPoint = new Point(oldLine.EndPoint.X - radius, oldLine.EndPoint.Y);
1014 } 1014 }
1015 1015
1016 // Get postion of yellow node on new line 1016 // Get postion of yellow node on new line
1017 if (IsVerticalLine(newLine)) 1017 if (IsVerticalLine(newLine))
1018 { 1018 {
1019 if (newLine.StartPoint.Y > newLine.EndPoint.Y) 1019 if (newLine.StartPoint.Y > newLine.EndPoint.Y)
1020 endPoint = new Point(newLine.StartPoint.X, newLine.StartPoint.Y - radius); 1020 endPoint = new Point(newLine.StartPoint.X, newLine.StartPoint.Y - radius);
1021 else 1021 else
1022 endPoint = new Point(newLine.StartPoint.X, newLine.StartPoint.Y + radius); 1022 endPoint = new Point(newLine.StartPoint.X, newLine.StartPoint.Y + radius);
1023 } 1023 }
1024 else 1024 else
1025 { 1025 {
1026 if (newLine.StartPoint.X > newLine.EndPoint.X) 1026 if (newLine.StartPoint.X > newLine.EndPoint.X)
1027 endPoint = new Point(newLine.StartPoint.X - radius, newLine.StartPoint.Y); 1027 endPoint = new Point(newLine.StartPoint.X - radius, newLine.StartPoint.Y);
1028 else 1028 else
1029 endPoint = new Point(newLine.StartPoint.X + radius, newLine.StartPoint.Y); 1029 endPoint = new Point(newLine.StartPoint.X + radius, newLine.StartPoint.Y);
1030 } 1030 }
1031 1031
1032 // Add node to postion distance 1300mm 1032 // Add node to postion distance 1300mm
1033 if (GetDistance(oldLine.StartPoint, oldLine.EndPoint) > RADIUS_CURVER_LINE) 1033 if (GetDistance(oldLine.StartPoint, oldLine.EndPoint) > RADIUS_CURVER_LINE)
1034 { 1034 {
1035 AddNode(startPoint, gGrpYellowNode); 1035 AddNode(startPoint, gGrpYellowNode);
1036 } 1036 }
1037 1037
1038 if (GetDistance(newLine.StartPoint, newLine.EndPoint) > RADIUS_CURVER_LINE) 1038 if (GetDistance(newLine.StartPoint, newLine.EndPoint) > RADIUS_CURVER_LINE)
1039 { 1039 {
1040 AddNode(endPoint, gGrpYellowNode); 1040 AddNode(endPoint, gGrpYellowNode);
1041 } 1041 }
1042 } 1042 }
1043 1043
1044 /// <summary> 1044 /// <summary>
1045 /// Init data for draw route 1045 /// Init data for draw route
1046 /// </summary> 1046 /// </summary>
1047 public void InitDrawRoute() 1047 public void InitDrawRoute()
1048 { 1048 {
1049 //2017/03/04 NAM ADD START 1049 //2017/03/04 NAM ADD START
1050 pNewLine.Stroke = new SolidColorBrush(Colors.Red); 1050 pNewLine.Stroke = new SolidColorBrush(Colors.Red);
1051 pNewLine.StrokeThickness = STROKE_LINE; 1051 pNewLine.StrokeThickness = STROKE_LINE;
1052 pNewLine.Data = gGrpNewLine; 1052 pNewLine.Data = gGrpNewLine;
1053 //2017/03/04 NAM ADD END 1053 //2017/03/04 NAM ADD END
1054 1054
1055 pScheduleLine.Stroke = new SolidColorBrush(Colors.Red); 1055 pScheduleLine.Stroke = new SolidColorBrush(Colors.Red);
1056 pScheduleLine.StrokeThickness = STROKE_LINE; 1056 pScheduleLine.StrokeThickness = STROKE_LINE;
1057 pScheduleLine.Data = gGrpScheduleLine; 1057 pScheduleLine.Data = gGrpScheduleLine;
1058 1058
1059 // Setting for path line 1059 // Setting for path line
1060 pLine.Stroke = new SolidColorBrush(Colors.Blue); 1060 pLine.Stroke = new SolidColorBrush(Colors.Blue);
1061 pLine.StrokeThickness = STROKE_LINE; 1061 pLine.StrokeThickness = STROKE_LINE;
1062 pLine.Data = gGrpLine; 1062 pLine.Data = gGrpLine;
1063 1063
1064 // Setting for path of curver line 1064 // Setting for path of curver line
1065 pCurverLine.Stroke = Brushes.Red; 1065 pCurverLine.Stroke = Brushes.Red;
1066 pCurverLine.StrokeThickness = STROKE_LINE; 1066 pCurverLine.StrokeThickness = STROKE_LINE;
1067 pCurverLine.Data = gGrpCurverLine; 1067 pCurverLine.Data = gGrpCurverLine;
1068 1068
1069 // Setting for path of red node 1069 // Setting for path of red node
1070 pRedNode.Stroke = new SolidColorBrush(Colors.Blue); 1070 pRedNode.Stroke = new SolidColorBrush(Colors.Blue);
1071 pRedNode.Fill = new SolidColorBrush(Colors.Red); 1071 pRedNode.Fill = new SolidColorBrush(Colors.Red);
1072 pRedNode.StrokeThickness = STROKE_NODE; 1072 pRedNode.StrokeThickness = STROKE_NODE;
1073 pRedNode.Data = gGrpRedNode; 1073 pRedNode.Data = gGrpRedNode;
1074 1074
1075 // Setting for path of yellow node 1075 // Setting for path of yellow node
1076 pYellowNode.Stroke = new SolidColorBrush(Colors.Blue); 1076 pYellowNode.Stroke = new SolidColorBrush(Colors.Blue);
1077 pYellowNode.Fill = new SolidColorBrush(Colors.Yellow); 1077 pYellowNode.Fill = new SolidColorBrush(Colors.Yellow);
1078 pYellowNode.StrokeThickness = STROKE_NODE; 1078 pYellowNode.StrokeThickness = STROKE_NODE;
1079 pYellowNode.Data = gGrpYellowNode; 1079 pYellowNode.Data = gGrpYellowNode;
1080 1080
1081 // Setting for path of Blue node 1081 // Setting for path of Blue node
1082 pBlueNode.Stroke = new SolidColorBrush(Colors.Blue); 1082 pBlueNode.Stroke = new SolidColorBrush(Colors.Blue);
1083 pBlueNode.Fill = new SolidColorBrush(Colors.LightBlue); 1083 pBlueNode.Fill = new SolidColorBrush(Colors.LightBlue);
1084 pBlueNode.StrokeThickness = STROKE_NODE; 1084 pBlueNode.StrokeThickness = STROKE_NODE;
1085 pBlueNode.Data = gGrpBlueNode; 1085 pBlueNode.Data = gGrpBlueNode;
1086 1086
1087 // Add paths to canvas 1087 // Add paths to canvas
1088 this.Children.Add(pLine); 1088 this.Children.Add(pLine);
1089 this.Children.Add(pCurverLine); 1089 this.Children.Add(pCurverLine);
1090 this.Children.Add(pRedNode); 1090 this.Children.Add(pRedNode);
1091 this.Children.Add(pYellowNode); 1091 this.Children.Add(pYellowNode);
1092 1092
1093 //this.Children.Add(pNewLine); 1093 //this.Children.Add(pNewLine);
1094 scheduleCanvas.Children.Add(pScheduleLine); 1094 //scheduleCanvas.Children.Add(pScheduleLine);
1095 } 1095 }
1096 1096
1097 /// <summary> 1097 /// <summary>
1098 /// Clear all route 1098 /// Clear all route
1099 /// </summary> 1099 /// </summary>
1100 public void ClearRoute() 1100 public void ClearRoute()
1101 { 1101 {
1102 isStartDrawRoute = false; 1102 isStartDrawRoute = false;
1103 isGoalDrawRoute = false; 1103 isGoalDrawRoute = false;
1104 1104
1105 gGrpLine.Children.Clear(); 1105 gGrpLine.Children.Clear();
1106 gGrpRootLine.Children.Clear(); 1106 gGrpRootLine.Children.Clear();
1107 gGrpCurverLine.Children.Clear(); 1107 gGrpCurverLine.Children.Clear();
1108 gGrpRedNode.Children.Clear(); 1108 gGrpRedNode.Children.Clear();
1109 gGrpYellowNode.Children.Clear(); 1109 gGrpYellowNode.Children.Clear();
1110 gGrpBlueNode.Children.Clear(); 1110 gGrpBlueNode.Children.Clear();
1111 1111
1112 this.Children.Remove(pLine); 1112 this.Children.Remove(pLine);
1113 this.Children.Remove(pRootLine); 1113 this.Children.Remove(pRootLine);
1114 this.Children.Remove(pCurverLine); 1114 this.Children.Remove(pCurverLine);
1115 this.Children.Remove(pRedNode); 1115 this.Children.Remove(pRedNode);
1116 this.Children.Remove(pYellowNode); 1116 this.Children.Remove(pYellowNode);
1117 this.Children.Remove(pBlueNode); 1117 this.Children.Remove(pBlueNode);
1118 } 1118 }
1119 1119
1120 /// <summary> 1120 /// <summary>
1121 /// Draw line for route 1121 /// Draw line for route
1122 /// </summary> 1122 /// </summary>
1123 /// <param name="startPoint">Start point</param> 1123 /// <param name="startPoint">Start point</param>
1124 /// <param name="endPoint">End point</param> 1124 /// <param name="endPoint">End point</param>
1125 /// <param name="geometryGroup">Geometry Group</param> 1125 /// <param name="geometryGroup">Geometry Group</param>
1126 private void DrawLine(Point startPoint, Point endPoint, GeometryGroup geometryGroup) 1126 private void DrawLine(Point startPoint, Point endPoint, GeometryGroup geometryGroup)
1127 { 1127 {
1128 LineGeometry lineGeometry = new LineGeometry(); 1128 LineGeometry lineGeometry = new LineGeometry();
1129 lineGeometry.StartPoint = startPoint; 1129 lineGeometry.StartPoint = startPoint;
1130 lineGeometry.EndPoint = endPoint; 1130 lineGeometry.EndPoint = endPoint;
1131 geometryGroup.Children.Add(lineGeometry); 1131 geometryGroup.Children.Add(lineGeometry);
1132 } 1132 }
1133 1133
1134 /// <summary> 1134 /// <summary>
1135 /// Draw curver line 1135 /// Draw curver line
1136 /// </summary> 1136 /// </summary>
1137 /// <param name="startPoint">Point start curver line</param> 1137 /// <param name="startPoint">Point start curver line</param>
1138 /// <param name="endPoint">Point end curver line</param> 1138 /// <param name="endPoint">Point end curver line</param>
1139 /// <param name="radius">Radius</param> 1139 /// <param name="radius">Radius</param>
1140 /// <param name="geometryGroup">Geometry Group</param> 1140 /// <param name="geometryGroup">Geometry Group</param>
1141 private void DrawCurverLine(Point startPoint, Point endPoint, SweepDirection sweepDirection, GeometryGroup geometryGroup) 1141 private void DrawCurverLine(Point startPoint, Point endPoint, SweepDirection sweepDirection, GeometryGroup geometryGroup)
1142 { 1142 {
1143 PathGeometry pathGeometry = new PathGeometry(); 1143 PathGeometry pathGeometry = new PathGeometry();
1144 PathFigure figure = new PathFigure(); 1144 PathFigure figure = new PathFigure();
1145 figure.StartPoint = startPoint; 1145 figure.StartPoint = startPoint;
1146 figure.Segments.Add(new ArcSegment(endPoint, new Size(RADIUS_CURVER_LINE, RADIUS_CURVER_LINE), 90, false, sweepDirection, true)); 1146 figure.Segments.Add(new ArcSegment(endPoint, new Size(RADIUS_CURVER_LINE, RADIUS_CURVER_LINE), 90, false, sweepDirection, true));
1147 pathGeometry.Figures.Add(figure); 1147 pathGeometry.Figures.Add(figure);
1148 geometryGroup.Children.Add(pathGeometry); 1148 geometryGroup.Children.Add(pathGeometry);
1149 } 1149 }
1150 1150
1151 /// <summary> 1151 /// <summary>
1152 /// Setting node 1152 /// Setting node
1153 /// </summary> 1153 /// </summary>
1154 /// <param name="centerPoit">Position of center node</param> 1154 /// <param name="centerPoit">Position of center node</param>
1155 /// <param name="geometryGroup">Geometry Group</param> 1155 /// <param name="geometryGroup">Geometry Group</param>
1156 private void AddNode(Point centerPoit, GeometryGroup geometryGroup) 1156 private void AddNode(Point centerPoit, GeometryGroup geometryGroup)
1157 { 1157 {
1158 double radius = RADIUS_NODE; 1158 double radius = RADIUS_NODE;
1159 geometryGroup.Children.Add(new EllipseGeometry(centerPoit, radius, radius)); 1159 geometryGroup.Children.Add(new EllipseGeometry(centerPoit, radius, radius));
1160 } 1160 }
1161 1161
1162 /// <summary> 1162 /// <summary>
1163 /// Check line is vertical or horizontal 1163 /// Check line is vertical or horizontal
1164 /// </summary> 1164 /// </summary>
1165 /// <param name="line"></param> 1165 /// <param name="line"></param>
1166 /// <returns>true:Vertical, false:Horizontal</returns> 1166 /// <returns>true:Vertical, false:Horizontal</returns>
1167 private bool IsVerticalLine(LineGeometry line) 1167 private bool IsVerticalLine(LineGeometry line)
1168 { 1168 {
1169 if (line.StartPoint.X == line.EndPoint.X) 1169 if (line.StartPoint.X == line.EndPoint.X)
1170 { 1170 {
1171 // Vertical line 1171 // Vertical line
1172 return true; 1172 return true;
1173 } 1173 }
1174 1174
1175 // Horizontal line 1175 // Horizontal line
1176 return false; 1176 return false;
1177 } 1177 }
1178 1178
1179 /// <summary> 1179 /// <summary>
1180 /// Get distance between two point 1180 /// Get distance between two point
1181 /// </summary> 1181 /// </summary>
1182 /// <param name="point1">Point 1</param> 1182 /// <param name="point1">Point 1</param>
1183 /// <param name="point2">Point 2</param> 1183 /// <param name="point2">Point 2</param>
1184 /// <returns>Distance between two point</returns> 1184 /// <returns>Distance between two point</returns>
1185 private double GetDistance(Point point1, Point point2) 1185 private double GetDistance(Point point1, Point point2)
1186 { 1186 {
1187 //pythagorean theorem c^2 = a^2 + b^2 1187 //pythagorean theorem c^2 = a^2 + b^2
1188 //thus c = square root(a^2 + b^2) 1188 //thus c = square root(a^2 + b^2)
1189 double a = (double)(point2.X - point1.X); 1189 double a = (double)(point2.X - point1.X);
1190 double b = (double)(point2.Y - point1.Y); 1190 double b = (double)(point2.Y - point1.Y);
1191 1191
1192 return Math.Sqrt(a * a + b * b); 1192 return Math.Sqrt(a * a + b * b);
1193 } 1193 }
1194 1194
1195 /// <summary> 1195 /// <summary>
1196 /// Check point is valid for draw 1196 /// Check point is valid for draw
1197 /// </summary> 1197 /// </summary>
1198 /// <param name="point">Poit need check</param> 1198 /// <param name="point">Poit need check</param>
1199 /// <returns>true:Valid, false:Invalid</returns> 1199 /// <returns>true:Valid, false:Invalid</returns>
1200 private bool IsValidPoint(Point point) 1200 private bool IsValidPoint(Point point)
1201 { 1201 {
1202 return true; 1202 return true;
1203 } 1203 }
1204 1204
1205 /// <summary> 1205 /// <summary>
1206 /// Display coordinate position 1206 /// Display coordinate position
1207 /// </summary> 1207 /// </summary>
1208 /// <param name="point">Position to display</param> 1208 /// <param name="point">Position to display</param>
1209 private void DisplayCoordinate(Point point) 1209 private void DisplayCoordinate(Point point)
1210 { 1210 {
1211 if (_displayAxiPosition == null) 1211 if (_displayAxiPosition == null)
1212 { 1212 {
1213 _displayAxiPosition = new ucDisplayCoordinate(); 1213 _displayAxiPosition = new ucDisplayCoordinate();
1214 this.Children.Add(_displayAxiPosition); 1214 this.Children.Add(_displayAxiPosition);
1215 } 1215 }
1216 _displayAxiPosition.Display(point); 1216 _displayAxiPosition.Display(point);
1217 } 1217 }
1218 1218
1219 #endregion 1219 #endregion
1220 1220
1221 #region Functions for Set Auto Nodes 1221 #region Functions for Set Auto Nodes
1222 1222
1223 /// <summary> 1223 /// <summary>
1224 /// SetAutoNodes 1224 /// SetAutoNodes
1225 /// </summary> 1225 /// </summary>
1226 public void SetAutoNodes() 1226 public void SetAutoNodes()
1227 { 1227 {
1228 double radiusStart = DISTANCE_START_NODES; 1228 double radiusStart = DISTANCE_START_NODES;
1229 double radiusEnd = DISTANCE_END_NODES; 1229 double radiusEnd = DISTANCE_END_NODES;
1230 double radiusCurver = RADIUS_CURVER_LINE; 1230 double radiusCurver = RADIUS_CURVER_LINE;
1231 1231
1232 Point startNode; 1232 Point startNode;
1233 Point endNode; 1233 Point endNode;
1234 1234
1235 gGrpBlueNode.Children.Clear(); 1235 gGrpBlueNode.Children.Clear();
1236 1236
1237 if (gGrpLine.Children.Count == 1) 1237 if (gGrpLine.Children.Count == 1)
1238 radiusCurver = radiusEnd; 1238 radiusCurver = radiusEnd;
1239 1239
1240 if (gGrpLine.Children.Count > 0) 1240 if (gGrpLine.Children.Count > 0)
1241 { 1241 {
1242 for (int i = 0; i < gGrpLine.Children.Count; i++) 1242 for (int i = 0; i < gGrpLine.Children.Count; i++)
1243 { 1243 {
1244 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[i]; 1244 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[i];
1245 if (i == 0) 1245 if (i == 0)
1246 { 1246 {
1247 startNode = lineGeometry.EndPoint; 1247 startNode = lineGeometry.EndPoint;
1248 endNode = lineGeometry.StartPoint; 1248 endNode = lineGeometry.StartPoint;
1249 DrawAutoNodes(startNode, endNode, radiusCurver, radiusStart); 1249 DrawAutoNodes(startNode, endNode, radiusCurver, radiusStart);
1250 } 1250 }
1251 else if (i == gGrpLine.Children.Count - 1 && i > 0) 1251 else if (i == gGrpLine.Children.Count - 1 && i > 0)
1252 { 1252 {
1253 startNode = lineGeometry.StartPoint; 1253 startNode = lineGeometry.StartPoint;
1254 endNode = lineGeometry.EndPoint; 1254 endNode = lineGeometry.EndPoint;
1255 DrawAutoNodes(startNode, endNode, radiusCurver, radiusEnd); 1255 DrawAutoNodes(startNode, endNode, radiusCurver, radiusEnd);
1256 } 1256 }
1257 else 1257 else
1258 { 1258 {
1259 startNode = lineGeometry.StartPoint; 1259 startNode = lineGeometry.StartPoint;
1260 endNode = lineGeometry.EndPoint; 1260 endNode = lineGeometry.EndPoint;
1261 DrawAutoNodes(startNode, endNode, radiusCurver, radiusCurver); 1261 DrawAutoNodes(startNode, endNode, radiusCurver, radiusCurver);
1262 } 1262 }
1263 } 1263 }
1264 } 1264 }
1265 } 1265 }
1266 1266
1267 1267
1268 /// <summary> 1268 /// <summary>
1269 /// DrawAutoNodes 1269 /// DrawAutoNodes
1270 /// </summary> 1270 /// </summary>
1271 /// <param name="startNode"></param> 1271 /// <param name="startNode"></param>
1272 /// <param name="endNode"></param> 1272 /// <param name="endNode"></param>
1273 /// <param name="radiusStart"></param> 1273 /// <param name="radiusStart"></param>
1274 /// <param name="radiusEnd"></param> 1274 /// <param name="radiusEnd"></param>
1275 private void DrawAutoNodes(Point startNode, Point endNode, double radiusStart, double radiusEnd) 1275 private void DrawAutoNodes(Point startNode, Point endNode, double radiusStart, double radiusEnd)
1276 { 1276 {
1277 double distance = DISTANCE_AUTO_NODES; 1277 double distance = DISTANCE_AUTO_NODES;
1278 double i; 1278 double i;
1279 1279
1280 Point node; 1280 Point node;
1281 1281
1282 // Get postion of blue node on line 1282 // Get postion of blue node on line
1283 if (startNode.X == endNode.X) 1283 if (startNode.X == endNode.X)
1284 { 1284 {
1285 if (startNode.Y > endNode.Y) 1285 if (startNode.Y > endNode.Y)
1286 { 1286 {
1287 i = startNode.Y - radiusStart; 1287 i = startNode.Y - radiusStart;
1288 if (i - distance > endNode.Y + radiusEnd) 1288 if (i - distance > endNode.Y + radiusEnd)
1289 { 1289 {
1290 do 1290 do
1291 { 1291 {
1292 i = i - distance; 1292 i = i - distance;
1293 node = new Point(endNode.X, i); 1293 node = new Point(endNode.X, i);
1294 // Add node to postion distance 1000mm 1294 // Add node to postion distance 1000mm
1295 AddNode(node, gGrpBlueNode); 1295 AddNode(node, gGrpBlueNode);
1296 1296
1297 } while (i > endNode.Y + radiusEnd + distance); 1297 } while (i > endNode.Y + radiusEnd + distance);
1298 } 1298 }
1299 } 1299 }
1300 else 1300 else
1301 { 1301 {
1302 i = startNode.Y + radiusStart; 1302 i = startNode.Y + radiusStart;
1303 if (i + distance < endNode.Y - radiusEnd) 1303 if (i + distance < endNode.Y - radiusEnd)
1304 { 1304 {
1305 do 1305 do
1306 { 1306 {
1307 i = i + distance; 1307 i = i + distance;
1308 node = new Point(endNode.X, i); 1308 node = new Point(endNode.X, i);
1309 // Add node to postion distance 1000mm 1309 // Add node to postion distance 1000mm
1310 AddNode(node, gGrpBlueNode); 1310 AddNode(node, gGrpBlueNode);
1311 } while (i < endNode.Y - radiusEnd - distance); 1311 } while (i < endNode.Y - radiusEnd - distance);
1312 } 1312 }
1313 } 1313 }
1314 } 1314 }
1315 else 1315 else
1316 { 1316 {
1317 if (startNode.X > endNode.X) 1317 if (startNode.X > endNode.X)
1318 { 1318 {
1319 i = startNode.X - radiusStart; 1319 i = startNode.X - radiusStart;
1320 if (i - distance > endNode.X + radiusEnd) 1320 if (i - distance > endNode.X + radiusEnd)
1321 { 1321 {
1322 do 1322 do
1323 { 1323 {
1324 i = i - distance; 1324 i = i - distance;
1325 node = new Point(i, endNode.Y); 1325 node = new Point(i, endNode.Y);
1326 // Add node to postion distance 1000mm 1326 // Add node to postion distance 1000mm
1327 AddNode(node, gGrpBlueNode); 1327 AddNode(node, gGrpBlueNode);
1328 } while (i > endNode.X + radiusEnd + distance); 1328 } while (i > endNode.X + radiusEnd + distance);
1329 } 1329 }
1330 } 1330 }
1331 else 1331 else
1332 { 1332 {
1333 i = startNode.X + radiusStart; 1333 i = startNode.X + radiusStart;
1334 if (i + distance < endNode.X - radiusEnd) 1334 if (i + distance < endNode.X - radiusEnd)
1335 { 1335 {
1336 do 1336 do
1337 { 1337 {
1338 i = i + distance; 1338 i = i + distance;
1339 node = new Point(i, endNode.Y); 1339 node = new Point(i, endNode.Y);
1340 // Add node to postion distance 1000mm 1340 // Add node to postion distance 1000mm
1341 AddNode(node, gGrpBlueNode); 1341 AddNode(node, gGrpBlueNode);
1342 } while (i < endNode.X - radiusEnd - distance); 1342 } while (i < endNode.X - radiusEnd - distance);
1343 } 1343 }
1344 } 1344 }
1345 } 1345 }
1346 1346
1347 } 1347 }
1348 1348
1349 #endregion 1349 #endregion
1350 1350
1351 #region Functions for Set Free Nodes 1351 #region Functions for Set Free Nodes
1352 /// <summary> 1352 /// <summary>
1353 /// Draw Auto Blue node 1353 /// Draw Auto Blue node
1354 /// </summary> 1354 /// </summary>
1355 1355
1356 public void SetFreeNodes(Point FreeNode, bool RightClick) 1356 public void SetFreeNodes(Point FreeNode, bool RightClick)
1357 { 1357 {
1358 double radiusStart = DISTANCE_START_NODES; 1358 double radiusStart = DISTANCE_START_NODES;
1359 double radiusEnd = DISTANCE_END_NODES; 1359 double radiusEnd = DISTANCE_END_NODES;
1360 double radiusNode = RADIUS_NODE; 1360 double radiusNode = RADIUS_NODE;
1361 double radiusCurver = RADIUS_CURVER_LINE + RADIUS_NODE; 1361 double radiusCurver = RADIUS_CURVER_LINE + RADIUS_NODE;
1362 1362
1363 EllipseGeometry ellipseGeometry; 1363 EllipseGeometry ellipseGeometry;
1364 Point node; 1364 Point node;
1365 bool deleteFlag = false; 1365 bool deleteFlag = false;
1366 1366
1367 1367
1368 if (RightClick) 1368 if (RightClick)
1369 { 1369 {
1370 if (gGrpBlueNode.Children.Count > 0) 1370 if (gGrpBlueNode.Children.Count > 0)
1371 { 1371 {
1372 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 1372 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
1373 { 1373 {
1374 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 1374 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
1375 node = ellipseGeometry.Center; 1375 node = ellipseGeometry.Center;
1376 if (FreeNode.X == node.X) 1376 if (FreeNode.X == node.X)
1377 { 1377 {
1378 if (CheckIsNode(FreeNode, node, radiusNode)) 1378 if (CheckIsNode(FreeNode, node, radiusNode))
1379 { 1379 {
1380 deleteFlag = true; 1380 deleteFlag = true;
1381 } 1381 }
1382 } 1382 }
1383 else 1383 else
1384 { 1384 {
1385 if (CheckIsNode(FreeNode, node, radiusNode)) 1385 if (CheckIsNode(FreeNode, node, radiusNode))
1386 { 1386 {
1387 deleteFlag = true; 1387 deleteFlag = true;
1388 } 1388 }
1389 } 1389 }
1390 if (deleteFlag) 1390 if (deleteFlag)
1391 { 1391 {
1392 MessageBoxResult result = MessageBox.Show("Do You Delete This Node?", "Delete Node", MessageBoxButton.OKCancel); 1392 MessageBoxResult result = MessageBox.Show("Do You Delete This Node?", "Delete Node", MessageBoxButton.OKCancel);
1393 if (result == MessageBoxResult.OK) 1393 if (result == MessageBoxResult.OK)
1394 { 1394 {
1395 gGrpBlueNode.Children.RemoveAt(i); 1395 gGrpBlueNode.Children.RemoveAt(i);
1396 1396
1397 this.Children.Remove(NodeNo[i]); 1397 this.Children.Remove(NodeNo[i]);
1398 return; 1398 return;
1399 } 1399 }
1400 else 1400 else
1401 { 1401 {
1402 return; 1402 return;
1403 } 1403 }
1404 } 1404 }
1405 } 1405 }
1406 } 1406 }
1407 } 1407 }
1408 else 1408 else
1409 { 1409 {
1410 1410
1411 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 1411 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
1412 { 1412 {
1413 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 1413 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
1414 node = ellipseGeometry.Center; 1414 node = ellipseGeometry.Center;
1415 bool isEditNode = CheckIsNode(FreeNode, node, RADIUS_NODE); 1415 bool isEditNode = CheckIsNode(FreeNode, node, RADIUS_NODE);
1416 1416
1417 if (isEditNode) 1417 if (isEditNode)
1418 { 1418 {
1419 EditNode(node); 1419 EditNode(node);
1420 return; 1420 return;
1421 } 1421 }
1422 } 1422 }
1423 1423
1424 1424
1425 MessageBoxResult result = MessageBox.Show("Do You Want To Add This Node?", "Add Node", MessageBoxButton.OKCancel); 1425 MessageBoxResult result = MessageBox.Show("Do You Want To Add This Node?", "Add Node", MessageBoxButton.OKCancel);
1426 if (result == MessageBoxResult.OK) 1426 if (result == MessageBoxResult.OK)
1427 { 1427 {
1428 AddNode(FreeNode, gGrpBlueNode); 1428 AddNode(FreeNode, gGrpBlueNode);
1429 1429
1430 TextBlock textBlock = new TextBlock(); 1430 TextBlock textBlock = new TextBlock();
1431 textBlock.Text = stt.ToString(); 1431 textBlock.Text = stt.ToString();
1432 textBlock.FontSize = 17; 1432 textBlock.FontSize = 17;
1433 textBlock.Foreground = new SolidColorBrush(Colors.Red); 1433 textBlock.Foreground = new SolidColorBrush(Colors.Red);
1434 Canvas.SetLeft(textBlock, FreeNode.X - RADIUS_NODE / 2); 1434 Canvas.SetLeft(textBlock, FreeNode.X - RADIUS_NODE / 2);
1435 Canvas.SetTop(textBlock, FreeNode.Y - 1.5 * RADIUS_NODE); 1435 Canvas.SetTop(textBlock, FreeNode.Y - 1.5 * RADIUS_NODE);
1436 1436
1437 this.Children.Add(textBlock); 1437 this.Children.Add(textBlock);
1438 NodeNo.Add(textBlock); 1438 NodeNo.Add(textBlock);
1439 1439
1440 if (stt > 1) 1440 if (stt > 1)
1441 { 1441 {
1442 int tmp = gGrpBlueNode.Children.Count; 1442 int tmp = gGrpBlueNode.Children.Count;
1443 1443
1444 EllipseGeometry elip = (EllipseGeometry)gGrpBlueNode.Children[tmp - 2]; 1444 EllipseGeometry elip = (EllipseGeometry)gGrpBlueNode.Children[tmp - 2];
1445 Point node1 = elip.Center; 1445 Point node1 = elip.Center;
1446 elip = (EllipseGeometry)gGrpBlueNode.Children[tmp - 1]; 1446 elip = (EllipseGeometry)gGrpBlueNode.Children[tmp - 1];
1447 Point node2 = elip.Center; 1447 Point node2 = elip.Center;
1448 DrawLine(node1, node2, gGrpCurverLine); 1448 DrawLine(node1, node2, gGrpCurverLine);
1449 } 1449 }
1450 1450
1451 1451
1452 stt++; 1452 stt++;
1453 } 1453 }
1454 } 1454 }
1455 1455
1456 if (gGrpLine.Children.Count > 0) 1456 if (gGrpLine.Children.Count > 0)
1457 { 1457 {
1458 for (int i = 0; i < gGrpLine.Children.Count; i++) 1458 for (int i = 0; i < gGrpLine.Children.Count; i++)
1459 { 1459 {
1460 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[i]; 1460 LineGeometry lineGeometry = (LineGeometry)gGrpLine.Children[i];
1461 1461
1462 // Get postion of node on line 1462 // Get postion of node on line
1463 if (IsVerticalLine(lineGeometry)) 1463 if (IsVerticalLine(lineGeometry))
1464 { 1464 {
1465 if (FreeNode.X < lineGeometry.EndPoint.X + radiusNode && FreeNode.X > lineGeometry.EndPoint.X - radiusNode) 1465 if (FreeNode.X < lineGeometry.EndPoint.X + radiusNode && FreeNode.X > lineGeometry.EndPoint.X - radiusNode)
1466 { 1466 {
1467 FreeNode.X = lineGeometry.EndPoint.X; 1467 FreeNode.X = lineGeometry.EndPoint.X;
1468 1468
1469 if (i == 0) 1469 if (i == 0)
1470 { 1470 {
1471 if (CheckFreeNodes(lineGeometry, FreeNode, radiusStart, radiusCurver)) 1471 if (CheckFreeNodes(lineGeometry, FreeNode, radiusStart, radiusCurver))
1472 { 1472 {
1473 1473
1474 AddNode(FreeNode, gGrpBlueNode); 1474 AddNode(FreeNode, gGrpBlueNode);
1475 } 1475 }
1476 } 1476 }
1477 else if (i == gGrpLine.Children.Count - 1 && i > 0) 1477 else if (i == gGrpLine.Children.Count - 1 && i > 0)
1478 { 1478 {
1479 if (CheckFreeNodes(lineGeometry, FreeNode, radiusCurver, radiusEnd)) 1479 if (CheckFreeNodes(lineGeometry, FreeNode, radiusCurver, radiusEnd))
1480 { 1480 {
1481 1481
1482 AddNode(FreeNode, gGrpBlueNode); 1482 AddNode(FreeNode, gGrpBlueNode);
1483 } 1483 }
1484 } 1484 }
1485 else 1485 else
1486 { 1486 {
1487 if (CheckFreeNodes(lineGeometry, FreeNode, radiusCurver, radiusCurver)) 1487 if (CheckFreeNodes(lineGeometry, FreeNode, radiusCurver, radiusCurver))
1488 { 1488 {
1489 1489
1490 AddNode(FreeNode, gGrpBlueNode); 1490 AddNode(FreeNode, gGrpBlueNode);
1491 } 1491 }
1492 } 1492 }
1493 1493
1494 } 1494 }
1495 } 1495 }
1496 else 1496 else
1497 { 1497 {
1498 if (FreeNode.Y < lineGeometry.EndPoint.Y + radiusNode && FreeNode.Y > lineGeometry.EndPoint.Y - radiusNode) 1498 if (FreeNode.Y < lineGeometry.EndPoint.Y + radiusNode && FreeNode.Y > lineGeometry.EndPoint.Y - radiusNode)
1499 { 1499 {
1500 FreeNode.Y = lineGeometry.EndPoint.Y; 1500 FreeNode.Y = lineGeometry.EndPoint.Y;
1501 if (i == 0) 1501 if (i == 0)
1502 { 1502 {
1503 if (CheckFreeNodes(lineGeometry, FreeNode, radiusStart, radiusCurver)) 1503 if (CheckFreeNodes(lineGeometry, FreeNode, radiusStart, radiusCurver))
1504 { 1504 {
1505 1505
1506 AddNode(FreeNode, gGrpBlueNode); 1506 AddNode(FreeNode, gGrpBlueNode);
1507 } 1507 }
1508 } 1508 }
1509 else if (i == gGrpLine.Children.Count - 1 && i > 0) 1509 else if (i == gGrpLine.Children.Count - 1 && i > 0)
1510 { 1510 {
1511 if (CheckFreeNodes(lineGeometry, FreeNode, radiusCurver, radiusEnd)) 1511 if (CheckFreeNodes(lineGeometry, FreeNode, radiusCurver, radiusEnd))
1512 { 1512 {
1513 1513
1514 AddNode(FreeNode, gGrpBlueNode); 1514 AddNode(FreeNode, gGrpBlueNode);
1515 } 1515 }
1516 } 1516 }
1517 else 1517 else
1518 { 1518 {
1519 if (CheckFreeNodes(lineGeometry, FreeNode, radiusCurver, radiusCurver)) 1519 if (CheckFreeNodes(lineGeometry, FreeNode, radiusCurver, radiusCurver))
1520 { 1520 {
1521 1521
1522 AddNode(FreeNode, gGrpBlueNode); 1522 AddNode(FreeNode, gGrpBlueNode);
1523 } 1523 }
1524 } 1524 }
1525 1525
1526 } 1526 }
1527 } 1527 }
1528 } 1528 }
1529 } 1529 }
1530 } 1530 }
1531 1531
1532 1532
1533 public bool CheckFreeNodes(LineGeometry lineNode, Point Freenode, double radiusStart, double radiusEnd) 1533 public bool CheckFreeNodes(LineGeometry lineNode, Point Freenode, double radiusStart, double radiusEnd)
1534 { 1534 {
1535 1535
1536 double distanceFreeNode = DISTANCE_FREE_NODES; 1536 double distanceFreeNode = DISTANCE_FREE_NODES;
1537 double radiusNode = RADIUS_NODE; 1537 double radiusNode = RADIUS_NODE;
1538 EllipseGeometry ellipseGeometry; 1538 EllipseGeometry ellipseGeometry;
1539 Point node; 1539 Point node;
1540 1540
1541 if (IsVerticalLine(lineNode)) 1541 if (IsVerticalLine(lineNode))
1542 { 1542 {
1543 if (lineNode.StartPoint.Y < lineNode.EndPoint.Y) 1543 if (lineNode.StartPoint.Y < lineNode.EndPoint.Y)
1544 { 1544 {
1545 if (Freenode.Y < lineNode.StartPoint.Y + radiusStart || Freenode.Y > lineNode.EndPoint.Y - radiusEnd) 1545 if (Freenode.Y < lineNode.StartPoint.Y + radiusStart || Freenode.Y > lineNode.EndPoint.Y - radiusEnd)
1546 { 1546 {
1547 return false; 1547 return false;
1548 } 1548 }
1549 } 1549 }
1550 else 1550 else
1551 { 1551 {
1552 if (Freenode.Y > lineNode.StartPoint.Y - radiusStart || Freenode.Y < lineNode.EndPoint.Y + radiusEnd) 1552 if (Freenode.Y > lineNode.StartPoint.Y - radiusStart || Freenode.Y < lineNode.EndPoint.Y + radiusEnd)
1553 { 1553 {
1554 return false; 1554 return false;
1555 } 1555 }
1556 } 1556 }
1557 } 1557 }
1558 else 1558 else
1559 { 1559 {
1560 if (lineNode.StartPoint.X < lineNode.EndPoint.X) 1560 if (lineNode.StartPoint.X < lineNode.EndPoint.X)
1561 { 1561 {
1562 if (Freenode.X < lineNode.StartPoint.X + radiusStart || Freenode.X > lineNode.EndPoint.X - radiusEnd) 1562 if (Freenode.X < lineNode.StartPoint.X + radiusStart || Freenode.X > lineNode.EndPoint.X - radiusEnd)
1563 { 1563 {
1564 return false; 1564 return false;
1565 } 1565 }
1566 } 1566 }
1567 else 1567 else
1568 { 1568 {
1569 if (Freenode.X > lineNode.StartPoint.X - radiusStart || Freenode.X < lineNode.EndPoint.X + radiusEnd) 1569 if (Freenode.X > lineNode.StartPoint.X - radiusStart || Freenode.X < lineNode.EndPoint.X + radiusEnd)
1570 { 1570 {
1571 return false; 1571 return false;
1572 } 1572 }
1573 } 1573 }
1574 } 1574 }
1575 1575
1576 if (gGrpBlueNode.Children.Count > 0) 1576 if (gGrpBlueNode.Children.Count > 0)
1577 { 1577 {
1578 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 1578 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
1579 { 1579 {
1580 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 1580 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
1581 node = ellipseGeometry.Center; 1581 node = ellipseGeometry.Center;
1582 if (Freenode.X == node.X) 1582 if (Freenode.X == node.X)
1583 { 1583 {
1584 if (CheckIsNode(Freenode, node, radiusNode)) 1584 if (CheckIsNode(Freenode, node, radiusNode))
1585 { 1585 {
1586 return false; 1586 return false;
1587 } 1587 }
1588 else if (Freenode.Y < node.Y + distanceFreeNode && Freenode.Y > node.Y - distanceFreeNode) 1588 else if (Freenode.Y < node.Y + distanceFreeNode && Freenode.Y > node.Y - distanceFreeNode)
1589 { 1589 {
1590 return false; 1590 return false;
1591 } 1591 }
1592 } 1592 }
1593 else if (Freenode.Y == node.Y) 1593 else if (Freenode.Y == node.Y)
1594 { 1594 {
1595 if (CheckIsNode(Freenode, node, radiusNode)) 1595 if (CheckIsNode(Freenode, node, radiusNode))
1596 { 1596 {
1597 return false; 1597 return false;
1598 } 1598 }
1599 else if (Freenode.X < node.X + distanceFreeNode && Freenode.X > node.X - distanceFreeNode) 1599 else if (Freenode.X < node.X + distanceFreeNode && Freenode.X > node.X - distanceFreeNode)
1600 { 1600 {
1601 return false; 1601 return false;
1602 } 1602 }
1603 } 1603 }
1604 } 1604 }
1605 } 1605 }
1606 1606
1607 return true; 1607 return true;
1608 } 1608 }
1609 1609
1610 public bool CheckIsNode(Point FreeNode, Point Node, double radiusNode) 1610 public bool CheckIsNode(Point FreeNode, Point Node, double radiusNode)
1611 { 1611 {
1612 if (FreeNode.X < Node.X + radiusNode && FreeNode.X > Node.X - radiusNode && FreeNode.Y < Node.Y + radiusNode && FreeNode.Y > Node.Y - radiusNode) 1612 if (FreeNode.X < Node.X + radiusNode && FreeNode.X > Node.X - radiusNode && FreeNode.Y < Node.Y + radiusNode && FreeNode.Y > Node.Y - radiusNode)
1613 { 1613 {
1614 return true; 1614 return true;
1615 } 1615 }
1616 return false; 1616 return false;
1617 } 1617 }
1618 1618
1619 #endregion 1619 #endregion
1620 1620
1621 #region Edit Node 1621 #region Edit Node
1622 public void InitNodeInfo_List() 1622 public void InitNodeInfo_List()
1623 { 1623 {
1624 //Reset List 1624 //Reset List
1625 NodeInfo_List = new List<NodeInfo>(); 1625 NodeInfo_List = new List<NodeInfo>();
1626 1626
1627 if (gGrpBlueNode.Children.Count > 0) 1627 if (gGrpBlueNode.Children.Count > 0)
1628 { 1628 {
1629 // Get start point 1629 // Get start point
1630 LineGeometry lineGeometry = (LineGeometry)gGrpNewLine.Children[0]; 1630 LineGeometry lineGeometry = (LineGeometry)gGrpNewLine.Children[0];
1631 Point startPoint = lineGeometry.StartPoint; 1631 Point startPoint = lineGeometry.StartPoint;
1632 1632
1633 NodeInfo n1 = new NodeInfo(); 1633 NodeInfo n1 = new NodeInfo();
1634 n1.X = startPoint.X; 1634 n1.X = startPoint.X;
1635 n1.Y = startPoint.Y; 1635 n1.Y = startPoint.Y;
1636 n1.Mode1 = ""; 1636 n1.Mode1 = "";
1637 n1.Mode2 = ""; 1637 n1.Mode2 = "";
1638 n1.Mode3 = ""; 1638 n1.Mode3 = "";
1639 NodeInfo_List.Add(n1); 1639 NodeInfo_List.Add(n1);
1640 1640
1641 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 1641 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
1642 { 1642 {
1643 Point point; 1643 Point point;
1644 EllipseGeometry eGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 1644 EllipseGeometry eGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
1645 point = eGeometry.Center; 1645 point = eGeometry.Center;
1646 1646
1647 NodeInfo Ninfo = new NodeInfo(); 1647 NodeInfo Ninfo = new NodeInfo();
1648 Ninfo.X = point.X; 1648 Ninfo.X = point.X;
1649 Ninfo.Y = point.Y; 1649 Ninfo.Y = point.Y;
1650 1650
1651 Ninfo.Mode1 = ""; 1651 Ninfo.Mode1 = "";
1652 Ninfo.Mode2 = ""; 1652 Ninfo.Mode2 = "";
1653 Ninfo.Mode3 = ""; 1653 Ninfo.Mode3 = "";
1654 1654
1655 NodeInfo_List.Add(Ninfo); 1655 NodeInfo_List.Add(Ninfo);
1656 } 1656 }
1657 1657
1658 // Get end point 1658 // Get end point
1659 lineGeometry = (LineGeometry)gGrpLine.Children[gGrpLine.Children.Count - 1]; 1659 lineGeometry = (LineGeometry)gGrpLine.Children[gGrpLine.Children.Count - 1];
1660 Point endPoint = lineGeometry.EndPoint; 1660 Point endPoint = lineGeometry.EndPoint;
1661 1661
1662 NodeInfo n2 = new NodeInfo(); 1662 NodeInfo n2 = new NodeInfo();
1663 n2.X = startPoint.X; 1663 n2.X = startPoint.X;
1664 n2.Y = startPoint.Y; 1664 n2.Y = startPoint.Y;
1665 n2.Mode1 = ""; 1665 n2.Mode1 = "";
1666 n2.Mode2 = ""; 1666 n2.Mode2 = "";
1667 n2.Mode3 = ""; 1667 n2.Mode3 = "";
1668 NodeInfo_List.Add(n2); 1668 NodeInfo_List.Add(n2);
1669 1669
1670 //Resort NodeInfo_List From Start to Goal 1670 //Resort NodeInfo_List From Start to Goal
1671 LineGeometry firstLine = (LineGeometry)gGrpLine.Children[0]; 1671 LineGeometry firstLine = (LineGeometry)gGrpLine.Children[0];
1672 Point startNode = firstLine.StartPoint; 1672 Point startNode = firstLine.StartPoint;
1673 Point endNode = firstLine.EndPoint; 1673 Point endNode = firstLine.EndPoint;
1674 1674
1675 1675
1676 List<NodeInfo> tmpLst = new List<NodeInfo>(); 1676 List<NodeInfo> tmpLst = new List<NodeInfo>();
1677 1677
1678 // Create temp List 1678 // Create temp List
1679 if (startNode.X == endNode.X) 1679 if (startNode.X == endNode.X)
1680 { 1680 {
1681 for (int i = 1; i < NodeInfo_List.Count; i++) 1681 for (int i = 1; i < NodeInfo_List.Count; i++)
1682 { 1682 {
1683 if (NodeInfo_List[i].X != endNode.X) 1683 if (NodeInfo_List[i].X != endNode.X)
1684 { 1684 {
1685 break; 1685 break;
1686 } 1686 }
1687 else 1687 else
1688 { 1688 {
1689 tmpLst.Add(NodeInfo_List[i]); 1689 tmpLst.Add(NodeInfo_List[i]);
1690 } 1690 }
1691 } 1691 }
1692 } 1692 }
1693 1693
1694 if (startNode.Y == endNode.Y) 1694 if (startNode.Y == endNode.Y)
1695 { 1695 {
1696 for (int i = 1; i < NodeInfo_List.Count; i++) 1696 for (int i = 1; i < NodeInfo_List.Count; i++)
1697 { 1697 {
1698 if (NodeInfo_List[i].Y != endNode.Y) 1698 if (NodeInfo_List[i].Y != endNode.Y)
1699 { 1699 {
1700 break; 1700 break;
1701 } 1701 }
1702 else 1702 else
1703 { 1703 {
1704 tmpLst.Add(NodeInfo_List[i]); 1704 tmpLst.Add(NodeInfo_List[i]);
1705 } 1705 }
1706 } 1706 }
1707 } 1707 }
1708 1708
1709 // Sort NodeInfo_List 1709 // Sort NodeInfo_List
1710 for (int i = 0; i < tmpLst.Count; i++) 1710 for (int i = 0; i < tmpLst.Count; i++)
1711 { 1711 {
1712 NodeInfo_List[i + 1] = tmpLst[tmpLst.Count - 1 - i]; 1712 NodeInfo_List[i + 1] = tmpLst[tmpLst.Count - 1 - i];
1713 } 1713 }
1714 1714
1715 } 1715 }
1716 } 1716 }
1717 1717
1718 1718
1719 public void EditNode(Point node_edited) 1719 public void EditNode(Point node_edited)
1720 { 1720 {
1721 EllipseGeometry ellipseGeometry; 1721 EllipseGeometry ellipseGeometry;
1722 Point node; 1722 Point node;
1723 double radiusNode = RADIUS_NODE; 1723 double radiusNode = RADIUS_NODE;
1724 1724
1725 bool flag = false; 1725 bool flag = false;
1726 1726
1727 if (gGrpBlueNode.Children.Count > 0) 1727 if (gGrpBlueNode.Children.Count > 0)
1728 { 1728 {
1729 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 1729 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
1730 { 1730 {
1731 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 1731 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
1732 node = ellipseGeometry.Center; 1732 node = ellipseGeometry.Center;
1733 1733
1734 if (CheckIsNode(node_edited, node, radiusNode)) 1734 if (CheckIsNode(node_edited, node, radiusNode))
1735 { 1735 {
1736 flag = true; 1736 flag = true;
1737 } 1737 }
1738 1738
1739 if (flag) 1739 if (flag)
1740 { 1740 {
1741 node_edited.X = node.X; 1741 node_edited.X = node.X;
1742 node_edited.Y = node.Y; 1742 node_edited.Y = node.Y;
1743 1743
1744 // show form edit node 1744 // show form edit node
1745 EditNodeWindow edtNodeWindow = new EditNodeWindow(); 1745 EditNodeWindow edtNodeWindow = new EditNodeWindow();
1746 edtNodeWindow.ShowDialog(); 1746 edtNodeWindow.ShowDialog();
1747 1747
1748 string result1 = edtNodeWindow._txtMode1; 1748 string result1 = edtNodeWindow._txtMode1;
1749 string result2 = edtNodeWindow._txtMode2; 1749 string result2 = edtNodeWindow._txtMode2;
1750 string result3 = edtNodeWindow._txtMode3; 1750 string result3 = edtNodeWindow._txtMode3;
1751 bool exit = edtNodeWindow._ExitFlg; 1751 bool exit = edtNodeWindow._ExitFlg;
1752 1752
1753 if (!exit) 1753 if (!exit)
1754 { 1754 {
1755 SaveChanged(node_edited.X, node_edited.Y, result1, result2, result3); 1755 SaveChanged(node_edited.X, node_edited.Y, result1, result2, result3);
1756 } 1756 }
1757 1757
1758 return; 1758 return;
1759 } 1759 }
1760 } 1760 }
1761 } 1761 }
1762 } 1762 }
1763 1763
1764 public void SaveChanged(double x, double y, string st1, string st2, string st3) 1764 public void SaveChanged(double x, double y, string st1, string st2, string st3)
1765 { 1765 {
1766 for (int i = 0; i < NodeInfo_List.Count; i++) 1766 for (int i = 0; i < NodeInfo_List.Count; i++)
1767 { 1767 {
1768 NodeInfo ni = new NodeInfo(); 1768 NodeInfo ni = new NodeInfo();
1769 ni = NodeInfo_List[i]; 1769 ni = NodeInfo_List[i];
1770 1770
1771 if (ni.X == x && ni.Y == y) 1771 if (ni.X == x && ni.Y == y)
1772 { 1772 {
1773 1773
1774 ni.Mode1 = st1; 1774 ni.Mode1 = st1;
1775 ni.Mode2 = st2; 1775 ni.Mode2 = st2;
1776 ni.Mode3 = st3; 1776 ni.Mode3 = st3;
1777 1777
1778 NodeInfo_List[i] = ni; 1778 NodeInfo_List[i] = ni;
1779 return; 1779 return;
1780 } 1780 }
1781 } 1781 }
1782 } 1782 }
1783 1783
1784 1784
1785 #endregion 1785 #endregion
1786 1786
1787 #region Display RouteInfo 1787 #region Display RouteInfo
1788 1788
1789 public void DspRouteInfo() 1789 public void DspRouteInfo()
1790 { 1790 {
1791 //Clear Route Info Table 1791 //Clear Route Info Table
1792 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear(); 1792 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear();
1793 1793
1794 if (NodeInfo_List.Count != 0) 1794 if (NodeInfo_List.Count != 0)
1795 { 1795 {
1796 int _RowIdx = 0; 1796 int _RowIdx = 0;
1797 string _Content = ""; 1797 string _Content = "";
1798 1798
1799 for (int i = 0; i < NodeInfo_List.Count; i++) 1799 for (int i = 0; i < NodeInfo_List.Count; i++)
1800 { 1800 {
1801 1801
1802 NodeInfo ni = new NodeInfo(); 1802 NodeInfo ni = new NodeInfo();
1803 ni = NodeInfo_List[i]; 1803 ni = NodeInfo_List[i];
1804 1804
1805 //column 1 1805 //column 1
1806 if (i == 0) 1806 if (i == 0)
1807 { 1807 {
1808 _Content = "S"; 1808 _Content = "S";
1809 } 1809 }
1810 else if (i == NodeInfo_List.Count - 1) 1810 else if (i == NodeInfo_List.Count - 1)
1811 { 1811 {
1812 _Content = "G"; 1812 _Content = "G";
1813 } 1813 }
1814 else 1814 else
1815 { 1815 {
1816 _Content = i.ToString(); 1816 _Content = i.ToString();
1817 } 1817 }
1818 AddLabeltoGrid(_RowIdx, 0, _Content); 1818 AddLabeltoGrid(_RowIdx, 0, _Content);
1819 1819
1820 //column 2 1820 //column 2
1821 // Display Node's Position 1821 // Display Node's Position
1822 _Content = ni.X + ", " + ni.Y; 1822 _Content = ni.X + ", " + ni.Y;
1823 AddLabeltoGrid(_RowIdx, 1, _Content); 1823 AddLabeltoGrid(_RowIdx, 1, _Content);
1824 1824
1825 // Display Node's Field 1825 // Display Node's Field
1826 if (ni.Mode1 != "" && ni.Mode1 != null) 1826 if (ni.Mode1 != "" && ni.Mode1 != null)
1827 { 1827 {
1828 char delimiterChars = '_'; 1828 char delimiterChars = '_';
1829 string[] tmp = ni.Mode1.Split(delimiterChars); 1829 string[] tmp = ni.Mode1.Split(delimiterChars);
1830 foreach (string s in tmp) 1830 foreach (string s in tmp)
1831 { 1831 {
1832 _RowIdx++; 1832 _RowIdx++;
1833 delimiterChars = ':'; 1833 delimiterChars = ':';
1834 1834
1835 if (s.Split(delimiterChars)[0] == "Mode") 1835 if (s.Split(delimiterChars)[0] == "Mode")
1836 { 1836 {
1837 double distance = 0; 1837 double distance = 0;
1838 if (i == NodeInfo_List.Count - 1) 1838 if (i == NodeInfo_List.Count - 1)
1839 { 1839 {
1840 distance = 0; 1840 distance = 0;
1841 } 1841 }
1842 else 1842 else
1843 { 1843 {
1844 distance = DistanceCalculate(NodeInfo_List[i].X, NodeInfo_List[i].Y, NodeInfo_List[i + 1].X, NodeInfo_List[i + 1].Y); 1844 distance = DistanceCalculate(NodeInfo_List[i].X, NodeInfo_List[i].Y, NodeInfo_List[i + 1].X, NodeInfo_List[i + 1].Y);
1845 } 1845 }
1846 _Content = "MOVE " + distance.ToString() + "mm"; 1846 _Content = "MOVE " + distance.ToString() + "mm";
1847 } 1847 }
1848 else 1848 else
1849 { 1849 {
1850 _Content = s.Split(delimiterChars)[0] + " " + s.Split(delimiterChars)[1]; 1850 _Content = s.Split(delimiterChars)[0] + " " + s.Split(delimiterChars)[1];
1851 } 1851 }
1852 1852
1853 AddLabeltoGrid(_RowIdx, 1, _Content); 1853 AddLabeltoGrid(_RowIdx, 1, _Content);
1854 } 1854 }
1855 } 1855 }
1856 1856
1857 if (ni.Mode2 != "" && ni.Mode2 != null) 1857 if (ni.Mode2 != "" && ni.Mode2 != null)
1858 { 1858 {
1859 char delimiterChars = '_'; 1859 char delimiterChars = '_';
1860 string[] tmp = ni.Mode2.Split(delimiterChars); 1860 string[] tmp = ni.Mode2.Split(delimiterChars);
1861 foreach (string s in tmp) 1861 foreach (string s in tmp)
1862 { 1862 {
1863 _RowIdx++; 1863 _RowIdx++;
1864 delimiterChars = ':'; 1864 delimiterChars = ':';
1865 1865
1866 if (s.Split(delimiterChars)[0] == "Mode") 1866 if (s.Split(delimiterChars)[0] == "Mode")
1867 { 1867 {
1868 double distance = 0; 1868 double distance = 0;
1869 if (i == NodeInfo_List.Count - 1) 1869 if (i == NodeInfo_List.Count - 1)
1870 { 1870 {
1871 distance = 0; 1871 distance = 0;
1872 } 1872 }
1873 else 1873 else
1874 { 1874 {
1875 distance = DistanceCalculate(NodeInfo_List[i].X, NodeInfo_List[i].Y, NodeInfo_List[i + 1].X, NodeInfo_List[i + 1].Y); 1875 distance = DistanceCalculate(NodeInfo_List[i].X, NodeInfo_List[i].Y, NodeInfo_List[i + 1].X, NodeInfo_List[i + 1].Y);
1876 } 1876 }
1877 _Content = "MOVE " + distance.ToString() + "mm"; 1877 _Content = "MOVE " + distance.ToString() + "mm";
1878 } 1878 }
1879 else 1879 else
1880 { 1880 {
1881 _Content = s.Split(delimiterChars)[0] + " " + s.Split(delimiterChars)[1]; 1881 _Content = s.Split(delimiterChars)[0] + " " + s.Split(delimiterChars)[1];
1882 } 1882 }
1883 1883
1884 AddLabeltoGrid(_RowIdx, 1, _Content); 1884 AddLabeltoGrid(_RowIdx, 1, _Content);
1885 } 1885 }
1886 } 1886 }
1887 1887
1888 if (ni.Mode3 != "" && ni.Mode3 != null) 1888 if (ni.Mode3 != "" && ni.Mode3 != null)
1889 { 1889 {
1890 char delimiterChars = '_'; 1890 char delimiterChars = '_';
1891 string[] tmp = ni.Mode3.Split(delimiterChars); 1891 string[] tmp = ni.Mode3.Split(delimiterChars);
1892 foreach (string s in tmp) 1892 foreach (string s in tmp)
1893 { 1893 {
1894 _RowIdx++; 1894 _RowIdx++;
1895 delimiterChars = ':'; 1895 delimiterChars = ':';
1896 1896
1897 if (s.Split(delimiterChars)[0] == "Mode") 1897 if (s.Split(delimiterChars)[0] == "Mode")
1898 { 1898 {
1899 double distance = 0; 1899 double distance = 0;
1900 if (i == NodeInfo_List.Count - 1) 1900 if (i == NodeInfo_List.Count - 1)
1901 { 1901 {
1902 distance = 0; 1902 distance = 0;
1903 } 1903 }
1904 else 1904 else
1905 { 1905 {
1906 distance = DistanceCalculate(NodeInfo_List[i].X, NodeInfo_List[i].Y, NodeInfo_List[i + 1].X, NodeInfo_List[i + 1].Y); 1906 distance = DistanceCalculate(NodeInfo_List[i].X, NodeInfo_List[i].Y, NodeInfo_List[i + 1].X, NodeInfo_List[i + 1].Y);
1907 } 1907 }
1908 _Content = "MOVE " + distance.ToString() + "mm"; 1908 _Content = "MOVE " + distance.ToString() + "mm";
1909 } 1909 }
1910 else 1910 else
1911 { 1911 {
1912 _Content = s.Split(delimiterChars)[0] + " " + s.Split(delimiterChars)[1]; 1912 _Content = s.Split(delimiterChars)[0] + " " + s.Split(delimiterChars)[1];
1913 } 1913 }
1914 1914
1915 AddLabeltoGrid(_RowIdx, 1, _Content); 1915 AddLabeltoGrid(_RowIdx, 1, _Content);
1916 } 1916 }
1917 } 1917 }
1918 _RowIdx++; 1918 _RowIdx++;
1919 } 1919 }
1920 } 1920 }
1921 } 1921 }
1922 1922
1923 public double DistanceCalculate(double _X1, double _Y1, double _X2, double _Y2) 1923 public double DistanceCalculate(double _X1, double _Y1, double _X2, double _Y2)
1924 { 1924 {
1925 double dist = 0; 1925 double dist = 0;
1926 1926
1927 if (_X1 == _X2) 1927 if (_X1 == _X2)
1928 { 1928 {
1929 dist = System.Math.Abs(_Y1 - _Y2) * DISTANCE_RATIO; 1929 dist = System.Math.Abs(_Y1 - _Y2) * DISTANCE_RATIO;
1930 } 1930 }
1931 else if (_Y1 == _Y2) 1931 else if (_Y1 == _Y2)
1932 { 1932 {
1933 dist = System.Math.Abs(_X1 - _X2) * DISTANCE_RATIO; 1933 dist = System.Math.Abs(_X1 - _X2) * DISTANCE_RATIO;
1934 } 1934 }
1935 return dist; 1935 return dist;
1936 } 1936 }
1937 1937
1938 public void AddLabeltoGrid(int RowIdx, int ColIdx, string Content) 1938 public void AddLabeltoGrid(int RowIdx, int ColIdx, string Content)
1939 { 1939 {
1940 //Add Row to Grid 1940 //Add Row to Grid
1941 RowDefinition _rd = new RowDefinition(); 1941 RowDefinition _rd = new RowDefinition();
1942 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.RowDefinitions.Add(_rd); 1942 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.RowDefinitions.Add(_rd);
1943 1943
1944 // Add data to Grid 1944 // Add data to Grid
1945 Label dynamicLabel = new Label(); 1945 Label dynamicLabel = new Label();
1946 1946
1947 dynamicLabel.Content = Content; 1947 dynamicLabel.Content = Content;
1948 dynamicLabel.Margin = new Thickness(0, 0, 0, 0); 1948 dynamicLabel.Margin = new Thickness(0, 0, 0, 0);
1949 dynamicLabel.Foreground = new SolidColorBrush(Colors.Black); 1949 dynamicLabel.Foreground = new SolidColorBrush(Colors.Black);
1950 dynamicLabel.Background = new SolidColorBrush(Colors.White); 1950 dynamicLabel.Background = new SolidColorBrush(Colors.White);
1951 dynamicLabel.BorderBrush = new SolidColorBrush(Colors.LightGray); 1951 dynamicLabel.BorderBrush = new SolidColorBrush(Colors.LightGray);
1952 dynamicLabel.BorderThickness = new Thickness(1); 1952 dynamicLabel.BorderThickness = new Thickness(1);
1953 1953
1954 Grid.SetRow(dynamicLabel, RowIdx); 1954 Grid.SetRow(dynamicLabel, RowIdx);
1955 Grid.SetColumn(dynamicLabel, ColIdx); 1955 Grid.SetColumn(dynamicLabel, ColIdx);
1956 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Add(dynamicLabel); 1956 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Add(dynamicLabel);
1957 } 1957 }
1958 #endregion 1958 #endregion
1959 1959
1960 1960
1961 public void CreateGoalPoint() 1961 public void CreateGoalPoint()
1962 { 1962 {
1963 if (isGoalDrawRoute) 1963 if (isGoalDrawRoute)
1964 { 1964 {
1965 return; 1965 return;
1966 } 1966 }
1967 1967
1968 isStartDrawRoute = false; 1968 isStartDrawRoute = false;
1969 if (_goalPoint == null) 1969 if (_goalPoint == null)
1970 { 1970 {
1971 _goalPoint = new ucStartEndButton(); 1971 _goalPoint = new ucStartEndButton();
1972 _goalPoint.btnWidth = 50.0; 1972 _goalPoint.btnWidth = 50.0;
1973 _goalPoint.btnHeight = 50.0; 1973 _goalPoint.btnHeight = 50.0;
1974 _goalPoint.buttText = "G"; 1974 _goalPoint.buttText = "G";
1975 Canvas.SetLeft(_goalPoint, 675); 1975 Canvas.SetLeft(_goalPoint, 675);
1976 Canvas.SetTop(_goalPoint, 75); 1976 Canvas.SetTop(_goalPoint, 75);
1977 this.Children.Add(_goalPoint); 1977 this.Children.Add(_goalPoint);
1978 } 1978 }
1979 } 1979 }
1980 1980
1981 public void CreateStartPoint() 1981 public void CreateStartPoint()
1982 { 1982 {
1983 if (isGoalDrawRoute) 1983 if (isGoalDrawRoute)
1984 { 1984 {
1985 return; 1985 return;
1986 } 1986 }
1987 1987
1988 isStartDrawRoute = false; 1988 isStartDrawRoute = false;
1989 if (_startPoint == null) 1989 if (_startPoint == null)
1990 { 1990 {
1991 _startPoint = new ucStartEndButton(); 1991 _startPoint = new ucStartEndButton();
1992 _startPoint.btnWidth = 50.0; 1992 _startPoint.btnWidth = 50.0;
1993 _startPoint.btnHeight = 50.0; 1993 _startPoint.btnHeight = 50.0;
1994 _startPoint.buttText = "S"; 1994 _startPoint.buttText = "S";
1995 Canvas.SetLeft(_startPoint, 75); 1995 Canvas.SetLeft(_startPoint, 75);
1996 Canvas.SetTop(_startPoint, 675); 1996 Canvas.SetTop(_startPoint, 675);
1997 this.Children.Add(_startPoint); 1997 this.Children.Add(_startPoint);
1998 } 1998 }
1999 } 1999 }
2000 2000
2001 2001
2002 #region Draw New FreeNode 2002 #region Draw New FreeNode
2003 2003
2004 /// <summary> 2004 /// <summary>
2005 /// Draw Auto Blue node 2005 /// Draw Auto Blue node
2006 /// </summary> 2006 /// </summary>
2007 2007
2008 2008
2009 public void NewSetFreeNodes(Point FreeNode, bool RightClick) 2009 public void NewSetFreeNodes(Point FreeNode, bool RightClick)
2010 { 2010 {
2011 double radiusNode = RADIUS_NODE; 2011 double radiusNode = RADIUS_NODE;
2012 2012
2013 EllipseGeometry ellipseGeometry; 2013 EllipseGeometry ellipseGeometry;
2014 Point node; 2014 Point node;
2015 bool deleteFlag = false; 2015 bool deleteFlag = false;
2016 2016
2017 2017
2018 if (RightClick) 2018 if (RightClick)
2019 { 2019 {
2020 if (gGrpBlueNode.Children.Count > 0) 2020 if (gGrpBlueNode.Children.Count > 0)
2021 { 2021 {
2022 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 2022 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
2023 { 2023 {
2024 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 2024 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
2025 node = ellipseGeometry.Center; 2025 node = ellipseGeometry.Center;
2026 if (FreeNode.X == node.X) 2026 if (FreeNode.X == node.X)
2027 { 2027 {
2028 if (CheckIsNode(FreeNode, node, radiusNode)) 2028 if (CheckIsNode(FreeNode, node, radiusNode))
2029 { 2029 {
2030 deleteFlag = true; 2030 deleteFlag = true;
2031 } 2031 }
2032 } 2032 }
2033 else 2033 else
2034 { 2034 {
2035 if (CheckIsNode(FreeNode, node, radiusNode)) 2035 if (CheckIsNode(FreeNode, node, radiusNode))
2036 { 2036 {
2037 deleteFlag = true; 2037 deleteFlag = true;
2038 } 2038 }
2039 } 2039 }
2040 if (deleteFlag) 2040 if (deleteFlag)
2041 { 2041 {
2042 MessageBoxResult result = MessageBox.Show("Do You Delete This Node?", "Delete Node", MessageBoxButton.OKCancel); 2042 MessageBoxResult result = MessageBox.Show("Do You Delete This Node?", "Delete Node", MessageBoxButton.OKCancel);
2043 if (result == MessageBoxResult.OK) 2043 if (result == MessageBoxResult.OK)
2044 { 2044 {
2045 //Call Function Delete Node 2045 //Call Function Delete Node
2046 DeleteNode(i); 2046 DeleteNode(i);
2047 2047
2048 return; 2048 return;
2049 } 2049 }
2050 else 2050 else
2051 { 2051 {
2052 return; 2052 return;
2053 } 2053 }
2054 } 2054 }
2055 } 2055 }
2056 } 2056 }
2057 } 2057 }
2058 else 2058 else
2059 { 2059 {
2060 //Check EditNode State 2060 //Check EditNode State
2061 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 2061 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
2062 { 2062 {
2063 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 2063 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
2064 node = ellipseGeometry.Center; 2064 node = ellipseGeometry.Center;
2065 bool isEditNode = CheckIsNode(FreeNode, node, RADIUS_NODE); 2065 bool isEditNode = CheckIsNode(FreeNode, node, RADIUS_NODE);
2066 2066
2067 if (isEditNode) 2067 if (isEditNode)
2068 { 2068 {
2069 NewEditNode(node); 2069 NewEditNode(node);
2070 NewDspRouteInfo(); 2070 NewDspRouteInfo();
2071 return; 2071 return;
2072 } 2072 }
2073 } 2073 }
2074 2074
2075 2075
2076 MessageBoxResult result = MessageBox.Show("Do You Want To Add This Node?", "Add Node", MessageBoxButton.OKCancel); 2076 MessageBoxResult result = MessageBox.Show("Do You Want To Add This Node?", "Add Node", MessageBoxButton.OKCancel);
2077 if (result == MessageBoxResult.OK) 2077 if (result == MessageBoxResult.OK)
2078 { 2078 {
2079 AddNode(FreeNode, gGrpBlueNode); 2079 AddNode(FreeNode, gGrpBlueNode);
2080 2080
2081 TextBlock textBlock = new TextBlock(); 2081 TextBlock textBlock = new TextBlock();
2082 textBlock.Text = stt.ToString(); 2082 textBlock.Text = stt.ToString();
2083 textBlock.FontSize = 35; 2083 textBlock.FontSize = 35;
2084 textBlock.VerticalAlignment = VerticalAlignment.Center; 2084 textBlock.VerticalAlignment = VerticalAlignment.Center;
2085 textBlock.HorizontalAlignment = HorizontalAlignment.Center; 2085 textBlock.HorizontalAlignment = HorizontalAlignment.Center;
2086 textBlock.Foreground = new SolidColorBrush(Colors.Red); 2086 textBlock.Foreground = new SolidColorBrush(Colors.Red);
2087 2087
2088 Canvas.SetLeft(textBlock, FreeNode.X - RADIUS_NODE / 2); 2088 Canvas.SetLeft(textBlock, FreeNode.X - RADIUS_NODE / 2);
2089 Canvas.SetTop(textBlock, FreeNode.Y - 1.5 * RADIUS_NODE); 2089 Canvas.SetTop(textBlock, FreeNode.Y - 1.5 * RADIUS_NODE);
2090 2090
2091 2091
2092 this.Children.Add(textBlock); 2092 this.Children.Add(textBlock);
2093 NodeNo.Add(textBlock); 2093 NodeNo.Add(textBlock);
2094 2094
2095 if (stt > 1) 2095 if (stt > 1)
2096 { 2096 {
2097 int tmp = gGrpBlueNode.Children.Count; 2097 int tmp = gGrpBlueNode.Children.Count;
2098 2098
2099 EllipseGeometry elip = (EllipseGeometry)gGrpBlueNode.Children[tmp - 2]; 2099 EllipseGeometry elip = (EllipseGeometry)gGrpBlueNode.Children[tmp - 2];
2100 Point node1 = elip.Center; 2100 Point node1 = elip.Center;
2101 elip = (EllipseGeometry)gGrpBlueNode.Children[tmp - 1]; 2101 elip = (EllipseGeometry)gGrpBlueNode.Children[tmp - 1];
2102 Point node2 = elip.Center; 2102 Point node2 = elip.Center;
2103 DrawLine(node1, node2, gGrpNewLine); 2103 DrawLine(node1, node2, gGrpNewLine);
2104 2104
2105 2105
2106 this.Children.Remove(pBlueNode); 2106 this.Children.Remove(pBlueNode);
2107 for (int i = 0; i < tmp; i++) 2107 for (int i = 0; i < tmp; i++)
2108 { 2108 {
2109 this.Children.Remove(NodeNo[i]); 2109 this.Children.Remove(NodeNo[i]);
2110 } 2110 }
2111 2111
2112 this.Children.Add(pBlueNode); 2112 this.Children.Add(pBlueNode);
2113 for (int i = 0; i < tmp; i++) 2113 for (int i = 0; i < tmp; i++)
2114 { 2114 {
2115 this.Children.Add(NodeNo[i]); 2115 this.Children.Add(NodeNo[i]);
2116 } 2116 }
2117 } 2117 }
2118 2118
2119 stt++; 2119 stt++;
2120 NewInitNodeInfo_List(); 2120 NewInitNodeInfo_List();
2121 NewDspRouteInfo(); 2121 NewDspRouteInfo();
2122 } 2122 }
2123 } 2123 }
2124 } 2124 }
2125 2125
2126 public void DeleteNode(int i) 2126 public void DeleteNode(int i)
2127 { 2127 {
2128 //DrawLine(Point startPoint, Point endPoint, GeometryGroup geometryGroup) 2128 //DrawLine(Point startPoint, Point endPoint, GeometryGroup geometryGroup)
2129 2129
2130 LineGeometry lineGeometry = new LineGeometry(); 2130 LineGeometry lineGeometry = new LineGeometry();
2131 EllipseGeometry ellip; 2131 EllipseGeometry ellip;
2132 2132
2133 //check delete last node 2133 //check delete last node
2134 if (i == gGrpBlueNode.Children.Count - 1) 2134 if (i == gGrpBlueNode.Children.Count - 1)
2135 { 2135 {
2136 // delete line 2136 // delete line
2137 if (gGrpNewLine.Children.Count > 0) 2137 if (gGrpNewLine.Children.Count > 0)
2138 { 2138 {
2139 gGrpNewLine.Children.RemoveAt(i - 1); 2139 gGrpNewLine.Children.RemoveAt(i - 1);
2140 } 2140 }
2141 2141
2142 // delete ucNode 2142 // delete ucNode
2143 ucNode _ucNode = new ucNode(); 2143 ucNode _ucNode = new ucNode();
2144 _ucNode = ucNode_Lst[i]; 2144 _ucNode = ucNode_Lst[i];
2145 this.Children.Remove(_ucNode); 2145 this.Children.Remove(_ucNode);
2146 ucNode_Lst.RemoveAt(i); 2146 ucNode_Lst.RemoveAt(i);
2147 2147
2148 // delete node 2148 // delete node
2149 gGrpBlueNode.Children.RemoveAt(i); 2149 gGrpBlueNode.Children.RemoveAt(i);
2150 NewNodeInfo_List.RemoveAt(i); 2150 NewNodeInfo_List.RemoveAt(i);
2151 2151
2152 } 2152 }
2153 else 2153 else
2154 { 2154 {
2155 //delete all line and remove Point at 'i' 2155 //delete all line and remove Point at 'i'
2156 gGrpNewLine.Children.Clear(); 2156 gGrpNewLine.Children.Clear();
2157 this.Children.Remove(pNewLine); 2157 this.Children.Remove(pNewLine);
2158 gGrpBlueNode.Children.RemoveAt(i); 2158 gGrpBlueNode.Children.RemoveAt(i);
2159 2159
2160 //redraw line 2160 //redraw line
2161 for (int j = 0; j < gGrpBlueNode.Children.Count - 1; j++) 2161 for (int j = 0; j < gGrpBlueNode.Children.Count - 1; j++)
2162 { 2162 {
2163 ellip = (EllipseGeometry)gGrpBlueNode.Children[j]; 2163 ellip = (EllipseGeometry)gGrpBlueNode.Children[j];
2164 Point node1 = ellip.Center; 2164 Point node1 = ellip.Center;
2165 ellip = (EllipseGeometry)gGrpBlueNode.Children[j + 1]; 2165 ellip = (EllipseGeometry)gGrpBlueNode.Children[j + 1];
2166 Point node2 = ellip.Center; 2166 Point node2 = ellip.Center;
2167 DrawLine(node1, node2, gGrpNewLine); 2167 DrawLine(node1, node2, gGrpNewLine);
2168 } 2168 }
2169 2169
2170 this.Children.Add(pNewLine); 2170 this.Children.Add(pNewLine);
2171 2171
2172 //remove ucNode 2172 //remove ucNode
2173 for (int j = ucNode_Lst.Count - 1; j > i; j--) 2173 for (int j = ucNode_Lst.Count - 1; j > i; j--)
2174 { 2174 {
2175 ucNode_Lst[j].txtNode = ucNode_Lst[j - 1].txtNode; 2175 ucNode_Lst[j].txtNode = ucNode_Lst[j - 1].txtNode;
2176 } 2176 }
2177 this.Children.Remove(ucNode_Lst[i]); 2177 this.Children.Remove(ucNode_Lst[i]);
2178 ucNode_Lst.RemoveAt(i); 2178 ucNode_Lst.RemoveAt(i);
2179 2179
2180 //redraw ucNode 2180 //redraw ucNode
2181 for (int k = 0; k < ucNode_Lst.Count; k++) 2181 for (int k = 0; k < ucNode_Lst.Count; k++)
2182 { 2182 {
2183 this.Children.Remove(ucNode_Lst[k]); 2183 this.Children.Remove(ucNode_Lst[k]);
2184 this.Children.Add(ucNode_Lst[k]); 2184 this.Children.Add(ucNode_Lst[k]);
2185 } 2185 }
2186 } 2186 }
2187 2187
2188 //NewInitNodeInfo_List(); 2188 //NewInitNodeInfo_List();
2189 2189
2190 Lst_Node_tmp.RemoveAt(i); 2190 Lst_Node_tmp.RemoveAt(i);
2191 NewDspRouteInfo(); 2191 NewDspRouteInfo();
2192 stt--; 2192 stt--;
2193 2193
2194 } 2194 }
2195 2195
2196 public void ReDrawAllNode() 2196 public void ReDrawAllNode()
2197 { 2197 {
2198 LineGeometry lineGeometry = new LineGeometry(); 2198 LineGeometry lineGeometry = new LineGeometry();
2199 EllipseGeometry ellip; 2199 EllipseGeometry ellip;
2200 //delete all line 2200 //delete all line
2201 gGrpNewLine.Children.Clear(); 2201 gGrpNewLine.Children.Clear();
2202 this.Children.Remove(pNewLine); 2202 this.Children.Remove(pNewLine);
2203 2203
2204 //redraw line 2204 //redraw line
2205 for (int j = 0; j < gGrpBlueNode.Children.Count - 1; j++) 2205 for (int j = 0; j < gGrpBlueNode.Children.Count - 1; j++)
2206 { 2206 {
2207 ellip = (EllipseGeometry)gGrpBlueNode.Children[j]; 2207 ellip = (EllipseGeometry)gGrpBlueNode.Children[j];
2208 Point node1 = ellip.Center; 2208 Point node1 = ellip.Center;
2209 ellip = (EllipseGeometry)gGrpBlueNode.Children[j + 1]; 2209 ellip = (EllipseGeometry)gGrpBlueNode.Children[j + 1];
2210 Point node2 = ellip.Center; 2210 Point node2 = ellip.Center;
2211 DrawLine(node1, node2, gGrpNewLine); 2211 DrawLine(node1, node2, gGrpNewLine);
2212 } 2212 }
2213 2213
2214 this.Children.Add(pNewLine); 2214 this.Children.Add(pNewLine);
2215 2215
2216 2216
2217 //redraw ucNode 2217 //redraw ucNode
2218 for (int k = 0; k < ucNode_Lst.Count; k++) 2218 for (int k = 0; k < ucNode_Lst.Count; k++)
2219 { 2219 {
2220 this.Children.Remove(ucNode_Lst[k]); 2220 this.Children.Remove(ucNode_Lst[k]);
2221 this.Children.Add(ucNode_Lst[k]); 2221 this.Children.Add(ucNode_Lst[k]);
2222 } 2222 }
2223 2223
2224 //backup DB 2224 //backup DB
2225 CreateVehicleNode(); 2225 CreateVehicleNode();
2226 } 2226 }
2227 2227
2228 2228
2229 public void NewInitNodeInfo_List() 2229 public void NewInitNodeInfo_List()
2230 { 2230 {
2231 //Reset List 2231 //Reset List
2232 //NewNodeInfo_List = new List<NewNodeInfo>(); 2232 //NewNodeInfo_List = new List<NewNodeInfo>();
2233 2233
2234 if (gGrpBlueNode.Children.Count > 0) 2234 if (gGrpBlueNode.Children.Count > 0)
2235 { 2235 {
2236 //for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 2236 //for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
2237 //{ 2237 //{
2238 int i = gGrpBlueNode.Children.Count - 1; 2238 int i = gGrpBlueNode.Children.Count - 1;
2239 Point point; 2239 Point point;
2240 EllipseGeometry eGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 2240 EllipseGeometry eGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
2241 point = eGeometry.Center; 2241 point = eGeometry.Center;
2242 2242
2243 NewNodeInfo Ninfo = new NewNodeInfo(); 2243 NewNodeInfo Ninfo = new NewNodeInfo();
2244 Ninfo.X = point.X; 2244 Ninfo.X = point.X;
2245 Ninfo.Y = point.Y; 2245 Ninfo.Y = point.Y;
2246 2246
2247 Ninfo.Mode = ""; 2247 Ninfo.Mode = "";
2248 2248
2249 NewNodeInfo_List.Add(Ninfo); 2249 NewNodeInfo_List.Add(Ninfo);
2250 //} 2250 //}
2251 2251
2252 } 2252 }
2253 } 2253 }
2254 2254
2255 public void NewEditNode(Point node_edited) 2255 public void NewEditNode(Point node_edited)
2256 { 2256 {
2257 EllipseGeometry ellipseGeometry; 2257 EllipseGeometry ellipseGeometry;
2258 Point node; 2258 Point node;
2259 double radiusNode = RADIUS_NODE; 2259 double radiusNode = RADIUS_NODE;
2260 2260
2261 bool flag = false; 2261 bool flag = false;
2262 2262
2263 if (gGrpBlueNode.Children.Count > 0) 2263 if (gGrpBlueNode.Children.Count > 0)
2264 { 2264 {
2265 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 2265 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
2266 { 2266 {
2267 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 2267 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
2268 node = ellipseGeometry.Center; 2268 node = ellipseGeometry.Center;
2269 2269
2270 if (CheckIsNode(node_edited, node, radiusNode)) 2270 if (CheckIsNode(node_edited, node, radiusNode))
2271 { 2271 {
2272 flag = true; 2272 flag = true;
2273 } 2273 }
2274 2274
2275 if (flag) 2275 if (flag)
2276 { 2276 {
2277 node_edited.X = node.X; 2277 node_edited.X = node.X;
2278 node_edited.Y = node.Y; 2278 node_edited.Y = node.Y;
2279 2279
2280 // show form edit node 2280 // show form edit node
2281 EditNodeWindow edtNodeWindow = new EditNodeWindow(); 2281 EditNodeWindow edtNodeWindow = new EditNodeWindow();
2282 edtNodeWindow.ShowDialog(); 2282 edtNodeWindow.ShowDialog();
2283 2283
2284 string result = edtNodeWindow._txtMode; 2284 string result = edtNodeWindow._txtMode;
2285 2285
2286 2286
2287 List<EditNodeWindow.NodeInf> tmp = edtNodeWindow.NodeInf_List; 2287 List<EditNodeWindow.NodeInf> tmp = edtNodeWindow.NodeInf_List;
2288 2288
2289 for (int j = 0; j < tmp.Count; j++) 2289 for (int j = 0; j < tmp.Count; j++)
2290 { 2290 {
2291 EditNodeWindow.NodeInf ni = new EditNodeWindow.NodeInf(); 2291 EditNodeWindow.NodeInf ni = new EditNodeWindow.NodeInf();
2292 ni.Mode = tmp[j].Mode; 2292 ni.Mode = tmp[j].Mode;
2293 ni.Speed = tmp[j].Speed; 2293 ni.Speed = tmp[j].Speed;
2294 ni.Angle = tmp[j].Angle; 2294 ni.Angle = tmp[j].Angle;
2295 ni.Height = tmp[j].Height; 2295 ni.Height = tmp[j].Height;
2296 2296
2297 2297
2298 ListNodeInfo NodeInfo_tmp = new ListNodeInfo(); 2298 ListNodeInfo NodeInfo_tmp = new ListNodeInfo();
2299 2299
2300 NodeInfo_tmp.Mode = ni.Mode; 2300 NodeInfo_tmp.Mode = ni.Mode;
2301 NodeInfo_tmp.Speed = ni.Speed; 2301 NodeInfo_tmp.Speed = ni.Speed;
2302 NodeInfo_tmp.Angle = ni.Angle; 2302 NodeInfo_tmp.Angle = ni.Angle;
2303 NodeInfo_tmp.Height = ni.Height; 2303 NodeInfo_tmp.Height = ni.Height;
2304 2304
2305 Lst_Node_tmp[i].NodeInfo_tmp.Add(NodeInfo_tmp); 2305 Lst_Node_tmp[i].NodeInfo_tmp.Add(NodeInfo_tmp);
2306 } 2306 }
2307 2307
2308 2308
2309 //backup DB 2309 //backup DB
2310 CreateVehicleNode(); 2310 CreateVehicleNode();
2311 2311
2312 2312
2313 2313
2314 2314
2315 bool exit = edtNodeWindow._ExitFlg; 2315 bool exit = edtNodeWindow._ExitFlg;
2316 2316
2317 if (!exit) 2317 if (!exit)
2318 { 2318 {
2319 NewSaveChanged(node_edited.X, node_edited.Y, result); 2319 NewSaveChanged(node_edited.X, node_edited.Y, result);
2320 } 2320 }
2321 2321
2322 return; 2322 return;
2323 } 2323 }
2324 } 2324 }
2325 } 2325 }
2326 } 2326 }
2327 2327
2328 //Save Node's Data Edited 2328 //Save Node's Data Edited
2329 public void NewSaveChanged(double x, double y, string st) 2329 public void NewSaveChanged(double x, double y, string st)
2330 { 2330 {
2331 for (int i = 0; i < NewNodeInfo_List.Count; i++) 2331 for (int i = 0; i < NewNodeInfo_List.Count; i++)
2332 { 2332 {
2333 NewNodeInfo ni = new NewNodeInfo(); 2333 NewNodeInfo ni = new NewNodeInfo();
2334 ni = NewNodeInfo_List[i]; 2334 ni = NewNodeInfo_List[i];
2335 2335
2336 if (ni.X == x && ni.Y == y) 2336 if (ni.X == x && ni.Y == y)
2337 { 2337 {
2338 ni.Mode = st; 2338 ni.Mode = st;
2339 2339
2340 NewNodeInfo_List[i] = ni; 2340 NewNodeInfo_List[i] = ni;
2341 return; 2341 return;
2342 } 2342 }
2343 } 2343 }
2344 } 2344 }
2345 2345
2346 public void NewDspRouteInfo() 2346 public void NewDspRouteInfo()
2347 { 2347 {
2348 //Clear Route Info Table 2348 //Clear Route Info Table
2349 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear(); 2349 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear();
2350 int _RowIdx = 0; 2350 int _RowIdx = 0;
2351 string _Content = ""; 2351 string _Content = "";
2352 2352
2353 if (Lst_Node_tmp.Count != 0) 2353 if (Lst_Node_tmp.Count != 0)
2354 { 2354 {
2355 for (int i = 0; i < Lst_Node_tmp.Count; i++) 2355 for (int i = 0; i < Lst_Node_tmp.Count; i++)
2356 { 2356 {
2357 //column 1 : node index 2357 //column 1 : node index
2358 _Content = (i + 1).ToString(); 2358 _Content = (i + 1).ToString();
2359 AddLabeltoGrid(_RowIdx, 0, _Content); 2359 AddLabeltoGrid(_RowIdx, 0, _Content);
2360 2360
2361 //column 2 2361 //column 2
2362 // Display Node's Position 2362 // Display Node's Position
2363 _Content = "LAT " + Lst_Node_tmp[i].pointMap_X; 2363 _Content = "LAT " + Lst_Node_tmp[i].pointMap_X;
2364 AddLabeltoGrid(_RowIdx, 1, _Content); 2364 AddLabeltoGrid(_RowIdx, 1, _Content);
2365 _RowIdx++; 2365 _RowIdx++;
2366 2366
2367 _Content = "LOC " + Lst_Node_tmp[i].pointMap_Y; 2367 _Content = "LOC " + Lst_Node_tmp[i].pointMap_Y;
2368 AddLabeltoGrid(_RowIdx, 1, _Content); 2368 AddLabeltoGrid(_RowIdx, 1, _Content);
2369 2369
2370 // Display Node's Field 2370 // Display Node's Field
2371 if (Lst_Node_tmp[i].NodeInfo_tmp.Count != 0) 2371 if (Lst_Node_tmp[i].NodeInfo_tmp.Count != 0)
2372 { 2372 {
2373 foreach (ListNodeInfo ni in Lst_Node_tmp[i].NodeInfo_tmp) 2373 foreach (ListNodeInfo ni in Lst_Node_tmp[i].NodeInfo_tmp)
2374 { 2374 {
2375 if (ni.Speed != 0) 2375 if (ni.Speed != 0)
2376 { 2376 {
2377 _RowIdx++; 2377 _RowIdx++;
2378 _Content = "SPD " + ni.Speed.ToString() + " Km/h"; 2378 _Content = "SPD " + ni.Speed.ToString() + " Km/h";
2379 AddLabeltoGrid(_RowIdx, 1, _Content); 2379 AddLabeltoGrid(_RowIdx, 1, _Content);
2380 } 2380 }
2381 } 2381 }
2382 2382
2383 } 2383 }
2384 _RowIdx++; 2384 _RowIdx++;
2385 } 2385 }
2386 2386
2387 } 2387 }
2388 2388
2389 } 2389 }
2390 2390
2391 2391
2392 //2017/03/07 tach rieng CreateNode start 2392 //2017/03/07 tach rieng CreateNode start
2393 private void execDeleteNode(Point FreeNode) 2393 private void execDeleteNode(Point FreeNode)
2394 { 2394 {
2395 2395
2396 double radiusNode = RADIUS_NODE; 2396 double radiusNode = RADIUS_NODE;
2397 2397
2398 EllipseGeometry ellipseGeometry; 2398 EllipseGeometry ellipseGeometry;
2399 Point node; 2399 Point node;
2400 bool deleteFlag = false; 2400 bool deleteFlag = false;
2401 2401
2402 if (gGrpBlueNode.Children.Count > 0) 2402 if (gGrpBlueNode.Children.Count > 0)
2403 { 2403 {
2404 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 2404 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
2405 { 2405 {
2406 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 2406 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
2407 node = ellipseGeometry.Center; 2407 node = ellipseGeometry.Center;
2408 if (FreeNode.X == node.X) 2408 if (FreeNode.X == node.X)
2409 { 2409 {
2410 if (CheckIsNode(FreeNode, node, radiusNode)) 2410 if (CheckIsNode(FreeNode, node, radiusNode))
2411 { 2411 {
2412 deleteFlag = true; 2412 deleteFlag = true;
2413 } 2413 }
2414 } 2414 }
2415 else 2415 else
2416 { 2416 {
2417 if (CheckIsNode(FreeNode, node, radiusNode)) 2417 if (CheckIsNode(FreeNode, node, radiusNode))
2418 { 2418 {
2419 deleteFlag = true; 2419 deleteFlag = true;
2420 } 2420 }
2421 } 2421 }
2422 if (deleteFlag) 2422 if (deleteFlag)
2423 { 2423 {
2424 MessageBoxResult result = MessageBox.Show("Do You Delete This Node?", "Delete Node", MessageBoxButton.OKCancel); 2424 MessageBoxResult result = MessageBox.Show("Do You Delete This Node?", "Delete Node", MessageBoxButton.OKCancel);
2425 if (result == MessageBoxResult.OK) 2425 if (result == MessageBoxResult.OK)
2426 { 2426 {
2427 DeleteNode(i); 2427 DeleteNode(i);
2428 SetScheduleRoute(); 2428 SetScheduleRoute();
2429 2429
2430 return; 2430 return;
2431 } 2431 }
2432 else 2432 else
2433 { 2433 {
2434 return; 2434 return;
2435 } 2435 }
2436 } 2436 }
2437 } 2437 }
2438 } 2438 }
2439 } 2439 }
2440 2440
2441 2441
2442 private void execEditNode(Point FreeNode) 2442 private void execEditNode(Point FreeNode)
2443 { 2443 {
2444 EllipseGeometry ellipseGeometry; 2444 EllipseGeometry ellipseGeometry;
2445 Point node; 2445 Point node;
2446 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 2446 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
2447 { 2447 {
2448 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 2448 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
2449 node = ellipseGeometry.Center; 2449 node = ellipseGeometry.Center;
2450 bool isEditNode = CheckIsNode(FreeNode, node, RADIUS_NODE); 2450 bool isEditNode = CheckIsNode(FreeNode, node, RADIUS_NODE);
2451 2451
2452 if (isEditNode) 2452 if (isEditNode)
2453 { 2453 {
2454 NewEditNode(node); 2454 NewEditNode(node);
2455 NewDspRouteInfo(); 2455 NewDspRouteInfo();
2456 return; 2456 return;
2457 } 2457 }
2458 } 2458 }
2459 } 2459 }
2460 2460
2461 2461
2462 private void execCreateNode(Point FreeNode) 2462 private void execCreateNode(Point FreeNode)
2463 { 2463 {
2464 //check new node in exist line 2464 //check new node in exist line
2465 if (gGrpNewLine.Children.Count > 0) 2465 if (gGrpNewLine.Children.Count > 0)
2466 { 2466 {
2467 for (int i = 0; i < gGrpNewLine.Children.Count; i++) 2467 for (int i = 0; i < gGrpNewLine.Children.Count; i++)
2468 { 2468 {
2469 LineGeometry lineGeometry = (LineGeometry)gGrpNewLine.Children[i]; 2469 LineGeometry lineGeometry = (LineGeometry)gGrpNewLine.Children[i];
2470 Point p1 = lineGeometry.StartPoint; 2470 Point p1 = lineGeometry.StartPoint;
2471 Point p2 = lineGeometry.EndPoint; 2471 Point p2 = lineGeometry.EndPoint;
2472 2472
2473 bool pInL = PointInLine(FreeNode, p1, p2, UCNODE_SETLEFT); 2473 bool pInL = PointInLine(FreeNode, p1, p2, UCNODE_SETLEFT);
2474 2474
2475 if (pInL) 2475 if (pInL)
2476 { 2476 {
2477 MessageBoxResult result = MessageBox.Show("Do You Want To Add This Node?", "Add Node", MessageBoxButton.OKCancel); 2477 MessageBoxResult result = MessageBox.Show("Do You Want To Add This Node?", "Add Node", MessageBoxButton.OKCancel);
2478 if (result == MessageBoxResult.OK) 2478 if (result == MessageBoxResult.OK)
2479 { 2479 {
2480 Point tmpPoint = ConvertNodeinLine(FreeNode, p1, p2); 2480 Point tmpPoint = ConvertNodeinLine(FreeNode, p1, p2);
2481 FreeNode = tmpPoint; 2481 FreeNode = tmpPoint;
2482 2482
2483 CreateMapNode(FreeNode, i + 1, ColorNode_Insert); 2483 CreateMapNode(FreeNode, i + 1, ColorNode_Insert);
2484 gGrpBlueNode.Children.Insert(i + 1, new EllipseGeometry(FreeNode, RADIUS_NODE, RADIUS_NODE)); 2484 gGrpBlueNode.Children.Insert(i + 1, new EllipseGeometry(FreeNode, RADIUS_NODE, RADIUS_NODE));
2485 //set location infor to table info 2485 //set location infor to table info
2486 SetLoc_NodeInfoList(FreeNode, i + 1); 2486 SetLoc_NodeInfoList(FreeNode, i + 1);
2487 2487
2488 SetScheduleRoute(); 2488 SetScheduleRoute();
2489 2489
2490 ListIndexNodeInsert ListIndex = new ListIndexNodeInsert(); 2490 ListIndexNodeInsert ListIndex = new ListIndexNodeInsert();
2491 ListIndex.X = FreeNode.X; 2491 ListIndex.X = FreeNode.X;
2492 ListIndex.Y = FreeNode.Y; 2492 ListIndex.Y = FreeNode.Y;
2493 IndexNodeInsert_List.Add(ListIndex); 2493 IndexNodeInsert_List.Add(ListIndex);
2494 2494
2495 //rename Point textName 2495 //rename Point textName
2496 for (int j = 0; j < ucNode_Lst.Count; j++) 2496 for (int j = 0; j < ucNode_Lst.Count; j++)
2497 { 2497 {
2498 ucNode_Lst[j].txtNode = (j + 1).ToString(); 2498 ucNode_Lst[j].txtNode = (j + 1).ToString();
2499 this.Children.Remove(ucNode_Lst[j]); 2499 this.Children.Remove(ucNode_Lst[j]);
2500 this.Children.Add(ucNode_Lst[j]); 2500 this.Children.Add(ucNode_Lst[j]);
2501 } 2501 }
2502 2502
2503 ReDrawAllNode(); 2503 ReDrawAllNode();
2504 2504
2505 stt++; 2505 stt++;
2506 NewInitNodeInfo_List(); 2506 NewInitNodeInfo_List();
2507 NewDspRouteInfo(); 2507 NewDspRouteInfo();
2508 return; 2508 return;
2509 } 2509 }
2510 else 2510 else
2511 { 2511 {
2512 return; 2512 return;
2513 } 2513 }
2514 } 2514 }
2515 } 2515 }
2516 } 2516 }
2517 2517
2518 2518
2519 CreateMapNode(FreeNode, gGrpBlueNode.Children.Count, ColorNode_Add); 2519 CreateMapNode(FreeNode, gGrpBlueNode.Children.Count, ColorNode_Add);
2520 gGrpBlueNode.Children.Insert(gGrpBlueNode.Children.Count, new EllipseGeometry(FreeNode, RADIUS_NODE, RADIUS_NODE)); 2520 gGrpBlueNode.Children.Insert(gGrpBlueNode.Children.Count, new EllipseGeometry(FreeNode, RADIUS_NODE, RADIUS_NODE));
2521 //set location infor to table info 2521 //set location infor to table info
2522 SetLoc_NodeInfoList(FreeNode, gGrpBlueNode.Children.Count - 1); 2522 SetLoc_NodeInfoList(FreeNode, gGrpBlueNode.Children.Count - 1);
2523 2523
2524 SetScheduleRoute(); 2524 SetScheduleRoute();
2525 2525
2526 //draw line 2526 //draw line
2527 if (stt > 1) 2527 if (stt > 1)
2528 { 2528 {
2529 //delete all line 2529 //delete all line
2530 gGrpNewLine.Children.Clear(); 2530 gGrpNewLine.Children.Clear();
2531 this.Children.Remove(pNewLine); 2531 this.Children.Remove(pNewLine);
2532 //redraw line 2532 //redraw line
2533 for (int j = 0; j < gGrpBlueNode.Children.Count - 1; j++) 2533 for (int j = 0; j < gGrpBlueNode.Children.Count - 1; j++)
2534 { 2534 {
2535 EllipseGeometry ellip = (EllipseGeometry)gGrpBlueNode.Children[j]; 2535 EllipseGeometry ellip = (EllipseGeometry)gGrpBlueNode.Children[j];
2536 Point node1 = ellip.Center; 2536 Point node1 = ellip.Center;
2537 ellip = (EllipseGeometry)gGrpBlueNode.Children[j + 1]; 2537 ellip = (EllipseGeometry)gGrpBlueNode.Children[j + 1];
2538 Point node2 = ellip.Center; 2538 Point node2 = ellip.Center;
2539 DrawLine(node1, node2, gGrpNewLine); 2539 DrawLine(node1, node2, gGrpNewLine);
2540 } 2540 }
2541 2541
2542 this.Children.Add(pNewLine); 2542 this.Children.Add(pNewLine);
2543 2543
2544 //rename Point textName 2544 //rename Point textName
2545 for (int j = 0; j < ucNode_Lst.Count; j++) 2545 for (int j = 0; j < ucNode_Lst.Count; j++)
2546 { 2546 {
2547 ucNode_Lst[j].txtNode = (j + 1).ToString(); 2547 ucNode_Lst[j].txtNode = (j + 1).ToString();
2548 this.Children.Remove(ucNode_Lst[j]); 2548 this.Children.Remove(ucNode_Lst[j]);
2549 this.Children.Add(ucNode_Lst[j]); 2549 this.Children.Add(ucNode_Lst[j]);
2550 } 2550 }
2551 } 2551 }
2552 2552
2553 stt++; 2553 stt++;
2554 NewInitNodeInfo_List(); 2554 NewInitNodeInfo_List();
2555 NewDspRouteInfo(); 2555 NewDspRouteInfo();
2556 } 2556 }
2557 2557
2558 public void CreateMapNode(Point FreeNode, int stt, String Color) 2558 public void CreateMapNode(Point FreeNode, int stt, String Color)
2559 { 2559 {
2560 ucNode _ucNode = new ucNode(); 2560 ucNode _ucNode = new ucNode();
2561 _ucNode.btnWidth = UCNODE_WIDTH; 2561 _ucNode.btnWidth = UCNODE_WIDTH;
2562 _ucNode.btnHeight = UCNODE_HEIGHT; 2562 _ucNode.btnHeight = UCNODE_HEIGHT;
2563 2563
2564 _ucNode.txtNode = (stt + 1).ToString(); 2564 _ucNode.txtNode = (stt + 1).ToString();
2565 2565
2566 _ucNode.fillColor = Color; 2566 _ucNode.fillColor = Color;
2567 _ucNode.IsDragDelta = true; 2567 _ucNode.IsDragDelta = true;
2568 Canvas.SetLeft(_ucNode, FreeNode.X - UCNODE_SETLEFT); 2568 Canvas.SetLeft(_ucNode, FreeNode.X - UCNODE_SETLEFT);
2569 Canvas.SetTop(_ucNode, FreeNode.Y - UCNODE_SETTOP); 2569 Canvas.SetTop(_ucNode, FreeNode.Y - UCNODE_SETTOP);
2570 this.Children.Add(_ucNode); 2570 this.Children.Add(_ucNode);
2571 //ucNode_Lst.Add(_ucNode); 2571 //ucNode_Lst.Add(_ucNode);
2572 ucNode_Lst.Insert(stt, _ucNode); 2572 ucNode_Lst.Insert(stt, _ucNode);
2573 2573
2574 2574
2575 2575
2576 2576
2577 2577
2578 //AddNode(FreeNode, gGrpBlueNode); 2578 //AddNode(FreeNode, gGrpBlueNode);
2579 //gGrpBlueNode.Children.Insert(stt, new EllipseGeometry(FreeNode, RADIUS_NODE, RADIUS_NODE)); 2579 //gGrpBlueNode.Children.Insert(stt, new EllipseGeometry(FreeNode, RADIUS_NODE, RADIUS_NODE));
2580 2580
2581 } 2581 }
2582 2582
2583 public void SetLoc_NodeInfoList(Point FreeNode, int stt) 2583 public void SetLoc_NodeInfoList(Point FreeNode, int stt)
2584 { 2584 {
2585 //add location for NodeInfoList 2585 //add location for NodeInfoList
2586 Node_tmp nodetmp = new Node_tmp(); 2586 Node_tmp nodetmp = new Node_tmp();
2587 nodetmp.pointMap_X = FreeNode.X; 2587 nodetmp.pointMap_X = FreeNode.X;
2588 nodetmp.pointMap_Y = FreeNode.Y; 2588 nodetmp.pointMap_Y = FreeNode.Y;
2589 2589
2590 Lst_Node_tmp.Insert(stt, nodetmp); 2590 Lst_Node_tmp.Insert(stt, nodetmp);
2591 2591
2592 } 2592 }
2593 2593
2594 public void BindBlueNode2ucNode() 2594 public void BindBlueNode2ucNode()
2595 { 2595 {
2596 bool NodeIsInsert = false; 2596 bool NodeIsInsert = false;
2597 if (gGrpBlueNode.Children.Count > 0) 2597 if (gGrpBlueNode.Children.Count > 0)
2598 { 2598 {
2599 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 2599 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
2600 { 2600 {
2601 NodeIsInsert = false; 2601 NodeIsInsert = false;
2602 EllipseGeometry ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 2602 EllipseGeometry ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
2603 Point node = ellipseGeometry.Center; 2603 Point node = ellipseGeometry.Center;
2604 2604
2605 //Draw Node Insert Color is Brown 2605 //Draw Node Insert Color is Brown
2606 if (IndexNodeInsert_List.Count > 0) 2606 if (IndexNodeInsert_List.Count > 0)
2607 { 2607 {
2608 for (int j = 0; j < IndexNodeInsert_List.Count; j++) 2608 for (int j = 0; j < IndexNodeInsert_List.Count; j++)
2609 { 2609 {
2610 if (node.X == IndexNodeInsert_List[j].X && node.Y == IndexNodeInsert_List[j].Y) 2610 if (node.X == IndexNodeInsert_List[j].X && node.Y == IndexNodeInsert_List[j].Y)
2611 { 2611 {
2612 NodeIsInsert = true; 2612 NodeIsInsert = true;
2613 } 2613 }
2614 } 2614 }
2615 } 2615 }
2616 if (NodeIsInsert) 2616 if (NodeIsInsert)
2617 { 2617 {
2618 CreateMapNode(node, i, ColorNode_Insert); 2618 CreateMapNode(node, i, ColorNode_Insert);
2619 } 2619 }
2620 else 2620 else
2621 { 2621 {
2622 CreateMapNode(node, i, ColorNode_Add); 2622 CreateMapNode(node, i, ColorNode_Add);
2623 } 2623 }
2624 } 2624 }
2625 } 2625 }
2626 } 2626 }
2627 2627
2628 //2017/03/07 tach CreateNode End 2628 //2017/03/07 tach CreateNode End
2629 2629
2630 2630
2631 public Point ConvertNodeinLine(Point point, Point l1, Point l2) 2631 public Point ConvertNodeinLine(Point point, Point l1, Point l2)
2632 { 2632 {
2633 Point pointResult = new Point(); 2633 Point pointResult = new Point();
2634 double X = 0; 2634 double X = 0;
2635 double Y = 0; 2635 double Y = 0;
2636 2636
2637 double distance_Line = 0; 2637 double distance_Line = 0;
2638 double distance_l1ToPoint = 0; 2638 double distance_l1ToPoint = 0;
2639 2639
2640 distance_Line = DistanceTo(l1, l2); 2640 distance_Line = DistanceTo(l1, l2);
2641 distance_l1ToPoint = DistanceTo(l1, point); 2641 distance_l1ToPoint = DistanceTo(l1, point);
2642 2642
2643 2643
2644 if (l1.X == l2.X) 2644 if (l1.X == l2.X)
2645 { 2645 {
2646 X = l1.X; 2646 X = l1.X;
2647 Y = point.Y; 2647 Y = point.Y;
2648 } 2648 }
2649 else if (l1.Y == l2.Y) 2649 else if (l1.Y == l2.Y)
2650 { 2650 {
2651 X = point.X; 2651 X = point.X;
2652 Y = l1.Y; 2652 Y = l1.Y;
2653 } 2653 }
2654 else 2654 else
2655 { 2655 {
2656 if (l1.X < l2.X) 2656 if (l1.X < l2.X)
2657 { 2657 {
2658 if (l1.Y < l2.Y) 2658 if (l1.Y < l2.Y)
2659 { 2659 {
2660 Y = l1.Y + (distance_l1ToPoint * (l2.Y - l1.Y) / distance_Line); 2660 Y = l1.Y + (distance_l1ToPoint * (l2.Y - l1.Y) / distance_Line);
2661 X = l1.X + (distance_l1ToPoint * (l2.X - l1.X) / distance_Line); 2661 X = l1.X + (distance_l1ToPoint * (l2.X - l1.X) / distance_Line);
2662 } 2662 }
2663 else 2663 else
2664 { 2664 {
2665 Y = l1.Y - (distance_l1ToPoint * (l1.Y - l2.Y) / distance_Line); 2665 Y = l1.Y - (distance_l1ToPoint * (l1.Y - l2.Y) / distance_Line);
2666 X = l1.X + (distance_l1ToPoint * (l2.X - l1.X) / distance_Line); 2666 X = l1.X + (distance_l1ToPoint * (l2.X - l1.X) / distance_Line);
2667 } 2667 }
2668 } 2668 }
2669 else 2669 else
2670 { 2670 {
2671 if (l1.Y < l2.Y) 2671 if (l1.Y < l2.Y)
2672 { 2672 {
2673 Y = l1.Y + (distance_l1ToPoint * (l2.Y - l1.Y) / distance_Line); 2673 Y = l1.Y + (distance_l1ToPoint * (l2.Y - l1.Y) / distance_Line);
2674 X = l1.X - (distance_l1ToPoint * (l1.X - l2.X) / distance_Line); 2674 X = l1.X - (distance_l1ToPoint * (l1.X - l2.X) / distance_Line);
2675 } 2675 }
2676 else 2676 else
2677 { 2677 {
2678 Y = l1.Y - (distance_l1ToPoint * (l1.Y - l2.Y) / distance_Line); 2678 Y = l1.Y - (distance_l1ToPoint * (l1.Y - l2.Y) / distance_Line);
2679 X = l1.X - (distance_l1ToPoint * (l1.X - l2.X) / distance_Line); 2679 X = l1.X - (distance_l1ToPoint * (l1.X - l2.X) / distance_Line);
2680 } 2680 }
2681 } 2681 }
2682 2682
2683 2683
2684 } 2684 }
2685 2685
2686 pointResult.X = X; 2686 pointResult.X = X;
2687 pointResult.Y = Y; 2687 pointResult.Y = Y;
2688 return pointResult; 2688 return pointResult;
2689 } 2689 }
2690 2690
2691 public static double DistanceTo(Point point1, Point point2) 2691 public static double DistanceTo(Point point1, Point point2)
2692 { 2692 {
2693 var a = (double)(point2.X - point1.X); 2693 var a = (double)(point2.X - point1.X);
2694 var b = (double)(point2.Y - point1.Y); 2694 var b = (double)(point2.Y - point1.Y);
2695 2695
2696 return Math.Sqrt(a * a + b * b); 2696 return Math.Sqrt(a * a + b * b);
2697 } 2697 }
2698 2698
2699 public bool PointInLine(Point point, Point l1, Point l2, double radius) 2699 public bool PointInLine(Point point, Point l1, Point l2, double radius)
2700 { 2700 {
2701 double distance = 0; 2701 double distance = 0;
2702 bool falg = false; 2702 bool falg = false;
2703 2703
2704 if (l1.X < l2.X) 2704 if (l1.X < l2.X)
2705 { 2705 {
2706 if (l1.Y < l2.Y) 2706 if (l1.Y < l2.Y)
2707 { 2707 {
2708 if (point.X > l1.X - radius && point.X < l2.X + radius && point.Y > l1.Y - radius && point.Y < l2.Y + radius) 2708 if (point.X > l1.X - radius && point.X < l2.X + radius && point.Y > l1.Y - radius && point.Y < l2.Y + radius)
2709 { 2709 {
2710 falg = true; 2710 falg = true;
2711 } 2711 }
2712 } 2712 }
2713 else 2713 else
2714 { 2714 {
2715 if (point.X > l1.X - radius && point.X < l2.X + radius && point.Y < l1.Y + radius && point.Y > l2.Y - radius) 2715 if (point.X > l1.X - radius && point.X < l2.X + radius && point.Y < l1.Y + radius && point.Y > l2.Y - radius)
2716 { 2716 {
2717 falg = true; 2717 falg = true;
2718 } 2718 }
2719 } 2719 }
2720 } 2720 }
2721 else 2721 else
2722 { 2722 {
2723 if (l1.Y < l2.Y) 2723 if (l1.Y < l2.Y)
2724 { 2724 {
2725 if (point.X < l1.X + radius && point.X > l2.X - radius && point.Y > l1.Y - radius && point.Y < l2.Y + radius) 2725 if (point.X < l1.X + radius && point.X > l2.X - radius && point.Y > l1.Y - radius && point.Y < l2.Y + radius)
2726 { 2726 {
2727 falg = true; 2727 falg = true;
2728 } 2728 }
2729 } 2729 }
2730 else 2730 else
2731 { 2731 {
2732 if (point.X < l1.X + radius && point.X > l2.X - radius && point.Y < l1.Y + radius && point.Y > l2.Y - radius) 2732 if (point.X < l1.X + radius && point.X > l2.X - radius && point.Y < l1.Y + radius && point.Y > l2.Y - radius)
2733 { 2733 {
2734 falg = true; 2734 falg = true;
2735 } 2735 }
2736 } 2736 }
2737 } 2737 }
2738 if (falg == false) 2738 if (falg == false)
2739 { 2739 {
2740 return false; 2740 return false;
2741 } 2741 }
2742 2742
2743 distance = DistanceFromPointToLine(point, l1, l2); 2743 distance = DistanceFromPointToLine(point, l1, l2);
2744 2744
2745 if (distance > radius) 2745 if (distance > radius)
2746 { 2746 {
2747 return false; 2747 return false;
2748 } 2748 }
2749 return true; 2749 return true;
2750 } 2750 }
2751 2751
2752 public static double DistanceFromPointToLine(Point point, Point l1, Point l2) 2752 public static double DistanceFromPointToLine(Point point, Point l1, Point l2)
2753 { 2753 {
2754 2754
2755 return Math.Abs((l2.X - l1.X) * (l1.Y - point.Y) - (l1.X - point.X) * (l2.Y - l1.Y)) / 2755 return Math.Abs((l2.X - l1.X) * (l1.Y - point.Y) - (l1.X - point.X) * (l2.Y - l1.Y)) /
2756 Math.Sqrt(Math.Pow(l2.X - l1.X, 2) + Math.Pow(l2.Y - l1.Y, 2)); 2756 Math.Sqrt(Math.Pow(l2.X - l1.X, 2) + Math.Pow(l2.Y - l1.Y, 2));
2757 } 2757 }
2758 2758
2759 #endregion 2759 #endregion
2760 2760
2761 #region Schedule 2761 #region Schedule
2762 2762
2763 public void SetScheduleRoute() 2763 public void SetScheduleRoute()
2764 { 2764 {
2765 2765
2766 EllipseGeometry ellipseGeometry_1; 2766 EllipseGeometry ellipseGeometry_1;
2767 EllipseGeometry ellipseGeometry_2; 2767 EllipseGeometry ellipseGeometry_2;
2768 Point node_1; 2768 Point node_1;
2769 Point node_2; 2769 Point node_2;
2770 Point node_Schedule = new Point(); 2770 Point node_Schedule = new Point();
2771 double x_1 = 50; 2771 double x_1 = 50;
2772 double y_1 = 80; 2772 double y_1 = 80;
2773 double Totaldistance = 1270; 2773 double Totaldistance = 1220;
2774 2774
2775 2775
2776 if (ucScheduleNode_Lst.Count > 0) 2776 if (ucScheduleNode_Lst.Count > 0)
2777 { 2777 {
2778 for (int i = 0; i < ucScheduleNode_Lst.Count; i++) 2778 for (int i = 0; i < ucScheduleNode_Lst.Count; i++)
2779 { 2779 {
2780 ucNode _ucScheduleNode = new ucNode(); 2780 ucNode _ucScheduleNode = new ucNode();
2781 _ucScheduleNode = ucScheduleNode_Lst[i]; 2781 _ucScheduleNode = ucScheduleNode_Lst[i];
2782 scheduleCanvas.Children.Remove(_ucScheduleNode); 2782 scheduleCanvas.Children.Remove(_ucScheduleNode);
2783 2783
2784 } 2784 }
2785 ucScheduleNode_Lst.Clear(); 2785 ucScheduleNode_Lst.Clear();
2786 } 2786 }
2787 2787
2788 gGrpScheduleNode.Children.Clear(); 2788 gGrpScheduleNode.Children.Clear();
2789 gGrpScheduleLine.Children.Clear(); 2789 gGrpScheduleLine.Children.Clear();
2790 2790
2791 //Remove existed simulation 2791 //Remove existed simulation
2792 if(scheduleCanvas.simulation !=null) 2792 if(scheduleCanvas.simulation !=null)
2793 { 2793 {
2794 scheduleCanvas.Children.Remove(scheduleCanvas.simulation); 2794 scheduleCanvas.Children.Remove(scheduleCanvas.simulation);
2795 } 2795 }
2796 2796
2797 2797
2798 List<double> distance = new List<double>(); 2798 List<double> distance = new List<double>();
2799 double addDistance; 2799 double addDistance;
2800 2800
2801 if (gGrpBlueNode.Children.Count > 0) 2801 if (gGrpBlueNode.Children.Count > 0)
2802 { 2802 {
2803 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 2803 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
2804 { 2804 {
2805 ellipseGeometry_2 = (EllipseGeometry)gGrpBlueNode.Children[i]; 2805 ellipseGeometry_2 = (EllipseGeometry)gGrpBlueNode.Children[i];
2806 node_2 = ellipseGeometry_2.Center; 2806 node_2 = ellipseGeometry_2.Center;
2807 2807
2808 if (i >= 1) 2808 if (i >= 1)
2809 { 2809 {
2810 ellipseGeometry_1 = (EllipseGeometry)gGrpBlueNode.Children[i - 1]; 2810 ellipseGeometry_1 = (EllipseGeometry)gGrpBlueNode.Children[i - 1];
2811 node_1 = ellipseGeometry_1.Center; 2811 node_1 = ellipseGeometry_1.Center;
2812 if (node_1.X == node_2.X) 2812 if (node_1.X == node_2.X)
2813 { 2813 {
2814 addDistance = Math.Abs(node_1.Y - node_2.Y); 2814 addDistance = Math.Abs(node_1.Y - node_2.Y);
2815 distance.Add(addDistance); 2815 distance.Add(addDistance);
2816 } 2816 }
2817 else if (node_1.Y == node_2.Y) 2817 else if (node_1.Y == node_2.Y)
2818 { 2818 {
2819 addDistance = Math.Abs(node_1.X - node_2.X); 2819 addDistance = Math.Abs(node_1.X - node_2.X);
2820 distance.Add(addDistance); 2820 distance.Add(addDistance);
2821 } 2821 }
2822 else 2822 else
2823 { 2823 {
2824 var a = (double)(node_2.X - node_1.X); 2824 var a = (double)(node_2.X - node_1.X);
2825 var b = (double)(node_2.Y - node_1.Y); 2825 var b = (double)(node_2.Y - node_1.Y);
2826 addDistance = Math.Sqrt(a * a + b * b); 2826 addDistance = Math.Sqrt(a * a + b * b);
2827 distance.Add(addDistance); 2827 distance.Add(addDistance);
2828 } 2828 }
2829 } 2829 }
2830 } 2830 }
2831 } 2831 }
2832 if (distance.Count > 0) 2832 if (distance.Count > 0)
2833 { 2833 {
2834 double total = 0; 2834 double total = 0;
2835 double distance_i; 2835 double distance_i;
2836 2836
2837 for (int i = 0; i < distance.Count; i++) 2837 for (int i = 0; i < distance.Count; i++)
2838 { 2838 {
2839 total = total + distance[i]; 2839 total = total + distance[i];
2840 } 2840 }
2841 2841
2842 for (int i = 0; i < distance.Count; i++) 2842 for (int i = 0; i < distance.Count; i++)
2843 { 2843 {
2844 distance_i = distance[i] * (Totaldistance / total); 2844 distance_i = distance[i] * (Totaldistance / total);
2845 distance[i] = distance_i; 2845 distance[i] = distance_i;
2846 } 2846 }
2847 } 2847 }
2848 2848
2849 if (gGrpBlueNode.Children.Count > 0) 2849 if (gGrpBlueNode.Children.Count > 0)
2850 { 2850 {
2851 node_Schedule.X = x_1; 2851 node_Schedule.X = x_1;
2852 node_Schedule.Y = y_1; 2852 node_Schedule.Y = y_1;
2853 AddNode(node_Schedule, gGrpScheduleNode); 2853 AddNode(node_Schedule, gGrpScheduleNode);
2854 } 2854 }
2855 2855
2856 addDistance = 0; 2856 addDistance = x_1;
2857 for (int i = 0; i < distance.Count; i++) 2857 for (int i = 0; i < distance.Count; i++)
2858 { 2858 {
2859 2859
2860 node_Schedule.Y = y_1; 2860 node_Schedule.Y = y_1;
2861 addDistance = addDistance + distance[i]; 2861 addDistance = addDistance + distance[i];
2862 node_Schedule.X = addDistance; 2862 node_Schedule.X = addDistance;
2863 AddNode(node_Schedule, gGrpScheduleNode); 2863 AddNode(node_Schedule, gGrpScheduleNode);
2864 } 2864 }
2865 2865
2866 if (gGrpScheduleNode.Children.Count > 0) 2866 if (gGrpScheduleNode.Children.Count > 0)
2867 { 2867 {
2868 for (int i = 0; i < gGrpScheduleNode.Children.Count; i++) 2868 for (int i = 0; i < gGrpScheduleNode.Children.Count; i++)
2869 { 2869 {
2870 ellipseGeometry_1 = (EllipseGeometry)gGrpScheduleNode.Children[i]; 2870 ellipseGeometry_1 = (EllipseGeometry)gGrpScheduleNode.Children[i];
2871 node_1 = ellipseGeometry_1.Center; 2871 node_1 = ellipseGeometry_1.Center;
2872 if (i > 0) 2872 if (i > 0)
2873 { 2873 {
2874 ellipseGeometry_2 = (EllipseGeometry)gGrpScheduleNode.Children[i - 1]; 2874 ellipseGeometry_2 = (EllipseGeometry)gGrpScheduleNode.Children[i - 1];
2875 node_2 = ellipseGeometry_2.Center; 2875 node_2 = ellipseGeometry_2.Center;
2876 DrawLine(node_1, node_2, gGrpScheduleLine); 2876 DrawLine(node_1, node_2, gGrpScheduleLine);
2877 } 2877 }
2878 CreateScheduleNode(node_1, i + 1); 2878 CreateScheduleNode(node_1, i + 1);
2879 } 2879 }
2880 } 2880 }
2881 } 2881 }
2882 2882
2883 private void CreateScheduleNode(Point point, int indexNode) 2883 private void CreateScheduleNode(Point point, int indexNode)
2884 { 2884 {
2885 ucNode _ucNode = new ucNode(); 2885 ucNode _ucNode = new ucNode();
2886 _ucNode.btnWidth = UCNODE_WIDTH; 2886 _ucNode.btnWidth = UCNODE_WIDTH;
2887 _ucNode.btnHeight = UCNODE_HEIGHT; 2887 _ucNode.btnHeight = UCNODE_HEIGHT;
2888 _ucNode.txtNode = indexNode.ToString(); 2888 _ucNode.txtNode = indexNode.ToString();
2889 _ucNode.IsDragDelta = false; 2889 _ucNode.IsDragDelta = false;
2890 Canvas.SetLeft(_ucNode, point.X - UCNODE_SETLEFT); 2890 Canvas.SetLeft(_ucNode, point.X - UCNODE_SETLEFT);
2891 Canvas.SetTop(_ucNode, point.Y - UCNODE_SETTOP); 2891 Canvas.SetTop(_ucNode, point.Y - UCNODE_SETTOP);
2892 scheduleCanvas.Children.Add(_ucNode); 2892 scheduleCanvas.Children.Add(_ucNode);
2893 ucScheduleNode_Lst.Add(_ucNode); 2893 ucScheduleNode_Lst.Add(_ucNode);
2894 } 2894 }
2895 2895
2896 #endregion 2896 #endregion
2897 2897
2898 #region Add Vehicle 2898 #region Add Vehicle
2899 public void GetIndexVehicle() 2899 public void GetIndexVehicle()
2900 { 2900 {
2901 bool flag = false; 2901 bool flag = false;
2902 if (VehicleModel.VehicleModelList.Count > 0) 2902 if (VehicleModel.VehicleModelList.Count > 0)
2903 { 2903 {
2904 for (int i = 0; i < VehicleModel.VehicleModelList.Count; i++) 2904 for (int i = 0; i < VehicleModel.VehicleModelList.Count; i++)
2905 { 2905 {
2906 if (VehicleItem == VehicleModel.VehicleModelList[i].VehicleName) 2906 if (VehicleItem == VehicleModel.VehicleModelList[i].VehicleName)
2907 { 2907 {
2908 VehicleIndex = i; 2908 VehicleIndex = i;
2909 flag = true; 2909 flag = true;
2910 } 2910 }
2911 } 2911 }
2912 if (!flag) 2912 if (!flag)
2913 { 2913 {
2914 VehicleIndex = VehicleModel.VehicleModelList.Count; 2914 VehicleIndex = VehicleModel.VehicleModelList.Count;
2915 } 2915 }
2916 } 2916 }
2917 else 2917 else
2918 { 2918 {
2919 VehicleIndex = 0; 2919 VehicleIndex = 0;
2920 } 2920 }
2921 } 2921 }
2922 2922
2923 public void GetdataVehicle() 2923 public void GetdataVehicle()
2924 { 2924 {
2925 2925
2926 GetIndexVehicle(); 2926 GetIndexVehicle();
2927 2927
2928 if (VehicleModel.VehicleModelList.Count > 0) 2928 if (VehicleModel.VehicleModelList.Count > 0)
2929 { 2929 {
2930 2930
2931 2931
2932 for (int i = 0; i < ucNode_Lst.Count; i++) 2932 for (int i = 0; i < ucNode_Lst.Count; i++)
2933 { 2933 {
2934 this.Children.Remove(ucNode_Lst[i]); 2934 this.Children.Remove(ucNode_Lst[i]);
2935 } 2935 }
2936 2936
2937 gGrpNewLine.Children.Clear(); 2937 gGrpNewLine.Children.Clear();
2938 this.Children.Remove(pNewLine); 2938 this.Children.Remove(pNewLine);
2939 ucNode_Lst.Clear(); 2939 ucNode_Lst.Clear();
2940 Lst_Node_tmp.Clear(); 2940 Lst_Node_tmp.Clear();
2941 2941
2942 2942
2943 gGrpBlueNode.Children.Clear(); 2943 gGrpBlueNode.Children.Clear();
2944 gGrpScheduleNode.Children.Clear(); 2944 gGrpScheduleNode.Children.Clear();
2945 IndexNodeInsert_List.Clear(); 2945 IndexNodeInsert_List.Clear();
2946 2946
2947 if (VehicleIndex < VehicleModel.VehicleModelList.Count) 2947 if (VehicleIndex < VehicleModel.VehicleModelList.Count)
2948 { 2948 {
2949 if (VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Count > 0) 2949 if (VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Count > 0)
2950 { 2950 {
2951 for (int k = 0; k < VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Count; k++) 2951 for (int k = 0; k < VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Count; k++)
2952 { 2952 {
2953 double X = VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].pointMap_X; 2953 double X = VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].pointMap_X;
2954 double Y = VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].pointMap_Y; 2954 double Y = VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].pointMap_Y;
2955 2955
2956 Point node = new Point(X, Y); 2956 Point node = new Point(X, Y);
2957 AddNode(node, gGrpBlueNode); 2957 AddNode(node, gGrpBlueNode);
2958 2958
2959 //Get list Node Insert 2959 //Get list Node Insert
2960 if (VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].color == ColorNode_Insert) 2960 if (VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].color == ColorNode_Insert)
2961 { 2961 {
2962 ListIndexNodeInsert ListIndex = new ListIndexNodeInsert(); 2962 ListIndexNodeInsert ListIndex = new ListIndexNodeInsert();
2963 ListIndex.X = X; 2963 ListIndex.X = X;
2964 ListIndex.Y = Y; 2964 ListIndex.Y = Y;
2965 IndexNodeInsert_List.Add(ListIndex); 2965 IndexNodeInsert_List.Add(ListIndex);
2966 } 2966 }
2967 2967
2968 //Bind VehicleModel's NodeInfo to List Node Info temp 2968 //Bind VehicleModel's NodeInfo to List Node Info temp
2969 Node_tmp node_tmp = new Node_tmp(); 2969 Node_tmp node_tmp = new Node_tmp();
2970 node_tmp.pointMap_X = X; 2970 node_tmp.pointMap_X = X;
2971 node_tmp.pointMap_Y = Y; 2971 node_tmp.pointMap_Y = Y;
2972 2972
2973 foreach (ListNodeInfo tmp in VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].ListNodeInfo) 2973 foreach (ListNodeInfo tmp in VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].ListNodeInfo)
2974 { 2974 {
2975 node_tmp.NodeInfo_tmp.Add(tmp); 2975 node_tmp.NodeInfo_tmp.Add(tmp);
2976 } 2976 }
2977 Lst_Node_tmp.Add(node_tmp); 2977 Lst_Node_tmp.Add(node_tmp);
2978 2978
2979 2979
2980 2980
2981 X = VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].pointSchedule_X; 2981 X = VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].pointSchedule_X;
2982 Y = VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].pointSchedule_Y; 2982 Y = VehicleModel.VehicleModelList[VehicleIndex].pointMapList[k].pointSchedule_Y;
2983 node = new Point(X, Y); 2983 node = new Point(X, Y);
2984 AddNode(node, gGrpScheduleNode); 2984 AddNode(node, gGrpScheduleNode);
2985 2985
2986 } 2986 }
2987 } 2987 }
2988 } 2988 }
2989 } 2989 }
2990 2990
2991 BindBlueNode2ucNode(); 2991 BindBlueNode2ucNode();
2992 2992
2993 ReDrawAllNode(); 2993 ReDrawAllNode();
2994 2994
2995 SetScheduleRoute(); 2995 SetScheduleRoute();
2996 2996
2997 NewDspRouteInfo(); 2997 NewDspRouteInfo();
2998 2998
2999 //Clear Route Info Table 2999 //Clear Route Info Table
3000 //((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear(); 3000 //((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear();
3001 3001
3002 3002
3003 } 3003 }
3004 3004
3005 public void CreateVehicleNode() 3005 public void CreateVehicleNode()
3006 { 3006 {
3007 EllipseGeometry ellipseGeometry; 3007 EllipseGeometry ellipseGeometry;
3008 Point node; 3008 Point node;
3009 ListNodeInfo ListNodeInfo = new ListNodeInfo(); 3009 ListNodeInfo ListNodeInfo = new ListNodeInfo();
3010 VehicleModelList VehicleModelList = new VehicleModelList(); 3010 VehicleModelList VehicleModelList = new VehicleModelList();
3011 bool NodeISInsert = false; 3011 bool NodeISInsert = false;
3012 3012
3013 if (VehicleModel.VehicleModelList.Count > 0 && VehicleIndex < VehicleModel.VehicleModelList.Count) 3013 if (VehicleModel.VehicleModelList.Count > 0 && VehicleIndex < VehicleModel.VehicleModelList.Count)
3014 { 3014 {
3015 if (VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Count > 0) 3015 if (VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Count > 0)
3016 { 3016 {
3017 VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Clear(); 3017 VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Clear();
3018 } 3018 }
3019 3019
3020 //back up 3020 //back up
3021 if (gGrpBlueNode.Children.Count > 0) 3021 if (gGrpBlueNode.Children.Count > 0)
3022 { 3022 {
3023 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 3023 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
3024 { 3024 {
3025 NodeISInsert = false; 3025 NodeISInsert = false;
3026 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 3026 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
3027 node = ellipseGeometry.Center; 3027 node = ellipseGeometry.Center;
3028 3028
3029 PointMap pMap = new PointMap(); 3029 PointMap pMap = new PointMap();
3030 pMap.pointMap_X = node.X; 3030 pMap.pointMap_X = node.X;
3031 pMap.pointMap_Y = node.Y; 3031 pMap.pointMap_Y = node.Y;
3032 pMap.speed_Map = 1; 3032 pMap.speed_Map = 1;
3033 3033
3034 //Backup List Node Insert of fork 3034 //Backup List Node Insert of fork
3035 if (IndexNodeInsert_List.Count> 0) 3035 if (IndexNodeInsert_List.Count> 0)
3036 { 3036 {
3037 for (int j = 0; j < IndexNodeInsert_List.Count; j++) 3037 for (int j = 0; j < IndexNodeInsert_List.Count; j++)
3038 { 3038 {
3039 if (node.X == IndexNodeInsert_List[j].X && node.Y == IndexNodeInsert_List[j].Y) NodeISInsert = true; 3039 if (node.X == IndexNodeInsert_List[j].X && node.Y == IndexNodeInsert_List[j].Y) NodeISInsert = true;
3040 } 3040 }
3041 } 3041 }
3042 if (NodeISInsert) 3042 if (NodeISInsert)
3043 { 3043 {
3044 pMap.color = ColorNode_Insert; 3044 pMap.color = ColorNode_Insert;
3045 } 3045 }
3046 else 3046 else
3047 { 3047 {
3048 pMap.color = ColorNode_Add; 3048 pMap.color = ColorNode_Add;
3049 } 3049 }
3050 3050
3051 ellipseGeometry = (EllipseGeometry)gGrpScheduleNode.Children[i]; 3051 ellipseGeometry = (EllipseGeometry)gGrpScheduleNode.Children[i];
3052 node = ellipseGeometry.Center; 3052 node = ellipseGeometry.Center;
3053 pMap.pointSchedule_X = node.X; 3053 pMap.pointSchedule_X = node.X;
3054 pMap.pointSchedule_Y = node.Y; 3054 pMap.pointSchedule_Y = node.Y;
3055 pMap.speed_Schedule = 0.2; //Hard code 3055 pMap.speed_Schedule = 0.2; //Hard code
3056 3056
3057 //Node info 3057 //Node info
3058 foreach (ListNodeInfo temp in Lst_Node_tmp[i].NodeInfo_tmp) 3058 foreach (ListNodeInfo temp in Lst_Node_tmp[i].NodeInfo_tmp)
3059 { 3059 {
3060 pMap.ListNodeInfo.Add(temp); 3060 pMap.ListNodeInfo.Add(temp);
3061 3061
3062 //set tam 3062 //set tam
3063 pMap.speed_Map = Lst_Node_tmp[i].NodeInfo_tmp[0].Speed; 3063 pMap.speed_Map = Lst_Node_tmp[i].NodeInfo_tmp[0].Speed;
3064 } 3064 }
3065 3065
3066 VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Add(pMap); 3066 VehicleModel.VehicleModelList[VehicleIndex].pointMapList.Add(pMap);
3067 3067
3068 } 3068 }
3069 } 3069 }
3070 3070
3071 } 3071 }
3072 // create new 3072 // create new
3073 else 3073 else
3074 { 3074 {
3075 VehicleModelList.VehicleName = VehicleItem; 3075 VehicleModelList.VehicleName = VehicleItem;
3076 3076
3077 if (gGrpBlueNode.Children.Count > 0) 3077 if (gGrpBlueNode.Children.Count > 0)
3078 { 3078 {
3079 for (int i = 0; i < gGrpBlueNode.Children.Count; i++) 3079 for (int i = 0; i < gGrpBlueNode.Children.Count; i++)
3080 { 3080 {
3081 NodeISInsert = false; 3081 NodeISInsert = false;
3082 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i]; 3082 ellipseGeometry = (EllipseGeometry)gGrpBlueNode.Children[i];
3083 node = ellipseGeometry.Center; 3083 node = ellipseGeometry.Center;
3084 3084
3085 PointMap pMap = new PointMap(); 3085 PointMap pMap = new PointMap();
3086 pMap.pointMap_X = node.X; 3086 pMap.pointMap_X = node.X;
3087 pMap.pointMap_Y = node.Y; 3087 pMap.pointMap_Y = node.Y;
3088 pMap.speed_Map = 1; 3088 pMap.speed_Map = 1;
3089 3089
3090 if (IndexNodeInsert_List.Count > 0) 3090 if (IndexNodeInsert_List.Count > 0)
3091 { 3091 {
3092 for (int j = 0; j < IndexNodeInsert_List.Count; j++) 3092 for (int j = 0; j < IndexNodeInsert_List.Count; j++)
3093 { 3093 {
3094 if (node.X == IndexNodeInsert_List[j].X && node.Y == IndexNodeInsert_List[j].Y) NodeISInsert = true; 3094 if (node.X == IndexNodeInsert_List[j].X && node.Y == IndexNodeInsert_List[j].Y) NodeISInsert = true;
3095 } 3095 }
3096 } 3096 }
3097 if (NodeISInsert) 3097 if (NodeISInsert)
3098 { 3098 {
3099 pMap.color = ColorNode_Insert; 3099 pMap.color = ColorNode_Insert;
3100 } 3100 }
3101 else 3101 else
3102 { 3102 {
3103 pMap.color = ColorNode_Add; 3103 pMap.color = ColorNode_Add;
3104 } 3104 }
3105 3105
3106 //Node info 3106 //Node info
3107 foreach (ListNodeInfo temp in Lst_Node_tmp[i].NodeInfo_tmp) 3107 foreach (ListNodeInfo temp in Lst_Node_tmp[i].NodeInfo_tmp)
3108 { 3108 {
3109 pMap.ListNodeInfo.Add(temp); 3109 pMap.ListNodeInfo.Add(temp);
3110 } 3110 }
3111 3111
3112 ellipseGeometry = (EllipseGeometry)gGrpScheduleNode.Children[i]; 3112 ellipseGeometry = (EllipseGeometry)gGrpScheduleNode.Children[i];
3113 node = ellipseGeometry.Center; 3113 node = ellipseGeometry.Center;
3114 pMap.pointSchedule_X = node.X; 3114 pMap.pointSchedule_X = node.X;
3115 pMap.pointSchedule_Y = node.Y; 3115 pMap.pointSchedule_Y = node.Y;
3116 pMap.speed_Schedule = 0.2; //Hard code 3116 pMap.speed_Schedule = 0.2; //Hard code
3117 3117
3118 VehicleModelList.pointMapList.Add(pMap); 3118 VehicleModelList.pointMapList.Add(pMap);
3119 } 3119 }
3120 } 3120 }
3121 VehicleModel.VehicleModelList.Add(VehicleModelList); 3121 VehicleModel.VehicleModelList.Add(VehicleModelList);
3122 } 3122 }
3123 } 3123 }
3124 #endregion 3124 #endregion
3125 3125
3126 #region Read file Mapfan 3126 #region Read file Mapfan
3127 3127
3128 public void ReadFile() 3128 public void ReadFile()
3129 { 3129 {
3130 Point node; 3130 Point node;
3131 string[] lines = System.IO.File.ReadAllLines(@"Mapfan\MapFan.index"); 3131 string[] lines = System.IO.File.ReadAllLines(@"Mapfan\MapFan.index");
3132 3132
3133 foreach (string line in lines) 3133 foreach (string line in lines)
3134 { 3134 {
3135 // Use a tab to indent each line of the file. 3135 // Use a tab to indent each line of the file.
3136 string[] tmp = line.Split('\t'); 3136 string[] tmp = line.Split('\t');
3137 3137
3138 double lat = Double.Parse(tmp[1]); 3138 double lat = Double.Parse(tmp[1]);
3139 double log = Double.Parse(tmp[3]); 3139 double log = Double.Parse(tmp[3]);
3140 3140
3141 node = new Point(lat, log); 3141 node = new Point(lat, log);
3142 3142
3143 3143
3144 execCreateNode(node); 3144 execCreateNode(node);
3145 //AddNode(node, gGrpBlueNode); 3145 //AddNode(node, gGrpBlueNode);
3146 3146
3147 3147
3148 } 3148 }
3149 //BindBlueNode2ucNode();
3150 3149
3151
3152 SetScheduleRoute(); 3150 SetScheduleRoute();
3151 ReDrawAllNode2();
3153 3152
3153 }
3154 public void ReDrawAllNode2()
3155 {
3156 LineGeometry lineGeometry = new LineGeometry();
3157 EllipseGeometry ellip;
3158 //delete all line
3159 gGrpScheduleLine.Children.Clear();
3160 scheduleCanvas.Children.Remove(pScheduleLine);
3161
3162 //redraw line
3163 for (int j = 0; j < gGrpScheduleNode.Children.Count - 1; j++)
3164 {
3165 ellip = (EllipseGeometry)gGrpScheduleNode.Children[j];
3166 Point node1 = ellip.Center;
3167 ellip = (EllipseGeometry)gGrpScheduleNode.Children[j + 1];
3168 Point node2 = ellip.Center;
3169 DrawLine(node1, node2, gGrpScheduleLine);
3170 }
3171
3172 scheduleCanvas.Children.Add(pScheduleLine);
3173
3174
3175 //redraw ucNode
3176 for (int k = 0; k < ucScheduleNode_Lst.Count; k++)
3177 {
3178 scheduleCanvas.Children.Remove(ucScheduleNode_Lst[k]);
3179 scheduleCanvas.Children.Add(ucScheduleNode_Lst[k]);
3180 }
3181
3182 ////backup DB
3183 //CreateVehicleNode();
3154 } 3184 }
3155 #endregion 3185 #endregion
3156 3186
3157 #region Get data from AWS 3187 #region Get data from AWS
3158 // Get info fork 3188 // Get info fork
3159 public void GetInfoFork() 3189 public void GetInfoFork()
3160 { 3190 {
3161 var service = new Fork2PCTableService(); 3191 var service = new Fork2PCTableService();
3162 /*Read*/ 3192 /*Read*/
3163 IEnumerable<Fork2PC> fork2PCs = service.GetAllFork2PCs().Where(x => x.ForkID == 1); 3193 IEnumerable<Fork2PC> fork2PCs = service.GetAllFork2PCs().Where(x => x.ForkID == 1);
3164 if (fork2PCs.Count() == 0) 3194 if (fork2PCs.Count() == 0)
3165 return; 3195 return;
3166 var fork2PC = fork2PCs.ElementAt(0); 3196 var fork2PC = fork2PCs.ElementAt(0);
3167 3197
3168 //Clear Route Info Table 3198 //Clear Route Info Table
3169 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear(); 3199 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear();
3170 3200
3171 int _RowIdx = 0; 3201 int _RowIdx = 0;
3172 AddLabeltoGrid(_RowIdx, 0, "ID"); 3202 AddLabeltoGrid(_RowIdx, 0, "ID");
3173 AddLabeltoGrid(_RowIdx, 1, fork2PC.ForkID.ToString()); 3203 AddLabeltoGrid(_RowIdx, 1, fork2PC.ForkID.ToString());
3174 _RowIdx++; 3204 _RowIdx++;
3175 AddLabeltoGrid(_RowIdx, 0, "LAT"); 3205 AddLabeltoGrid(_RowIdx, 0, "LAT");
3176 AddLabeltoGrid(_RowIdx, 1, fork2PC.ForkPos_x.ToString()); 3206 AddLabeltoGrid(_RowIdx, 1, fork2PC.ForkPos_x.ToString());
3177 _RowIdx++; 3207 _RowIdx++;
3178 AddLabeltoGrid(_RowIdx, 0, "LOC"); 3208 AddLabeltoGrid(_RowIdx, 0, "LOC");
3179 AddLabeltoGrid(_RowIdx, 1, fork2PC.ForkPos_y.ToString()); 3209 AddLabeltoGrid(_RowIdx, 1, fork2PC.ForkPos_y.ToString());
3180 _RowIdx++; 3210 _RowIdx++;
3181 AddLabeltoGrid(_RowIdx, 0, "SPD"); 3211 AddLabeltoGrid(_RowIdx, 0, "SPD");
3182 AddLabeltoGrid(_RowIdx, 1, fork2PC.spd_veh.ToString() + "Km/h"); 3212 AddLabeltoGrid(_RowIdx, 1, fork2PC.spd_veh.ToString() + "Km/h");
3183 _RowIdx++; 3213 _RowIdx++;
3184 AddLabeltoGrid(_RowIdx, 0, "GPS"); 3214 AddLabeltoGrid(_RowIdx, 0, "GPS");
3185 AddLabeltoGrid(_RowIdx, 1, fork2PC.GPS_data); 3215 AddLabeltoGrid(_RowIdx, 1, fork2PC.GPS_data);
3186 } 3216 }
3187 3217
3188 /// <summary> 3218 /// <summary>
3189 /// Get infor node 3219 /// Get infor node
3190 /// </summary> 3220 /// </summary>
3191 public void GetInfoNode() 3221 public void GetInfoNode()
3192 { 3222 {
3193 var service = new Robofork15DemoService(); 3223 var service = new Robofork15DemoService();
3194 /*Read*/ 3224 /*Read*/
3195 IEnumerable<Robofork15Demo> fork2PCs = service.GetAllRobofork15Demos().Where(x => x.ForkNo == 1).OrderBy(x => x.NodeID); 3225 IEnumerable<Robofork15Demo> fork2PCs = service.GetAllRobofork15Demos().Where(x => x.ForkNo == 1).OrderBy(x => x.NodeID);
3196 3226
3197 //Clear Route Info Table 3227 //Clear Route Info Table
3198 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear(); 3228 ((RoboforkMenu)System.Windows.Application.Current.MainWindow).grdRouteInfo.Children.Clear();
3199 3229
3200 int _RowIdx = 0; 3230 int _RowIdx = 0;
3201 foreach (var fork2PC in fork2PCs) 3231 foreach (var fork2PC in fork2PCs)
3202 { 3232 {
3203 //Column 1 : node index 3233 //Column 1 : node index
3204 AddLabeltoGrid(_RowIdx, 0, fork2PC.NodeID.ToString()); 3234 AddLabeltoGrid(_RowIdx, 0, fork2PC.NodeID.ToString());
3205 3235
3206 //Column 2 : Pos_X, Pos_Y, Speed 3236 //Column 2 : Pos_X, Pos_Y, Speed
3207 AddLabeltoGrid(_RowIdx, 1, "LAT: " + fork2PC.NodePos_x.ToString()); 3237 AddLabeltoGrid(_RowIdx, 1, "LAT: " + fork2PC.NodePos_x.ToString());
3208 _RowIdx++; 3238 _RowIdx++;
3209 AddLabeltoGrid(_RowIdx, 1, "LOC: " + fork2PC.NodePos_y.ToString()); 3239 AddLabeltoGrid(_RowIdx, 1, "LOC: " + fork2PC.NodePos_y.ToString());
3210 _RowIdx++; 3240 _RowIdx++;
3211 AddLabeltoGrid(_RowIdx, 1, "SPD: " + fork2PC.NodeVehSpd.ToString() + "Km/h" ); 3241 AddLabeltoGrid(_RowIdx, 1, "SPD: " + fork2PC.NodeVehSpd.ToString() + "Km/h" );
3212 _RowIdx++; 3242 _RowIdx++;
3213 } 3243 }
3214 } 3244 }
3215 #endregion 3245 #endregion
3216 } 3246 }
sources/RoboforkApp/RoboforkMenuView.xaml.cs
1 using System; 1 using System;
2 using System.Collections.Generic; 2 using System.Collections.Generic;
3 using System.Linq; 3 using System.Linq;
4 using System.Text; 4 using System.Text;
5 using System.Threading.Tasks; 5 using System.Threading.Tasks;
6 using System.Windows; 6 using System.Windows;
7 using System.Windows.Controls; 7 using System.Windows.Controls;
8 using System.Windows.Data; 8 using System.Windows.Data;
9 using System.Windows.Documents; 9 using System.Windows.Documents;
10 using System.Windows.Input; 10 using System.Windows.Input;
11 using System.Windows.Media; 11 using System.Windows.Media;
12 using System.Windows.Media.Imaging; 12 using System.Windows.Media.Imaging;
13 using System.Windows.Shapes; 13 using System.Windows.Shapes;
14 14
15 namespace RoboforkApp 15 namespace RoboforkApp
16 { 16 {
17 /// <summary> 17 /// <summary>
18 /// Interaction logic for RoboforkMenu.xaml 18 /// Interaction logic for RoboforkMenu.xaml
19 /// </summary> 19 /// </summary>
20 public partial class RoboforkMenu : Window 20 public partial class RoboforkMenu : Window
21 { 21 {
22 public int IndexVehicle = 15; 22 public int IndexVehicle = 15;
23 public RoboforkMenu() 23 public RoboforkMenu()
24 { 24 {
25 InitializeComponent(); 25 InitializeComponent();
26 Load_Form(); 26 Load_Form();
27 } 27 }
28 28
29 private void Load_Form() 29 private void Load_Form()
30 { 30 {
31 //PassplanTree.IsEnabled = false; 31 //PassplanTree.IsEnabled = false;
32 //NodeTree.IsEnabled = false; 32 //NodeTree.IsEnabled = false;
33 33
34 MyDesignerCanvas.InitDrawRoute(); 34 MyDesignerCanvas.InitDrawRoute();
35 35 MyDesignerCanvas.scheduleCanvas = MyScheduleCanvas;
36 MyDesignerCanvas.ReadFile(); 36 MyDesignerCanvas.ReadFile();
37 37
38 } 38 }
39 39
40 private void btnMenu_Selected(object sender, RoutedEventArgs e) 40 private void btnMenu_Selected(object sender, RoutedEventArgs e)
41 { 41 {
42 if (((TreeViewItem)sender) == null) 42 if (((TreeViewItem)sender) == null)
43 { 43 {
44 return; 44 return;
45 } 45 }
46 46
47 string tag = ((TreeViewItem)sender).Tag.ToString(); 47 string tag = ((TreeViewItem)sender).Tag.ToString();
48 switch (tag) 48 switch (tag)
49 { 49 {
50 //2017/03/04 NAM ADD START1 50 //2017/03/04 NAM ADD START1
51 case "NodeTree": 51 case "NodeTree":
52 NewDoBeginSetFreeNotes(); 52 NewDoBeginSetFreeNotes();
53 break; 53 break;
54 //2017/03/04 NAM ADD END 54 //2017/03/04 NAM ADD END
55 55
56 case "SetupRestriction": 56 case "SetupRestriction":
57 DoBeginSetupRestriction(); 57 DoBeginSetupRestriction();
58 break; 58 break;
59 59
60 case "SetStart": 60 case "SetStart":
61 DoBeginSetStart(); 61 DoBeginSetStart();
62 break; 62 break;
63 63
64 case "SetGoal": 64 case "SetGoal":
65 DoBeginSetGoal(); 65 DoBeginSetGoal();
66 break; 66 break;
67 67
68 case "SetupRoute": 68 case "SetupRoute":
69 DoBeginSetupRoute(); 69 DoBeginSetupRoute();
70 break; 70 break;
71 71
72 case "MakeRoot": 72 case "MakeRoot":
73 DoBeginMakeRoot(); 73 DoBeginMakeRoot();
74 break; 74 break;
75 75
76 case "DeleteRoute": 76 case "DeleteRoute":
77 DoBeginDeleteRoute(); 77 DoBeginDeleteRoute();
78 break; 78 break;
79 79
80 case "SetAutoNodes": 80 case "SetAutoNodes":
81 DoBeginSetAutoNotes(); 81 DoBeginSetAutoNotes();
82 break; 82 break;
83 83
84 case "SetFreeNodes": 84 case "SetFreeNodes":
85 DoBeginSetFreeNotes(); 85 DoBeginSetFreeNotes();
86 break; 86 break;
87 87
88 case "ScheduleRoute": 88 case "ScheduleRoute":
89 89
90 DoBeginSetSchedule(); 90 DoBeginSetSchedule();
91 break; 91 break;
92 case "TaskpattermTree": 92 case "TaskpattermTree":
93 DoBeginTask(); 93 DoBeginTask();
94 break; 94 break;
95 case "InfoFork": 95 case "InfoFork":
96 LoadInfoFork(); 96 LoadInfoFork();
97 break; 97 break;
98 case "InfoNode": 98 case "InfoNode":
99 LoadInfoNode(); 99 LoadInfoNode();
100 break; 100 break;
101 101
102 default: 102 default:
103 break; 103 break;
104 } 104 }
105 } 105 }
106 106
107 private void DoBeginSetSchedule() 107 private void DoBeginSetSchedule()
108 { 108 {
109 109
110 MyDesignerCanvas.SetScheduleRoute(); 110 MyDesignerCanvas.SetScheduleRoute();
111 } 111 }
112 112
113 private void NewDoBeginSetFreeNotes() 113 private void NewDoBeginSetFreeNotes()
114 { 114 {
115 MyDesignerCanvas.Init(); 115 MyDesignerCanvas.Init();
116 MyDesignerCanvas.Operation = DesignerCanvas.OperationState.NewDrawSetFreeNode; 116 MyDesignerCanvas.Operation = DesignerCanvas.OperationState.NewDrawSetFreeNode;
117 MyDesignerCanvas.scheduleCanvas = MyScheduleCanvas; 117 MyDesignerCanvas.scheduleCanvas = MyScheduleCanvas;
118 } 118 }
119 119
120 private void LoadInfoFork() 120 private void LoadInfoFork()
121 { 121 {
122 MyDesignerCanvas.GetInfoFork(); 122 MyDesignerCanvas.GetInfoFork();
123 } 123 }
124 124
125 private void LoadInfoNode() 125 private void LoadInfoNode()
126 { 126 {
127 MyDesignerCanvas.GetInfoNode(); 127 MyDesignerCanvas.GetInfoNode();
128 } 128 }
129 129
130 private void btnMenu_UnselectedSet(object sender, RoutedEventArgs e) 130 private void btnMenu_UnselectedSet(object sender, RoutedEventArgs e)
131 { 131 {
132 if (((TreeViewItem)sender) == null) 132 if (((TreeViewItem)sender) == null)
133 { 133 {
134 return; 134 return;
135 } 135 }
136 136
137 string tag = ((TreeViewItem)sender).Tag.ToString(); 137 string tag = ((TreeViewItem)sender).Tag.ToString();
138 switch (tag) 138 switch (tag)
139 { 139 {
140 case "SetupRestriction": 140 case "SetupRestriction":
141 //DoBeginSetStart(); 141 //DoBeginSetStart();
142 break; 142 break;
143 143
144 case "SetStart": 144 case "SetStart":
145 //DoBeginSetStart(); 145 //DoBeginSetStart();
146 break; 146 break;
147 147
148 case "SetGoal": 148 case "SetGoal":
149 //DoBeginSetGoal(); 149 //DoBeginSetGoal();
150 break; 150 break;
151 151
152 case "DeleteRoute": 152 case "DeleteRoute":
153 //DoBeginDeleteRoute(); 153 //DoBeginDeleteRoute();
154 break; 154 break;
155 155
156 case "SetupRoute": 156 case "SetupRoute":
157 //DoBeginSetupRoute(); 157 //DoBeginSetupRoute();
158 break; 158 break;
159 159
160 case "MakeRoot": 160 case "MakeRoot":
161 //DoBeginMakeRoot(); 161 //DoBeginMakeRoot();
162 break; 162 break;
163 163
164 default: 164 default:
165 break; 165 break;
166 } 166 }
167 } 167 }
168 168
169 private void DoBeginTask() 169 private void DoBeginTask()
170 { 170 {
171 MyScheduleCanvas.CreateSimulation(MyDesignerCanvas.ucScheduleNode_Lst, MyDesignerCanvas.VehicleModel, MyDesignerCanvas.VehicleIndex); 171 MyScheduleCanvas.CreateSimulation(MyDesignerCanvas.ucScheduleNode_Lst, MyDesignerCanvas.VehicleModel, MyDesignerCanvas.VehicleIndex);
172 } 172 }
173 173
174 private void DoBeginSetAutoNotes() 174 private void DoBeginSetAutoNotes()
175 { 175 {
176 MyDesignerCanvas.SetAutoNodes(); 176 MyDesignerCanvas.SetAutoNodes();
177 } 177 }
178 178
179 private void DoBeginSetFreeNotes() 179 private void DoBeginSetFreeNotes()
180 { 180 {
181 MyDesignerCanvas.Init(); 181 MyDesignerCanvas.Init();
182 MyDesignerCanvas.Operation = DesignerCanvas.OperationState.DrawSetFreeNode; 182 MyDesignerCanvas.Operation = DesignerCanvas.OperationState.DrawSetFreeNode;
183 } 183 }
184 184
185 private void DoBeginSetupRestriction() 185 private void DoBeginSetupRestriction()
186 { 186 {
187 MyDesignerCanvas.Init(); 187 MyDesignerCanvas.Init();
188 MyDesignerCanvas.Operation = DesignerCanvas.OperationState.DrawObstract; 188 MyDesignerCanvas.Operation = DesignerCanvas.OperationState.DrawObstract;
189 MyDesignerCanvas.mouseState = DesignerCanvas.MouseState.None; 189 MyDesignerCanvas.mouseState = DesignerCanvas.MouseState.None;
190 } 190 }
191 191
192 private void DoBeginSetStart() 192 private void DoBeginSetStart()
193 { 193 {
194 MyDesignerCanvas.CreateStartPoint(); 194 MyDesignerCanvas.CreateStartPoint();
195 } 195 }
196 196
197 private void DoBeginSetGoal() 197 private void DoBeginSetGoal()
198 { 198 {
199 MyDesignerCanvas.CreateGoalPoint(); 199 MyDesignerCanvas.CreateGoalPoint();
200 } 200 }
201 201
202 private void DoBeginSetupRoute() 202 private void DoBeginSetupRoute()
203 { 203 {
204 MyDesignerCanvas.Operation = DesignerCanvas.OperationState.DrawRoute; 204 MyDesignerCanvas.Operation = DesignerCanvas.OperationState.DrawRoute;
205 } 205 }
206 206
207 private void DoBeginMakeRoot() 207 private void DoBeginMakeRoot()
208 { 208 {
209 MyDesignerCanvas.Children.Remove(MyDesignerCanvas.pRootLine); 209 MyDesignerCanvas.Children.Remove(MyDesignerCanvas.pRootLine);
210 MyDesignerCanvas.MakeRoot(); 210 MyDesignerCanvas.MakeRoot();
211 } 211 }
212 212
213 private void DoBeginDeleteRoute() 213 private void DoBeginDeleteRoute()
214 { 214 {
215 MessageBoxResult result = MessageBox.Show("Do you want delete route?", "Delete route", MessageBoxButton.OKCancel); 215 MessageBoxResult result = MessageBox.Show("Do you want delete route?", "Delete route", MessageBoxButton.OKCancel);
216 if (result == MessageBoxResult.OK) 216 if (result == MessageBoxResult.OK)
217 { 217 {
218 MyDesignerCanvas.ClearRoute(); 218 MyDesignerCanvas.ClearRoute();
219 } 219 }
220 } 220 }
221 221
222 private void GetPassplanTree(object sender, RoutedEventArgs e) 222 private void GetPassplanTree(object sender, RoutedEventArgs e)
223 { 223 {
224 MessageBoxResult result = MessageBox.Show("Selected PassplanTree", "", MessageBoxButton.OKCancel); 224 MessageBoxResult result = MessageBox.Show("Selected PassplanTree", "", MessageBoxButton.OKCancel);
225 } 225 }
226 226
227 private void SetPassplanTree(object sender, RoutedEventArgs e) 227 private void SetPassplanTree(object sender, RoutedEventArgs e)
228 { 228 {
229 229
230 } 230 }
231 231
232 private void GetNodeTree(object sender, RoutedEventArgs e) 232 private void GetNodeTree(object sender, RoutedEventArgs e)
233 { 233 {
234 MessageBoxResult result = MessageBox.Show("Selected NodeTree", "", MessageBoxButton.OKCancel); 234 MessageBoxResult result = MessageBox.Show("Selected NodeTree", "", MessageBoxButton.OKCancel);
235 } 235 }
236 236
237 private void SetNodeTree(object sender, RoutedEventArgs e) 237 private void SetNodeTree(object sender, RoutedEventArgs e)
238 { 238 {
239 239
240 } 240 }
241 241
242 private void GetFK15Tree(object sender, RoutedEventArgs e) 242 private void GetFK15Tree(object sender, RoutedEventArgs e)
243 { 243 {
244 MessageBoxResult result = MessageBox.Show("Selected FK15Tree", "", MessageBoxButton.OKCancel); 244 MessageBoxResult result = MessageBox.Show("Selected FK15Tree", "", MessageBoxButton.OKCancel);
245 } 245 }
246 246
247 private void SetFK15Tree(object sender, RoutedEventArgs e) 247 private void SetFK15Tree(object sender, RoutedEventArgs e)
248 { 248 {
249 249
250 } 250 }
251 251
252 private void GetVehicleAddTree(object sender, RoutedEventArgs e) 252 private void GetVehicleAddTree(object sender, RoutedEventArgs e)
253 { 253 {
254 MessageBoxResult result = MessageBox.Show("Selected VehicleAddTree", "", MessageBoxButton.OKCancel); 254 MessageBoxResult result = MessageBox.Show("Selected VehicleAddTree", "", MessageBoxButton.OKCancel);
255 } 255 }
256 256
257 #region Add new Vehicle Item 257 #region Add new Vehicle Item
258 258
259 private void btnVehicleItem_Selected(object sender, RoutedEventArgs e) 259 private void btnVehicleItem_Selected(object sender, RoutedEventArgs e)
260 { 260 {
261 if (((TreeViewItem)sender) == null) 261 if (((TreeViewItem)sender) == null)
262 { 262 {
263 return; 263 return;
264 } 264 }
265 string name = ((TreeViewItem)sender).Name.ToString(); 265 string name = ((TreeViewItem)sender).Name.ToString();
266 string tag = ((TreeViewItem)sender).Tag.ToString(); 266 string tag = ((TreeViewItem)sender).Tag.ToString();
267 string header = ((TreeViewItem)sender).Header.ToString(); 267 string header = ((TreeViewItem)sender).Header.ToString();
268 switch (tag) 268 switch (tag)
269 { 269 {
270 case "VehicleAddTree": 270 case "VehicleAddTree":
271 AddNewVehicleItem(); 271 AddNewVehicleItem();
272 break; 272 break;
273 273
274 case "VehicleItem": 274 case "VehicleItem":
275 GetDataVehicle(name, header); 275 GetDataVehicle(name, header);
276 break; 276 break;
277 277
278 default: 278 default:
279 break; 279 break;
280 } 280 }
281 } 281 }
282 282
283 283
284 private void AddNewVehicleItem() 284 private void AddNewVehicleItem()
285 { 285 {
286 IndexVehicle += 1; 286 IndexVehicle += 1;
287 287
288 Vehicle.Items.RemoveAt(Vehicle.Items.Count - 1); 288 Vehicle.Items.RemoveAt(Vehicle.Items.Count - 1);
289 Vehicle.Items.RemoveAt(Vehicle.Items.Count - 1); 289 Vehicle.Items.RemoveAt(Vehicle.Items.Count - 1);
290 290
291 TreeViewItem item = new TreeViewItem(); 291 TreeViewItem item = new TreeViewItem();
292 item.Header = "FK"+ IndexVehicle.ToString()+"_#1"; 292 item.Header = "FK"+ IndexVehicle.ToString()+"_#1";
293 item.Tag = "VehicleItem"; 293 item.Tag = "VehicleItem";
294 item.FontSize = 17; 294 item.FontSize = 17;
295 item.Selected += new RoutedEventHandler(btnVehicleItem_Selected); 295 item.Selected += new RoutedEventHandler(btnVehicleItem_Selected);
296 //item.IsSelected = true; 296 //item.IsSelected = true;
297 item.IsExpanded = true; 297 item.IsExpanded = true;
298 item.Name = "FK_" + IndexVehicle.ToString(); 298 item.Name = "FK_" + IndexVehicle.ToString();
299 Vehicle.Items.Add(item); 299 Vehicle.Items.Add(item);
300 300
301 TreeViewItem item2 = new TreeViewItem(); 301 TreeViewItem item2 = new TreeViewItem();
302 item2.Header = "[+]"; 302 item2.Header = "[+]";
303 item2.Tag = "VehicleAddTree"; 303 item2.Tag = "VehicleAddTree";
304 item2.FontSize = 17; 304 item2.FontSize = 17;
305 item2.Selected += new RoutedEventHandler(btnVehicleItem_Selected); 305 item2.Selected += new RoutedEventHandler(btnVehicleItem_Selected);
306 item2.Name = "VehicleAdd"; 306 item2.Name = "VehicleAdd";
307 Vehicle.Items.Add(item2); 307 Vehicle.Items.Add(item2);
308 308
309 TreeViewItem item3 = new TreeViewItem(); 309 TreeViewItem item3 = new TreeViewItem();
310 item3.Header = "--------------------"; 310 item3.Header = "--------------------";
311 item3.FontSize = 17; 311 item3.FontSize = 17;
312 item3.Name = "UnderLine"; 312 item3.Name = "UnderLine";
313 Vehicle.Items.Add(item3); 313 Vehicle.Items.Add(item3);
314 314
315 } 315 }
316 316
317 317
318 private void GetDataVehicle(string nameItem, String header) 318 private void GetDataVehicle(string nameItem, String header)
319 { 319 {
320 MyDesignerCanvas.VehicleItem = nameItem; 320 MyDesignerCanvas.VehicleItem = nameItem;
321 MyDesignerCanvas.GetdataVehicle(); 321 MyDesignerCanvas.GetdataVehicle();
322 LabelSchedule.Content = header; 322 LabelSchedule.Content = header;
323 WorkVehicle.Content = "Work [" + header + "]"; 323 WorkVehicle.Content = "Work [" + header + "]";
324 TaskpattermTree.Header = "Task patterm [" + header + "]"; 324 TaskpattermTree.Header = "Task patterm [" + header + "]";
325 } 325 }
326 326
327 #endregion 327 #endregion
328 328
329 329
330 330
331 331
332 private void SetVehicleAddTree(object sender, RoutedEventArgs e) 332 private void SetVehicleAddTree(object sender, RoutedEventArgs e)
333 { 333 {
334 334
335 } 335 }
336 336
337 private void GetTaskpattermTree(object sender, RoutedEventArgs e) 337 private void GetTaskpattermTree(object sender, RoutedEventArgs e)
338 { 338 {
339 339
340 } 340 }
341 341
342 private void SetTaskpattermTree(object sender, RoutedEventArgs e) 342 private void SetTaskpattermTree(object sender, RoutedEventArgs e)
343 { 343 {
344 344
345 } 345 }
346 346
347 private void GetWorkAddTree(object sender, RoutedEventArgs e) 347 private void GetWorkAddTree(object sender, RoutedEventArgs e)
348 { 348 {
349 349
350 } 350 }
351 351
352 private void SetWorkAddTree(object sender, RoutedEventArgs e) 352 private void SetWorkAddTree(object sender, RoutedEventArgs e)
353 { 353 {
354 354
355 } 355 }
356 356
357 private void GetConnectTree(object sender, RoutedEventArgs e) 357 private void GetConnectTree(object sender, RoutedEventArgs e)
358 { 358 {
359 359
360 } 360 }
361 361
362 private void SetConnectTree(object sender, RoutedEventArgs e) 362 private void SetConnectTree(object sender, RoutedEventArgs e)
363 { 363 {
364 364
365 } 365 }
366 366
367 private void GetParameterTree(object sender, RoutedEventArgs e) 367 private void GetParameterTree(object sender, RoutedEventArgs e)
368 { 368 {
369 369
370 } 370 }
371 371
372 private void SetParameterTree(object sender, RoutedEventArgs e) 372 private void SetParameterTree(object sender, RoutedEventArgs e)
373 { 373 {
374 374
375 } 375 }
376 376
377 private void GetScheduleTree(object sender, RoutedEventArgs e) 377 private void GetScheduleTree(object sender, RoutedEventArgs e)
378 { 378 {
379 379
380 } 380 }
381 381
382 private void SetScheduleTree(object sender, RoutedEventArgs e) 382 private void SetScheduleTree(object sender, RoutedEventArgs e)
383 { 383 {
384 384
385 } 385 }
386 386
387 private void GetLoggingTree(object sender, RoutedEventArgs e) 387 private void GetLoggingTree(object sender, RoutedEventArgs e)
388 { 388 {
389 389
390 } 390 }
391 391
392 private void SetLoggingTree(object sender, RoutedEventArgs e) 392 private void SetLoggingTree(object sender, RoutedEventArgs e)
393 { 393 {
394 394
395 } 395 }
396 396
397 private void GetAlertTree(object sender, RoutedEventArgs e) 397 private void GetAlertTree(object sender, RoutedEventArgs e)
398 { 398 {
399 399
400 } 400 }
401 401
402 private void SetAlertTree(object sender, RoutedEventArgs e) 402 private void SetAlertTree(object sender, RoutedEventArgs e)
403 { 403 {
404 404
405 } 405 }
406 406
407 private void GetHelpTree(object sender, RoutedEventArgs e) 407 private void GetHelpTree(object sender, RoutedEventArgs e)
408 { 408 {
409 409
410 } 410 }
411 411
412 private void SetHelpTree(object sender, RoutedEventArgs e) 412 private void SetHelpTree(object sender, RoutedEventArgs e)
413 { 413 {
414 414
415 } 415 }
416 416
417 private void GetNewProjectTree(object sender, RoutedEventArgs e) 417 private void GetNewProjectTree(object sender, RoutedEventArgs e)
418 { 418 {
419 419
420 } 420 }
421 421
422 private void SetNewProjectTree(object sender, RoutedEventArgs e) 422 private void SetNewProjectTree(object sender, RoutedEventArgs e)
423 { 423 {
424 424
425 } 425 }
426 426
427 427
428 } 428 }
429 } 429 }
430 430
sources/RoboforkApp/bin/Release/RboforkApp.vshost.exe
No preview for this file type
sources/RoboforkApp/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache
No preview for this file type
sources/RoboforkApp/obj/Release/RboforkApp_MarkupCompile.cache
1 RboforkApp 1 RboforkApp
2 2
3 3
4 winexe 4 winexe
5 C# 5 C#
6 .cs 6 .cs
7 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\ 7 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\
8 RoboforkApp 8 RoboforkApp
9 none 9 none
10 false 10 false
11 TRACE 11 TRACE
12 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\App.xaml 12 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\App.xaml
13 24-15970495 13 24-15970495
14 14
15 271984491549 15 31-781608262
16 13145648957 16 14-473200920
17 UserControls\simulationRobo.xaml;View\EditNodeView.xaml;Resources\Brushes.xaml;Resources\DesignerItem.xaml;Resources\Expander.xaml;Resources\LangResources.xaml;Resources\ResizeChrome.xaml;Resources\ScrollBar.xaml;Resources\ScrollViewer.xaml;Resources\Slider.xaml;Resources\StatusBar.xaml;Resources\Styles.xaml;Resources\ToolBar.xaml;Resources\Toolbox.xaml;Resources\Tooltip.xaml;Resources\ZoomBox.xaml;RoboforkMenuView.xaml;UserControls\ucDisplayCoordinate.xaml;UserControls\ucNode.xaml;UserControls\ucStartEndButton.xaml;Stencils\BasicShapes.xaml;Stencils\FlowChartSymbols.xaml;Stencils\RegelungstechnikSymbole.xaml;Stencils\SymbolStencils.xaml; 17 UserControls\simulationRobo.xaml;View\EditNodeView.xaml;Resources\Brushes.xaml;Resources\DesignerItem.xaml;Resources\Expander.xaml;Resources\LangResources.xaml;Resources\ResizeChrome.xaml;Resources\ScrollBar.xaml;Resources\ScrollViewer.xaml;Resources\Slider.xaml;Resources\StatusBar.xaml;Resources\Styles.xaml;Resources\ToolBar.xaml;Resources\Toolbox.xaml;Resources\Tooltip.xaml;Resources\ZoomBox.xaml;RoboforkMenuView.xaml;UserControls\ucDisplayCoordinate.xaml;UserControls\ucNode.xaml;UserControls\ucStartEndButton.xaml;Stencils\BasicShapes.xaml;Stencils\FlowChartSymbols.xaml;Stencils\RegelungstechnikSymbole.xaml;Stencils\SymbolStencils.xaml;
18 18
19 False 19 True
20 20
21 21
sources/RoboforkApp/obj/Release/RboforkApp_MarkupCompile.i.cache
1 RboforkApp 1 RboforkApp
2 2
3 3
4 winexe 4 winexe
5 C# 5 C#
6 .cs 6 .cs
7 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\ 7 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\
8 RoboforkApp 8 RoboforkApp
9 none 9 none
10 false 10 false
11 TRACE 11 TRACE
12 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\App.xaml 12 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\App.xaml
13 24-15970495 13 24-15970495
14 14
15 311815591653 15 35-950508158
16 13145648957 16 14-473200920
17 UserControls\simulationRobo.xaml;View\EditNodeView.xaml;Resources\Brushes.xaml;Resources\DesignerItem.xaml;Resources\Expander.xaml;Resources\LangResources.xaml;Resources\ResizeChrome.xaml;Resources\ScrollBar.xaml;Resources\ScrollViewer.xaml;Resources\Slider.xaml;Resources\StatusBar.xaml;Resources\Styles.xaml;Resources\ToolBar.xaml;Resources\Toolbox.xaml;Resources\Tooltip.xaml;Resources\ZoomBox.xaml;RoboforkMenuView.xaml;UserControls\ucDisplayCoordinate.xaml;UserControls\ucNode.xaml;UserControls\ucStartEndButton.xaml;Stencils\BasicShapes.xaml;Stencils\FlowChartSymbols.xaml;Stencils\RegelungstechnikSymbole.xaml;Stencils\SymbolStencils.xaml; 17 UserControls\simulationRobo.xaml;View\EditNodeView.xaml;Resources\Brushes.xaml;Resources\DesignerItem.xaml;Resources\Expander.xaml;Resources\LangResources.xaml;Resources\ResizeChrome.xaml;Resources\ScrollBar.xaml;Resources\ScrollViewer.xaml;Resources\Slider.xaml;Resources\StatusBar.xaml;Resources\Styles.xaml;Resources\ToolBar.xaml;Resources\Toolbox.xaml;Resources\Tooltip.xaml;Resources\ZoomBox.xaml;RoboforkMenuView.xaml;UserControls\ucDisplayCoordinate.xaml;UserControls\ucNode.xaml;UserControls\ucStartEndButton.xaml;Stencils\BasicShapes.xaml;Stencils\FlowChartSymbols.xaml;Stencils\RegelungstechnikSymbole.xaml;Stencils\SymbolStencils.xaml;
18 18
19 False 19 False
20 20
21 21
sources/RoboforkApp/obj/Release/RboforkApp_MarkupCompile.lref
1  1 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
2 2
3 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\Resources\DesignerItem.xaml;; 3 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\Resources\DesignerItem.xaml;;
4 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\Resources\ResizeChrome.xaml;; 4 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\Resources\ResizeChrome.xaml;;
5 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\Resources\Toolbox.xaml;; 5 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\Resources\Toolbox.xaml;;
6 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\Resources\ZoomBox.xaml;; 6 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\Resources\ZoomBox.xaml;;
7 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\RoboforkMenuView.xaml;; 7 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\RoboforkMenuView.xaml;;
8 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\Stencils\BasicShapes.xaml;; 8 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\Stencils\BasicShapes.xaml;;
9 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\Stencils\FlowChartSymbols.xaml;; 9 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\Stencils\FlowChartSymbols.xaml;;
10 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\Stencils\RegelungstechnikSymbole.xaml;; 10 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\Stencils\RegelungstechnikSymbole.xaml;;
11 FE:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\Stencils\SymbolStencils.xaml;; 11 FE:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\Stencils\SymbolStencils.xaml;;
12 12
13 13
sources/RoboforkApp/obj/Release/Resources/DesignerItem.baml
No preview for this file type
sources/RoboforkApp/obj/Release/Resources/ResizeChrome.baml
No preview for this file type
sources/RoboforkApp/obj/Release/Resources/Toolbox.baml
No preview for this file type
sources/RoboforkApp/obj/Release/Resources/ZoomBox.baml
No preview for this file type
sources/RoboforkApp/obj/Release/RoboforkApp.csproj.FileListAbsolute.txt
1 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 1 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
2 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\bin\Release\RboforkApp.exe 2 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\bin\Release\RboforkApp.exe
3 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\bin\Release\RboforkApp.pdb 3 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\bin\Release\RboforkApp.pdb
4 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\EditNodeWindow.baml 4 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\EditNodeWindow.baml
5 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 5 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
6 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Expander.baml 6 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Expander.baml
7 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 7 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
8 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 8 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
9 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 9 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
10 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Slider.baml 10 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Slider.baml
11 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 11 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
12 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Styles.baml 12 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Styles.baml
13 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 13 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
14 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 14 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
15 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 15 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
16 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 16 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
17 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\App.baml 17 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\App.baml
18 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs 18 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs
19 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs 19 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs
20 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 20 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
21 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 21 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
22 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\MainWindow.g.cs 22 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\MainWindow.g.cs
23 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\App.g.cs 23 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\App.g.cs
24 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 24 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
25 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 25 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
26 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 26 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
27 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 27 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
28 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 28 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
29 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 29 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
30 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 30 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
31 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RoboforkMenu.baml 31 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RoboforkMenu.baml
32 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 32 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
33 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 33 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
34 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 34 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
35 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 35 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
36 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\MainWindow.baml 36 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\MainWindow.baml
37 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 37 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
38 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp.exe 38 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp.exe
39 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp.pdb 39 E:\02_Project\Du an Anh Dai\Robofox\sources\RoboforkApp\obj\Release\RboforkApp.pdb
40 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 40 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
41 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\bin\Release\RboforkApp.exe 41 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\bin\Release\RboforkApp.exe
42 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\bin\Release\RboforkApp.pdb 42 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\bin\Release\RboforkApp.pdb
43 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\EditNodeWindow.baml 43 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\EditNodeWindow.baml
44 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 44 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
45 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Expander.baml 45 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Expander.baml
46 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 46 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
47 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 47 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
48 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 48 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
49 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Slider.baml 49 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Slider.baml
50 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 50 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
51 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Styles.baml 51 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Styles.baml
52 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 52 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
53 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 53 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
54 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 54 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
55 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 55 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
56 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\App.baml 56 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\App.baml
57 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs 57 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs
58 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs 58 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs
59 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 59 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
60 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 60 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
61 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\MainWindow.g.cs 61 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\MainWindow.g.cs
62 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\App.g.cs 62 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\App.g.cs
63 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 63 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
64 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 64 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
65 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 65 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
66 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 66 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
67 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 67 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
68 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 68 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
69 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 69 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
70 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RoboforkMenu.baml 70 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RoboforkMenu.baml
71 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 71 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
72 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 72 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
73 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 73 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
74 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 74 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
75 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\MainWindow.baml 75 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\MainWindow.baml
76 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 76 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
77 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp.exe 77 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp.exe
78 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp.pdb 78 E:\02_Project\Du an Anh Dai\Robofork-toan\sources\RoboforkApp\obj\Release\RboforkApp.pdb
79 D:\Project\New_robofork\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 79 D:\Project\New_robofork\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
80 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp.exe 80 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp.exe
81 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp.pdb 81 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp.pdb
82 D:\Project\New_robofork\sources\RoboforkApp\bin\Release\RboforkApp.exe 82 D:\Project\New_robofork\sources\RoboforkApp\bin\Release\RboforkApp.exe
83 D:\Project\New_robofork\sources\RoboforkApp\bin\Release\RboforkApp.pdb 83 D:\Project\New_robofork\sources\RoboforkApp\bin\Release\RboforkApp.pdb
84 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache 84 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache
85 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\EditNodeWindow.baml 85 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\EditNodeWindow.baml
86 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 86 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
87 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Expander.baml 87 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Expander.baml
88 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 88 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
89 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 89 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
90 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 90 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
91 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Slider.baml 91 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Slider.baml
92 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 92 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
93 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Styles.baml 93 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Styles.baml
94 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 94 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
95 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 95 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
96 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 96 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
97 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 97 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
98 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\App.baml 98 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\App.baml
99 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs 99 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs
100 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs 100 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs
101 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 101 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
102 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 102 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
103 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\MainWindow.g.cs 103 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\MainWindow.g.cs
104 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\App.g.cs 104 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\App.g.cs
105 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 105 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
106 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 106 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
107 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 107 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
108 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 108 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
109 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 109 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
110 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 110 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
111 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 111 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
112 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RoboforkMenu.baml 112 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RoboforkMenu.baml
113 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 113 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
114 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 114 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
115 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 115 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
116 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 116 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
117 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\MainWindow.baml 117 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\MainWindow.baml
118 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 118 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
119 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml 119 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml
120 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs 120 D:\Project\New_robofork\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs
121 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 121 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
122 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp.exe 122 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp.exe
123 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp.pdb 123 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp.pdb
124 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache 124 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache
125 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\EditNodeWindow.baml 125 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\EditNodeWindow.baml
126 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 126 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
127 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Expander.baml 127 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Expander.baml
128 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 128 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
129 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 129 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
130 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 130 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
131 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Slider.baml 131 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Slider.baml
132 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 132 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
133 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Styles.baml 133 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Styles.baml
134 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 134 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
135 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 135 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
136 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 136 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
137 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml 137 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml
138 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 138 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
139 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\App.baml 139 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\App.baml
140 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs 140 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs
141 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs 141 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs
142 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 142 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
143 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs 143 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs
144 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 144 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
145 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\MainWindow.g.cs 145 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\MainWindow.g.cs
146 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\App.g.cs 146 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\App.g.cs
147 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 147 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
148 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 148 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
149 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 149 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
150 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\bin\Release\RboforkApp.exe 150 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\bin\Release\RboforkApp.exe
151 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\bin\Release\RboforkApp.pdb 151 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\bin\Release\RboforkApp.pdb
152 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 152 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
153 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 153 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
154 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 154 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
155 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 155 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
156 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RoboforkMenu.baml 156 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RoboforkMenu.baml
157 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 157 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
158 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 158 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
159 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 159 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
160 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 160 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
161 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\MainWindow.baml 161 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\MainWindow.baml
162 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 162 C:\Users\nam\Desktop\sources_Toan\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
163 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 163 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
164 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp.exe 164 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp.exe
165 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp.pdb 165 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp.pdb
166 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\bin\Release\RboforkApp.exe 166 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\bin\Release\RboforkApp.exe
167 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\bin\Release\RboforkApp.pdb 167 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\bin\Release\RboforkApp.pdb
168 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache 168 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache
169 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\EditNodeWindow.baml 169 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\EditNodeWindow.baml
170 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 170 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
171 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Expander.baml 171 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Expander.baml
172 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 172 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
173 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 173 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
174 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 174 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
175 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Slider.baml 175 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Slider.baml
176 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 176 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
177 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Styles.baml 177 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Styles.baml
178 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 178 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
179 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 179 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
180 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 180 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
181 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml 181 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml
182 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 182 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
183 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\App.baml 183 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\App.baml
184 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs 184 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs
185 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs 185 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs
186 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 186 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
187 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs 187 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs
188 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 188 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
189 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\MainWindow.g.cs 189 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\MainWindow.g.cs
190 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\App.g.cs 190 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\App.g.cs
191 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 191 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
192 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 192 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
193 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 193 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
194 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 194 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
195 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 195 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
196 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 196 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
197 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 197 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
198 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RoboforkMenu.baml 198 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RoboforkMenu.baml
199 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 199 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
200 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 200 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
201 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 201 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
202 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 202 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
203 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\MainWindow.baml 203 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\MainWindow.baml
204 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 204 C:\Users\nam\Desktop\Code chuan\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
205 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 205 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
206 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp.exe 206 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp.exe
207 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp.pdb 207 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp.pdb
208 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\bin\Release\RboforkApp.exe 208 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\bin\Release\RboforkApp.exe
209 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\bin\Release\RboforkApp.pdb 209 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\bin\Release\RboforkApp.pdb
210 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache 210 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache
211 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\EditNodeWindow.baml 211 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\EditNodeWindow.baml
212 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 212 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
213 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Expander.baml 213 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Expander.baml
214 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 214 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
215 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 215 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
216 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 216 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
217 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Slider.baml 217 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Slider.baml
218 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 218 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
219 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Styles.baml 219 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Styles.baml
220 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 220 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
221 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 221 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
222 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 222 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
223 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml 223 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml
224 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 224 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
225 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\App.baml 225 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\App.baml
226 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs 226 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs
227 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs 227 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs
228 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 228 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
229 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs 229 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs
230 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 230 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
231 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\MainWindow.g.cs 231 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\MainWindow.g.cs
232 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\App.g.cs 232 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\App.g.cs
233 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 233 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
234 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 234 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
235 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 235 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
236 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 236 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
237 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 237 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
238 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 238 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
239 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 239 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
240 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RoboforkMenu.baml 240 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RoboforkMenu.baml
241 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 241 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
242 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 242 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
243 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 243 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
244 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 244 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
245 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\MainWindow.baml 245 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\MainWindow.baml
246 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 246 C:\Users\nam\Desktop\robofork_newSPEC\20170306\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
247 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 247 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
248 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\bin\Release\RboforkApp.exe 248 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\bin\Release\RboforkApp.exe
249 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\bin\Release\RboforkApp.pdb 249 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\bin\Release\RboforkApp.pdb
250 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\EditNodeWindow.baml 250 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\EditNodeWindow.baml
251 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 251 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
252 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Expander.baml 252 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Expander.baml
253 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 253 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
254 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 254 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
255 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 255 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
256 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Slider.baml 256 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Slider.baml
257 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 257 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
258 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Styles.baml 258 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Styles.baml
259 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 259 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
260 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 260 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
261 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 261 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
262 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml 262 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml
263 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 263 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
264 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\App.baml 264 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\App.baml
265 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs 265 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\EditNodeWindow.g.cs
266 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs 266 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RoboforkMenu.g.cs
267 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 267 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
268 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs 268 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs
269 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 269 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
270 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\MainWindow.g.cs 270 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\MainWindow.g.cs
271 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\App.g.cs 271 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\App.g.cs
272 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 272 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
273 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 273 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
274 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 274 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
275 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 275 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
276 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 276 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
277 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 277 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
278 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 278 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
279 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RoboforkMenu.baml 279 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RoboforkMenu.baml
280 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 280 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
281 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 281 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
282 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 282 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
283 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 283 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
284 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\MainWindow.baml 284 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\MainWindow.baml
285 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 285 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
286 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp.exe 286 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp.exe
287 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp.pdb 287 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RboforkApp.pdb
288 C:\Users\nam\Desktop\New folder (2)\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 288 C:\Users\nam\Desktop\New folder (2)\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
289 C:\Users\nam\Desktop\New folder (2)\sources\RoboforkApp\obj\Release\RboforkApp.exe 289 C:\Users\nam\Desktop\New folder (2)\sources\RoboforkApp\obj\Release\RboforkApp.exe
290 C:\Users\nam\Desktop\New folder (2)\sources\RoboforkApp\obj\Release\RboforkApp.pdb 290 C:\Users\nam\Desktop\New folder (2)\sources\RoboforkApp\obj\Release\RboforkApp.pdb
291 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 291 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
292 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\bin\Release\RboforkApp.exe 292 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\bin\Release\RboforkApp.exe
293 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\bin\Release\RboforkApp.pdb 293 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\bin\Release\RboforkApp.pdb
294 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.baml 294 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.baml
295 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\View\EditNodeView.baml 295 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\View\EditNodeView.baml
296 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 296 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
297 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Expander.baml 297 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Expander.baml
298 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 298 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
299 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 299 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
300 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 300 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
301 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Slider.baml 301 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Slider.baml
302 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 302 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
303 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Styles.baml 303 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Styles.baml
304 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 304 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
305 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 305 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
306 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 306 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
307 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml 307 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml
308 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 308 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
309 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\App.baml 309 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\App.baml
310 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.g.cs 310 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.g.cs
311 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\View\EditNodeView.g.cs 311 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\View\EditNodeView.g.cs
312 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RoboforkMenuView.g.cs 312 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RoboforkMenuView.g.cs
313 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 313 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
314 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs 314 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs
315 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 315 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
316 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\App.g.cs 316 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\App.g.cs
317 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 317 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
318 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 318 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
319 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 319 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
320 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 320 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
321 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 321 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
322 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 322 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
323 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 323 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
324 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RoboforkMenuView.baml 324 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RoboforkMenuView.baml
325 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 325 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
326 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 326 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
327 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 327 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
328 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 328 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
329 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 329 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
330 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp.exe 330 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp.exe
331 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp.pdb 331 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RboforkApp.pdb
332 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\bin\Release\RboforkApp.exe.config 332 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\bin\Release\RboforkApp.exe.config
333 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\bin\Release\RboforkApp.exe 333 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\bin\Release\RboforkApp.exe
334 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\bin\Release\RboforkApp.pdb 334 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\bin\Release\RboforkApp.pdb
335 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.baml 335 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.baml
336 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\View\EditNodeView.baml 336 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\View\EditNodeView.baml
337 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Brushes.baml 337 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Brushes.baml
338 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Expander.baml 338 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Expander.baml
339 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\LangResources.baml 339 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\LangResources.baml
340 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml 340 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ScrollBar.baml
341 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml 341 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ScrollViewer.baml
342 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Slider.baml 342 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Slider.baml
343 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml 343 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\StatusBar.baml
344 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Styles.baml 344 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Styles.baml
345 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml 345 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ToolBar.baml
346 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml 346 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Tooltip.baml
347 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml 347 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.baml
348 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml 348 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucNode.baml
349 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml 349 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.baml
350 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\App.baml 350 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\App.baml
351 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.g.cs 351 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.g.cs
352 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\View\EditNodeView.g.cs 352 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\View\EditNodeView.g.cs
353 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RoboforkMenuView.g.cs 353 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RoboforkMenuView.g.cs
354 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs 354 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucDisplayCoordinate.g.cs
355 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs 355 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucNode.g.cs
356 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs 356 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\UserControls\ucStartEndButton.g.cs
357 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\App.g.cs 357 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\App.g.cs
358 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs 358 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\GeneratedInternalTypeHelper.g.cs
359 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache 359 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.cache
360 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref 360 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp_MarkupCompile.lref
361 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml 361 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\DesignerItem.baml
362 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml 362 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ResizeChrome.baml
363 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml 363 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\Toolbox.baml
364 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml 364 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Resources\ZoomBox.baml
365 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RoboforkMenuView.baml 365 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RoboforkMenuView.baml
366 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml 366 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Stencils\BasicShapes.baml
367 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml 367 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Stencils\FlowChartSymbols.baml
368 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml 368 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Stencils\RegelungstechnikSymbole.baml
369 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml 369 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\Stencils\SymbolStencils.baml
370 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp.g.resources 370 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp.g.resources
371 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp.exe 371 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp.exe
372 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp.pdb 372 C:\Users\nam\Desktop\robofork_newSPEC\20170319\sources\RoboforkApp\obj\Release\RboforkApp.pdb
373 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache 373 E:\02_Project\Du an Anh Dai\Robofork\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache
374 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RoboforkApp.csprojResolveAssemblyReference.cache
375 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.baml
376 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\View\EditNodeView.baml
377 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\UserControls\simulationRobo.g.cs
378 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\View\EditNodeView.g.cs
379 E:\02_Project\Du an Anh Dai\Robofork2\sources\RoboforkApp\obj\Release\RoboforkMenuView.g.cs
374 380
sources/RoboforkApp/obj/Release/RoboforkMenuView.baml
No preview for this file type
sources/RoboforkApp/obj/Release/RoboforkMenuView.g.cs
1 #pragma checksum "..\..\RoboforkMenuView.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "599231713FE3089DBEC7F5AFDBB4E057" 1 #pragma checksum "..\..\RoboforkMenuView.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "16F6F520191E2176C653E3BFDE782900"
2 //------------------------------------------------------------------------------ 2 //------------------------------------------------------------------------------
3 // <auto-generated> 3 // <auto-generated>
4 // This code was generated by a tool. 4 // This code was generated by a tool.
5 // Runtime Version:4.0.30319.42000 5 // Runtime Version:4.0.30319.42000
6 // 6 //
7 // Changes to this file may cause incorrect behavior and will be lost if 7 // Changes to this file may cause incorrect behavior and will be lost if
8 // the code is regenerated. 8 // the code is regenerated.
9 // </auto-generated> 9 // </auto-generated>
10 //------------------------------------------------------------------------------ 10 //------------------------------------------------------------------------------
11 11
12 using RoboforkApp; 12 using RoboforkApp;
13 using System; 13 using System;
14 using System.Diagnostics; 14 using System.Diagnostics;
15 using System.Windows; 15 using System.Windows;
16 using System.Windows.Automation; 16 using System.Windows.Automation;
17 using System.Windows.Controls; 17 using System.Windows.Controls;
18 using System.Windows.Controls.Primitives; 18 using System.Windows.Controls.Primitives;
19 using System.Windows.Data; 19 using System.Windows.Data;
20 using System.Windows.Documents; 20 using System.Windows.Documents;
21 using System.Windows.Ink; 21 using System.Windows.Ink;
22 using System.Windows.Input; 22 using System.Windows.Input;
23 using System.Windows.Markup; 23 using System.Windows.Markup;
24 using System.Windows.Media; 24 using System.Windows.Media;
25 using System.Windows.Media.Animation; 25 using System.Windows.Media.Animation;
26 using System.Windows.Media.Effects; 26 using System.Windows.Media.Effects;
27 using System.Windows.Media.Imaging; 27 using System.Windows.Media.Imaging;
28 using System.Windows.Media.Media3D; 28 using System.Windows.Media.Media3D;
29 using System.Windows.Media.TextFormatting; 29 using System.Windows.Media.TextFormatting;
30 using System.Windows.Navigation; 30 using System.Windows.Navigation;
31 using System.Windows.Shapes; 31 using System.Windows.Shapes;
32 using System.Windows.Shell; 32 using System.Windows.Shell;
33 33
34 34
35 namespace RoboforkApp { 35 namespace RoboforkApp {
36 36
37 37
38 /// <summary> 38 /// <summary>
39 /// RoboforkMenu 39 /// RoboforkMenu
40 /// </summary> 40 /// </summary>
41 public partial class RoboforkMenu : System.Windows.Window, System.Windows.Markup.IComponentConnector { 41 public partial class RoboforkMenu : System.Windows.Window, System.Windows.Markup.IComponentConnector {
42 42
43 43
44 #line 40 "..\..\RoboforkMenuView.xaml" 44 #line 40 "..\..\RoboforkMenuView.xaml"
45 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 45 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
46 internal System.Windows.Controls.TreeView ProjectTreeView; 46 internal System.Windows.Controls.TreeView ProjectTreeView;
47 47
48 #line default 48 #line default
49 #line hidden 49 #line hidden
50 50
51 51
52 #line 41 "..\..\RoboforkMenuView.xaml" 52 #line 41 "..\..\RoboforkMenuView.xaml"
53 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 53 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
54 internal System.Windows.Controls.TreeViewItem ProjectAAA; 54 internal System.Windows.Controls.TreeViewItem ProjectAAA;
55 55
56 #line default 56 #line default
57 #line hidden 57 #line hidden
58 58
59 59
60 #line 42 "..\..\RoboforkMenuView.xaml" 60 #line 42 "..\..\RoboforkMenuView.xaml"
61 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 61 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
62 internal System.Windows.Controls.TreeViewItem Map; 62 internal System.Windows.Controls.TreeViewItem Map;
63 63
64 #line default 64 #line default
65 #line hidden 65 #line hidden
66 66
67 67
68 #line 43 "..\..\RoboforkMenuView.xaml" 68 #line 43 "..\..\RoboforkMenuView.xaml"
69 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 69 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
70 internal System.Windows.Controls.TreeViewItem SetupRestriction; 70 internal System.Windows.Controls.TreeViewItem SetupRestriction;
71 71
72 #line default 72 #line default
73 #line hidden 73 #line hidden
74 74
75 75
76 #line 50 "..\..\RoboforkMenuView.xaml" 76 #line 50 "..\..\RoboforkMenuView.xaml"
77 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 77 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
78 internal System.Windows.Controls.TreeViewItem NodeTree; 78 internal System.Windows.Controls.TreeViewItem NodeTree;
79 79
80 #line default 80 #line default
81 #line hidden 81 #line hidden
82 82
83 83
84 #line 56 "..\..\RoboforkMenuView.xaml" 84 #line 56 "..\..\RoboforkMenuView.xaml"
85 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 85 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
86 internal System.Windows.Controls.TreeViewItem Vehicle; 86 internal System.Windows.Controls.TreeViewItem LoadDB;
87 87
88 #line default 88 #line default
89 #line hidden 89 #line hidden
90 90
91 91
92 #line 57 "..\..\RoboforkMenuView.xaml" 92 #line 57 "..\..\RoboforkMenuView.xaml"
93 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 93 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
94 internal System.Windows.Controls.TreeViewItem FK_15; 94 internal System.Windows.Controls.TreeViewItem FORK_FK15;
95 95
96 #line default 96 #line default
97 #line hidden 97 #line hidden
98 98
99 99
100 #line 58 "..\..\RoboforkMenuView.xaml" 100 #line 58 "..\..\RoboforkMenuView.xaml"
101 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 101 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
102 internal System.Windows.Controls.TreeViewItem NODE_FK15;
103
104 #line default
105 #line hidden
106
107
108 #line 61 "..\..\RoboforkMenuView.xaml"
109 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
110 internal System.Windows.Controls.TreeViewItem Vehicle;
111
112 #line default
113 #line hidden
114
115
116 #line 62 "..\..\RoboforkMenuView.xaml"
117 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
118 internal System.Windows.Controls.TreeViewItem FK_15;
119
120 #line default
121 #line hidden
122
123
124 #line 63 "..\..\RoboforkMenuView.xaml"
125 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
102 internal System.Windows.Controls.TreeViewItem VehicleAdd; 126 internal System.Windows.Controls.TreeViewItem VehicleAdd;
103 127
104 #line default 128 #line default
105 #line hidden 129 #line hidden
106 130
107 131
108 #line 59 "..\..\RoboforkMenuView.xaml" 132 #line 64 "..\..\RoboforkMenuView.xaml"
109 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 133 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
110 internal System.Windows.Controls.TreeViewItem UnderLine; 134 internal System.Windows.Controls.TreeViewItem UnderLine;
111 135
112 #line default 136 #line default
113 #line hidden 137 #line hidden
114 138
115 139
116 #line 63 "..\..\RoboforkMenuView.xaml" 140 #line 68 "..\..\RoboforkMenuView.xaml"
117 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 141 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
118 internal System.Windows.Controls.TreeViewItem TaskpattermTree; 142 internal System.Windows.Controls.TreeViewItem TaskpattermTree;
119 143
120 #line default 144 #line default
121 #line hidden 145 #line hidden
122 146
123 147
124 #line 67 "..\..\RoboforkMenuView.xaml" 148 #line 72 "..\..\RoboforkMenuView.xaml"
125 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 149 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
126 internal System.Windows.Controls.TreeViewItem WorkAddTree; 150 internal System.Windows.Controls.TreeViewItem WorkAddTree;
127 151
128 #line default 152 #line default
129 #line hidden 153 #line hidden
130 154
131 155
132 #line 80 "..\..\RoboforkMenuView.xaml" 156 #line 85 "..\..\RoboforkMenuView.xaml"
133 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 157 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
134 internal System.Windows.Controls.TreeViewItem ConnectTree; 158 internal System.Windows.Controls.TreeViewItem ConnectTree;
135 159
136 #line default 160 #line default
137 #line hidden 161 #line hidden
138 162
139 163
140 #line 86 "..\..\RoboforkMenuView.xaml" 164 #line 91 "..\..\RoboforkMenuView.xaml"
141 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 165 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
142 internal System.Windows.Controls.TreeViewItem ParameterTree; 166 internal System.Windows.Controls.TreeViewItem ParameterTree;
143 167
144 #line default 168 #line default
145 #line hidden 169 #line hidden
146 170
147 171
148 #line 97 "..\..\RoboforkMenuView.xaml" 172 #line 102 "..\..\RoboforkMenuView.xaml"
149 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 173 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
150 internal System.Windows.Controls.TreeViewItem LoggingTree; 174 internal System.Windows.Controls.TreeViewItem LoggingTree;
151 175
152 #line default 176 #line default
153 #line hidden 177 #line hidden
154 178
155 179
156 #line 106 "..\..\RoboforkMenuView.xaml" 180 #line 111 "..\..\RoboforkMenuView.xaml"
157 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 181 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
158 internal System.Windows.Controls.TreeViewItem AlertTree; 182 internal System.Windows.Controls.TreeViewItem AlertTree;
159 183
160 #line default 184 #line default
161 #line hidden 185 #line hidden
162 186
163 187
164 #line 112 "..\..\RoboforkMenuView.xaml" 188 #line 117 "..\..\RoboforkMenuView.xaml"
165 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 189 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
166 internal System.Windows.Controls.TreeViewItem HelpTree; 190 internal System.Windows.Controls.TreeViewItem HelpTree;
167 191
168 #line default 192 #line default
169 #line hidden 193 #line hidden
170 194
171 195
172 #line 118 "..\..\RoboforkMenuView.xaml" 196 #line 123 "..\..\RoboforkMenuView.xaml"
173 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 197 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
174 internal System.Windows.Controls.TreeViewItem NewProjectTree; 198 internal System.Windows.Controls.TreeViewItem NewProjectTree;
175 199
176 #line default 200 #line default
177 #line hidden 201 #line hidden
178 202
179 203
180 #line 136 "..\..\RoboforkMenuView.xaml" 204 #line 141 "..\..\RoboforkMenuView.xaml"
181 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 205 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
182 internal System.Windows.Controls.TabControl MainTab; 206 internal System.Windows.Controls.TabControl MainTab;
183 207
184 #line default 208 #line default
185 #line hidden 209 #line hidden
186 210
187 211
188 #line 139 "..\..\RoboforkMenuView.xaml" 212 #line 144 "..\..\RoboforkMenuView.xaml"
189 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 213 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
190 internal System.Windows.Controls.TabItem TabMap; 214 internal System.Windows.Controls.TabItem TabMap;
191 215
192 #line default 216 #line default
193 #line hidden 217 #line hidden
194 218
195 219
196 #line 152 "..\..\RoboforkMenuView.xaml" 220 #line 157 "..\..\RoboforkMenuView.xaml"
197 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 221 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
198 internal System.Windows.Controls.Grid GridMap; 222 internal System.Windows.Controls.Grid GridMap;
199 223
200 #line default 224 #line default
201 #line hidden 225 #line hidden
202 226
203 227
204 #line 164 "..\..\RoboforkMenuView.xaml" 228 #line 169 "..\..\RoboforkMenuView.xaml"
205 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 229 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
206 internal RoboforkApp.DesignerCanvas MyDesignerCanvas; 230 internal RoboforkApp.DesignerCanvas MyDesignerCanvas;
207 231
208 #line default 232 #line default
209 #line hidden 233 #line hidden
210 234
211 235
212 #line 171 "..\..\RoboforkMenuView.xaml" 236 #line 176 "..\..\RoboforkMenuView.xaml"
213 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 237 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
214 internal System.Windows.Controls.Grid MCGrid; 238 internal System.Windows.Controls.Grid MCGrid;
215 239
216 #line default 240 #line default
217 #line hidden 241 #line hidden
218 242
219 243
220 #line 233 "..\..\RoboforkMenuView.xaml" 244 #line 238 "..\..\RoboforkMenuView.xaml"
221 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 245 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
222 internal System.Windows.Controls.Grid grdRouteInfo; 246 internal System.Windows.Controls.Grid grdRouteInfo;
223 247
224 #line default 248 #line default
225 #line hidden 249 #line hidden
226 250
227 251
228 #line 307 "..\..\RoboforkMenuView.xaml" 252 #line 312 "..\..\RoboforkMenuView.xaml"
229 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 253 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
230 internal System.Windows.Controls.Label LabelSchedule; 254 internal System.Windows.Controls.Label LabelSchedule;
231 255
232 #line default 256 #line default
233 #line hidden 257 #line hidden
234 258
235 259
236 #line 311 "..\..\RoboforkMenuView.xaml" 260 #line 316 "..\..\RoboforkMenuView.xaml"
237 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 261 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
238 internal RoboforkApp.ScheduleCanvas MyScheduleCanvas; 262 internal RoboforkApp.ScheduleCanvas MyScheduleCanvas;
239 263
240 #line default 264 #line default
241 #line hidden 265 #line hidden
242 266
243 267
244 #line 319 "..\..\RoboforkMenuView.xaml" 268 #line 324 "..\..\RoboforkMenuView.xaml"
245 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 269 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
246 internal System.Windows.Controls.Grid MCGridShedule; 270 internal System.Windows.Controls.Grid MCGridShedule;
247 271
248 #line default 272 #line default
249 #line hidden 273 #line hidden
250 274
251 275
252 #line 345 "..\..\RoboforkMenuView.xaml" 276 #line 350 "..\..\RoboforkMenuView.xaml"
253 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 277 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
254 internal System.Windows.Controls.Label WorkVehicle; 278 internal System.Windows.Controls.Label WorkVehicle;
255 279
256 #line default 280 #line default
257 #line hidden 281 #line hidden
258 282
259 283
260 #line 350 "..\..\RoboforkMenuView.xaml" 284 #line 355 "..\..\RoboforkMenuView.xaml"
261 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 285 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
262 internal System.Windows.Controls.TabItem TabWork; 286 internal System.Windows.Controls.TabItem TabWork;
263 287
264 #line default 288 #line default
265 #line hidden 289 #line hidden
266 290
267 291
268 #line 357 "..\..\RoboforkMenuView.xaml" 292 #line 362 "..\..\RoboforkMenuView.xaml"
269 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 293 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
270 internal System.Windows.Controls.TabItem TabSchedule; 294 internal System.Windows.Controls.TabItem TabSchedule;
271 295
272 #line default 296 #line default
273 #line hidden 297 #line hidden
274 298
275 private bool _contentLoaded; 299 private bool _contentLoaded;
276 300
277 /// <summary> 301 /// <summary>
278 /// InitializeComponent 302 /// InitializeComponent
279 /// </summary> 303 /// </summary>
280 [System.Diagnostics.DebuggerNonUserCodeAttribute()] 304 [System.Diagnostics.DebuggerNonUserCodeAttribute()]
281 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] 305 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
282 public void InitializeComponent() { 306 public void InitializeComponent() {
283 if (_contentLoaded) { 307 if (_contentLoaded) {
284 return; 308 return;
285 } 309 }
286 _contentLoaded = true; 310 _contentLoaded = true;
287 System.Uri resourceLocater = new System.Uri("/RboforkApp;component/roboforkmenuview.xaml", System.UriKind.Relative); 311 System.Uri resourceLocater = new System.Uri("/RboforkApp;component/roboforkmenuview.xaml", System.UriKind.Relative);
288 312
289 #line 1 "..\..\RoboforkMenuView.xaml" 313 #line 1 "..\..\RoboforkMenuView.xaml"
290 System.Windows.Application.LoadComponent(this, resourceLocater); 314 System.Windows.Application.LoadComponent(this, resourceLocater);
291 315
292 #line default 316 #line default
293 #line hidden 317 #line hidden
294 } 318 }
295 319
296 [System.Diagnostics.DebuggerNonUserCodeAttribute()] 320 [System.Diagnostics.DebuggerNonUserCodeAttribute()]
297 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] 321 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
298 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 322 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
299 internal System.Delegate _CreateDelegate(System.Type delegateType, string handler) { 323 internal System.Delegate _CreateDelegate(System.Type delegateType, string handler) {
300 return System.Delegate.CreateDelegate(delegateType, this, handler); 324 return System.Delegate.CreateDelegate(delegateType, this, handler);
301 } 325 }
302 326
303 [System.Diagnostics.DebuggerNonUserCodeAttribute()] 327 [System.Diagnostics.DebuggerNonUserCodeAttribute()]
304 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] 328 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
305 [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] 329 [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
306 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] 330 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
307 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] 331 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
308 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] 332 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
309 void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { 333 void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
310 switch (connectionId) 334 switch (connectionId)
311 { 335 {
312 case 1: 336 case 1:
313 this.ProjectTreeView = ((System.Windows.Controls.TreeView)(target)); 337 this.ProjectTreeView = ((System.Windows.Controls.TreeView)(target));
314 return; 338 return;
315 case 2: 339 case 2:
316 this.ProjectAAA = ((System.Windows.Controls.TreeViewItem)(target)); 340 this.ProjectAAA = ((System.Windows.Controls.TreeViewItem)(target));
317 return; 341 return;
318 case 3: 342 case 3:
319 this.Map = ((System.Windows.Controls.TreeViewItem)(target)); 343 this.Map = ((System.Windows.Controls.TreeViewItem)(target));
320 return; 344 return;
321 case 4: 345 case 4:
322 this.SetupRestriction = ((System.Windows.Controls.TreeViewItem)(target)); 346 this.SetupRestriction = ((System.Windows.Controls.TreeViewItem)(target));
323 347
324 #line 43 "..\..\RoboforkMenuView.xaml" 348 #line 43 "..\..\RoboforkMenuView.xaml"
325 this.SetupRestriction.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected); 349 this.SetupRestriction.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
326 350
327 #line default 351 #line default
328 #line hidden 352 #line hidden
329 353
330 #line 43 "..\..\RoboforkMenuView.xaml" 354 #line 43 "..\..\RoboforkMenuView.xaml"
331 this.SetupRestriction.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet); 355 this.SetupRestriction.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet);
332 356
333 #line default 357 #line default
334 #line hidden 358 #line hidden
335 return; 359 return;
336 case 5: 360 case 5:
337 this.NodeTree = ((System.Windows.Controls.TreeViewItem)(target)); 361 this.NodeTree = ((System.Windows.Controls.TreeViewItem)(target));
338 362
339 #line 50 "..\..\RoboforkMenuView.xaml" 363 #line 50 "..\..\RoboforkMenuView.xaml"
340 this.NodeTree.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected); 364 this.NodeTree.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
341 365
342 #line default 366 #line default
343 #line hidden 367 #line hidden
344 368
345 #line 50 "..\..\RoboforkMenuView.xaml" 369 #line 50 "..\..\RoboforkMenuView.xaml"
346 this.NodeTree.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet); 370 this.NodeTree.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet);
347 371
348 #line default 372 #line default
349 #line hidden 373 #line hidden
350 return; 374 return;
351 case 6: 375 case 6:
352 this.Vehicle = ((System.Windows.Controls.TreeViewItem)(target)); 376 this.LoadDB = ((System.Windows.Controls.TreeViewItem)(target));
353 return; 377 return;
354 case 7: 378 case 7:
355 this.FK_15 = ((System.Windows.Controls.TreeViewItem)(target)); 379 this.FORK_FK15 = ((System.Windows.Controls.TreeViewItem)(target));
356 380
357 #line 57 "..\..\RoboforkMenuView.xaml" 381 #line 57 "..\..\RoboforkMenuView.xaml"
358 this.FK_15.Selected += new System.Windows.RoutedEventHandler(this.btnVehicleItem_Selected); 382 this.FORK_FK15.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
359 383
360 #line default 384 #line default
361 #line hidden 385 #line hidden
362 return; 386 return;
363 case 8: 387 case 8:
364 this.VehicleAdd = ((System.Windows.Controls.TreeViewItem)(target)); 388 this.NODE_FK15 = ((System.Windows.Controls.TreeViewItem)(target));
365 389
366 #line 58 "..\..\RoboforkMenuView.xaml" 390 #line 58 "..\..\RoboforkMenuView.xaml"
367 this.VehicleAdd.Selected += new System.Windows.RoutedEventHandler(this.btnVehicleItem_Selected); 391 this.NODE_FK15.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
368 392
369 #line default 393 #line default
370 #line hidden 394 #line hidden
371 return; 395 return;
372 case 9: 396 case 9:
373 this.UnderLine = ((System.Windows.Controls.TreeViewItem)(target)); 397 this.Vehicle = ((System.Windows.Controls.TreeViewItem)(target));
374 return; 398 return;
375 case 10: 399 case 10:
376 this.TaskpattermTree = ((System.Windows.Controls.TreeViewItem)(target)); 400 this.FK_15 = ((System.Windows.Controls.TreeViewItem)(target));
377 401
402 #line 62 "..\..\RoboforkMenuView.xaml"
403 this.FK_15.Selected += new System.Windows.RoutedEventHandler(this.btnVehicleItem_Selected);
404
405 #line default
406 #line hidden
407 return;
408 case 11:
409 this.VehicleAdd = ((System.Windows.Controls.TreeViewItem)(target));
410
378 #line 63 "..\..\RoboforkMenuView.xaml" 411 #line 63 "..\..\RoboforkMenuView.xaml"
412 this.VehicleAdd.Selected += new System.Windows.RoutedEventHandler(this.btnVehicleItem_Selected);
413
414 #line default
415 #line hidden
416 return;
417 case 12:
418 this.UnderLine = ((System.Windows.Controls.TreeViewItem)(target));
419 return;
420 case 13:
421 this.TaskpattermTree = ((System.Windows.Controls.TreeViewItem)(target));
422
423 #line 68 "..\..\RoboforkMenuView.xaml"
379 this.TaskpattermTree.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected); 424 this.TaskpattermTree.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
380 425
381 #line default 426 #line default
382 #line hidden 427 #line hidden
383 428
384 #line 63 "..\..\RoboforkMenuView.xaml" 429 #line 68 "..\..\RoboforkMenuView.xaml"
385 this.TaskpattermTree.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet); 430 this.TaskpattermTree.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet);
386 431
387 #line default 432 #line default
388 #line hidden 433 #line hidden
389 return; 434 return;
390 case 11: 435 case 14:
391 this.WorkAddTree = ((System.Windows.Controls.TreeViewItem)(target)); 436 this.WorkAddTree = ((System.Windows.Controls.TreeViewItem)(target));
392 437
393 #line 68 "..\..\RoboforkMenuView.xaml" 438 #line 73 "..\..\RoboforkMenuView.xaml"
394 this.WorkAddTree.Selected += new System.Windows.RoutedEventHandler(this.GetWorkAddTree); 439 this.WorkAddTree.Selected += new System.Windows.RoutedEventHandler(this.GetWorkAddTree);
395 440
396 #line default 441 #line default
397 #line hidden 442 #line hidden
398 443
399 #line 69 "..\..\RoboforkMenuView.xaml" 444 #line 74 "..\..\RoboforkMenuView.xaml"
400 this.WorkAddTree.Unselected += new System.Windows.RoutedEventHandler(this.SetWorkAddTree); 445 this.WorkAddTree.Unselected += new System.Windows.RoutedEventHandler(this.SetWorkAddTree);
401 446
402 #line default 447 #line default
403 #line hidden 448 #line hidden
404 return; 449 return;
405 case 12: 450 case 15:
406 this.ConnectTree = ((System.Windows.Controls.TreeViewItem)(target)); 451 this.ConnectTree = ((System.Windows.Controls.TreeViewItem)(target));
407 452
408 #line 81 "..\..\RoboforkMenuView.xaml" 453 #line 86 "..\..\RoboforkMenuView.xaml"
409 this.ConnectTree.Selected += new System.Windows.RoutedEventHandler(this.GetConnectTree); 454 this.ConnectTree.Selected += new System.Windows.RoutedEventHandler(this.GetConnectTree);
410 455
411 #line default 456 #line default
412 #line hidden 457 #line hidden
413 458
414 #line 82 "..\..\RoboforkMenuView.xaml" 459 #line 87 "..\..\RoboforkMenuView.xaml"
415 this.ConnectTree.Unselected += new System.Windows.RoutedEventHandler(this.SetConnectTree); 460 this.ConnectTree.Unselected += new System.Windows.RoutedEventHandler(this.SetConnectTree);
416 461
417 #line default 462 #line default
418 #line hidden 463 #line hidden
419 return; 464 return;
420 case 13: 465 case 16:
421 this.ParameterTree = ((System.Windows.Controls.TreeViewItem)(target)); 466 this.ParameterTree = ((System.Windows.Controls.TreeViewItem)(target));
422 467
423 #line 87 "..\..\RoboforkMenuView.xaml" 468 #line 92 "..\..\RoboforkMenuView.xaml"
424 this.ParameterTree.Selected += new System.Windows.RoutedEventHandler(this.GetParameterTree); 469 this.ParameterTree.Selected += new System.Windows.RoutedEventHandler(this.GetParameterTree);
425 470
426 #line default 471 #line default
427 #line hidden 472 #line hidden
428 473
429 #line 88 "..\..\RoboforkMenuView.xaml" 474 #line 93 "..\..\RoboforkMenuView.xaml"
430 this.ParameterTree.Unselected += new System.Windows.RoutedEventHandler(this.SetParameterTree); 475 this.ParameterTree.Unselected += new System.Windows.RoutedEventHandler(this.SetParameterTree);
431 476
432 #line default 477 #line default
433 #line hidden 478 #line hidden
434 return; 479 return;
435 case 14: 480 case 17:
436 this.LoggingTree = ((System.Windows.Controls.TreeViewItem)(target)); 481 this.LoggingTree = ((System.Windows.Controls.TreeViewItem)(target));
437 482
438 #line 98 "..\..\RoboforkMenuView.xaml" 483 #line 103 "..\..\RoboforkMenuView.xaml"
439 this.LoggingTree.Selected += new System.Windows.RoutedEventHandler(this.GetLoggingTree); 484 this.LoggingTree.Selected += new System.Windows.RoutedEventHandler(this.GetLoggingTree);
440 485
441 #line default 486 #line default
442 #line hidden 487 #line hidden
443 488
444 #line 99 "..\..\RoboforkMenuView.xaml" 489 #line 104 "..\..\RoboforkMenuView.xaml"
445 this.LoggingTree.Unselected += new System.Windows.RoutedEventHandler(this.SetLoggingTree); 490 this.LoggingTree.Unselected += new System.Windows.RoutedEventHandler(this.SetLoggingTree);
446 491
447 #line default 492 #line default
448 #line hidden 493 #line hidden
449 return; 494 return;
450 case 15: 495 case 18:
451 this.AlertTree = ((System.Windows.Controls.TreeViewItem)(target)); 496 this.AlertTree = ((System.Windows.Controls.TreeViewItem)(target));
452 497
453 #line 107 "..\..\RoboforkMenuView.xaml" 498 #line 112 "..\..\RoboforkMenuView.xaml"
454 this.AlertTree.Selected += new System.Windows.RoutedEventHandler(this.GetAlertTree); 499 this.AlertTree.Selected += new System.Windows.RoutedEventHandler(this.GetAlertTree);
455 500
456 #line default 501 #line default
457 #line hidden 502 #line hidden
458 503
459 #line 108 "..\..\RoboforkMenuView.xaml" 504 #line 113 "..\..\RoboforkMenuView.xaml"
460 this.AlertTree.Unselected += new System.Windows.RoutedEventHandler(this.SetAlertTree); 505 this.AlertTree.Unselected += new System.Windows.RoutedEventHandler(this.SetAlertTree);
461 506
462 #line default 507 #line default
463 #line hidden 508 #line hidden
464 return; 509 return;
465 case 16: 510 case 19:
466 this.HelpTree = ((System.Windows.Controls.TreeViewItem)(target)); 511 this.HelpTree = ((System.Windows.Controls.TreeViewItem)(target));
467 512
468 #line 113 "..\..\RoboforkMenuView.xaml" 513 #line 118 "..\..\RoboforkMenuView.xaml"
469 this.HelpTree.Selected += new System.Windows.RoutedEventHandler(this.GetHelpTree); 514 this.HelpTree.Selected += new System.Windows.RoutedEventHandler(this.GetHelpTree);
470 515
471 #line default 516 #line default
472 #line hidden 517 #line hidden
473 518
474 #line 114 "..\..\RoboforkMenuView.xaml" 519 #line 119 "..\..\RoboforkMenuView.xaml"
475 this.HelpTree.Unselected += new System.Windows.RoutedEventHandler(this.SetHelpTree); 520 this.HelpTree.Unselected += new System.Windows.RoutedEventHandler(this.SetHelpTree);
476 521
477 #line default 522 #line default
478 #line hidden 523 #line hidden
479 return; 524 return;
480 case 17: 525 case 20:
481 this.NewProjectTree = ((System.Windows.Controls.TreeViewItem)(target)); 526 this.NewProjectTree = ((System.Windows.Controls.TreeViewItem)(target));
482 527
483 #line 119 "..\..\RoboforkMenuView.xaml" 528 #line 124 "..\..\RoboforkMenuView.xaml"
484 this.NewProjectTree.Selected += new System.Windows.RoutedEventHandler(this.GetNewProjectTree); 529 this.NewProjectTree.Selected += new System.Windows.RoutedEventHandler(this.GetNewProjectTree);
485 530
486 #line default 531 #line default
487 #line hidden 532 #line hidden
488 533
489 #line 120 "..\..\RoboforkMenuView.xaml" 534 #line 125 "..\..\RoboforkMenuView.xaml"
490 this.NewProjectTree.Unselected += new System.Windows.RoutedEventHandler(this.SetNewProjectTree); 535 this.NewProjectTree.Unselected += new System.Windows.RoutedEventHandler(this.SetNewProjectTree);
491 536
492 #line default 537 #line default
493 #line hidden 538 #line hidden
494 return; 539 return;
495 case 18: 540 case 21:
496 this.MainTab = ((System.Windows.Controls.TabControl)(target)); 541 this.MainTab = ((System.Windows.Controls.TabControl)(target));
497 return; 542 return;
498 case 19: 543 case 22:
499 this.TabMap = ((System.Windows.Controls.TabItem)(target)); 544 this.TabMap = ((System.Windows.Controls.TabItem)(target));
500 return; 545 return;
501 case 20: 546 case 23:
502 this.GridMap = ((System.Windows.Controls.Grid)(target)); 547 this.GridMap = ((System.Windows.Controls.Grid)(target));
503 return; 548 return;
504 case 21: 549 case 24:
505 this.MyDesignerCanvas = ((RoboforkApp.DesignerCanvas)(target)); 550 this.MyDesignerCanvas = ((RoboforkApp.DesignerCanvas)(target));
506 return; 551 return;
507 case 22: 552 case 25:
508 this.MCGrid = ((System.Windows.Controls.Grid)(target)); 553 this.MCGrid = ((System.Windows.Controls.Grid)(target));
509 return; 554 return;
510 case 23: 555 case 26:
511 this.grdRouteInfo = ((System.Windows.Controls.Grid)(target)); 556 this.grdRouteInfo = ((System.Windows.Controls.Grid)(target));
512 return; 557 return;
513 case 24: 558 case 27:
514 this.LabelSchedule = ((System.Windows.Controls.Label)(target)); 559 this.LabelSchedule = ((System.Windows.Controls.Label)(target));
515 return; 560 return;
516 case 25: 561 case 28:
517 this.MyScheduleCanvas = ((RoboforkApp.ScheduleCanvas)(target)); 562 this.MyScheduleCanvas = ((RoboforkApp.ScheduleCanvas)(target));
518 return; 563 return;
519 case 26: 564 case 29:
520 this.MCGridShedule = ((System.Windows.Controls.Grid)(target)); 565 this.MCGridShedule = ((System.Windows.Controls.Grid)(target));
521 return; 566 return;
522 case 27: 567 case 30:
523 this.WorkVehicle = ((System.Windows.Controls.Label)(target)); 568 this.WorkVehicle = ((System.Windows.Controls.Label)(target));
524 return; 569 return;
525 case 28: 570 case 31:
526 this.TabWork = ((System.Windows.Controls.TabItem)(target)); 571 this.TabWork = ((System.Windows.Controls.TabItem)(target));
527 return; 572 return;
528 case 29: 573 case 32:
529 this.TabSchedule = ((System.Windows.Controls.TabItem)(target)); 574 this.TabSchedule = ((System.Windows.Controls.TabItem)(target));
530 return; 575 return;
531 } 576 }
532 this._contentLoaded = true; 577 this._contentLoaded = true;
533 } 578 }
534 } 579 }
535 } 580 }
536 581
537 582
sources/RoboforkApp/obj/Release/RoboforkMenuView.g.i.cs
1 #pragma checksum "..\..\RoboforkMenuView.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "599231713FE3089DBEC7F5AFDBB4E057" 1 #pragma checksum "..\..\RoboforkMenuView.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "16F6F520191E2176C653E3BFDE782900"
2 //------------------------------------------------------------------------------ 2 //------------------------------------------------------------------------------
3 // <auto-generated> 3 // <auto-generated>
4 // This code was generated by a tool. 4 // This code was generated by a tool.
5 // Runtime Version:4.0.30319.42000 5 // Runtime Version:4.0.30319.42000
6 // 6 //
7 // Changes to this file may cause incorrect behavior and will be lost if 7 // Changes to this file may cause incorrect behavior and will be lost if
8 // the code is regenerated. 8 // the code is regenerated.
9 // </auto-generated> 9 // </auto-generated>
10 //------------------------------------------------------------------------------ 10 //------------------------------------------------------------------------------
11 11
12 using RoboforkApp; 12 using RoboforkApp;
13 using System; 13 using System;
14 using System.Diagnostics; 14 using System.Diagnostics;
15 using System.Windows; 15 using System.Windows;
16 using System.Windows.Automation; 16 using System.Windows.Automation;
17 using System.Windows.Controls; 17 using System.Windows.Controls;
18 using System.Windows.Controls.Primitives; 18 using System.Windows.Controls.Primitives;
19 using System.Windows.Data; 19 using System.Windows.Data;
20 using System.Windows.Documents; 20 using System.Windows.Documents;
21 using System.Windows.Ink; 21 using System.Windows.Ink;
22 using System.Windows.Input; 22 using System.Windows.Input;
23 using System.Windows.Markup; 23 using System.Windows.Markup;
24 using System.Windows.Media; 24 using System.Windows.Media;
25 using System.Windows.Media.Animation; 25 using System.Windows.Media.Animation;
26 using System.Windows.Media.Effects; 26 using System.Windows.Media.Effects;
27 using System.Windows.Media.Imaging; 27 using System.Windows.Media.Imaging;
28 using System.Windows.Media.Media3D; 28 using System.Windows.Media.Media3D;
29 using System.Windows.Media.TextFormatting; 29 using System.Windows.Media.TextFormatting;
30 using System.Windows.Navigation; 30 using System.Windows.Navigation;
31 using System.Windows.Shapes; 31 using System.Windows.Shapes;
32 using System.Windows.Shell; 32 using System.Windows.Shell;
33 33
34 34
35 namespace RoboforkApp { 35 namespace RoboforkApp {
36 36
37 37
38 /// <summary> 38 /// <summary>
39 /// RoboforkMenu 39 /// RoboforkMenu
40 /// </summary> 40 /// </summary>
41 public partial class RoboforkMenu : System.Windows.Window, System.Windows.Markup.IComponentConnector { 41 public partial class RoboforkMenu : System.Windows.Window, System.Windows.Markup.IComponentConnector {
42 42
43 43
44 #line 40 "..\..\RoboforkMenuView.xaml" 44 #line 40 "..\..\RoboforkMenuView.xaml"
45 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 45 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
46 internal System.Windows.Controls.TreeView ProjectTreeView; 46 internal System.Windows.Controls.TreeView ProjectTreeView;
47 47
48 #line default 48 #line default
49 #line hidden 49 #line hidden
50 50
51 51
52 #line 41 "..\..\RoboforkMenuView.xaml" 52 #line 41 "..\..\RoboforkMenuView.xaml"
53 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 53 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
54 internal System.Windows.Controls.TreeViewItem ProjectAAA; 54 internal System.Windows.Controls.TreeViewItem ProjectAAA;
55 55
56 #line default 56 #line default
57 #line hidden 57 #line hidden
58 58
59 59
60 #line 42 "..\..\RoboforkMenuView.xaml" 60 #line 42 "..\..\RoboforkMenuView.xaml"
61 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 61 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
62 internal System.Windows.Controls.TreeViewItem Map; 62 internal System.Windows.Controls.TreeViewItem Map;
63 63
64 #line default 64 #line default
65 #line hidden 65 #line hidden
66 66
67 67
68 #line 43 "..\..\RoboforkMenuView.xaml" 68 #line 43 "..\..\RoboforkMenuView.xaml"
69 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 69 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
70 internal System.Windows.Controls.TreeViewItem SetupRestriction; 70 internal System.Windows.Controls.TreeViewItem SetupRestriction;
71 71
72 #line default 72 #line default
73 #line hidden 73 #line hidden
74 74
75 75
76 #line 50 "..\..\RoboforkMenuView.xaml" 76 #line 50 "..\..\RoboforkMenuView.xaml"
77 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 77 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
78 internal System.Windows.Controls.TreeViewItem NodeTree; 78 internal System.Windows.Controls.TreeViewItem NodeTree;
79 79
80 #line default 80 #line default
81 #line hidden 81 #line hidden
82 82
83 83
84 #line 56 "..\..\RoboforkMenuView.xaml" 84 #line 56 "..\..\RoboforkMenuView.xaml"
85 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 85 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
86 internal System.Windows.Controls.TreeViewItem Vehicle; 86 internal System.Windows.Controls.TreeViewItem LoadDB;
87 87
88 #line default 88 #line default
89 #line hidden 89 #line hidden
90 90
91 91
92 #line 57 "..\..\RoboforkMenuView.xaml" 92 #line 57 "..\..\RoboforkMenuView.xaml"
93 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 93 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
94 internal System.Windows.Controls.TreeViewItem FK_15; 94 internal System.Windows.Controls.TreeViewItem FORK_FK15;
95 95
96 #line default 96 #line default
97 #line hidden 97 #line hidden
98 98
99 99
100 #line 58 "..\..\RoboforkMenuView.xaml" 100 #line 58 "..\..\RoboforkMenuView.xaml"
101 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 101 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
102 internal System.Windows.Controls.TreeViewItem NODE_FK15;
103
104 #line default
105 #line hidden
106
107
108 #line 61 "..\..\RoboforkMenuView.xaml"
109 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
110 internal System.Windows.Controls.TreeViewItem Vehicle;
111
112 #line default
113 #line hidden
114
115
116 #line 62 "..\..\RoboforkMenuView.xaml"
117 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
118 internal System.Windows.Controls.TreeViewItem FK_15;
119
120 #line default
121 #line hidden
122
123
124 #line 63 "..\..\RoboforkMenuView.xaml"
125 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
102 internal System.Windows.Controls.TreeViewItem VehicleAdd; 126 internal System.Windows.Controls.TreeViewItem VehicleAdd;
103 127
104 #line default 128 #line default
105 #line hidden 129 #line hidden
106 130
107 131
108 #line 59 "..\..\RoboforkMenuView.xaml" 132 #line 64 "..\..\RoboforkMenuView.xaml"
109 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 133 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
110 internal System.Windows.Controls.TreeViewItem UnderLine; 134 internal System.Windows.Controls.TreeViewItem UnderLine;
111 135
112 #line default 136 #line default
113 #line hidden 137 #line hidden
114 138
115 139
116 #line 63 "..\..\RoboforkMenuView.xaml" 140 #line 68 "..\..\RoboforkMenuView.xaml"
117 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 141 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
118 internal System.Windows.Controls.TreeViewItem TaskpattermTree; 142 internal System.Windows.Controls.TreeViewItem TaskpattermTree;
119 143
120 #line default 144 #line default
121 #line hidden 145 #line hidden
122 146
123 147
124 #line 67 "..\..\RoboforkMenuView.xaml" 148 #line 72 "..\..\RoboforkMenuView.xaml"
125 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 149 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
126 internal System.Windows.Controls.TreeViewItem WorkAddTree; 150 internal System.Windows.Controls.TreeViewItem WorkAddTree;
127 151
128 #line default 152 #line default
129 #line hidden 153 #line hidden
130 154
131 155
132 #line 80 "..\..\RoboforkMenuView.xaml" 156 #line 85 "..\..\RoboforkMenuView.xaml"
133 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 157 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
134 internal System.Windows.Controls.TreeViewItem ConnectTree; 158 internal System.Windows.Controls.TreeViewItem ConnectTree;
135 159
136 #line default 160 #line default
137 #line hidden 161 #line hidden
138 162
139 163
140 #line 86 "..\..\RoboforkMenuView.xaml" 164 #line 91 "..\..\RoboforkMenuView.xaml"
141 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 165 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
142 internal System.Windows.Controls.TreeViewItem ParameterTree; 166 internal System.Windows.Controls.TreeViewItem ParameterTree;
143 167
144 #line default 168 #line default
145 #line hidden 169 #line hidden
146 170
147 171
148 #line 97 "..\..\RoboforkMenuView.xaml" 172 #line 102 "..\..\RoboforkMenuView.xaml"
149 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 173 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
150 internal System.Windows.Controls.TreeViewItem LoggingTree; 174 internal System.Windows.Controls.TreeViewItem LoggingTree;
151 175
152 #line default 176 #line default
153 #line hidden 177 #line hidden
154 178
155 179
156 #line 106 "..\..\RoboforkMenuView.xaml" 180 #line 111 "..\..\RoboforkMenuView.xaml"
157 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 181 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
158 internal System.Windows.Controls.TreeViewItem AlertTree; 182 internal System.Windows.Controls.TreeViewItem AlertTree;
159 183
160 #line default 184 #line default
161 #line hidden 185 #line hidden
162 186
163 187
164 #line 112 "..\..\RoboforkMenuView.xaml" 188 #line 117 "..\..\RoboforkMenuView.xaml"
165 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 189 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
166 internal System.Windows.Controls.TreeViewItem HelpTree; 190 internal System.Windows.Controls.TreeViewItem HelpTree;
167 191
168 #line default 192 #line default
169 #line hidden 193 #line hidden
170 194
171 195
172 #line 118 "..\..\RoboforkMenuView.xaml" 196 #line 123 "..\..\RoboforkMenuView.xaml"
173 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 197 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
174 internal System.Windows.Controls.TreeViewItem NewProjectTree; 198 internal System.Windows.Controls.TreeViewItem NewProjectTree;
175 199
176 #line default 200 #line default
177 #line hidden 201 #line hidden
178 202
179 203
180 #line 136 "..\..\RoboforkMenuView.xaml" 204 #line 141 "..\..\RoboforkMenuView.xaml"
181 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 205 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
182 internal System.Windows.Controls.TabControl MainTab; 206 internal System.Windows.Controls.TabControl MainTab;
183 207
184 #line default 208 #line default
185 #line hidden 209 #line hidden
186 210
187 211
188 #line 139 "..\..\RoboforkMenuView.xaml" 212 #line 144 "..\..\RoboforkMenuView.xaml"
189 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 213 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
190 internal System.Windows.Controls.TabItem TabMap; 214 internal System.Windows.Controls.TabItem TabMap;
191 215
192 #line default 216 #line default
193 #line hidden 217 #line hidden
194 218
195 219
196 #line 152 "..\..\RoboforkMenuView.xaml" 220 #line 157 "..\..\RoboforkMenuView.xaml"
197 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 221 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
198 internal System.Windows.Controls.Grid GridMap; 222 internal System.Windows.Controls.Grid GridMap;
199 223
200 #line default 224 #line default
201 #line hidden 225 #line hidden
202 226
203 227
204 #line 164 "..\..\RoboforkMenuView.xaml" 228 #line 169 "..\..\RoboforkMenuView.xaml"
205 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 229 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
206 internal RoboforkApp.DesignerCanvas MyDesignerCanvas; 230 internal RoboforkApp.DesignerCanvas MyDesignerCanvas;
207 231
208 #line default 232 #line default
209 #line hidden 233 #line hidden
210 234
211 235
212 #line 171 "..\..\RoboforkMenuView.xaml" 236 #line 176 "..\..\RoboforkMenuView.xaml"
213 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 237 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
214 internal System.Windows.Controls.Grid MCGrid; 238 internal System.Windows.Controls.Grid MCGrid;
215 239
216 #line default 240 #line default
217 #line hidden 241 #line hidden
218 242
219 243
220 #line 233 "..\..\RoboforkMenuView.xaml" 244 #line 238 "..\..\RoboforkMenuView.xaml"
221 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 245 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
222 internal System.Windows.Controls.Grid grdRouteInfo; 246 internal System.Windows.Controls.Grid grdRouteInfo;
223 247
224 #line default 248 #line default
225 #line hidden 249 #line hidden
226 250
227 251
228 #line 307 "..\..\RoboforkMenuView.xaml" 252 #line 312 "..\..\RoboforkMenuView.xaml"
229 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 253 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
230 internal System.Windows.Controls.Label LabelSchedule; 254 internal System.Windows.Controls.Label LabelSchedule;
231 255
232 #line default 256 #line default
233 #line hidden 257 #line hidden
234 258
235 259
236 #line 311 "..\..\RoboforkMenuView.xaml" 260 #line 316 "..\..\RoboforkMenuView.xaml"
237 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 261 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
238 internal RoboforkApp.ScheduleCanvas MyScheduleCanvas; 262 internal RoboforkApp.ScheduleCanvas MyScheduleCanvas;
239 263
240 #line default 264 #line default
241 #line hidden 265 #line hidden
242 266
243 267
244 #line 319 "..\..\RoboforkMenuView.xaml" 268 #line 324 "..\..\RoboforkMenuView.xaml"
245 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 269 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
246 internal System.Windows.Controls.Grid MCGridShedule; 270 internal System.Windows.Controls.Grid MCGridShedule;
247 271
248 #line default 272 #line default
249 #line hidden 273 #line hidden
250 274
251 275
252 #line 345 "..\..\RoboforkMenuView.xaml" 276 #line 350 "..\..\RoboforkMenuView.xaml"
253 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 277 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
254 internal System.Windows.Controls.Label WorkVehicle; 278 internal System.Windows.Controls.Label WorkVehicle;
255 279
256 #line default 280 #line default
257 #line hidden 281 #line hidden
258 282
259 283
260 #line 350 "..\..\RoboforkMenuView.xaml" 284 #line 355 "..\..\RoboforkMenuView.xaml"
261 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 285 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
262 internal System.Windows.Controls.TabItem TabWork; 286 internal System.Windows.Controls.TabItem TabWork;
263 287
264 #line default 288 #line default
265 #line hidden 289 #line hidden
266 290
267 291
268 #line 357 "..\..\RoboforkMenuView.xaml" 292 #line 362 "..\..\RoboforkMenuView.xaml"
269 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] 293 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
270 internal System.Windows.Controls.TabItem TabSchedule; 294 internal System.Windows.Controls.TabItem TabSchedule;
271 295
272 #line default 296 #line default
273 #line hidden 297 #line hidden
274 298
275 private bool _contentLoaded; 299 private bool _contentLoaded;
276 300
277 /// <summary> 301 /// <summary>
278 /// InitializeComponent 302 /// InitializeComponent
279 /// </summary> 303 /// </summary>
280 [System.Diagnostics.DebuggerNonUserCodeAttribute()] 304 [System.Diagnostics.DebuggerNonUserCodeAttribute()]
281 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] 305 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
282 public void InitializeComponent() { 306 public void InitializeComponent() {
283 if (_contentLoaded) { 307 if (_contentLoaded) {
284 return; 308 return;
285 } 309 }
286 _contentLoaded = true; 310 _contentLoaded = true;
287 System.Uri resourceLocater = new System.Uri("/RboforkApp;component/roboforkmenuview.xaml", System.UriKind.Relative); 311 System.Uri resourceLocater = new System.Uri("/RboforkApp;component/roboforkmenuview.xaml", System.UriKind.Relative);
288 312
289 #line 1 "..\..\RoboforkMenuView.xaml" 313 #line 1 "..\..\RoboforkMenuView.xaml"
290 System.Windows.Application.LoadComponent(this, resourceLocater); 314 System.Windows.Application.LoadComponent(this, resourceLocater);
291 315
292 #line default 316 #line default
293 #line hidden 317 #line hidden
294 } 318 }
295 319
296 [System.Diagnostics.DebuggerNonUserCodeAttribute()] 320 [System.Diagnostics.DebuggerNonUserCodeAttribute()]
297 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] 321 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
298 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 322 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
299 internal System.Delegate _CreateDelegate(System.Type delegateType, string handler) { 323 internal System.Delegate _CreateDelegate(System.Type delegateType, string handler) {
300 return System.Delegate.CreateDelegate(delegateType, this, handler); 324 return System.Delegate.CreateDelegate(delegateType, this, handler);
301 } 325 }
302 326
303 [System.Diagnostics.DebuggerNonUserCodeAttribute()] 327 [System.Diagnostics.DebuggerNonUserCodeAttribute()]
304 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] 328 [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
305 [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] 329 [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
306 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] 330 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
307 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] 331 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
308 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] 332 [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
309 void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { 333 void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
310 switch (connectionId) 334 switch (connectionId)
311 { 335 {
312 case 1: 336 case 1:
313 this.ProjectTreeView = ((System.Windows.Controls.TreeView)(target)); 337 this.ProjectTreeView = ((System.Windows.Controls.TreeView)(target));
314 return; 338 return;
315 case 2: 339 case 2:
316 this.ProjectAAA = ((System.Windows.Controls.TreeViewItem)(target)); 340 this.ProjectAAA = ((System.Windows.Controls.TreeViewItem)(target));
317 return; 341 return;
318 case 3: 342 case 3:
319 this.Map = ((System.Windows.Controls.TreeViewItem)(target)); 343 this.Map = ((System.Windows.Controls.TreeViewItem)(target));
320 return; 344 return;
321 case 4: 345 case 4:
322 this.SetupRestriction = ((System.Windows.Controls.TreeViewItem)(target)); 346 this.SetupRestriction = ((System.Windows.Controls.TreeViewItem)(target));
323 347
324 #line 43 "..\..\RoboforkMenuView.xaml" 348 #line 43 "..\..\RoboforkMenuView.xaml"
325 this.SetupRestriction.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected); 349 this.SetupRestriction.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
326 350
327 #line default 351 #line default
328 #line hidden 352 #line hidden
329 353
330 #line 43 "..\..\RoboforkMenuView.xaml" 354 #line 43 "..\..\RoboforkMenuView.xaml"
331 this.SetupRestriction.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet); 355 this.SetupRestriction.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet);
332 356
333 #line default 357 #line default
334 #line hidden 358 #line hidden
335 return; 359 return;
336 case 5: 360 case 5:
337 this.NodeTree = ((System.Windows.Controls.TreeViewItem)(target)); 361 this.NodeTree = ((System.Windows.Controls.TreeViewItem)(target));
338 362
339 #line 50 "..\..\RoboforkMenuView.xaml" 363 #line 50 "..\..\RoboforkMenuView.xaml"
340 this.NodeTree.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected); 364 this.NodeTree.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
341 365
342 #line default 366 #line default
343 #line hidden 367 #line hidden
344 368
345 #line 50 "..\..\RoboforkMenuView.xaml" 369 #line 50 "..\..\RoboforkMenuView.xaml"
346 this.NodeTree.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet); 370 this.NodeTree.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet);
347 371
348 #line default 372 #line default
349 #line hidden 373 #line hidden
350 return; 374 return;
351 case 6: 375 case 6:
352 this.Vehicle = ((System.Windows.Controls.TreeViewItem)(target)); 376 this.LoadDB = ((System.Windows.Controls.TreeViewItem)(target));
353 return; 377 return;
354 case 7: 378 case 7:
355 this.FK_15 = ((System.Windows.Controls.TreeViewItem)(target)); 379 this.FORK_FK15 = ((System.Windows.Controls.TreeViewItem)(target));
356 380
357 #line 57 "..\..\RoboforkMenuView.xaml" 381 #line 57 "..\..\RoboforkMenuView.xaml"
358 this.FK_15.Selected += new System.Windows.RoutedEventHandler(this.btnVehicleItem_Selected); 382 this.FORK_FK15.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
359 383
360 #line default 384 #line default
361 #line hidden 385 #line hidden
362 return; 386 return;
363 case 8: 387 case 8:
364 this.VehicleAdd = ((System.Windows.Controls.TreeViewItem)(target)); 388 this.NODE_FK15 = ((System.Windows.Controls.TreeViewItem)(target));
365 389
366 #line 58 "..\..\RoboforkMenuView.xaml" 390 #line 58 "..\..\RoboforkMenuView.xaml"
367 this.VehicleAdd.Selected += new System.Windows.RoutedEventHandler(this.btnVehicleItem_Selected); 391 this.NODE_FK15.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
368 392
369 #line default 393 #line default
370 #line hidden 394 #line hidden
371 return; 395 return;
372 case 9: 396 case 9:
373 this.UnderLine = ((System.Windows.Controls.TreeViewItem)(target)); 397 this.Vehicle = ((System.Windows.Controls.TreeViewItem)(target));
374 return; 398 return;
375 case 10: 399 case 10:
376 this.TaskpattermTree = ((System.Windows.Controls.TreeViewItem)(target)); 400 this.FK_15 = ((System.Windows.Controls.TreeViewItem)(target));
377 401
402 #line 62 "..\..\RoboforkMenuView.xaml"
403 this.FK_15.Selected += new System.Windows.RoutedEventHandler(this.btnVehicleItem_Selected);
404
405 #line default
406 #line hidden
407 return;
408 case 11:
409 this.VehicleAdd = ((System.Windows.Controls.TreeViewItem)(target));
410
378 #line 63 "..\..\RoboforkMenuView.xaml" 411 #line 63 "..\..\RoboforkMenuView.xaml"
412 this.VehicleAdd.Selected += new System.Windows.RoutedEventHandler(this.btnVehicleItem_Selected);
413
414 #line default
415 #line hidden
416 return;
417 case 12:
418 this.UnderLine = ((System.Windows.Controls.TreeViewItem)(target));
419 return;
420 case 13:
421 this.TaskpattermTree = ((System.Windows.Controls.TreeViewItem)(target));
422
423 #line 68 "..\..\RoboforkMenuView.xaml"
379 this.TaskpattermTree.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected); 424 this.TaskpattermTree.Selected += new System.Windows.RoutedEventHandler(this.btnMenu_Selected);
380 425
381 #line default 426 #line default
382 #line hidden 427 #line hidden
383 428
384 #line 63 "..\..\RoboforkMenuView.xaml" 429 #line 68 "..\..\RoboforkMenuView.xaml"
385 this.TaskpattermTree.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet); 430 this.TaskpattermTree.Unselected += new System.Windows.RoutedEventHandler(this.btnMenu_UnselectedSet);
386 431
387 #line default 432 #line default
388 #line hidden 433 #line hidden
389 return; 434 return;
390 case 11: 435 case 14:
391 this.WorkAddTree = ((System.Windows.Controls.TreeViewItem)(target)); 436 this.WorkAddTree = ((System.Windows.Controls.TreeViewItem)(target));
392 437
393 #line 68 "..\..\RoboforkMenuView.xaml" 438 #line 73 "..\..\RoboforkMenuView.xaml"
394 this.WorkAddTree.Selected += new System.Windows.RoutedEventHandler(this.GetWorkAddTree); 439 this.WorkAddTree.Selected += new System.Windows.RoutedEventHandler(this.GetWorkAddTree);
395 440
396 #line default 441 #line default
397 #line hidden 442 #line hidden
398 443
399 #line 69 "..\..\RoboforkMenuView.xaml" 444 #line 74 "..\..\RoboforkMenuView.xaml"
400 this.WorkAddTree.Unselected += new System.Windows.RoutedEventHandler(this.SetWorkAddTree); 445 this.WorkAddTree.Unselected += new System.Windows.RoutedEventHandler(this.SetWorkAddTree);
401 446
402 #line default 447 #line default
403 #line hidden 448 #line hidden
404 return; 449 return;
405 case 12: 450 case 15:
406 this.ConnectTree = ((System.Windows.Controls.TreeViewItem)(target)); 451 this.ConnectTree = ((System.Windows.Controls.TreeViewItem)(target));
407 452
408 #line 81 "..\..\RoboforkMenuView.xaml" 453 #line 86 "..\..\RoboforkMenuView.xaml"
409 this.ConnectTree.Selected += new System.Windows.RoutedEventHandler(this.GetConnectTree); 454 this.ConnectTree.Selected += new System.Windows.RoutedEventHandler(this.GetConnectTree);
410 455
411 #line default 456 #line default
412 #line hidden 457 #line hidden
413 458
414 #line 82 "..\..\RoboforkMenuView.xaml" 459 #line 87 "..\..\RoboforkMenuView.xaml"
415 this.ConnectTree.Unselected += new System.Windows.RoutedEventHandler(this.SetConnectTree); 460 this.ConnectTree.Unselected += new System.Windows.RoutedEventHandler(this.SetConnectTree);
416 461
417 #line default 462 #line default
418 #line hidden 463 #line hidden
419 return; 464 return;
420 case 13: 465 case 16:
421 this.ParameterTree = ((System.Windows.Controls.TreeViewItem)(target)); 466 this.ParameterTree = ((System.Windows.Controls.TreeViewItem)(target));
422 467
423 #line 87 "..\..\RoboforkMenuView.xaml" 468 #line 92 "..\..\RoboforkMenuView.xaml"
424 this.ParameterTree.Selected += new System.Windows.RoutedEventHandler(this.GetParameterTree); 469 this.ParameterTree.Selected += new System.Windows.RoutedEventHandler(this.GetParameterTree);
425 470
426 #line default 471 #line default
427 #line hidden 472 #line hidden
428 473
429 #line 88 "..\..\RoboforkMenuView.xaml" 474 #line 93 "..\..\RoboforkMenuView.xaml"
430 this.ParameterTree.Unselected += new System.Windows.RoutedEventHandler(this.SetParameterTree); 475 this.ParameterTree.Unselected += new System.Windows.RoutedEventHandler(this.SetParameterTree);
431 476
432 #line default 477 #line default
433 #line hidden 478 #line hidden
434 return; 479 return;
435 case 14: 480 case 17:
436 this.LoggingTree = ((System.Windows.Controls.TreeViewItem)(target)); 481 this.LoggingTree = ((System.Windows.Controls.TreeViewItem)(target));
437 482
438 #line 98 "..\..\RoboforkMenuView.xaml" 483 #line 103 "..\..\RoboforkMenuView.xaml"
439 this.LoggingTree.Selected += new System.Windows.RoutedEventHandler(this.GetLoggingTree); 484 this.LoggingTree.Selected += new System.Windows.RoutedEventHandler(this.GetLoggingTree);
440 485
441 #line default 486 #line default
442 #line hidden 487 #line hidden
443 488
444 #line 99 "..\..\RoboforkMenuView.xaml" 489 #line 104 "..\..\RoboforkMenuView.xaml"
445 this.LoggingTree.Unselected += new System.Windows.RoutedEventHandler(this.SetLoggingTree); 490 this.LoggingTree.Unselected += new System.Windows.RoutedEventHandler(this.SetLoggingTree);
446 491
447 #line default 492 #line default
448 #line hidden 493 #line hidden
449 return; 494 return;
450 case 15: 495 case 18:
451 this.AlertTree = ((System.Windows.Controls.TreeViewItem)(target)); 496 this.AlertTree = ((System.Windows.Controls.TreeViewItem)(target));
452 497
453 #line 107 "..\..\RoboforkMenuView.xaml" 498 #line 112 "..\..\RoboforkMenuView.xaml"
454 this.AlertTree.Selected += new System.Windows.RoutedEventHandler(this.GetAlertTree); 499 this.AlertTree.Selected += new System.Windows.RoutedEventHandler(this.GetAlertTree);
455 500
456 #line default 501 #line default
457 #line hidden 502 #line hidden
458 503
459 #line 108 "..\..\RoboforkMenuView.xaml" 504 #line 113 "..\..\RoboforkMenuView.xaml"
460 this.AlertTree.Unselected += new System.Windows.RoutedEventHandler(this.SetAlertTree); 505 this.AlertTree.Unselected += new System.Windows.RoutedEventHandler(this.SetAlertTree);
461 506
462 #line default 507 #line default
463 #line hidden 508 #line hidden
464 return; 509 return;
465 case 16: 510 case 19:
466 this.HelpTree = ((System.Windows.Controls.TreeViewItem)(target)); 511 this.HelpTree = ((System.Windows.Controls.TreeViewItem)(target));
467 512
468 #line 113 "..\..\RoboforkMenuView.xaml" 513 #line 118 "..\..\RoboforkMenuView.xaml"
469 this.HelpTree.Selected += new System.Windows.RoutedEventHandler(this.GetHelpTree); 514 this.HelpTree.Selected += new System.Windows.RoutedEventHandler(this.GetHelpTree);
470 515
471 #line default 516 #line default
472 #line hidden 517 #line hidden
473 518
474 #line 114 "..\..\RoboforkMenuView.xaml" 519 #line 119 "..\..\RoboforkMenuView.xaml"
475 this.HelpTree.Unselected += new System.Windows.RoutedEventHandler(this.SetHelpTree); 520 this.HelpTree.Unselected += new System.Windows.RoutedEventHandler(this.SetHelpTree);
476 521
477 #line default 522 #line default
478 #line hidden 523 #line hidden
479 return; 524 return;
480 case 17: 525 case 20:
481 this.NewProjectTree = ((System.Windows.Controls.TreeViewItem)(target)); 526 this.NewProjectTree = ((System.Windows.Controls.TreeViewItem)(target));
482 527
483 #line 119 "..\..\RoboforkMenuView.xaml" 528 #line 124 "..\..\RoboforkMenuView.xaml"
484 this.NewProjectTree.Selected += new System.Windows.RoutedEventHandler(this.GetNewProjectTree); 529 this.NewProjectTree.Selected += new System.Windows.RoutedEventHandler(this.GetNewProjectTree);
485 530
486 #line default 531 #line default
487 #line hidden 532 #line hidden
488 533
489 #line 120 "..\..\RoboforkMenuView.xaml" 534 #line 125 "..\..\RoboforkMenuView.xaml"
490 this.NewProjectTree.Unselected += new System.Windows.RoutedEventHandler(this.SetNewProjectTree); 535 this.NewProjectTree.Unselected += new System.Windows.RoutedEventHandler(this.SetNewProjectTree);
491 536
492 #line default 537 #line default
493 #line hidden 538 #line hidden
494 return; 539 return;
495 case 18: 540 case 21:
496 this.MainTab = ((System.Windows.Controls.TabControl)(target)); 541 this.MainTab = ((System.Windows.Controls.TabControl)(target));
497 return; 542 return;
498 case 19: 543 case 22:
499 this.TabMap = ((System.Windows.Controls.TabItem)(target)); 544 this.TabMap = ((System.Windows.Controls.TabItem)(target));
500 return; 545 return;
501 case 20: 546 case 23:
502 this.GridMap = ((System.Windows.Controls.Grid)(target)); 547 this.GridMap = ((System.Windows.Controls.Grid)(target));
503 return; 548 return;
504 case 21: 549 case 24:
505 this.MyDesignerCanvas = ((RoboforkApp.DesignerCanvas)(target)); 550 this.MyDesignerCanvas = ((RoboforkApp.DesignerCanvas)(target));
506 return; 551 return;
507 case 22: 552 case 25:
508 this.MCGrid = ((System.Windows.Controls.Grid)(target)); 553 this.MCGrid = ((System.Windows.Controls.Grid)(target));
509 return; 554 return;
510 case 23: 555 case 26:
511 this.grdRouteInfo = ((System.Windows.Controls.Grid)(target)); 556 this.grdRouteInfo = ((System.Windows.Controls.Grid)(target));
512 return; 557 return;
513 case 24: 558 case 27:
514 this.LabelSchedule = ((System.Windows.Controls.Label)(target)); 559 this.LabelSchedule = ((System.Windows.Controls.Label)(target));
515 return; 560 return;
516 case 25: 561 case 28:
517 this.MyScheduleCanvas = ((RoboforkApp.ScheduleCanvas)(target)); 562 this.MyScheduleCanvas = ((RoboforkApp.ScheduleCanvas)(target));
518 return; 563 return;
519 case 26: 564 case 29:
520 this.MCGridShedule = ((System.Windows.Controls.Grid)(target)); 565 this.MCGridShedule = ((System.Windows.Controls.Grid)(target));
521 return; 566 return;
522 case 27: 567 case 30:
523 this.WorkVehicle = ((System.Windows.Controls.Label)(target)); 568 this.WorkVehicle = ((System.Windows.Controls.Label)(target));
524 return; 569 return;
525 case 28: 570 case 31:
526 this.TabWork = ((System.Windows.Controls.TabItem)(target)); 571 this.TabWork = ((System.Windows.Controls.TabItem)(target));
527 return; 572 return;
528 case 29: 573 case 32:
529 this.TabSchedule = ((System.Windows.Controls.TabItem)(target)); 574 this.TabSchedule = ((System.Windows.Controls.TabItem)(target));
530 return; 575 return;
531 } 576 }
532 this._contentLoaded = true; 577 this._contentLoaded = true;
533 } 578 }
534 } 579 }
535 } 580 }
536 581
537 582
sources/RoboforkApp/obj/Release/Stencils/BasicShapes.baml
No preview for this file type
sources/RoboforkApp/obj/Release/Stencils/FlowChartSymbols.baml
No preview for this file type
sources/RoboforkApp/obj/Release/Stencils/RegelungstechnikSymbole.baml
No preview for this file type
sources/RoboforkApp/obj/Release/Stencils/SymbolStencils.baml
No preview for this file type