CubePDF メイン画面のコンボボックスに表示する文字列を定義した クラスです。Parameter クラスの各種パラメータに対応する文字列を 定義しています。
Exemplo n.º 1
0
        /* ----------------------------------------------------------------- */
        ///
        /// InitializeComboBox
        ///
        /// <summary>
        /// 各種コンボボックスに表示される文字列を初期化します。
        /// </summary>
        ///
        /* ----------------------------------------------------------------- */
        private void InitializeComboBox()
        {
            // FileType
            FileTypeCombBox.Items.Clear();
            foreach (Parameter.FileTypes id in Enum.GetValues(typeof(Parameter.FileTypes)))
            {
                FileTypeCombBox.Items.Add(Appearance.GetString(id));
            }
            FileTypeCombBox.SelectedIndex = 0;

            // PDF Version
            PdfVersionComboBox.Items.Clear();
            foreach (Parameter.PdfVersions id in Enum.GetValues(typeof(Parameter.PdfVersions)))
            {
                var str = Appearance.GetString(id);
                if (string.IsNullOrEmpty(str))
                {
                    continue;
                }
                PdfVersionComboBox.Items.Add(str);
            }
            PdfVersionComboBox.SelectedIndex = 0;

            // Resolution
            ResolutionComboBox.Items.Clear();
            foreach (Parameter.Resolutions id in Enum.GetValues(typeof(Parameter.Resolutions)))
            {
                ResolutionComboBox.Items.Add(Appearance.GetString(id));
            }
            ResolutionComboBox.SelectedIndex = 0;

            // ExistedFile
            ExistedFileComboBox.Items.Clear();
            foreach (Parameter.ExistedFiles id in Enum.GetValues(typeof(Parameter.ExistedFiles)))
            {
                ExistedFileComboBox.Items.Add(Appearance.GetString(id));
            }
            ExistedFileComboBox.SelectedIndex = 0;

            // PostProcess
            PostProcessComboBox.Items.Clear();
            foreach (Parameter.PostProcesses id in Enum.GetValues(typeof(Parameter.PostProcesses)))
            {
                PostProcessComboBox.Items.Add(Appearance.GetString(id));
            }
            PostProcessComboBox.SelectedIndex = 0;

            // Advance モードに設定されていない PostProcess
            PostProcessLiteComboBox.Items.Clear();
            PostProcessLiteComboBox.Items.Add(Appearance.GetString(Parameter.PostProcesses.Open));
            PostProcessLiteComboBox.Items.Add(Appearance.GetString(Parameter.PostProcesses.None));
            PostProcessLiteComboBox.SelectedIndex = 0;
        }
Exemplo n.º 2
0
        /* ----------------------------------------------------------------- */
        ///
        /// CheckOutput
        ///
        /// <summary>
        /// 出力先パスが正しいかどうかをチェックします。出力先パスが指定
        /// されていない場合はエラーメッセージを表示します。また、指定された
        /// 出力先パスが既に存在する場合には確認ダイアログを表示します。
        /// </summary>
        ///
        /* ----------------------------------------------------------------- */
        private bool CheckOutput(int do_existed_file)
        {
            if (this.OutputPathTextBox.Text.Length == 0)
            {
                MessageBox.Show(
                    Properties.Resources.FileNotSpecified,
                    Properties.Resources.Error,
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                    );
                return(false);
            }
            else
            {
                string ext      = Path.GetExtension(this.OutputPathTextBox.Text);
                string compared = Parameter.Extension(Translator.IndexToFileType(this.FileTypeCombBox.SelectedIndex));
                if (ext != compared && !CubePdf.Utility.IsAssociate(ext))
                {
                    this.OutputPathTextBox.Text += compared;
                }

                if (File.Exists(this.OutputPathTextBox.Text) && Translator.IndexToExistedFile(this.ExistedFileComboBox.SelectedIndex) != Parameter.ExistedFiles.Rename)
                {
                    // {0} は既に存在します。{1}しますか?
                    string message = String.Format(Properties.Resources.FileExists,
                                                   this.OutputPathTextBox.Text, Appearance.ExistedFileString((Parameter.ExistedFiles)do_existed_file));
                    if (MessageBox.Show(
                            message,
                            Properties.Resources.OverwritePrompt,
                            MessageBoxButtons.OKCancel,
                            MessageBoxIcon.Warning) == DialogResult.Cancel)
                    {
                        return(false);
                    }
                }
            }
            return(true);
        }
Exemplo n.º 3
0
        /* ----------------------------------------------------------------- */
        ///
        /// IsValidOutput
        ///
        /// <summary>
        /// 出力先パスが正しいかどうかをチェックします。出力先パスが指定
        /// されていない場合はエラーメッセージを表示します。また、指定された
        /// 出力先パスが既に存在する場合には確認ダイアログを表示します。
        /// </summary>
        ///
        /* ----------------------------------------------------------------- */
        private bool IsValidOutput(int do_existed_file)
        {
            if (string.IsNullOrEmpty(OutputPathTextBox.Text))
            {
                ShowMessage(new CubePdf.Message(Message.Levels.Error, Properties.Resources.FileNotSpecified));
                return(false);
            }

            var extension = IoEx.Path.GetExtension(OutputPathTextBox.Text);
            var compared  = Parameter.GetExtension(Translator.ToFileType(FileTypeCombBox.SelectedIndex));

            if (extension != compared)
            {
                OutputPathTextBox.Text += compared;
            }

            // パスは 260 文字未満、ディレクトリ名は 248 文字未満と言う Windows パス制限のチェック
            if (OutputPathTextBox.TextLength >= 260 ||
                IoEx.Path.GetDirectoryName(OutputPathTextBox.Text).Length >= 248)
            {
                ShowMessage(new CubePdf.Message(Message.Levels.Error, Properties.Resources.TooLongFilenam));
                return(false);
            }

            if (IoEx.File.Exists(OutputPathTextBox.Text) &&
                Translator.ToExistedFile(ExistedFileComboBox.SelectedIndex) != Parameter.ExistedFiles.Rename)
            {
                var message = new CubePdf.Message(Message.Levels.Warn, string.Format(Properties.Resources.FileExists,
                                                                                     OutputPathTextBox.Text, Appearance.GetString((Parameter.ExistedFiles)do_existed_file)));
                return(ShowMessage(message, MessageBoxButtons.OKCancel) != DialogResult.Cancel);
            }
            else
            {
                return(true);
            }
        }