Esempio n. 1
0
 public static List<PageControl> RecursiveCreatePageControl(XmlElement root)
 {
     var result = new List<PageControl>();
     var nodeList = root.SelectNodes("Children/Child");
     if (nodeList.Count <= 0)
     {
         nodeList = root.SelectNodes("Child");
     }
     foreach (XmlNode node in nodeList)
     {
         var element = node as XmlElement;
         var control = new PageControl();
         control.Id = XmlUtility.GetAttrValue(element, "Id");
         control.Type = XmlUtility.GetAttrValue(element, "Type");
         var dynamicProperty = new DynamicProperty();
         dynamicProperty.InitProperty();
         var flashProperty = new FlashProperty();
         flashProperty.InitProperty();
         EvaluateProperty(element, control, dynamicProperty, flashProperty);
         EvaluateEvent(element, control, dynamicProperty, flashProperty);
         if (dynamicProperty.FlashEvents.Count > 0
             || dynamicProperty.FlashPropertys.Count > 0)
         {
             control.Properties.Add(new Property()
             {
                 Name = PropertyUtility.DYNAMICNAME,
                 Type = PropertyValueType.str.ToString(),
                 Value = dynamicProperty.ToXml()
             });
         }
         control.Children = RecursiveCreatePageControl(element);
         result.Add(control);
     }
     return result;
 }
Esempio n. 2
0
 public IDrawObject CreateDrawObject(PageControl control)
 {
     ToolBoxType toolBox = ToolBoxType.Pointer;
     var result = Enum.TryParse<ToolBoxType>(control.Type, out toolBox);
     if (result && toolBox != ToolBoxType.Frame)
     {
         return ConfigToolContext.Instance.ToolBoxs[toolBox].CreateDrawObject(control);
     }
     return null;
 }
Esempio n. 3
0
 public void Recurit(PageControl control)
 {
     foreach (var child in control.Children)
     {
         var drawObject = CreateDrawObject(child);
         if (drawObject != null)
         {
             ConfigToolContext.Instance.ToolDrawArea.AddNewDrawObject(drawObject);
         }
         Recurit(child);
     }
 }
Esempio n. 4
0
 public void Copy(PageControl control, bool isContainChild)
 {
     Id = control.Id;
     Type = control.Type;
     foreach (var item in control.Properties)
     {
         var property = FindProperty(item.Name);
         if (property != null)
         {
             property.Value = item.Value;
         }
         else
         {
             property = item.Clone() as Property;
             Properties.Add(property);
         }
     }
     foreach (var item in control.Events)
     {
         var events = FindEvent(item.Name);
         if (events != null)
         {
             events.Value = item.Value;
         }
         else
         {
             events = item.Clone() as Event;
             Events.Add(events);
         }
     }
     if (isContainChild)
     {
         foreach (var item in control.Children)
         {
             var childControl = Children.FirstOrDefault(c => c.Id == item.Id);
             if (childControl != null)
             {
                 childControl.Copy(item, isContainChild);
             }
             else
             {
                 childControl = item.Clone() as PageControl;
                 Children.Add(childControl);
             }
         }
     }
 }
Esempio n. 5
0
        private static void RecursionEvaluatePageControl(PageControl control, PageControl expression, PageEvaluataion evaluate)
        {
            var expressionControl = control.Clone() as PageControl;
            expressionControl.Children.Clear();
            var evaluationControl = new ControlEvaluataion();
            evaluationControl.ControlId = control.Id;
            EvaluatePageControlProperty(control, expressionControl, evaluationControl);
            EvaluatePageControlEvent(control, expressionControl, evaluationControl);
            expression.Children.Add(expressionControl);
            if (evaluationControl.Propertys.Count > 0
                || evaluationControl.Events.Count > 0)
            {
                evaluate.PageControls.Add(evaluationControl);
            }

            foreach (var child in control.Children)
            {
                RecursionEvaluatePageControl(child, expressionControl, evaluate);
            }
        }
Esempio n. 6
0
 private static List<PageControl> RecursiveCreatePageControl(XmlElement root)
 {
     var result = new List<PageControl>();
     var nodeList = root.SelectNodes("Children/Child");
     if (nodeList.Count <= 0)
     {
         nodeList = root.SelectNodes("Child");
     }
     foreach (XmlNode node in nodeList)
     {
         var element = node as XmlElement;
         var control = new PageControl();
         control.Id = XmlUtility.GetAttrValue(element, "Id");
         control.Type = XmlUtility.GetAttrValue(element, "Type");
         EvaluateProperty(element, control);
         EvaluateEvent(element, control);
         control.Children = RecursiveCreatePageControl(element);
         result.Add(control);
     }
     return result;
 }
