Ejemplo n.º 1
0
        private void InitAssistor()
        {
            for (int i = 0; i < ScriptToRCP.keyFragment.Length; i++)
            {
                RCPBuilder valClass = (RCPBuilder)ScriptToRCP.ht[ScriptToRCP.keyFragment[i]];

                string[] saDes = valClass.CmdtoDes.ToString().Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);

                int idxTemp = richTextBoxAssistor.Text.Length;

                if (saDes.Length != 0)
                {
                    richTextBoxAssistor.AppendText(saDes[3].Split(',')[0]);
                    richTextBoxAssistor.AppendText("\r\n");

                    richTextBoxAssistor.Select(idxTemp, richTextBoxAssistor.Text.Length);
                    richTextBoxAssistor.SelectionFont = new Font(richTextBoxAssistor.Font, FontStyle.Bold);
                }
                richTextBoxAssistor.AppendText("\r\n");
            }
        }
Ejemplo n.º 2
0
        private void richTextBoxScript_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Oemcomma || (richTextBoxAssistor.Text.IndexOf(',') >= 0))
            {
                this.richTextBoxAssistor.Clear();
                string currentline = string.Empty;

                if (richTextBoxScript.Text == string.Empty)
                {
                    this.InitAssistor();
                    return;
                }

                try
                {
                    currentline = richTextBoxScript.Lines[richTextBoxScript.GetLineFromCharIndex(richTextBoxScript.SelectionStart)];

                    string[] sa     = currentline.Split(',');
                    string   keyFrg = string.Empty;

                    keyFrg = sa[0].ToLower();
                    keyFrg = keyFrg.Trim();
                    keyFrg = keyFrg.Replace(" ", "");

                    for (int i = 0; i < ScriptToRCP.keyFragment.Length; i++)
                    {
                        if (ScriptToRCP.keyFragment[i].IndexOf(keyFrg) >= 0)
                        {
                            RCPBuilder valClass = (RCPBuilder)ScriptToRCP.ht[ScriptToRCP.keyFragment[i]];

                            string[] saDes = valClass.CmdtoDes.ToString().Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);

                            int idxTemp = richTextBoxAssistor.Text.Length;

                            for (int j = 0; j < saDes.Length; j++)
                            {
                                if (j == 0)
                                {
                                    richTextBoxAssistor.AppendText(saDes[3].Split(',')[0]);
                                    richTextBoxAssistor.AppendText("\r\n");

                                    richTextBoxAssistor.Select(idxTemp, richTextBoxAssistor.Text.Length);
                                    richTextBoxAssistor.SelectionFont = new Font(richTextBoxAssistor.Font, FontStyle.Bold);
                                }
                                else if (j == 1)
                                {
                                    richTextBoxAssistor.AppendText("-Description : ");
                                    richTextBoxAssistor.AppendText(saDes[j]);
                                    richTextBoxAssistor.AppendText("\r\n");
                                }
                                else if (j == 2)
                                {
                                    richTextBoxAssistor.AppendText("-Arguments : ");
                                    richTextBoxAssistor.AppendText(saDes[j]);
                                    richTextBoxAssistor.AppendText("\r\n");
                                }
                                else
                                {
                                    richTextBoxAssistor.AppendText("-Example : ");
                                    richTextBoxAssistor.AppendText(saDes[j]);
                                    richTextBoxAssistor.AppendText("\r\n");
                                }
                            }
                            richTextBoxAssistor.AppendText("\r\n");
                        }
                    }
                }
                catch
                {
                }
            }
            else
            {
                this.richTextBoxAssistor.Clear();
                string currentline = string.Empty;

                if (richTextBoxScript.Text == string.Empty)
                {
                    this.InitAssistor();
                    return;
                }

                try
                {
                    currentline = richTextBoxScript.Lines[richTextBoxScript.GetLineFromCharIndex(richTextBoxScript.SelectionStart)];

                    string[] sa     = currentline.Split(',');
                    string   keyFrg = string.Empty;

                    keyFrg = sa[0].ToLower();
                    keyFrg = keyFrg.Trim();
                    keyFrg = keyFrg.Replace(" ", "");

                    for (int i = 0; i < ScriptToRCP.keyFragment.Length; i++)
                    {
                        if (ScriptToRCP.keyFragment[i].IndexOf(keyFrg) >= 0)
                        {
                            RCPBuilder valClass = (RCPBuilder)ScriptToRCP.ht[ScriptToRCP.keyFragment[i]];

                            string[] saDes = valClass.CmdtoDes.ToString().Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);

                            int idxTemp = richTextBoxAssistor.Text.Length;

                            if (saDes.Length != 0)
                            {
                                richTextBoxAssistor.AppendText(saDes[3].Split(',')[0]);
                                richTextBoxAssistor.AppendText("\r\n");

                                richTextBoxAssistor.Select(idxTemp, richTextBoxAssistor.Text.Length);
                                richTextBoxAssistor.SelectionFont = new Font(richTextBoxAssistor.Font, FontStyle.Bold);
                            }
                            richTextBoxAssistor.AppendText("\r\n");
                        }
                    }
                }
                catch
                {
                }
            }
        }
