[longomatch] Move startup code from service constructor to IService.Start.
- From: Andoni Morales Alastruey <amorales src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [longomatch] Move startup code from service constructor to IService.Start.
- Date: Fri, 17 Apr 2015 16:23:00 +0000 (UTC)
commit 063ca44c9c2df1ce387adc6da8738461a0a82219
Author: Julien Moutte <julien fluendo com>
Date: Mon Apr 13 12:03:24 2015 +0200
Move startup code from service constructor to IService.Start.
LongoMatch.Services/DataBaseManager.cs | 16 ++++--
LongoMatch.Services/EventsManager.cs | 75 ++++++++++++++++----------
LongoMatch.Services/HotKeysManager.cs | 16 ++++--
LongoMatch.Services/PlaylistManager.cs | 48 ++++++++++-------
LongoMatch.Services/ProjectsManager.cs | 34 +++++++-----
LongoMatch.Services/RenderingJobsManager.cs | 16 +++---
LongoMatch.Services/ToolsManager.cs | 77 ++++++++++++++------------
7 files changed, 164 insertions(+), 118 deletions(-)
---
diff --git a/LongoMatch.Services/DataBaseManager.cs b/LongoMatch.Services/DataBaseManager.cs
index b478d41..8b2e9ff 100644
--- a/LongoMatch.Services/DataBaseManager.cs
+++ b/LongoMatch.Services/DataBaseManager.cs
@@ -38,11 +38,6 @@ namespace LongoMatch.DB
{
this.DBDir = DBDir;
this.guiToolkit = guiToolkit;
- Config.EventsBroker.ManageDatabasesEvent += HandleManageDatabase;
- Config.EventsBroker.OpenedProjectChanged += (p, pt, f, a) => {
- OpenedProject = p;
- };
- UpdateDatabases ();
}
public Project OpenedProject {
@@ -159,17 +154,26 @@ namespace LongoMatch.DB
public string Name {
get {
- return "Database manager";
+ return "Database";
}
}
public bool Start ()
{
+ Config.EventsBroker.ManageDatabasesEvent += HandleManageDatabase;
+ Config.EventsBroker.OpenedProjectChanged += (p, pt, f, a) => {
+ OpenedProject = p;
+ };
+
+ UpdateDatabases ();
+
return true;
}
public bool Stop ()
{
+ Config.EventsBroker.ManageDatabasesEvent -= HandleManageDatabase;
+
return true;
}
diff --git a/LongoMatch.Services/EventsManager.cs b/LongoMatch.Services/EventsManager.cs
index 4cda117..2340993 100644
--- a/LongoMatch.Services/EventsManager.cs
+++ b/LongoMatch.Services/EventsManager.cs
@@ -51,7 +51,6 @@ namespace LongoMatch.Services
{
this.guiToolkit = guiToolkit;
this.renderer = renderer;
- ConnectSignals ();
}
void HandleOpenedProjectChanged (Project project, ProjectType projectType,
@@ -85,32 +84,6 @@ namespace LongoMatch.Services
}
}
- private void ConnectSignals ()
- {
- Config.EventsBroker.NewEventEvent += OnNewTag;
- Config.EventsBroker.NewDashboardEventEvent += HandleNewPlay;
- Config.EventsBroker.EventsDeletedEvent += OnPlaysDeleted;
- Config.EventsBroker.MoveToEventTypeEvent += OnPlayCategoryChanged;
- Config.EventsBroker.DuplicateEventsEvent += OnDuplicatePlays;
- Config.EventsBroker.SnapshotSeries += OnSnapshotSeries;
- Config.EventsBroker.EventLoadedEvent += HandlePlayLoaded;
- Config.EventsBroker.PlaylistElementSelectedEvent +=
HandlePlaylistElementSelectedEvent;
- Config.EventsBroker.PlayerSubstitutionEvent += HandlePlayerSubstitutionEvent;
- Config.EventsBroker.DashboardEditedEvent += HandleDashboardEditedEvent;
-
- Config.EventsBroker.ShowProjectStatsEvent += HandleShowProjectStatsEvent;
- Config.EventsBroker.TagSubcategoriesChangedEvent +=
HandleTagSubcategoriesChangedEvent;
-
- Config.EventsBroker.OpenedProjectChanged += HandleOpenedProjectChanged;
-
- Config.EventsBroker.DrawFrame += HandleDrawFrame;
- Config.EventsBroker.Detach += HandleDetach;
-
- Config.EventsBroker.ShowFullScreenEvent += HandleShowFullScreenEvent;
-
- Config.EventsBroker.KeyPressed += HandleKeyPressed;
- }
-
void DeletePlays (List<TimelineEvent> plays, bool update = true)
{
Log.Debug (plays.Count + " plays deleted");
@@ -437,17 +410,63 @@ namespace LongoMatch.Services
public string Name {
get {
- return "Events manager";
+ return "Events";
}
}
public bool Start ()
{
+ Config.EventsBroker.NewEventEvent += OnNewTag;
+ Config.EventsBroker.NewDashboardEventEvent += HandleNewPlay;
+ Config.EventsBroker.EventsDeletedEvent += OnPlaysDeleted;
+ Config.EventsBroker.MoveToEventTypeEvent += OnPlayCategoryChanged;
+ Config.EventsBroker.DuplicateEventsEvent += OnDuplicatePlays;
+ Config.EventsBroker.SnapshotSeries += OnSnapshotSeries;
+ Config.EventsBroker.EventLoadedEvent += HandlePlayLoaded;
+ Config.EventsBroker.PlaylistElementSelectedEvent +=
HandlePlaylistElementSelectedEvent;
+ Config.EventsBroker.PlayerSubstitutionEvent += HandlePlayerSubstitutionEvent;
+ Config.EventsBroker.DashboardEditedEvent += HandleDashboardEditedEvent;
+
+ Config.EventsBroker.ShowProjectStatsEvent += HandleShowProjectStatsEvent;
+ Config.EventsBroker.TagSubcategoriesChangedEvent +=
HandleTagSubcategoriesChangedEvent;
+
+ Config.EventsBroker.OpenedProjectChanged += HandleOpenedProjectChanged;
+
+ Config.EventsBroker.DrawFrame += HandleDrawFrame;
+ Config.EventsBroker.Detach += HandleDetach;
+
+ Config.EventsBroker.ShowFullScreenEvent += HandleShowFullScreenEvent;
+
+ Config.EventsBroker.KeyPressed += HandleKeyPressed;
+
return true;
}
public bool Stop ()
{
+ Config.EventsBroker.NewEventEvent -= OnNewTag;
+ Config.EventsBroker.NewDashboardEventEvent -= HandleNewPlay;
+ Config.EventsBroker.EventsDeletedEvent -= OnPlaysDeleted;
+ Config.EventsBroker.MoveToEventTypeEvent -= OnPlayCategoryChanged;
+ Config.EventsBroker.DuplicateEventsEvent -= OnDuplicatePlays;
+ Config.EventsBroker.SnapshotSeries -= OnSnapshotSeries;
+ Config.EventsBroker.EventLoadedEvent -= HandlePlayLoaded;
+ Config.EventsBroker.PlaylistElementSelectedEvent -=
HandlePlaylistElementSelectedEvent;
+ Config.EventsBroker.PlayerSubstitutionEvent -= HandlePlayerSubstitutionEvent;
+ Config.EventsBroker.DashboardEditedEvent -= HandleDashboardEditedEvent;
+
+ Config.EventsBroker.ShowProjectStatsEvent -= HandleShowProjectStatsEvent;
+ Config.EventsBroker.TagSubcategoriesChangedEvent -=
HandleTagSubcategoriesChangedEvent;
+
+ Config.EventsBroker.OpenedProjectChanged -= HandleOpenedProjectChanged;
+
+ Config.EventsBroker.DrawFrame -= HandleDrawFrame;
+ Config.EventsBroker.Detach -= HandleDetach;
+
+ Config.EventsBroker.ShowFullScreenEvent -= HandleShowFullScreenEvent;
+
+ Config.EventsBroker.KeyPressed -= HandleKeyPressed;
+
return true;
}
diff --git a/LongoMatch.Services/HotKeysManager.cs b/LongoMatch.Services/HotKeysManager.cs
index 3f6aacd..ae0a4a9 100644
--- a/LongoMatch.Services/HotKeysManager.cs
+++ b/LongoMatch.Services/HotKeysManager.cs
@@ -47,11 +47,6 @@ namespace LongoMatch.Services
public HotKeysManager ()
{
dashboardHotkeys = new Dictionary<HotKey,DashboardButton> ();
- Config.EventsBroker.OpenedProjectChanged += HandleOpenedProjectChanged;
- Config.EventsBroker.KeyPressed += DashboardKeyListener;
- Config.EventsBroker.KeyPressed += UIKeyListener;
- Config.EventsBroker.DashboardEditedEvent += HandleDashboardEditedEvent;
- timer = new System.Threading.Timer (HandleTimeout);
}
void TagPlayer ()
@@ -248,17 +243,26 @@ namespace LongoMatch.Services
public string Name {
get {
- return "HotKeys manager";
+ return "HotKeys";
}
}
public bool Start ()
{
+ Config.EventsBroker.OpenedProjectChanged += HandleOpenedProjectChanged;
+ Config.EventsBroker.KeyPressed += DashboardKeyListener;
+ Config.EventsBroker.KeyPressed += UIKeyListener;
+ Config.EventsBroker.DashboardEditedEvent += HandleDashboardEditedEvent;
+ timer = new System.Threading.Timer (HandleTimeout);
return true;
}
public bool Stop ()
{
+ Config.EventsBroker.OpenedProjectChanged -= HandleOpenedProjectChanged;
+ Config.EventsBroker.KeyPressed -= DashboardKeyListener;
+ Config.EventsBroker.KeyPressed -= UIKeyListener;
+ Config.EventsBroker.DashboardEditedEvent -= HandleDashboardEditedEvent;
return true;
}
diff --git a/LongoMatch.Services/PlaylistManager.cs b/LongoMatch.Services/PlaylistManager.cs
index fd0777a..94023e4 100644
--- a/LongoMatch.Services/PlaylistManager.cs
+++ b/LongoMatch.Services/PlaylistManager.cs
@@ -45,24 +45,6 @@ namespace LongoMatch.Services
{
this.videoRenderer = videoRenderer;
this.guiToolkit = guiToolkit;
- BindEvents ();
- }
-
- void BindEvents ()
- {
- Config.EventsBroker.NewPlaylistEvent += HandleNewPlaylist;
- Config.EventsBroker.AddPlaylistElementEvent += HandleAddPlaylistElement;
- Config.EventsBroker.RenderPlaylist += HandleRenderPlaylist;
- Config.EventsBroker.OpenedProjectChanged += HandleOpenedProjectChanged;
- Config.EventsBroker.PreviousPlaylistElementEvent += HandlePrev;
- Config.EventsBroker.NextPlaylistElementEvent += HandleNext;
- Config.EventsBroker.LoadEventEvent += HandleLoadPlayEvent;
- Config.EventsBroker.PlaylistElementSelectedEvent += HandlePlaylistElementSelected;
- Config.EventsBroker.PlaybackRateChanged += HandlePlaybackRateChanged;
- Config.EventsBroker.TimeNodeChanged += HandlePlayChanged;
- Config.EventsBroker.SeekEvent += HandleSeekEvent;
- Config.EventsBroker.TogglePlayEvent += HandleTogglePlayEvent;
- Config.EventsBroker.KeyPressed += HandleKeyPressed;
}
void LoadPlay (TimelineEvent play, Time seekTime, bool playing)
@@ -318,17 +300,45 @@ namespace LongoMatch.Services
public string Name {
get {
- return "Playlist manager";
+ return "Playlists";
}
}
public bool Start ()
{
+ Config.EventsBroker.NewPlaylistEvent += HandleNewPlaylist;
+ Config.EventsBroker.AddPlaylistElementEvent += HandleAddPlaylistElement;
+ Config.EventsBroker.RenderPlaylist += HandleRenderPlaylist;
+ Config.EventsBroker.OpenedProjectChanged += HandleOpenedProjectChanged;
+ Config.EventsBroker.PreviousPlaylistElementEvent += HandlePrev;
+ Config.EventsBroker.NextPlaylistElementEvent += HandleNext;
+ Config.EventsBroker.LoadEventEvent += HandleLoadPlayEvent;
+ Config.EventsBroker.PlaylistElementSelectedEvent += HandlePlaylistElementSelected;
+ Config.EventsBroker.PlaybackRateChanged += HandlePlaybackRateChanged;
+ Config.EventsBroker.TimeNodeChanged += HandlePlayChanged;
+ Config.EventsBroker.SeekEvent += HandleSeekEvent;
+ Config.EventsBroker.TogglePlayEvent += HandleTogglePlayEvent;
+ Config.EventsBroker.KeyPressed += HandleKeyPressed;
+
return true;
}
public bool Stop ()
{
+ Config.EventsBroker.NewPlaylistEvent -= HandleNewPlaylist;
+ Config.EventsBroker.AddPlaylistElementEvent -= HandleAddPlaylistElement;
+ Config.EventsBroker.RenderPlaylist -= HandleRenderPlaylist;
+ Config.EventsBroker.OpenedProjectChanged -= HandleOpenedProjectChanged;
+ Config.EventsBroker.PreviousPlaylistElementEvent -= HandlePrev;
+ Config.EventsBroker.NextPlaylistElementEvent -= HandleNext;
+ Config.EventsBroker.LoadEventEvent -= HandleLoadPlayEvent;
+ Config.EventsBroker.PlaylistElementSelectedEvent -= HandlePlaylistElementSelected;
+ Config.EventsBroker.PlaybackRateChanged -= HandlePlaybackRateChanged;
+ Config.EventsBroker.TimeNodeChanged -= HandlePlayChanged;
+ Config.EventsBroker.SeekEvent -= HandleSeekEvent;
+ Config.EventsBroker.TogglePlayEvent -= HandleTogglePlayEvent;
+ Config.EventsBroker.KeyPressed -= HandleKeyPressed;
+
return true;
}
diff --git a/LongoMatch.Services/ProjectsManager.cs b/LongoMatch.Services/ProjectsManager.cs
index a3c001a..81b189e 100644
--- a/LongoMatch.Services/ProjectsManager.cs
+++ b/LongoMatch.Services/ProjectsManager.cs
@@ -38,20 +38,6 @@ namespace LongoMatch.Services
{
this.multimediaToolkit = multimediaToolkit;
this.guiToolkit = guiToolkit;
- ConnectSignals ();
- }
-
- public void ConnectSignals ()
- {
- Config.EventsBroker.NewProjectEvent += NewProject;
- Config.EventsBroker.OpenProjectEvent += OpenProject;
- Config.EventsBroker.OpenProjectIDEvent += OpenProjectID;
- Config.EventsBroker.OpenNewProjectEvent += OpenNewProject;
- Config.EventsBroker.CloseOpenedProjectEvent += PromptCloseProject;
- Config.EventsBroker.SaveProjectEvent += SaveProject;
- Config.EventsBroker.CaptureError += HandleCaptureError;
- Config.EventsBroker.CaptureFinished += HandleCaptureFinished;
- Config.EventsBroker.MultimediaError += HandleMultimediaError;
}
public Project OpenedProject {
@@ -412,17 +398,35 @@ namespace LongoMatch.Services
public string Name {
get {
- return "Projects manager";
+ return "Projects";
}
}
public bool Start ()
{
+ Config.EventsBroker.NewProjectEvent += NewProject;
+ Config.EventsBroker.OpenProjectEvent += OpenProject;
+ Config.EventsBroker.OpenProjectIDEvent += OpenProjectID;
+ Config.EventsBroker.OpenNewProjectEvent += OpenNewProject;
+ Config.EventsBroker.CloseOpenedProjectEvent += PromptCloseProject;
+ Config.EventsBroker.SaveProjectEvent += SaveProject;
+ Config.EventsBroker.CaptureError += HandleCaptureError;
+ Config.EventsBroker.CaptureFinished += HandleCaptureFinished;
+ Config.EventsBroker.MultimediaError += HandleMultimediaError;
return true;
}
public bool Stop ()
{
+ Config.EventsBroker.NewProjectEvent -= NewProject;
+ Config.EventsBroker.OpenProjectEvent -= OpenProject;
+ Config.EventsBroker.OpenProjectIDEvent -= OpenProjectID;
+ Config.EventsBroker.OpenNewProjectEvent -= OpenNewProject;
+ Config.EventsBroker.CloseOpenedProjectEvent -= PromptCloseProject;
+ Config.EventsBroker.SaveProjectEvent -= SaveProject;
+ Config.EventsBroker.CaptureError -= HandleCaptureError;
+ Config.EventsBroker.CaptureFinished -= HandleCaptureFinished;
+ Config.EventsBroker.MultimediaError -= HandleMultimediaError;
return true;
}
diff --git a/LongoMatch.Services/RenderingJobsManager.cs b/LongoMatch.Services/RenderingJobsManager.cs
index d538ada..8ed83fc 100644
--- a/LongoMatch.Services/RenderingJobsManager.cs
+++ b/LongoMatch.Services/RenderingJobsManager.cs
@@ -47,13 +47,6 @@ namespace LongoMatch.Services
this.stateBar = guiToolkit.RenderingStateBar;
jobs = new List<Job> ();
pendingJobs = new List<Job> ();
- stateBar.Cancel += (sender, e) => CancelCurrentJob ();
- stateBar.ManageJobs += (sender, e) => ManageJobs ();
- Config.EventsBroker.ConvertVideoFilesEvent += (inputFiles, encSettings) => {
- ConversionJob job = new ConversionJob (inputFiles, encSettings);
- AddJob (job);
- };
- ;
}
public List<Job> Jobs {
@@ -421,12 +414,19 @@ namespace LongoMatch.Services
public string Name {
get {
- return "Rendering jobs manager";
+ return "Rendering jobs";
}
}
public bool Start ()
{
+ stateBar.Cancel += (sender, e) => CancelCurrentJob ();
+ stateBar.ManageJobs += (sender, e) => ManageJobs ();
+ Config.EventsBroker.ConvertVideoFilesEvent += (inputFiles, encSettings) => {
+ ConversionJob job = new ConversionJob (inputFiles, encSettings);
+ AddJob (job);
+ };
+
return true;
}
diff --git a/LongoMatch.Services/ToolsManager.cs b/LongoMatch.Services/ToolsManager.cs
index 06ac2cf..ed335c9 100644
--- a/LongoMatch.Services/ToolsManager.cs
+++ b/LongoMatch.Services/ToolsManager.cs
@@ -43,41 +43,6 @@ namespace LongoMatch.Services
this.guiToolkit = guiToolkit;
this.dbManager = dbManager;
ProjectImporters = new List<ProjectImporter> ();
-
- RegisterImporter (Project.Import, Catalog.GetString ("Import project"),
- Constants.PROJECT_NAME,
- new string[] { "*" + Constants.PROJECT_EXT }, false, false);
-
- Config.EventsBroker.OpenedProjectChanged += (pr, pt, f, a) => {
- this.openedProject = pr;
- };
-
- Config.EventsBroker.EditPreferencesEvent += () => {
- guiToolkit.OpenPreferencesEditor ();
- };
-
- Config.EventsBroker.ManageCategoriesEvent += () => {
- if (openedProject == null || Config.EventsBroker.EmitCloseOpenedProject ()) {
- guiToolkit.OpenCategoriesTemplatesManager ();
- }
- };
-
- Config.EventsBroker.ManageTeamsEvent += () => {
- if (openedProject == null || Config.EventsBroker.EmitCloseOpenedProject ()) {
- guiToolkit.OpenTeamsTemplatesManager ();
- }
- };
-
- Config.EventsBroker.ManageProjectsEvent += () => {
- if (openedProject == null || Config.EventsBroker.EmitCloseOpenedProject ()) {
- guiToolkit.OpenProjectsManager (this.openedProject);
- }
- };
-
- Config.EventsBroker.MigrateDB += HandleMigrateDB;
-
- Config.EventsBroker.ExportProjectEvent += ExportProject;
- Config.EventsBroker.ImportProjectEvent += ImportProject;
}
public void RegisterImporter (Func<string, Project> importFunction,
@@ -238,17 +203,57 @@ namespace LongoMatch.Services
public string Name {
get {
- return "Tools manager";
+ return "Tools";
}
}
public bool Start ()
{
+ RegisterImporter (Project.Import, Catalog.GetString ("Import project"),
+ Constants.PROJECT_NAME,
+ new string[] { "*" + Constants.PROJECT_EXT }, false, false);
+
+ Config.EventsBroker.OpenedProjectChanged += (pr, pt, f, a) => {
+ this.openedProject = pr;
+ };
+
+ Config.EventsBroker.EditPreferencesEvent += () => {
+ guiToolkit.OpenPreferencesEditor ();
+ };
+
+ Config.EventsBroker.ManageCategoriesEvent += () => {
+ if (openedProject == null || Config.EventsBroker.EmitCloseOpenedProject ()) {
+ guiToolkit.OpenCategoriesTemplatesManager ();
+ }
+ };
+
+ Config.EventsBroker.ManageTeamsEvent += () => {
+ if (openedProject == null || Config.EventsBroker.EmitCloseOpenedProject ()) {
+ guiToolkit.OpenTeamsTemplatesManager ();
+ }
+ };
+
+ Config.EventsBroker.ManageProjectsEvent += () => {
+ if (openedProject == null || Config.EventsBroker.EmitCloseOpenedProject ()) {
+ guiToolkit.OpenProjectsManager (this.openedProject);
+ }
+ };
+
+ Config.EventsBroker.MigrateDB += HandleMigrateDB;
+
+ Config.EventsBroker.ExportProjectEvent += ExportProject;
+ Config.EventsBroker.ImportProjectEvent += ImportProject;
+
return true;
}
public bool Stop ()
{
+ Config.EventsBroker.MigrateDB -= HandleMigrateDB;
+
+ Config.EventsBroker.ExportProjectEvent -= ExportProject;
+ Config.EventsBroker.ImportProjectEvent -= ImportProject;
+
return true;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]