public void SetStyle(ImpButton button, BtnNumber btnNumber)
        {
            for (var i = 0; i < button.CheckStates; i++)
            {
                button.SetContent(GeometryCreator.GetGeometry(btnNumber, i), i);
            }

            button.SetStyle(ButtonStyle);
        }
Exemple #2
0
        public static Geometry GetGeometry(BtnNumber btn, int state)
        {
            var pFc = new PathFigureCollection();
            var pG  = new PathGeometry();

            switch (btn)
            {
            case BtnNumber.Play:
                if (state == 0)
                {
                    return(PlayGeo(pFc, pG));
                }
                return(PauseGeo(pFc, pG));

            case BtnNumber.Loop:
                if (state == 0)
                {
                    return(NoLoop(pFc, pG));
                }
                if (state == 1)
                {
                    return(LoopAll(pFc, pG));
                }
                return(LoopOne(pFc, pG));

            case BtnNumber.Mute:
                if (state == 1)
                {
                    return(MuteGeo(pFc, pG));
                }

                return(UnmuteGeo(pFc, pG));

            case BtnNumber.Open:
                return(OpenGeo(pFc, pG));

            case BtnNumber.Help:
                return(HelpGeo(pFc, pG));

            case BtnNumber.Settings:
                return(SettingsGeo(pFc, pG));

            case BtnNumber.Playlist:
                return(PlaylistGeo(pFc, pG));

            case BtnNumber.Save:
                return(SavesGeo(pFc, pG));

            case BtnNumber.Minimize:
                return(MinimizeGeo(pFc, pG));

            case BtnNumber.Maximize:
                if (state == 0)
                {
                    return(MaximizeGeo(pFc, pG));
                }
                if (state == 1)
                {
                    return(NormalizeGeo(pFc, pG));
                }

                break;

            case BtnNumber.Close:
                return(ExitGeo(pFc, pG));

            case BtnNumber.ClearList:
                return(ClearGeo(pFc, pG));

            case BtnNumber.AddFile:
                return(AddFile(pFc, pG));

            case BtnNumber.AddFolder:
                return(AddFolder(pFc, pG));

            case BtnNumber.AddSubFolder:
                return(AddSubFolder(pFc, pG));

            case BtnNumber.Refresh:
                return(Refresh(pFc, pG));

            case BtnNumber.Remove:
                return(Remove(pFc, pG));

            case BtnNumber.EnlargeUp:
                return(EnlargeUp(pFc, pG));

            case BtnNumber.EnlargeDown:
                return(EnlargeDown(pFc, pG));

            case BtnNumber.Next:
                return(Next(pFc, pG));

            case BtnNumber.Previous:
                return(Prev(pFc, pG));

            case BtnNumber.SortByName:
                return(SortByName(pFc, pG));

            case BtnNumber.Sort:
                if (state == 0)
                {
                    return(SortByName(pFc, pG));
                }
                if (state == 1)
                {
                    return(SortByTime(pFc, pG));
                }
                return(SortByView(pFc, pG));

            case BtnNumber.Movie:
                return(Movie(pFc, pG));

            case BtnNumber.Music:
                return(Music(pFc, pG));

            case BtnNumber.Picture:
                return(Pictures(pFc, pG));

            case BtnNumber.RememberPath:
                return(RememberPath(pFc, pG));

            case BtnNumber.ForgetPath:
                return(ForgetPath(pFc, pG));

            default:

                throw new Exception("Unidentified button");
            }
            return(null);
        }