OSDN Git Service

WinGui:
authorsr55 <sr55@b64f7644-9d1e-0410-96f1-a4d463321fa5>
Sat, 4 Jul 2009 15:32:41 +0000 (15:32 +0000)
committersr55 <sr55@b64f7644-9d1e-0410-96f1-a4d463321fa5>
Sat, 4 Jul 2009 15:32:41 +0000 (15:32 +0000)
- Remove M4v from format dropdown and add new option "Use iPod/iTunes friendly (.m4v) file extension for MP4

git-svn-id: svn://localhost/HandBrake/trunk@2662 b64f7644-9d1e-0410-96f1-a4d463321fa5

win/C#/Controls/Subtitles.cs
win/C#/Functions/Main.cs
win/C#/Functions/PresetLoader.cs
win/C#/Properties/Settings.Designer.cs
win/C#/Properties/Settings.settings
win/C#/app.config
win/C#/frmMain.Designer.cs
win/C#/frmMain.cs
win/C#/frmOptions.Designer.cs
win/C#/frmOptions.cs

index 47864f2..9358a79 100644 (file)
@@ -17,7 +17,7 @@ namespace Handbrake.Controls
         {\r
             fileContainer = value;\r
             Boolean trigger = false;\r
-            if (fileContainer != 2)\r
+            if (fileContainer != 1)\r
                 foreach (ListViewItem item in lv_subList.Items)\r
                 {\r
                     if (item.SubItems[1].Text.Contains("Bitmap"))\r
index 1b223ba..d2e136a 100644 (file)
@@ -162,10 +162,13 @@ namespace Handbrake.Functions
 \r
                 // Add the appropriate file extension\r
                 if (format == 0)\r
-                    destination_filename += ".mp4";\r
+                {\r
+                    if (Properties.Settings.Default.useM4v)\r
+                        destination_filename += ".m4v";\r
+                    else\r
+                        destination_filename += ".mp4";\r
+                }\r
                 else if (format == 1)\r
-                    destination_filename += ".m4v";\r
-                else if (format == 2)\r
                     destination_filename += ".mkv";\r
 \r
                 // Now work out the path where the file will be stored.\r
index 043436c..28cec68 100644 (file)
@@ -45,14 +45,9 @@ namespace Handbrake.Functions
 \r
             if (presetQuery.Format != null)\r
             {\r
-                if (presetQuery.Format == "mp4")\r
+                if (presetQuery.Format == "mp4" || presetQuery.Format == "m4v")\r
                     mainWindow.drop_format.SelectedIndex = 0;\r
-                else if (presetQuery.Format == "m4v")\r
-                    mainWindow.drop_format.SelectedIndex = 1;\r
                 else if (presetQuery.Format == "mkv")\r
-                    mainWindow.drop_format.SelectedIndex = 2;\r
-\r
-                if (presetQuery.ChapterMarkers && presetQuery.Format == "mp4")\r
                     mainWindow.drop_format.SelectedIndex = 1;\r
             }\r
 \r
index f611262..026d297 100644 (file)
@@ -393,5 +393,17 @@ namespace Handbrake.Properties {
                 this["daysBetweenUpdateCheck"] = value;\r
             }\r
         }\r
+        \r
+        [global::System.Configuration.UserScopedSettingAttribute()]\r
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]\r
+        [global::System.Configuration.DefaultSettingValueAttribute("False")]\r
+        public bool useM4v {\r
+            get {\r
+                return ((bool)(this["useM4v"]));\r
+            }\r
+            set {\r
+                this["useM4v"] = value;\r
+            }\r
+        }\r
     }\r
 }\r
index 76bf6ca..834ae32 100644 (file)
@@ -95,5 +95,8 @@
     <Setting Name="daysBetweenUpdateCheck" Type="System.Int32" Scope="User">\r
       <Value Profile="(Default)">5</Value>\r
     </Setting>\r
+    <Setting Name="useM4v" Type="System.Boolean" Scope="User">\r
+      <Value Profile="(Default)">False</Value>\r
+    </Setting>\r
   </Settings>\r
 </SettingsFile>
\ No newline at end of file
index 9a95c03..21a7c3b 100644 (file)
             <setting name="daysBetweenUpdateCheck" serializeAs="String">\r
                 <value>5</value>\r
             </setting>\r
