Inheritance: ViewModelBase
        private void Validate_TopDrawType(FlagsViewModel model, TopDrawType oldValue, TopDrawType newValue)
        {
            switch (Textures.Top.Width)
            {
            case 0:
                model.TopDrawType
                    = FilterEnum(newValue, oldValue, TopDrawType.None, TopDrawType.SolidColor);
                break;

            case 64:
                model.TopDrawType
                    = FilterEnum(newValue,
                                 oldValue,
                                 TopDrawType.None,
                                 TopDrawType.SolidColor,
                                 TopDrawType.SolidColorTexture);
                break;

            case 512:
            case 1024:
                model.TopDrawType
                    = FilterEnum(newValue, oldValue, TopDrawType.None, TopDrawType.SolidColor, TopDrawType.Texture);
                break;
            }

            // NOTE: Only Directly Call if BOTH Validators Only Modify Themselves!
            Validate_TopFrameType(model, model.TopFrameType, model.TopFrameType);
        }
        private void Validate_TopFrameType(FlagsViewModel model, TopFrameType oldValue, TopFrameType newValue)
        {
            if (!model.TopDrawType.Equals(TopDrawType.Texture))
            {
                model.TopFrameType = TopFrameType.Single;
            }
            else
            {
                switch (Textures.Top.Width)
                {
                case 512:
                    model.TopFrameType
                        = FilterEnum(newValue, oldValue, TopFrameType.Single);
                    break;

                case 1024:
                    Flags.TopFrameType
                        = FilterEnum(Flags.TopFrameType,
                                     TopFrameType.FastScroll,
                                     TopFrameType.SlowScroll,
                                     TopFrameType.FastScroll);
                    break;
                }
            }
        }
        private void Validate_BottomDrawType(FlagsViewModel model, BottomDrawType oldValue, BottomDrawType newValue)
        {
            switch (Textures.Bottom.Width)
            {
            case 0:
                model.BottomDrawType
                    = FilterEnum(newValue, oldValue, BottomDrawType.None, BottomDrawType.SolidColor);
                break;

            case 512:
            case 1024:
                model.BottomDrawType
                    = FilterEnum(newValue,
                                 oldValue,
                                 BottomDrawType.None,
                                 BottomDrawType.SolidColor,
                                 BottomDrawType.Texture);
                break;
            }

            // NOTE: Only Directly Call if Absolutely Sure no Recursion will Ensue!
            Validate_Dependency_BottomBackgroundInnerColor(model,
                                                           model.BottomBackgroundInnerColor,
                                                           model.BottomBackgroundInnerColor);
            // Inner will Also Validate Outer
            Validate_BottomFrameType(model, model.BottomFrameType, model.BottomFrameType);
        }
        private void Validate_BottomFrameType(FlagsViewModel model, BottomFrameType oldValue, BottomFrameType newValue)
        {
            if (!model.BottomDrawType.Equals(BottomDrawType.Texture))
            {
                model.BottomFrameType = BottomFrameType.Single;
            }
            else
            {
                var tW = Textures.Bottom.Width;
                switch (tW)
                {
                case 512:
                    model.BottomFrameType
                        = FilterEnum(newValue, oldValue, BottomFrameType.Single);
                    break;

                case 1024:
                    model.BottomFrameType
                        = FilterEnum(newValue,
                                     oldValue,
                                     BottomFrameType.FastScroll,
                                     BottomFrameType.SlowScroll,
                                     BottomFrameType.PageScroll,
                                     BottomFrameType.BounceScroll);
                    break;
                }
            }
        }
Exemplo n.º 5
0
 public ThemeViewModel(Theme model) : base(model, Guid.NewGuid().ToString())
 {
     Flags = new FlagsViewModel(model.Flags, Tag);
     Colors = new ColorsViewModel(model.Colors, Tag);
     Textures = new TexturesViewModel(model.Textures, Tag);
     
     SetupRules();
 }
        private void Validate_Dependency_BottomBackgroundInnerColor(FlagsViewModel model, bool oldValue, bool newValue)
        {
            model.BottomBackgroundInnerColor = newValue && model.BottomDrawType == BottomDrawType.SolidColor;

            // NOTE: Only Directly Call if Absolutely Sure no Recursion will Ensue!
            Validate_Dependency_BottomBackgroundOuterColor(model,
                                                           model.BottomBackgroundOuterColor,
                                                           model.BottomBackgroundOuterColor);
        }
        public ThemeViewModel(Theme model, SMDH info = null) : base(model, Guid.NewGuid().ToString())
        {
            Flags    = new FlagsViewModel(model.Flags, Tag);
            Colors   = new ColorsViewModel(model.Colors, Tag);
            Textures = new TexturesViewModel(model.Textures, Tag);

            Info = new ThemeInfoViewModel(info ?? new SMDH(), Tag);

            SetupRules();
        }
Exemplo n.º 8
0
        public ThemeViewModel(Theme model, SMDH info = null) : base(model, Guid.NewGuid().ToString())
        {
            Flags = new FlagsViewModel(model.Flags, Tag);
            Colors = new ColorsViewModel(model.Colors, Tag);
            Textures = new TexturesViewModel(model.Textures, Tag);

            Info = new ThemeInfoViewModel(info ?? new SMDH(), Tag);

            SetupRules();
        }
 private void Validate_Dependency_BottomBackgroundOuterColor(FlagsViewModel model, bool oldValue, bool newValue)
 {
     model.BottomBackgroundOuterColor = newValue &&
                                        model.BottomBackgroundInnerColor &&
                                        model.BottomDrawType == BottomDrawType.SolidColor;
 }