Esempio n. 7
0
 private void Recurit(Dictionary<String, String> parameterMap, PageControl control)
 {
     foreach (var child in control.Children)
     {
         var drawObject = PageTransToDrawArea.Instance.CreateDrawObject(child);
         if (drawObject != null)
         {
             foreach (var property in drawObject.Property.Properties)
             {
                 var matches = ClipboardUtility.GetMatchResult(MATCHTEPLATE, property.Value);
                 if (matches != null && matches.Count > 0)
                 {
                     foreach (Match item in matches)
                     {
                         var value = item.Value.TrimStart('<');
                         value = value.TrimEnd('>');
                         if (parameterMap.ContainsKey(value))
                         {
                             property.Value = property.Value.Replace("<" + value + ">", "<" + parameterMap[value] + ">");
                         }
                     }
                 }
             }
             foreach (var tmpEvent in drawObject.Property.Events)
             {
                 var matches = ClipboardUtility.GetMatchResult(MATCHTEPLATE, tmpEvent.Value);
                 if (matches != null && matches.Count > 0)
                 {
                     foreach (Match item in matches)
                     {
                         var value = item.Value.TrimStart('<');
                         value = value.TrimEnd('>');
                         if (parameterMap.ContainsKey(value))
                         {
                             tmpEvent.Value = tmpEvent.Value.Replace("<" + value + ">", "<" + parameterMap[value] + ">");
                         }
                     }
                 }
             }
             ConfigToolContext.Instance.ToolDrawArea.AddNewDrawObject(drawObject);
         }
         Recurit(parameterMap, child);
     }
 }
Esempio n. 8
0
 public object Clone()
 {
     var result = new PageControl();
     result.Id = Id;
     result.Type = Type;
     foreach (var item in Properties)
     {
         result.Properties.Add(item.Clone() as Property);
     }
     foreach (var item in Events)
     {
         result.Events.Add(item.Clone() as Event);
     }
     foreach (var item in Children)
     {
         result.Children.Add(item.Clone() as PageControl);
     }
     return result;
 }
 protected virtual void JoinPropertyToPageControl(PageControl control)
 {
     foreach (var property in Properties)
     {
         if (IsCanSerialization(property.Name))
         {
             var controlProperty = new Property();
             controlProperty.Name = property.Name;
             controlProperty.Type = property.ValueType.ToString();
             controlProperty.Value = property.Value;
             control.Properties.Add(controlProperty);
         }
     }
 }
Esempio n. 10
0
 public override IDrawObject CreateDrawObject(PageControl control)
 {
     var property = new SignalChartProperty();
     InitDrawObjectFromPageControl(control, property);
     return new DrawSignalChart(property);
 }
Esempio n. 11
0
 private void Init(PageControl control, FrameProperty property)
 {
     property.InitProperty();
     property.Id = control.Id;
     foreach (var childProperty in property.Properties)
     {
         var tempProperty = control.FindProperty(childProperty.Name);
         if (tempProperty != null)
         {
             childProperty.Value = tempProperty.Value;
         }
     }
     foreach (var childEvent in property.Events)
     {
         var tempEvent = control.FindEvent(childEvent.Name);
         if (tempEvent != null)
         {
             childEvent.Value = tempEvent.Value;
         }
     }
 }
Esempio n. 12
0
 protected override void JoinPropertyToPageControl(PageControl control)
 {
     base.JoinPropertyToPageControl(control);
     AddDynamicProperty(control);
 }
 protected virtual void JoinEventToPageControl(PageControl control)
 {
     foreach (var events in Events)
     {
         if (IsCanSerialization(events.Name))
         {
             var controlEvent = new Event();
             controlEvent.Name = events.Name;
             controlEvent.Value = events.Value;
             control.Events.Add(controlEvent);
         }
     }
 }
Esempio n. 14
0
 private static void EvaluateProperty(XmlElement element, PageControl control,
     DynamicProperty dynamicProperty, FlashProperty flashProperty)
 {
     var nodeProperties = element.SelectNodes("Properties/Property");
     foreach (XmlNode nodeProperty in nodeProperties)
     {
         var property = new Property();
         property.Name = XmlUtility.GetAttrValue(nodeProperty as XmlElement, "Name");
         property.Type = XmlUtility.GetAttrValue(nodeProperty as XmlElement, "Type");
         property.Value = XmlUtility.GetElementCDataValue(nodeProperty as XmlElement);
         if (control.Type != ToolBoxType.Flash.ToString())
         {
             control.Properties.Add(property);
         }
         else
         {
             if (flashProperty.Properties.Any(p => p.Name == property.Name))
             {
                 control.Properties.Add(property);
             }
             else if (control.Type == ToolBoxType.Flash.ToString())
             {
                 var tempProperty = new FlashControlDynamicProperty();
                 tempProperty.Name = XmlUtility.GetAttrValue(nodeProperty as XmlElement, "Name");
                 tempProperty.Type = XmlUtility.GetAttrValue(nodeProperty as XmlElement, "Type");
                 tempProperty.Description = XmlUtility.GetAttrValue(nodeProperty as XmlElement, "Description");
                 tempProperty.DefaultValue = XmlUtility.GetAttrValue(nodeProperty as XmlElement, "DefaultValue");
                 tempProperty.Value = XmlUtility.GetElementCDataValue(nodeProperty as XmlElement);
                 if (!dynamicProperty.FlashPropertys.ContainsKey(tempProperty.Name))
                     dynamicProperty.FlashPropertys.Add(tempProperty.Name, tempProperty);
             }
         }
     }
 }