Ejemplo n.º 3
0
        private void StrToMS(RichTextBox txtBox, bool withArr, bool Run)
        {
            ScriptToRCP.ArrCnt = 0;

            if (Run == true)
            {
                string       s;
                string[]     sa;
                MemoryStream ms     = new MemoryStream(Encoding.UTF8.GetBytes(txtBox.Text));
                TextReader   reader = new StreamReader(ms, Encoding.ASCII);

                s = reader.ReadToEnd();
                s.Trim();
                s = s.Replace(" ", "");
                s = s.ToLower();

                try
                {
                    if (s.Length != 0)
                    {
                        if (s[s.Length - 1] == ',')
                        {
                            s = s.Substring(0, s.LastIndexOf(','));
                        }
                    }
                    else
                    {
                        return;
                    }
                }
                catch
                {
                    return;
                }


                sa = s.Split(new char[] { '\r', '\n' });

                for (int i = 0; i < sa.Length; i++)
                {
                    if (sa[i] != "")
                    {
                        string[] ss;
                        ss = sa[i].Split(new char[] { ',', ' ' });

                        RCPBuilder valClass = (RCPBuilder)ScriptToRCP.ht[ss[0]];
                        try
                        {
                            if (ss.Length == 1)
                            {
                                RcpProtocol.Instance.SendBytePkt(valClass.CmdToRCP());
                            }
                            else if (ss.Length == 2)
                            {
                                try
                                {
                                    RcpProtocol.Instance.SendBytePkt(valClass.CmdToRCP(Convert.ToUInt16(ss[1])));
                                }
                                catch (GetSleepException)
                                {
                                    //System.Threading.Thread.Sleep(UInt16.Parse(ss[1]));
                                    Thread.Sleep(UInt16.Parse(ss[1]));
                                }
                                // If the ss[1] is not a number, FormatException will be generated by above method
                            }
                            else
                            {
                                throw new FormatException();
                            }
                        }
                        catch (FormatException)
                        {
                            StringBuilder sb = new StringBuilder();
                            for (int j = 1; j < ss.Length; j++)
                            {
                                sb.Append(ss[j] + ",");
                            }
                            try
                            {
                                RcpProtocol.Instance.SendBytePkt(valClass.CmdToRCP(sb.ToString()));
                            }
                            catch (NotImplementedException)
                            {
                                MessageBox.Show("Syntax Error",
                                                "Error",
                                                MessageBoxButtons.OK,
                                                MessageBoxIcon.Error);
                            }
                        }
                        catch
                        {
                            MessageBox.Show("Syntax Error",
                                            "Error",
                                            MessageBoxButtons.OK,
                                            MessageBoxIcon.Error);
                        }
                    }
                    Thread.Sleep(50);
                }
            }
        }
