Ejemplo n.º 1
0
        public NetTest(string question, string answer, NetTestType testType, NetUnit baseUnit)
        {
            this.Question = question;
            this.Answer   = answer;

            this.TestType = testType;
            this.BaseUnit = baseUnit;
        }
Ejemplo n.º 2
0
        private static Net CreateFromXmlNode(XmlNode xmlNode)
        {
            string netName = xmlNode.Attributes[xmlFieldName].Value;

            Net result = new Net(netName);

            result.NumberAlphabet = netName.ToLower() == "цифровой алфавит";

            for (int i = 0; i < xmlNode.ChildNodes.Count; i++)
            {
                XmlNode node = xmlNode.ChildNodes[i];

                XmlAttribute attrNumber  = node.Attributes[xmlFieldNumber];
                XmlAttribute attrPattern = node.Attributes[xmlFieldPattern];

                if (attrNumber != null && attrPattern != null && !string.IsNullOrEmpty(attrNumber.Value) && !string.IsNullOrEmpty(attrPattern.Value))
                {
                    int temp = 0;

                    if (int.TryParse(attrNumber.Value, out temp))
                    {
                        NetUnit netUnit;

                        XmlAttribute attr = node.Attributes[xmlFieldColor];

                        if (attr != null && !string.IsNullOrEmpty(attr.Value))
                        {
                            netUnit = new NetUnit(attrNumber.Value, attrPattern.Value, netName, Color.FromName(attr.Value));
                        }
                        else
                        {
                            netUnit = new NetUnit(attrNumber.Value, attrPattern.Value, netName);
                        }

                        result.Units.Add(netUnit);
                    }
                }
            }

            return(result);
        }
Ejemplo n.º 3
0
        public XmlNode CreateNode(XmlDocument doc)
        {
            XmlNode result = doc.CreateElement(xmlNodeNameNet);

            XmlAttribute attr;

            attr = doc.CreateAttribute(xmlFieldName);
            result.Attributes.Append(attr);
            attr.Value = this.Name;

            for (int i = 0; i < this.units.Count; i++)
            {
                NetUnit unit = this.units[i];

                XmlNode node = doc.CreateElement(xmlNodeNameUnit);
                result.AppendChild(node);

                if (!string.IsNullOrEmpty(unit.Pattern))
                {
                    attr = doc.CreateAttribute(xmlFieldNumber);
                    node.Attributes.Append(attr);
                    attr.Value = unit.Number;

                    attr = doc.CreateAttribute(xmlFieldPattern);
                    node.Attributes.Append(attr);
                    attr.Value = unit.Pattern;

                    if (unit.PatternColor.HasValue)
                    {
                        attr = doc.CreateAttribute(xmlFieldColor);
                        node.Attributes.Append(attr);
                        attr.Value = unit.PatternColor.Value.ToKnownColor().ToString();
                    }
                }
            }

            return(result);
        }
Ejemplo n.º 4
0
        public bool HasRepeats(out string repeats)
        {
            bool result = false;

            StringBuilder strBuilder = new StringBuilder();

            for (int i = 0; i < this.units.Count; i++)
            {
                NetUnit unit1 = this.units[i];

                for (int j = i + 1; j < this.units.Count; j++)
                {
                    NetUnit unit2 = this.units[j];

                    //if (unit1.Number == unit2.Number)
                    //{
                    //    result = true;
                    //    repeats += (!string.IsNullOrEmpty(repeats) ? "\r\n" : string.Empty) + string.Format("{0} и {1} по номеру", unit1.Number, unit2.Number);
                    //}

                    if (string.Compare(unit1.Pattern, unit2.Pattern, true) == 0)
                    {
                        result = true;
                        if (strBuilder.Length > 0)
                        {
                            strBuilder.AppendLine();
                        }

                        strBuilder.AppendFormat("{0} и {1} это {2}", unit1.Number, unit2.Number, unit1.Pattern);
                    }
                }
            }

            repeats = strBuilder.ToString();

            return(result);
        }
Ejemplo n.º 5
0
 public NetTest(string question, string answer, NetTestType testType, NetUnit baseUnit, Color?questionColor) :
     this(question, answer, testType, baseUnit)
 {
     this.QuestionColor = questionColor;
 }