static private AbstrPageEl ReadLikePageTime(XmlNode nd_el) { PageEl out_pageEl = new PageEl(); string pos_x = "0", pos_y = "0", clr_hex = "0x", sz = "0", dt_str = ""; try { foreach (XmlNode nd_string_par in nd_el) { switch (nd_string_par.Name) { case (XMLDefines.XMLTimeTag.Position): pos_x = nd_string_par.Attributes.GetNamedItem( XMLDefines.XMLTimeAttr.PosX).Value; pos_y = nd_string_par.Attributes.GetNamedItem( XMLDefines.XMLTimeAttr.PosY).Value; break; case (XMLDefines.XMLTimeTag.Color): clr_hex = nd_string_par.Attributes.GetNamedItem( XMLDefines.XMLTimeAttr.ColorValue).Value; break; case (XMLDefines.XMLTimeTag.Size): sz = nd_string_par.Attributes.GetNamedItem( XMLDefines.XMLTimeAttr.SizeValue).Value; break; case (XMLDefines.XMLTimeTag.Data): dt_str = nd_string_par.Attributes.GetNamedItem( XMLDefines.XMLTimeAttr.DataTmFlag).Value; break; } } } catch { } try { Byte b_pos_x, b_pos_y, b_sz; AColor color; b_pos_x = Convert.ToByte(pos_x); b_pos_y = Convert.ToByte(pos_y); b_sz = Convert.ToByte(sz); color = new AColor(clr_hex); out_pageEl = new PageTime(b_pos_x, b_pos_y, color, b_sz); ((PageTime)out_pageEl).Second = (dt_str[0] == '1'); ((PageTime)out_pageEl).Minut = (dt_str[1] == '1'); ((PageTime)out_pageEl).Hour = (dt_str[2] == '1'); } catch (Exception e) { } return(out_pageEl); }
public override AbstrPageEl CompileElement() { int id = 0; bool sec = false; bool min = false; bool hour = false; AColor clr = AColors.WHITE; int px = 0; int py = 0; int sz = 0; foreach (UIElement ch in Container.Children) { switch (ch.Uid) { case "spF": StackPanel sp = (StackPanel)ch; sec = (bool)((CheckBox)sp.Children[0]).IsChecked; min = (bool)((CheckBox)sp.Children[1]).IsChecked; hour = (bool)((CheckBox)sp.Children[2]).IsChecked; break; case "tbS": if (int.TryParse(((TextBox)ch).Text, out sz)) { sz = (sz & byte.MaxValue); } else { sz = 0; } break; case "tbY": if (int.TryParse(((TextBox)ch).Text, out py)) { py = (py & byte.MaxValue); } else { py = 0; } break; case "tbX": if (int.TryParse(((TextBox)ch).Text, out px)) { px = (px & byte.MaxValue); } else { px = 0; } break; case "clrBox": try { clr = new AColor((ch as UIAcolorBox).GeBoxColor()); } catch { } break; case "lblID": if (!int.TryParse( ((ch as Label).Content as string), out id)) { id = 0; } break; } } AbstrPageEl p_out = new PageTime( (byte)px, (byte)py, clr, (byte)sz); ((PageTime)p_out).Second = sec; ((PageTime)p_out).Minute = min; ((PageTime)p_out).Hour = hour; p_out.SetID(id); return(p_out); }
public UIPageTime(AbstrPageEl pEl) : base(47) { PageTime pt = (PageTime)pEl; SetID(pt.ID); // Интерфейс для настройки позиции Label lbl_pos = new Label(); TextBox tbX = new TextBox(); TextBox tbY = new TextBox(); lbl_pos.Content = "Позиция"; lbl_pos.VerticalAlignment = VerticalAlignment.Center; tbX.Text = pt.X.ToString(); tbY.Text = pt.Y.ToString(); tbX.MaxLength = 3; tbY.MaxLength = 3; tbX.Width = 25; tbY.Width = 25; tbX.Height = 23; tbY.Height = 23; tbX.TextAlignment = TextAlignment.Center; tbY.TextAlignment = TextAlignment.Center; // // Цвет UIAcolorBox clrBox = new UIAcolorBox( pt.TextColor.GetColor()); // // Размер Label lbl_size = new Label(); TextBox tbS = new TextBox(); lbl_size.Content = "Размер"; lbl_size.VerticalAlignment = VerticalAlignment.Center; tbS.Text = pt.Size.ToString(); tbS.Width = 25; tbS.Height = 23; // // Флаги StackPanel spFlasgs = new StackPanel(); CheckBox cbSecond = new CheckBox(); CheckBox cbMinut = new CheckBox(); CheckBox cbHour = new CheckBox(); cbSecond.IsChecked = pt.Second; cbMinut.IsChecked = pt.Minute; cbHour.IsChecked = pt.Hour; cbSecond.Content = "сек"; cbMinut.Content = "мин"; cbHour.Content = "час"; spFlasgs.Children.Add(cbSecond); spFlasgs.Children.Add(cbMinut); spFlasgs.Children.Add(cbHour); // // labl_ID.Content = ID.ToString(); // Container.Children.Add(lbl_pos); Container.Children.Add(tbX); Container.Children.Add( UIGenerateHelping.NewGridSplitter(10, Container.Background)); Container.Children.Add(tbY); Container.Children.Add( UIGenerateHelping.NewGridSplitter(10, Container.Background)); Container.Children.Add(clrBox); Container.Children.Add( UIGenerateHelping.NewGridSplitter(10, Container.Background)); Container.Children.Add(lbl_size); Container.Children.Add(tbS); Container.Children.Add( UIGenerateHelping.NewGridSplitter(10, Container.Background)); Container.Children.Add(spFlasgs); clrBox.Uid = "clrBox"; tbX.Uid = "tbX"; tbY.Uid = "tbY"; tbS.Uid = "tbS"; spFlasgs.Uid = "spF"; cbSecond.Uid = "cbS"; cbMinut.Uid = "cbM"; cbHour.Uid = "cbH"; }
static private XmlElement XmlElFromPageTime(AbstrPageEl pEl, XmlDocument xdd) { PageTime pt = (PageTime)pEl; // Описание элемента var ndPageEl = xdd.CreateElement( (XMLDefines.XMLTag.PageEl).ToString()); var attrTypeEl = xdd.CreateAttribute( XMLDefines.XMLTimeAttr.TypeEl.ToString()); attrTypeEl.Value = ((int)pt.GetTypeEl()).ToString(); ndPageEl.Attributes.Append(attrTypeEl); // Позиция var ndPos = xdd.CreateElement( XMLDefines.XMLTimeTag.Position.ToString()); var attrPosX = xdd.CreateAttribute( XMLDefines.XMLTimeAttr.PosX.ToString()); var attrPosY = xdd.CreateAttribute( XMLDefines.XMLTimeAttr.PosY.ToString()); attrPosX.Value = pt.X.ToString(); attrPosY.Value = pt.Y.ToString(); ndPos.Attributes.Append(attrPosX); ndPos.Attributes.Append(attrPosY); // Цвет var ndClr = xdd.CreateElement( XMLDefines.XMLTimeTag.Color.ToString()); var attrClr = xdd.CreateAttribute( XMLDefines.XMLTimeAttr.ColorValue.ToString()); attrClr.Value = pt.TextColor.ToHex(); ndClr.Attributes.Append(attrClr); // Размер var ndSz = xdd.CreateElement( XMLDefines.XMLTimeTag.Size.ToString()); var attrSz = xdd.CreateAttribute( XMLDefines.XMLTimeAttr.SizeValue.ToString()); attrSz.Value = pt.Size.ToString(); ndSz.Attributes.Append(attrSz); // Данные var ndDt = xdd.CreateElement( XMLDefines.XMLTimeTag.Data.ToString()); var attrSec = xdd.CreateAttribute( XMLDefines.XMLTimeAttr.DataTmFlag.ToString()); attrSec.Value = pt.Second ? "1" : "0"; attrSec.Value += pt.Minute ? "1" : "0"; attrSec.Value += pt.Hour ? "1" : "0"; ndDt.Attributes.Append(attrSec); // ndPageEl.AppendChild(ndPos); ndPageEl.AppendChild(ndClr); ndPageEl.AppendChild(ndSz); ndPageEl.AppendChild(ndDt); return(ndPageEl); }