Ejemplo n.º 1
0
        private void SourceInput_TextChanged(object sender, TextChangedEventArgs e)
        {
            CountLetters.Content = SourceInput.Text.Length.ToString();
            if (SourceInput.Text.Length == 72)
            {
                MainString = SourceInput.Text;
                if (Guid.TryParse(MainString.Substring(0, 36), out var firstG))
                {
                    FirstGuid = firstG;
                    if (Guid.TryParse(MainString.Substring(36, 36), out var secondG))
                    {
                        SecondGuid = secondG;
                        IsOk       = true;

                        ImageIcon.Source  = new BitmapImage(new Uri("/GuidDivider;component/Icons/yes.png", UriKind.Relative));
                        FirstOutput.Text  = FirstGuid.ToString().ToLower();
                        SecondOutput.Text = SecondGuid.ToString().ToLower();

                        ButtonClick.IsEnabled = true;
                    }
                }
            }

            else if (IsOk)
            {
                ImageIcon.Source = new BitmapImage(new Uri("/GuidDivider;component/Icons/no.png", UriKind.Relative));
                IsOk             = false;
            }
        }
Ejemplo n.º 2
0
        void parse()
        {
            LeftEl = new List <Connection>();
            TopEl  = new List <string>();

            var CountLine = from line in textBox1.Lines
                            where line == "$NETS"
                            select Array.IndexOf(textBox1.Lines, line) + 1;

            int i = CountLine.First();

            Connection Connector = null;

            Matrix_Collision = new List <MCollision>();
            string MainString, s2;

            for (int c = 0; (i < textBox1.Lines.Count()) && (textBox1.Lines[i] != "$END"); i++)
            {
                MainString = textBox1.Lines[i];                //Загружаем после $NETS 29 ячейка

                int IndexPosition = MainString.IndexOf(";");
                if (IndexPosition > 0)
                {
                    Connector      = new Connection();
                    Connector.name = MainString.Substring(0, IndexPosition);
                    MainString     = MainString.Substring(IndexPosition + 1);

                    LeftEl.Add(Connector);
                }

                string[] StrArray = MainString.TrimStart().Split(' ');
                for (int j = 0; j < StrArray.Count(); j++)
                {
                    s2 = StrArray[j].Trim();
                    if (s2.Length == 0)
                    {
                        continue;
                    }

                    IndexPosition = s2.IndexOf(".");
                    if (IndexPosition > 0)
                    {
                        s2 = s2.Substring(0, IndexPosition);
                    }

                    Connector.to.Add(s2);
                    if (TopEl.IndexOf(s2) < 0)
                    {
                        TopEl.Add(s2);
                        Matrix_Collision.Add(new MCollision());
                        Matrix_Collision[c++].Name = s2;
                    }
                }
            }

            string Result = "";

            for (i = 0; i < LeftEl.Count(); i++)
            {
                Result += string.Format($"{LeftEl[i].name,-8}");
            }
            textBox2.AppendText($"{"Left:",-6}{Result}\n");

            Result = "";
            for (i = 0; i < TopEl.Count(); i++)
            {
                Result += string.Format($"{TopEl[i],-8}");
            }
            textBox2.AppendText($"{"Top:",-5}{Result}\n");
            textBox2.AppendText(new string('~', 100) + "\n");
        }