Example #1
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Чтение свойств и данных сплошной кисти из потока данных в формате XML
            /// </summary>
            /// <param name="xml_reader">Средство чтения данных формата XML</param>
            //---------------------------------------------------------------------------------------------------------
            public override void ReadFromXml(XmlReader xml_reader)
            {
                mName  = xml_reader.ReadStringFromAttribute("Name", mName);
                mGroup = xml_reader.ReadStringFromAttribute("Group", mGroup);
                mID    = xml_reader.ReadLongFromAttribute("ID", mID);
                mColor = xml_reader.ReadCadColorFromAttribute("Color");

                Update();
            }
Example #2
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Чтение данных цвета из формата атрибутов
            /// </summary>
            /// <param name="xml_reader">Средство чтения данных формата XML</param>
            /// <param name="name">Имя атрибута</param>
            /// <returns>Цвет</returns>
            //---------------------------------------------------------------------------------------------------------
            public static TCadColor ReadCadColorFromAttribute(this XmlReader xml_reader, String name)
            {
                String value;

                if ((value = xml_reader.GetAttribute(name)) != null)
                {
                    return(TCadColor.Deserialize(value));
                }
                return(TCadColor.White);
            }
Example #3
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Конструктор инициализирует объект класса указанными параметрами
            /// </summary>
            /// <param name="color">Цвет кисти</param>
            //---------------------------------------------------------------------------------------------------------
            public CCadBrushSolid(TCadColor color)
            {
                mName      = "Новая кисть";
                mBrushFill = TCadBrushFillType.Solid;
                mColor     = color;
#if USE_WINDOWS
                mWindowsBrush = new System.Windows.Media.SolidColorBrush(mColor);
#endif
#if USE_GDI
                mDrawingBrush = new System.Drawing.SolidBrush(mColor);
#endif
            }
Example #4
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Чтение свойств и данных кисти штриховки из потока данных в формате XML
            /// </summary>
            /// <param name="xml_reader">Средство чтения данных формата XML</param>
            //---------------------------------------------------------------------------------------------------------
            public override void ReadFromXml(XmlReader xml_reader)
            {
                mName            = xml_reader.ReadStringFromAttribute("Name", mName);
                mGroup           = xml_reader.ReadStringFromAttribute("Group", mGroup);
                mID              = xml_reader.ReadLongFromAttribute("ID", mID);
                mResourceName    = xml_reader.ReadStringFromAttribute("ResourceName");
                mForegroundColor = xml_reader.ReadCadColorFromAttribute("ForegroundColor");
                mBackgroundColor = xml_reader.ReadCadColorFromAttribute("BackgroundColor");
                mIsBackground    = xml_reader.ReadBooleanFromAttribute("IsBackground");

                Update();
            }
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Добавление сплошной кисти с указанными параметрами
            /// </summary>
            /// <param name="name">Имя кисти</param>
            /// <param name="group">Имя группы</param>
            /// <param name="color">Основной цвет кисти</param>
            /// <param name="id">Идентификатор кисти</param>
            /// <returns>Сплошная кисть</returns>
            //---------------------------------------------------------------------------------------------------------
            public static CCadBrushSolid AddSolid(String name, String group, TCadColor color, Int32 id)
            {
                // Создаем кисть
                CCadBrushSolid brush_solid = new CCadBrushSolid(name);

                brush_solid.ID     = id;
                brush_solid.mGroup = group;
                brush_solid.mColor = color;

                // Обновляем кисть
                brush_solid.Update();

                // Добавляем
                mBrushes.Add(brush_solid);

                return(brush_solid);
            }
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Поиск кисти по цвету
            /// </summary>
            /// <param name="color">Цвет кисти</param>
            /// <returns>Найденная кисть или кисть по умолчанию</returns>
            //---------------------------------------------------------------------------------------------------------
            public static CCadBrush GetFromColor(TCadColor color)
            {
                CCadBrush brush = DefaultBrush;

                for (Int32 i = 0; i < mBrushes.Count; i++)
                {
                    if (mBrushes[i].BrushFill == TCadBrushFillType.Solid)
                    {
                        CCadBrushSolid solid_brush = mBrushes[i] as CCadBrushSolid;
                        if (solid_brush.Color.Equals(color))
                        {
                            return(solid_brush);
                        }
                    }
                }

                CCadBrushSolid new_solid_brush = new CCadBrushSolid(color);

                mBrushes.Add(new_solid_brush);

                return(new_solid_brush);
            }
Example #7
0
 //---------------------------------------------------------------------------------------------------------
 /// <summary>
 /// Запись данных цвета в формат атрибутов
 /// </summary>
 /// <param name="xml_writer">Средство записи данных в формат XML</param>
 /// <param name="name">Имя атрибута</param>
 /// <param name="color">Цвет</param>
 //---------------------------------------------------------------------------------------------------------
 public static void WriteColorToAttribute(this XmlWriter xml_writer, String name, TCadColor color)
 {
     xml_writer.WriteStartAttribute(name);
     xml_writer.WriteValue(color.Serialize());
     xml_writer.WriteEndAttribute();
 }