//#==================================================================== INITIALIZE public RCommand(RCommandType commandType, int lineNumber, int[] parameters) { CommandType = commandType; LineNumber = lineNumber; Parameters = parameters; }
//#==================================================================== FUNCTIONS private void AddCommand(RCommandType command) { // determine command insertion point int caretPt = _txtCode.SelectionStart + _txtCode.SelectionLength; int insertionPt; if (_txtCode.Text.IndexOf(Environment.NewLine, caretPt) == -1) insertionPt = _txtCode.Text.Length; else insertionPt = _txtCode.Text.IndexOf(Environment.NewLine, caretPt); // insert command into text box string insertTxt = string.Empty; if (_txtCode.Lines.Length != 0 && _txtCode.Lines[_txtCode.GetLineFromCharIndex(insertionPt)].Length != 0) insertTxt = "\r\n"; switch (command) { case RCommandType.Left: insertTxt += string.Format("left > {0},{1}", MousePosition.X, MousePosition.Y); break; case RCommandType.LeftDown: insertTxt += string.Format("ldown > {0},{1}", MousePosition.X, MousePosition.Y); break; case RCommandType.LeftUp: insertTxt += "lup >"; break; case RCommandType.Right: insertTxt += string.Format("right > {0},{1}", MousePosition.X, MousePosition.Y); break; case RCommandType.Wait: insertTxt += insertTxt = string.Format("wait > {0}", _numWait.Value); break; case RCommandType.WaitUntil: insertTxt += string.Format("waituntil > {0},{1},{2}", MousePosition.X, MousePosition.Y, GetWin32CursorColor()); break; case RCommandType.WaitWhile: insertTxt += string.Format("waitwhile > {0},{1},{2}", MousePosition.X, MousePosition.Y, GetWin32CursorColor()); break; case RCommandType.WaitBright: insertTxt += string.Format("waitbright > {0},{1},{2}", MousePosition.X, MousePosition.Y, GetCursorBrightness()); break; case RCommandType.WaitDark: insertTxt += string.Format("waitdark > {0},{1},{2}", MousePosition.X, MousePosition.Y, GetCursorBrightness()); break; } _txtCode.Text = _txtCode.Text.Insert(insertionPt, insertTxt); _txtCode.SelectionStart = insertionPt + insertTxt.Length; _txtCode.SelectionLength = 0; _txtCode.ScrollToCaret(); }