+            <setting name="useM4v" serializeAs="String">\r
+                <value>False</value>\r
+            </setting>\r
         </Handbrake.Properties.Settings>\r
     </userSettings>\r
 <startup><supportedRuntime version="v2.0.50727"/></startup></configuration>\r
index d7b522e..b93072a 100644 (file)
@@ -153,12 +153,12 @@ namespace Handbrake
             this.notifyIcon = new System.Windows.Forms.NotifyIcon(this.components);\r
             this.StatusStrip = new System.Windows.Forms.StatusStrip();\r
             this.lbl_encode = new System.Windows.Forms.ToolStripStatusLabel();\r
+            this.lbl_updateCheck = new System.Windows.Forms.ToolStripStatusLabel();\r
             this.hbproc = new System.Diagnostics.Process();\r
             this.label1 = new System.Windows.Forms.Label();\r
             this.lbl_source = new System.Windows.Forms.Label();\r
             this.label4 = new System.Windows.Forms.Label();\r
             this.groupBox_output = new System.Windows.Forms.Label();\r
-            this.lbl_updateCheck = new System.Windows.Forms.ToolStripStatusLabel();\r
             this.PictureSettings = new Handbrake.Controls.PictureSettings();\r
             this.Filters = new Handbrake.Controls.Filters();\r
             this.AudioSettings = new Handbrake.Controls.AudioPanel();\r
@@ -204,7 +204,7 @@ namespace Handbrake
             // \r
             // DVD_Save\r
             // \r
-            this.DVD_Save.Filter = "mp4|*.mp4|m4v|*.m4v|mkv|*.mkv";\r
+            this.DVD_Save.Filter = "mp4|*.mp4|mkv|*.mkv";\r
             this.DVD_Save.SupportMultiDottedExtensions = true;\r
             // \r
             // File_Save\r
@@ -484,7 +484,6 @@ namespace Handbrake
             this.drop_format.FormattingEnabled = true;\r
             this.drop_format.Items.AddRange(new object[] {\r
             "MP4 File",\r
-            "M4V File",\r
             "MKV File"});\r
             this.drop_format.Location = new System.Drawing.Point(78, 215);\r
             this.drop_format.Name = "drop_format";\r
@@ -1391,6 +1390,16 @@ namespace Handbrake
             this.lbl_encode.Size = new System.Drawing.Size(31, 17);\r
             this.lbl_encode.Text = "{0}";\r
             // \r
+            // lbl_updateCheck\r
+            // \r
+            this.lbl_updateCheck.BackColor = System.Drawing.Color.Transparent;\r
+            this.lbl_updateCheck.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;\r
+            this.lbl_updateCheck.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.lbl_updateCheck.Name = "lbl_updateCheck";\r
+            this.lbl_updateCheck.Size = new System.Drawing.Size(139, 17);\r
+            this.lbl_updateCheck.Text = "Checking for Updates ...";\r
+            this.lbl_updateCheck.Visible = false;\r
+            // \r
             // hbproc\r
             // \r
             this.hbproc.StartInfo.Domain = "";\r
@@ -1441,16 +1450,6 @@ namespace Handbrake
             this.groupBox_output.TabIndex = 47;\r
             this.groupBox_output.Text = "Output Settings: (Preset: None)";\r
             // \r
-            // lbl_updateCheck\r
-            // \r
-            this.lbl_updateCheck.BackColor = System.Drawing.Color.Transparent;\r
-            this.lbl_updateCheck.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;\r
-            this.lbl_updateCheck.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.lbl_updateCheck.Name = "lbl_updateCheck";\r
-            this.lbl_updateCheck.Size = new System.Drawing.Size(139, 17);\r
-            this.lbl_updateCheck.Text = "Checking for Updates ...";\r
-            this.lbl_updateCheck.Visible = false;\r
-            // \r
             // PictureSettings\r
             // \r
             this.PictureSettings.BackColor = System.Drawing.Color.Transparent;\r
index 5da52c6..d51f9aa 100644 (file)
@@ -1024,8 +1024,6 @@ namespace Handbrake
                 DVD_Save.FilterIndex = 1;\r
             else if (drop_format.SelectedIndex.Equals(1))\r
                 DVD_Save.FilterIndex = 2;\r
