Inheritance: MediaPortal.GUI.Library.GUIWindow, ISetupForm
        public MpDialogTraktRating(TraktPlugin.GUI.GUIRateDialog dialog)
            : base(dialog)
        {
            this.mpDialog = dialog;
            this.DialogType = dialog.GetModuleName();
            this.DialogId = dialog.GetID;
            this.Rating = ratingFromTraktRateValue(dialog.Rated);
            this.ShowAdvancedRatings = dialog.ShowAdvancedRatings;
            GetHeading(dialog, 1);
            GetText(dialog, 2, 3, 4, 5);

            this.AvailableActions.Add("cancel");
            this.AvailableActions.Add("setrating");
            this.AvailableActions.Add("confirmrating");
        }
        private int ratingFromTraktRateValue(TraktPlugin.TraktAPI.TraktRateValue rateValue)
        {
            switch (rateValue)
            {
                case TraktPlugin.TraktAPI.TraktRateValue.unrate:
                    return 0;

                case TraktPlugin.TraktAPI.TraktRateValue.one:
                case TraktPlugin.TraktAPI.TraktRateValue.hate:
                    return 1;

                case TraktPlugin.TraktAPI.TraktRateValue.two:
                    return 2;

                case TraktPlugin.TraktAPI.TraktRateValue.three:
                    return 3;

                case TraktPlugin.TraktAPI.TraktRateValue.four:
                    return 4;

                case TraktPlugin.TraktAPI.TraktRateValue.five:
                    return 5;

                case TraktPlugin.TraktAPI.TraktRateValue.six:
                    return 6;

                case TraktPlugin.TraktAPI.TraktRateValue.seven:
                    return 7;

                case TraktPlugin.TraktAPI.TraktRateValue.eight:
                    return 8;

                case TraktPlugin.TraktAPI.TraktRateValue.nine:
                    return 9;

                case TraktPlugin.TraktAPI.TraktRateValue.ten:
                case TraktPlugin.TraktAPI.TraktRateValue.love:
                    return 10;
            }

            return 0;
        }