public RecordedUiTask(EnumUiTaskName taskName, string base64Text, bool bCapLock, bool scrollLock, bool numLock) { UiTaskName = taskName; Base64Text = base64Text; CapsLock = bCapLock; NumLock = numLock; ScrollLock = scrollLock; }
public RecordedUiTask(List <string> pathNodes, EnumUiTaskName taskName) { UiTaskName = taskName; _pathNodes = pathNodes; }
public static void HandleUiEvent(ref string strXml, EnumUiTaskName uiTaskName, int deltaX, int deltaY) { List <string> nodesRootToLeaf = null; if (uiTaskName == EnumUiTaskName.Inspect) { nodesRootToLeaf = GetRootToLeafNodes(strXml); if (nodesRootToLeaf != null && nodesRootToLeaf.Count > 0) { MainWindow.AddInspectUi(new RecordedUiTask(nodesRootToLeaf, uiTaskName)); } return; } if (uiTaskName != EnumUiTaskName.KeyboardInput) { nodesRootToLeaf = GetRootToLeafNodes(strXml); strXml = null; } RecordedUiTask lastRecordedUi = null; lock (RecordedUiTask.s_lockRecordedUi) { if (RecordedUiTask.s_listRecordedUi.Count > 0) { lastRecordedUi = RecordedUiTask.s_listRecordedUi.Last(); } } bool bAddNewTask = true; // Completing last UI if (uiTaskName == EnumUiTaskName.LeftDblClick && lastRecordedUi != null) { lastRecordedUi.ChangeClickToDoubleClick(); bAddNewTask = false; } else if (uiTaskName == EnumUiTaskName.MouseWheel) { if (lastRecordedUi == null || lastRecordedUi.UiTaskName != EnumUiTaskName.MouseWheel) { if (nodesRootToLeaf != null && nodesRootToLeaf.Count > 0) { lastRecordedUi = new RecordedUiTask(nodesRootToLeaf, uiTaskName); MainWindow.AddRecordedUi(lastRecordedUi); } } if (lastRecordedUi != null && lastRecordedUi.UiTaskName == EnumUiTaskName.MouseWheel) { lastRecordedUi.UpdateWheelData(deltaX); } bAddNewTask = false; } if (bAddNewTask) { if (nodesRootToLeaf != null && nodesRootToLeaf.Count > 0) { MainWindow.AddRecordedUi(new RecordedUiTask(nodesRootToLeaf, uiTaskName)); } } else if (lastRecordedUi != null) { //MouseWheel, DoubleClick MainWindow.UpdateLastUi(lastRecordedUi); } NativeMethods.PostMessage(MainWindow.s_windowHandle, (int)MainWindow.UiThreadTask.ActionAdded, 0, 0); AppInsights.LogEvent("HandleUiEvent", uiTaskName.ToString()); }