-            else if (drop_format.SelectedIndex.Equals(2))\r
-                DVD_Save.FilterIndex = 3;\r
 \r
             if (DVD_Save.ShowDialog() == DialogResult.OK)\r
             {\r
@@ -1038,13 +1036,12 @@ namespace Handbrake
                     {\r
                         case 1:\r
                             if (!Path.GetExtension(DVD_Save.FileName).Equals(".mp4", StringComparison.InvariantCultureIgnoreCase))\r
-                                DVD_Save.FileName += ".mp4";\r
+                                if (Properties.Settings.Default.useM4v)\r
+                                    DVD_Save.FileName += ".m4v";\r
+                                else\r
+                                    DVD_Save.FileName += ".mp4";\r
                             break;\r
                         case 2:\r
-                            if (!Path.GetExtension(DVD_Save.FileName).Equals(".m4v", StringComparison.InvariantCultureIgnoreCase))\r
-                                DVD_Save.FileName += ".m4v";\r
-                            break;\r
-                        case 3:\r
                             if (!Path.GetExtension(DVD_Save.FileName).Equals(".mkv", StringComparison.InvariantCultureIgnoreCase))\r
                                 DVD_Save.FileName += ".mkv";\r
                             break;\r
@@ -1055,20 +1052,18 @@ namespace Handbrake
                     text_destination.Text = DVD_Save.FileName;\r
 \r
                     // Quicktime requires .m4v file for chapter markers to work. If checked, change the extension to .m4v (mp4 and m4v are the same thing)\r
-                    if (Check_ChapterMarkers.Checked)\r
-                        drop_format.SelectedIndex = 1;\r
+                    if (Check_ChapterMarkers.Checked && DVD_Save.FilterIndex != 2)\r
+                        setExtension(".m4v");\r
                 }\r
             }\r
         }\r
         private void text_destination_TextChanged(object sender, EventArgs e)\r
         {\r
             string path = text_destination.Text;\r
-            if (path.EndsWith(".mp4"))\r
+            if (path.EndsWith(".mp4") || path.EndsWith(".m4v"))\r
                 drop_format.SelectedIndex = 0;\r
-            else if (path.EndsWith(".m4v"))\r
-                drop_format.SelectedIndex = 1;\r
             else if (path.EndsWith(".mkv"))\r
-                drop_format.SelectedIndex = 2;\r
+                drop_format.SelectedIndex = 1;\r
         }\r
 \r
         // Output Settings\r
@@ -1077,12 +1072,12 @@ namespace Handbrake
             switch (drop_format.SelectedIndex)\r
             {\r
                 case 0:\r
-                    setExtension(".mp4");\r
+                    if (Properties.Settings.Default.useM4v)\r
+                        setExtension(".m4v");\r
+                    else\r
+                        setExtension(".mp4");\r
                     break;\r
                 case 1:\r
-                    setExtension(".m4v");\r
-                    break;\r
-                case 2:\r
                     setExtension(".mkv");\r
                     break;\r
             }\r