Esempio n. 15
0
        private static void EvaluatePageControlProperty(PageControl control, PageControl expressionControl,
            ControlEvaluataion evaluationControl)
        {
            foreach (var property in control.Properties)
            {
                if (ScriptUtility.IsEvaluateScript(property.Value))
                {
                    property.Value = ScriptUtility.TrimScript(property.Value);
                    var evaluateProperty = PropertyEvaluataionTransform.TransformToPropertyEvaluataion(property);
                    evaluationControl.Propertys.Add(evaluateProperty);
                    var tempProperty = expressionControl.Properties.FirstOrDefault(p => p.Name == property.Name);
                    if (tempProperty != null)
                    {
                        expressionControl.Properties.Remove(tempProperty);
                    }
                }
            }

            ClearSpiltProperty(expressionControl, evaluationControl);
        }
Esempio n. 16
0
        private static void ClearSpiltProperty(PageControl expressionControl, ControlEvaluataion evaluationControl)
        {
            if (expressionControl.Type == ToolBoxType.Flash.ToString())
            {
                var expressProperty = expressionControl.Properties.FirstOrDefault(p => p.Name == PropertyUtility.DYNAMICNAME);
                if (expressProperty != null)
                {
                    expressionControl.Properties.Remove(expressProperty);
                }

                var evaProperty = evaluationControl.Propertys.FirstOrDefault(p => p.Name == PropertyUtility.DYNAMICNAME);
                if (evaProperty != null)
                {
                    evaluationControl.Propertys.Remove(evaProperty);
                }
            }
        }
Esempio n. 17
0
 private static void EvaluatePageControlEvent(PageControl control, PageControl expressionControl,
     ControlEvaluataion evaluationControl)
 {
     foreach (var events in control.Events)
     {
         var pageValue = String.Empty;
         var othersValue = String.Empty;
         if (!String.IsNullOrEmpty(events.Value))
         {
             events.Value = ScriptUtility.TrimScript(events.Value);
             SplitPageControlEventValue(events.Value, out pageValue, out othersValue);
             events.Value = othersValue;
             var evaluateEvent = EventEvaluataionTransform.TransformToEventEvaluataion(events);
             evaluationControl.Events.Add(evaluateEvent);
         }
         var tempEvent = expressionControl.Events.FirstOrDefault(p => p.Name == events.Name);
         if (tempEvent != null)
         {
             if (!String.IsNullOrEmpty(pageValue))
                 tempEvent.Value = pageValue;
             else if (!String.IsNullOrEmpty(othersValue))
                 tempEvent.Value = events.Name;
             else
                 expressionControl.Events.Remove(tempEvent);
         }
     }
 }
Esempio n. 18
0
 private static void EvaluateEvent(XmlElement element, PageControl control,
     DynamicProperty dynamicProperty, FlashProperty flashProperty)
 {
     var nodeEvents = element.SelectNodes("Events/Event");
     foreach (XmlNode nodeEvent in nodeEvents)
     {
         var events = new Event();
         events.Name = XmlUtility.GetAttrValue(nodeEvent as XmlElement, "Name");
         events.Value = XmlUtility.GetElementCDataValue(nodeEvent as XmlElement);
         if (control.Type != ToolBoxType.Flash.ToString())
         {
             control.Events.Add(events);
         }
         else
         {
             if (flashProperty.Properties.Any(p => p.Name == events.Name))
             {
                 control.Events.Add(events);
             }
             else if (control.Type == ToolBoxType.Flash.ToString())
             {
                 var tempProperty = new FlashControlDynamicProperty();
                 tempProperty.Name = XmlUtility.GetAttrValue(nodeEvent as XmlElement, "Name");
                 tempProperty.Description = XmlUtility.GetAttrValue(nodeEvent as XmlElement, "Description");
                 tempProperty.Value = XmlUtility.GetElementCDataValue(nodeEvent as XmlElement);
                 if (!dynamicProperty.FlashEvents.ContainsKey(tempProperty.Name))
                     dynamicProperty.FlashEvents.Add(tempProperty.Name, tempProperty);
             }
         }
     }
 }
