private void Clear()
 {
     Fields.Clear();
     Consts.Clear();
     Enums.Clear();
     SyntaxTree = null;
 }
Пример #2
0
        private void SetupUserValueInput()
        {
            UserValueIsVisible = false;
            EnumValueIsVisible = false;

            if (SelectedOperator.Value == "changed" || SelectedOperator.Value == "decreased" ||
                SelectedOperator.Value == "increased")
            {
                return;
            }

            if (SelectedDataModelProp.Type == "Boolean")
            {
                EnumValueIsVisible = true;
            }
            else if (SelectedDataModelProp.EnumValues != null)
            {
                Enums.Clear();
                Enums.AddRange(SelectedDataModelProp.EnumValues);
                EnumValueIsVisible = true;
            }
            else
            {
                UserValueIsVisible = true;
            }
        }
Пример #3
0
 public void ClearDefinitionLists()
 {
     CardProperties.Clear();
     DeckUrls.Clear();
     Enums.Clear();
     Extras.Clear();
     GameBoardCards.Clear();
     GameBoardUrls.Clear();
 }
Пример #4
0
 /// <summary>
 /// 重置全局对象
 /// </summary>
 public static void ResetGloblaCollection()
 {
     Entities.Clear();
     Projects.Clear();
     Enums.Clear();
     ApiItems.Clear();
     foreach (var solution in Solutions)
     {
         var model = new SolutionModel
         {
             Solution = solution
         };
         model.OnSolutionLoad();
     }
 }
Пример #5
0
    public void Parse(string dir, bool clear = false)
    {
        if (clear)
        {
            Enums.Clear();
            Consts.Clear();
            Messages.Clear();
            Tables.Clear();
            Classes.Clear();
        }
        TypeManager.PushAssembly(typeof(Scorpio.Commons.FileUtil).Assembly);
        TypeManager.PushAssembly(GetType().Assembly);
        Script.LoadLibraryV1();
        var global     = Script.Global;
        var globalKeys = global.GetKeys();
        var files      = Directory.Exists(dir) ? Directory.GetFiles(dir, "*.sco", SearchOption.AllDirectories) : (File.Exists(dir) ? new string[] { dir } : new string[0]);

        foreach (var file in files)
        {
            Script.LoadFile(file);
        }
        var keys = global.GetKeys();

        foreach (var name in keys)
        {
            if (globalKeys.Contains(name))
            {
                continue;
            }
            var table = global.GetValue(name).Get <ScriptMap>();
            if (table == null)
            {
                continue;
            }
            if (name.StartsWith(ENUM_KEYWORD))                  //枚举类型
            {
                ParseEnum(name, table);
            }
            else if (name.StartsWith(CONST_KEYWORD))            //常量类型
            {
                ParseConst(name, table);
            }
            else
            {
                ParseClass(name, table);
            }
        }
    }
Пример #6
0
        /// <summary>
        ///     Handles updating the form to match the selected data model property
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void UpdateForm(object sender, PropertyChangedEventArgs e)
        {
            if (e.PropertyName != "SelectedDataModelProp")
            {
                return;
            }

            Operators.Clear();
            Enums.Clear();
            UserValueIsVisible = false;
            EnumValueIsVisible = false;

            switch (SelectedDataModelProp.Type)
            {
            case "Int32":
            case "Single":
                Operators.AddRange(_int32Operators);
                UserValueIsVisible = true;
                break;

            case "Boolean":
                Operators.AddRange(_boolOperators);
                Enums.Add("True");
                Enums.Add("False");
                EnumValueIsVisible = true;
                break;

            case "String":
                Operators.AddRange(_stringOperators);
                UserValueIsVisible = true;
                break;

            default:
                Operators.AddRange(_operators);
                UserValueIsVisible = true;
                break;
            }

            // Setup Enum selection if needed
            if (SelectedDataModelProp.EnumValues != null)
            {
                Enums.AddRange(SelectedDataModelProp.EnumValues);
                EnumValueIsVisible = true;
            }

            SelectedOperator = Operators.First();
        }
Пример #7
0
        public void SetupPropertyInput()
        {
            Operators.Clear();
            Enums.Clear();

            switch (SelectedDataModelProp.Type)
            {
            case "Int32":
            case "Single":
                Operators.AddRange(_int32Operators);
                UserValueIsVisible = true;
                break;

            case "Boolean":
                Operators.AddRange(_boolOperators);
                Enums.Add("True");
                Enums.Add("False");
                EnumValueIsVisible = true;
                break;

            case "String":
                Operators.AddRange(_stringOperators);
                UserValueIsVisible = true;
                break;

            default:
                Operators.AddRange(_operators);
                UserValueIsVisible = true;
                break;
            }

            // Add Changed operator is the type is event
            if (_editorViewModel.ProposedLayer.IsEvent)
            {
                Operators.Add(new NamedOperator("Changed", "changed"));
                // Also add decreased and increased operator on numbers
                if (SelectedDataModelProp.Type == "Int32" || SelectedDataModelProp.Type == "Single")
                {
                    Operators.Add(new NamedOperator("Decreased", "decreased"));
                    Operators.Add(new NamedOperator("Increased", "increased"));
                }
            }

            SetupUserValueInput();
        }
Пример #8
0
 /// <summary>
 /// Clears all declarations from the model.
 /// </summary>
 public void Clear()
 {
     Enums.Clear();
     Classes.Clear();
 }