Ejemplo n.º 4
0
        private void StrToMS(RichTextBox txtBox, bool withArr)
        {
            ScriptToRCP.ArrCnt = 0;
            string s;

            string[]     sa;
            StreamWriter sw = new StreamWriter(FormScriptEditor.CommonScriptPath + "\\Gen\\" + (withArr?"rCPGen_withArray.txt":"rCPGen.txt"));

            MemoryStream ms     = new MemoryStream(Encoding.UTF8.GetBytes(txtBox.Text));
            TextReader   reader = new StreamReader(ms, Encoding.ASCII);

            s = reader.ReadToEnd();
            s.Trim();
            s = s.Replace(" ", "");
            s = s.ToLower();

            if (s.Length == 0)
            {
                sw.Close();
                return;
            }

            if (s[s.Length - 1] == ',')
            {
                s = s.Substring(0, s.LastIndexOf(','));
            }

            sa = s.Split(new char[] { '\r', '\n' });

            for (int i = 0; i < sa.Length; i++)
            {
                if (sa[i] != "")
                {
                    string[] ss;
                    ss = sa[i].Split(new char[] { ',', ' ' });

                    RCPBuilder valClass = (RCPBuilder)ScriptToRCP.ht[ss[0]];
                    try
                    {
                        if (ss.Length == 1)
                        {
                            sw.WriteLine(valClass.ByteArrToString(valClass.CmdToRCP(), withArr));
                        }
                        else if (ss.Length == 2)
                        {
                            try
                            {
                                sw.WriteLine(valClass.ByteArrToString(valClass.CmdToRCP(Convert.ToUInt16(ss[1])), withArr));
                            }
                            catch (GetSleepException)
                            {
                                continue;
                            }
                        }
                        else
                        {
                            throw new FormatException();
                        }
                    }
                    catch (FormatException)
                    {
                        StringBuilder sb = new StringBuilder();
                        for (int j = 1; j < ss.Length; j++)
                        {
                            sb.Append(ss[j] + ",");
                        }
                        try
                        {
                            sw.WriteLine(valClass.ByteArrToString(valClass.CmdToRCP(sb.ToString()), withArr));
                        }
                        catch (NotImplementedException)
                        {
                            MessageBox.Show("Syntax Error",
                                            "Error",
                                            MessageBoxButtons.OK,
                                            MessageBoxIcon.Error);
                        }
                    }
                    catch
                    {
                        MessageBox.Show("Syntax Error",
                                        "Error",
                                        MessageBoxButtons.OK,
                                        MessageBoxIcon.Error);
                    }
                }
            }
            sw.Close();
            this.toolStripStatusLabelGen.Text = FormScriptEditor.CommonScriptPath + "\\Gen\\" + (withArr?"rCPGen_withArray.txt":"rCPGen.txt");
        }
Ejemplo n.º 5
0
        public void ParseScript()
        {
            try
            {
                if (this.WholeScript != "")
                {
                    string s = this.WholeScript.Trim();
                    s = s.Replace(" ", "");

                    string[] ss;
                    ss = s.Split(new char[] { ',', ' ' });

                    RCPBuilder valClass = (RCPBuilder)ScriptToRCP.ht[ss[0]];

                    try
                    {
                        if (ss.Length == 1)
                        {
                            RcpProtocol.Instance.SendBytePkt(valClass.CmdToRCP());
                        }
                        else if (ss.Length == 2)
                        {
                            try
                            {
                                RcpProtocol.Instance.SendBytePkt(valClass.CmdToRCP(Convert.ToUInt16(ss[1])));
                            }
                            catch (GetSleepException)
                            {
                                Thread.Sleep(UInt16.Parse(ss[1]));
                            }
                            // If the ss[1] is not a number, FormatException will be generated by above method
                        }
                        else
                        {
                            throw new FormatException();
                        }
                    }
                    catch (FormatException)
                    {
                        StringBuilder sb = new StringBuilder();
                        for (int j = 1; j < ss.Length; j++)
                        {
                            sb.Append(ss[j] + ",");
                        }
                        try
                        {
                            RcpProtocol.Instance.SendBytePkt(valClass.CmdToRCP(sb.ToString()));
                        }
                        catch (NotImplementedException)
                        {
                            MessageBox.Show("Syntax Error",
                                            "Error",
                                            MessageBoxButtons.OK,
                                            MessageBoxIcon.Error);
                        }
                    }
                    catch (GetSleepException)
                    {
                        Thread.Sleep(UInt16.Parse(ss[1]));
                    }
                    catch
                    {
                        MessageBox.Show("Syntax Error",
                                        "Error",
                                        MessageBoxButtons.OK,
                                        MessageBoxIcon.Error);
                    }
                }
            }
            catch
            {
            }
        }