summaryrefslogtreecommitdiffstats
path: root/win/CS/HandBrakeWPF/ViewModels
diff options
context:
space:
mode:
authorsr55 <[email protected]>2016-07-23 22:57:00 +0100
committersr55 <[email protected]>2016-07-23 22:57:00 +0100
commitf77bf9985eb96c08fd327c82cfba10bdee30297e (patch)
tree6e544f6c6d84a368c5479042ed0ce8fb8582bd14 /win/CS/HandBrakeWPF/ViewModels
parent63f04ee378c199d993e5b01d16ca9b4008b4ef00 (diff)
WinGui: Stubbing out some meta data code.
Diffstat (limited to 'win/CS/HandBrakeWPF/ViewModels')
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/Interfaces/IMetaDataViewModel.cs15
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/MainViewModel.cs14
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/MetaDataViewModel.cs113
3 files changed, 141 insertions, 1 deletions
diff --git a/win/CS/HandBrakeWPF/ViewModels/Interfaces/IMetaDataViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/Interfaces/IMetaDataViewModel.cs
new file mode 100644
index 000000000..1e62880c2
--- /dev/null
+++ b/win/CS/HandBrakeWPF/ViewModels/Interfaces/IMetaDataViewModel.cs
@@ -0,0 +1,15 @@
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="IMetaDataViewModel.cs" company="HandBrake Project (http://handbrake.fr)">
+// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
+// </copyright>
+// <summary>
+// The Meta Data Tab
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.ViewModels.Interfaces
+{
+ public interface IMetaDataViewModel : ITabInterface
+ {
+ }
+}
diff --git a/win/CS/HandBrakeWPF/ViewModels/MainViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/MainViewModel.cs
index 6461e29be..a5796a045 100644
--- a/win/CS/HandBrakeWPF/ViewModels/MainViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/MainViewModel.cs
@@ -155,12 +155,15 @@ namespace HandBrakeWPF.ViewModels
/// <param name="queueViewModel">
/// The queue View Model.
/// </param>
+ /// <param name="metaDataViewModel">
+ /// The Meta Data View Model
+ /// </param>
public MainViewModel(IUserSettingService userSettingService, IScan scanService, IEncode encodeService, IPresetService presetService,
IErrorService errorService, IUpdateService updateService,
IPrePostActionService whenDoneService, IWindowManager windowManager, IPictureSettingsViewModel pictureSettingsViewModel, IVideoViewModel videoViewModel,
IFiltersViewModel filtersViewModel, IAudioViewModel audioViewModel, ISubtitlesViewModel subtitlesViewModel,
IAdvancedViewModel advancedViewModel, IChaptersViewModel chaptersViewModel, IStaticPreviewViewModel staticPreviewViewModel,
- IQueueViewModel queueViewModel)
+ IQueueViewModel queueViewModel, IMetaDataViewModel metaDataViewModel)
{
this.scanService = scanService;
this.encodeService = encodeService;
@@ -174,6 +177,7 @@ namespace HandBrakeWPF.ViewModels
this.PictureSettingsViewModel = pictureSettingsViewModel;
this.VideoViewModel = videoViewModel;
+ this.MetaDataViewModel = metaDataViewModel;
this.FiltersViewModel = filtersViewModel;
this.AudioViewModel = audioViewModel;
this.SubtitleViewModel = subtitlesViewModel;
@@ -278,6 +282,11 @@ namespace HandBrakeWPF.ViewModels
/// </summary>
public IStaticPreviewViewModel StaticPreviewViewModel { get; set; }
+ /// <summary>
+ /// The MetaData View Model
+ /// </summary>
+ public IMetaDataViewModel MetaDataViewModel { get; set; }
+
#endregion
#region Properties
@@ -376,6 +385,7 @@ namespace HandBrakeWPF.ViewModels
this.SubtitleViewModel.SetPreset(this.SelectedPreset, this.CurrentTask);
this.ChaptersViewModel.SetPreset(this.SelectedPreset, this.CurrentTask);
this.AdvancedViewModel.SetPreset(this.SelectedPreset, this.CurrentTask);
+ this.MetaDataViewModel.SetPreset(this.SelectedPreset, this.CurrentTask);
// Do this again to force an update for m4v/mp4 selection
this.SelectedOutputFormat = selectedPreset.Task.OutputFormat;
@@ -2022,6 +2032,7 @@ namespace HandBrakeWPF.ViewModels
this.SubtitleViewModel.UpdateTask(this.CurrentTask);
this.ChaptersViewModel.UpdateTask(this.CurrentTask);
this.AdvancedViewModel.UpdateTask(this.CurrentTask);
+ this.MetaDataViewModel.UpdateTask(this.CurrentTask);
// Cleanup
this.ShowStatusWindow = false;
@@ -2093,6 +2104,7 @@ namespace HandBrakeWPF.ViewModels
this.SubtitleViewModel.SetSource(this.ScannedSource, this.SelectedTitle, this.SelectedPreset, this.CurrentTask);
this.ChaptersViewModel.SetSource(this.ScannedSource, this.SelectedTitle, this.SelectedPreset, this.CurrentTask);
this.AdvancedViewModel.SetSource(this.ScannedSource, this.SelectedTitle, this.SelectedPreset, this.CurrentTask);
+ this.MetaDataViewModel.SetSource(this.ScannedSource, this.SelectedTitle, this.SelectedPreset, this.CurrentTask);
}
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/MetaDataViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/MetaDataViewModel.cs
new file mode 100644
index 000000000..7e6efb3a0
--- /dev/null
+++ b/win/CS/HandBrakeWPF/ViewModels/MetaDataViewModel.cs
@@ -0,0 +1,113 @@
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="MetaDataViewModel.cs" company="HandBrake Project (http://handbrake.fr)">
+// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
+// </copyright>
+// <summary>
+// The Meta Data Tab
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.ViewModels
+{
+ using Caliburn.Micro;
+
+ using HandBrakeWPF.Services.Encode.Model;
+ using HandBrakeWPF.Services.Encode.Model.Models;
+ using HandBrakeWPF.Services.Interfaces;
+ using HandBrakeWPF.Services.Presets.Model;
+ using HandBrakeWPF.Services.Scan.Model;
+ using HandBrakeWPF.ViewModels.Interfaces;
+ public class MetaDataViewModel : ViewModelBase, IMetaDataViewModel
+ {
+ private EncodeTask task;
+ private MetaData metaData;
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="ViewModelBase"/> class.
+ /// </summary>
+ public MetaDataViewModel(IWindowManager windowManager, IUserSettingService userSettingService)
+ {
+ this.Task = new EncodeTask();
+ }
+
+ /// <summary>
+ /// The Current Job
+ /// </summary>
+ public EncodeTask Task
+ {
+ get
+ {
+ return this.task;
+ }
+ set
+ {
+ this.task = value;
+
+ if (this.task != null)
+ {
+ this.MetaData = this.task.MetaData;
+ }
+
+ this.NotifyOfPropertyChange(() => this.Task);
+ }
+ }
+
+ public MetaData MetaData
+ {
+ get
+ {
+ return this.metaData;
+ }
+ set
+ {
+ this.metaData = value;
+ this.NotifyOfPropertyChange(() => this.MetaData);
+ }
+ }
+
+ /// <summary>
+ /// Setup the window after a scan.
+ /// </summary>
+ /// <param name="source">
+ /// The source.
+ /// </param>
+ /// <param name="selectedTitle">
+ /// The selected title.
+ /// </param>
+ /// <param name="currentPreset">
+ /// The Current preset
+ /// </param>
+ /// <param name="encodeTask">
+ /// The task.
+ /// </param>
+ public void SetSource(Source source, Title selectedTitle, Preset currentPreset, EncodeTask encodeTask)
+ {
+ this.Task = encodeTask;
+ }
+
+ /// <summary>
+ /// Set the selected preset
+ /// </summary>
+ /// <param name="preset">
+ /// The preset.
+ /// </param>
+ /// <param name="encodeTask">
+ /// The task.
+ /// </param>
+ public void SetPreset(Preset preset, EncodeTask encodeTask)
+ {
+ this.Task = encodeTask;
+ }
+
+ /// <summary>
+ /// Update all the UI controls based on the encode task passed in.
+ /// </summary>
+ /// <param name="encodeTask">
+ /// The task.
+ /// </param>
+ public void UpdateTask(EncodeTask encodeTask)
+ {
+ this.Task = encodeTask;
+ }
+ }
+}