Esempio n. 19
0
 private void GatherResource(List<String> ids, PageControl control)
 {
     foreach (var child in control.Children)
     {
         if (IsControlExport(child))
         {
             var id = GetResourceId(child);
             if (!String.IsNullOrEmpty(id)
                 && !ids.Contains(id))
             {
                 ids.Add(id);
             }
             GatherResource(ids, child);
         }
     }
 }
Esempio n. 20
0
 private void AddDynamicEvent(PageControl control)
 {
     var property = Properties.FirstOrDefault(p => p.Name == PropertyUtility.DYNAMICNAME);
     if (property != null && !String.IsNullOrEmpty(property.Value))
     {
         var flashPropertys = new DynamicProperty();
         flashPropertys.Load(property.Value);
         foreach (var dynamicEvent in flashPropertys.FlashEvents.Values)
         {
             var controlEvent = new Event();
             controlEvent.Name = dynamicEvent.Name;
             controlEvent.Value = dynamicEvent.Value;
             control.Events.Add(controlEvent);
         }
     }
 }
Esempio n. 21
0
 private Boolean IsControlExport(PageControl control)
 {
     var result = false;
     if (control.Type == ToolBoxType.Image.ToString()
         || control.Type == ToolBoxType.Flash.ToString()
         || control.Type == ToolBoxType.Frame.ToString())
     {
         result = true;
     }
     return result;
 }
Esempio n. 22
0
 protected override void JoinEventToPageControl(PageControl control)
 {
     base.JoinEventToPageControl(control);
     AddDynamicEvent(control);
 }
Esempio n. 23
0
 private String GetResourceId(PageControl control)
 {
     var result = String.Empty;
     var property = control.Properties.FirstOrDefault(p => p.Name == "BackgroudImage");
     if (property != null && !String.IsNullOrEmpty(property.Value))
     {
         var values = property.Value.Split('\\');
         result = values[1];
     }
     else
     {
         property = control.Properties.FirstOrDefault(p => p.Name == PropertyUtility.DYNAMICNAME);
         if (property != null && !String.IsNullOrEmpty(property.Value))
         {
             var flashPropertys = new DynamicProperty();
             flashPropertys.Load(property.Value);
             if (!String.IsNullOrEmpty(flashPropertys.FlashUrl))
             {
                 var values = flashPropertys.FlashUrl.Split('\\');
                 result = values[1];
             }
         }
     }
     return result;
 }
Esempio n. 24
0
 private static void EvaluateEvent(XmlElement element, PageControl control)
 {
     var nodeEvents = element.SelectNodes("Events/Event");
     foreach (XmlNode nodeEvent in nodeEvents)
     {
         var events = new Event();
         events.Name = XmlUtility.GetAttrValue(nodeEvent as XmlElement, "Name");
         events.Value = XmlUtility.GetElementCDataValue(nodeEvent as XmlElement);
         control.Events.Add(events);
     }
 }
Esempio n. 25
0
 /// <summary>
 /// Draw Object
 /// </summary>
 public virtual IDrawObject CreateDrawObject(PageControl control)
 {
     return null;
 }
Esempio n. 26
0
 private static void EvaluateProperty(XmlElement element, PageControl control)
 {
     var nodeProperties = element.SelectNodes("Properties/Property");
     foreach (XmlNode nodeProperty in nodeProperties)
     {
         var property = new Property();
         property.Name = XmlUtility.GetAttrValue(nodeProperty as XmlElement, "Name");
         property.Type = XmlUtility.GetAttrValue(nodeProperty as XmlElement, "Type");
         property.Value = XmlUtility.GetElementCDataValue(nodeProperty as XmlElement);
         control.Properties.Add(property);
     }
 }
Esempio n. 27
0
 public virtual void InitDrawObjectFromPageControl(PageControl control, IDrawObjectProperty property)
 {
     property.InitProperty();
     foreach (var childProperty in property.Properties)
     {
         var tempProperty = control.FindProperty(childProperty.Name);
         if (tempProperty != null)
         {
             childProperty.Value = tempProperty.Value;
         }
     }
     foreach (var childEvent in property.Events)
     {
         var tempEvent = control.FindEvent(childEvent.Name);
         if (tempEvent != null)
         {
             childEvent.Value = tempEvent.Value;
         }
     }
 }
Esempio n. 28
0
 public override IDrawObject CreateDrawObject(PageControl control)
 {
     var property = new LineProperty();
     InitDrawObjectFromPageControl(control, property);
     return new DrawLine(property);
 }
 public virtual PageControl ToPageControl()
 {
     var control = new PageControl();
     control.Id = Id;
     control.Type = BoxType.ToString();
     JoinPropertyToPageControl(control);
     JoinEventToPageControl(control);
     return control;
 }