Пример #1
0
 public void SelectForm(String name)
 {
     foreach(FormModel model in MainController.Models)
     {
         if(model.Name == name)
             Model = model;
     }
 }
Пример #2
0
 public FormModel CreateNewForm()
 {
     FormModel model = new FormModel();
     Models.Add(model);
     FormController.Model = model;
     FormController.GetInstance().ShowWindow();
     window.UpdateView();
     return model;
 }
Пример #3
0
 public void InitiateConvertion()
 {
     MainController.Models = GetConvertedFroms(dialog.SourseText);
     FormController.Model = MainController.Models[0];
     UpdateView();
 }
Пример #4
0
 public void ShowWindow()
 {
     dialog = new FormDialog();
     if(Model == null)
         Model = new FormModel();
     UpdateView();
     dialog.Run();
 }
Пример #5
0
 public void RemoveForm(FormModel model)
 {
     if(model != null)
         Models.Remove(model);
 }
Пример #6
0
        public FormModel ConvertPhpPartToXml(String phpPart)
        {
            MatchCollection matches = Regex.Matches(phpPart, @"'(\w*)' => '?(.[^']*)'?,");
            Dictionary<String, String> dict = ConstructDictionary(matches);

            FormModel model = new FormModel();
            Field field = new Field();
            field.Name = "id1";

            foreach(KeyValuePair<String, String> pair in dict)
            {
                if(pair.Key == "reg_exp")
                {
                    field.Regex = pair.Value;

                    if(field.Regex.Contains("a") ||
                       field.Regex.Contains("z") ||
                       field.Regex.Contains("A") ||
                       field.Regex.Contains("Z"))
                    {
                        field.Keyboard = Field.KeyboardType.Letters;
                    }

            //					field.MaxLen = CalculateMaxLenRegex(field.Regex);

                }
                else if(pair.Key == "acc_mask")
                {
                    field.MaxLen = CalculateMaxLenString(pair.Value);
                    field.Split = ConertMask(pair.Value);
                }
                else if(pair.Key == "acc_name")
                {
                    field.Title = pair.Value;
                    if(!pair.Value.ToLower().Contains("введите"))
                        field.Message = "Введите " + pair.Value.ToLower();
                    else
                        field.Message = pair.Value;
                }
                else if(pair.Key == "name")
                {
                    model.Name = pair.Value;
                }
                else if(pair.Key == "condition_info")
                {
                    if(pair.Value.Length == 0)
                        continue;

                    field.Help = Regex.Replace(pair.Value, @"<.+?>", " ");
                }
                else if(pair.Key == "display_scheme")
                {
                    if(pair.Value.Contains("<page>"))
                    {
                        model.Pages.AddRange(ConstructAndReturnPages(pair.Value));
                    }
                    else if(pair.Value.Contains("<field "))
                    {
                        model.Pages.Add(ConstructPage(pair.Value));
                    }
                }
            }

            model.Pages[0].Fields.Add(field);
            return model;
        }