public CompressionDialog()
        {
            InitializeComponent();

            format          = Config.Format;
            wmaQuality      = Config.WMAQuality;
            samplesPerBlock = Config.SamplesPerBlock;

            var formats = (CompressionFormats[])Enum.GetValues(typeof(CompressionFormats));

            for (int i = 0; i < formats.Length; i++)
            {
                comboBoxFormat.Items.Add(formats[i].ToString());
                if (format == formats[i])
                {
                    comboBoxFormat.SelectedIndex = i;
                }
            }

            spinnerQuality.Value = Math.Max(1, Math.Min(100, wmaQuality));

            var samples = (ADPCMSamplesPerBlock[])Enum.GetValues(typeof(ADPCMSamplesPerBlock));

            for (int i = 0; i < samples.Length; i++)
            {
                comboBoxSamplesPerBlock.Items.Add(((int)samples[i]).ToString());
                if (samplesPerBlock == samples[i])
                {
                    comboBoxSamplesPerBlock.SelectedIndex = i;
                }
            }

            labelSettings.Visibility           = Visibility.Hidden;
            spinnerQuality.Visibility          = Visibility.Hidden;
            comboBoxSamplesPerBlock.Visibility = Visibility.Hidden;
            switch (format)
            {
            case CompressionFormats.ADPCM:
                labelSettings.Content              = "Samples Per Block";
                labelSettings.Visibility           = Visibility.Visible;
                comboBoxSamplesPerBlock.Visibility = Visibility.Visible;
                break;

            case CompressionFormats.xWMA:
                labelSettings.Content     = "Quility (1-100)";
                labelSettings.Visibility  = Visibility.Visible;
                spinnerQuality.Visibility = Visibility.Visible;
                break;
            }
        }
Exemple #2
0
        //=========== LOADING ============
        #region Loading

        /**<summary>Loads the settings.</summary>*/
        public static void Load()
        {
            // General
            OutputFile        = Settings.Default.OutputFile;
            DragAndDrop       = Settings.Default.DragAndDrop;
            ShowLog           = Settings.Default.ShowLog;
            TrackNames        = Settings.Default.TrackNames;
            Volume            = Settings.Default.Volume;
            Muted             = Settings.Default.Muted;
            LastFolderBrowser = Settings.Default.LastFolderBrowser;
            SaveConfirmation  = Settings.Default.SaveConfirmation;
            if (string.IsNullOrEmpty(LastFolderBrowser))
            {
                LastFolderBrowser = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
            }
            ConvertOptions convertOption;

            if (Enum.TryParse(Settings.Default.ConvertOption, out convertOption))
            {
                ConvertOption = convertOption;
            }
            else
            {
                ConvertOption = ConvertOptions.Ask;
            }

            if (string.IsNullOrEmpty(OutputFile))
            {
                OutputFile = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "Wave Bank.xwb");
            }

            // Advanced
            Streaming       = Settings.Default.Streaming;
            WMAQuality      = Settings.Default.WMAQuality;
            SamplesPerBlock = (ADPCMSamplesPerBlock)Settings.Default.ADPCMSamplesPerBlock;
            CompressionFormats format;

            if (Enum.TryParse(Settings.Default.Format, out format))
            {
                Format = format;
            }
            else
            {
                Format = CompressionFormats.xWMA;
            }
        }
        private void OnSamplesPerBlockChanged(object sender, SelectionChangedEventArgs e)
        {
            if (!loaded)
            {
                return;
            }
            var samples = (ADPCMSamplesPerBlock[])Enum.GetValues(typeof(ADPCMSamplesPerBlock));

            for (int i = 0; i < samples.Length; i++)
            {
                if (int.Parse((string)comboBoxSamplesPerBlock.SelectedItem) == ((int)samples[i]))
                {
                    samplesPerBlock = samples[i];
                    break;
                }
            }
        }