@@ -1273,8 +1268,8 @@ namespace Handbrake
         {\r
             if (Check_ChapterMarkers.Checked)\r
             {\r
-                if (drop_format.SelectedIndex != 2\r
-                    drop_format.SelectedIndex = 1;\r
+                if (drop_format.SelectedIndex != 1\r
+                    setExtension(".m4v");\r
                 data_chpt.Rows.Clear();\r
                 data_chpt.Enabled = true;\r
                 DataGridView chapterGridView = Main.chapterNaming(data_chpt, drop_chapterFinish.Text);\r
@@ -1283,8 +1278,8 @@ namespace Handbrake
             }\r
             else\r
             {\r
-                if (drop_format.SelectedIndex != 2) \r
-                    drop_format.SelectedIndex = 0;\r
+                if (drop_format.SelectedIndex != 1 && !Properties.Settings.Default.useM4v)\r
+                    setExtension(".mp4");\r
                 data_chpt.Rows.Clear();\r
                 data_chpt.Enabled = false;\r
             }\r
index edb2fe5..5817af6 100644 (file)
@@ -123,6 +123,7 @@ namespace Handbrake
             this.label26 = new System.Windows.Forms.Label();\r
             this.label27 = new System.Windows.Forms.Label();\r
             this.openFile_vlc = new System.Windows.Forms.OpenFileDialog();\r
+            this.check_m4v = new System.Windows.Forms.CheckBox();\r
             this.tab_options.SuspendLayout();\r
             this.tab_general.SuspendLayout();\r
             this.tab_picture.SuspendLayout();\r
@@ -180,6 +181,7 @@ namespace Handbrake
             // \r
             // tab_general\r
             // \r
+            this.tab_general.Controls.Add(this.check_m4v);\r
             this.tab_general.Controls.Add(this.label7);\r
             this.tab_general.Controls.Add(this.label5);\r
             this.tab_general.Controls.Add(this.txt_autoNameFormat);\r
@@ -1210,6 +1212,19 @@ namespace Handbrake
             this.openFile_vlc.DefaultExt = "exe";\r
             this.openFile_vlc.Filter = "exe|*.exe";\r
             // \r
+            // check_m4v\r
+            // \r
+            this.check_m4v.AutoSize = true;\r
+            this.check_m4v.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
+            this.check_m4v.Location = new System.Drawing.Point(114, 247);\r
+            this.check_m4v.Name = "check_m4v";\r
+            this.check_m4v.Size = new System.Drawing.Size(334, 17);\r
+            this.check_m4v.TabIndex = 82;\r
+            this.check_m4v.Text = "Use iPod/iTunes friendly (.m4v) file extension for MP4";\r
+            this.ToolTip.SetToolTip(this.check_m4v, "Use .m4v instead of .mp4 for MP4 files");\r
+            this.check_m4v.UseVisualStyleBackColor = true;\r
+            this.check_m4v.CheckedChanged += new System.EventHandler(this.check_m4v_CheckedChanged);\r
+            // \r
             // frmOptions\r
             // \r
             this.ClientSize = new System.Drawing.Size(521, 413);\r
@@ -1330,5 +1345,6 @@ namespace Handbrake
         private System.Windows.Forms.Label label31;\r
         private System.Windows.Forms.Button btn_viewLogs;\r
         private System.Windows.Forms.Button btn_clearLogs;\r
+        internal System.Windows.Forms.CheckBox check_m4v;\r
     }\r
 }
\ No newline at end of file
index 9aeeb00..d6c9489 100644 (file)
@@ -38,7 +38,7 @@ namespace Handbrake
 \r
             // On Encode Completeion Action\r
             drp_completeOption.Text = Properties.Settings.Default.CompletionOption;\r
-            \r
+\r
             // Enable auto naming feature.\r
             if (Properties.Settings.Default.autoNaming)\r
                 check_autoNaming.CheckState = CheckState.Checked;\r
@@ -51,6 +51,10 @@ namespace Handbrake
             // Store auto name format\r
             txt_autoNameFormat.Text = Properties.Settings.Default.autoNameFormat;\r
 \r
+            // Use iPod/iTunes friendly .m4v extension for MP4 files.\r
+            if (Properties.Settings.Default.useM4v)\r
+                check_m4v.CheckState = CheckState.Checked;\r
+\r
             // #############################\r
             // Picture Tab\r
             // #############################\r
@@ -174,6 +178,11 @@ namespace Handbrake
             else\r
                 Properties.Settings.Default.autoNamePath = text_an_path.Text;\r
         }\r
+\r
+        private void check_m4v_CheckedChanged(object sender, EventArgs e)\r
+        {\r
+            Properties.Settings.Default.useM4v = check_m4v.Checked;\r
+        }\r
         #endregion\r
 \r
         #region Picture\r
@@ -313,7 +322,7 @@ namespace Handbrake
         private void check_dvdnav_CheckedChanged(object sender, EventArgs e)\r
         {\r
             Properties.Settings.Default.dvdnav = check_dvdnav.Checked;\r
-        } \r
+        }\r
         #endregion\r
 \r
         private void btn_close_Click(object sender, EventArgs e)\r
@@ -321,5 +330,6 @@ namespace Handbrake
             Properties.Settings.Default.Save(); // Small hack for Vista. Seems to work fine on XP without this\r
             this.Close();\r
         }\r
+\r
     }\r
 }
\ No newline at end of file