[longomatch] Show a position tagger taggin new plays



commit 8a9362a28cd25f23a3a317c7038f5ec9e40d7729
Author: Andoni Morales Alastruey <ylatuya gmail com>
Date:   Thu Jun 19 14:44:50 2014 +0200

    Show a position tagger taggin new plays

 LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs |    2 +-
 LongoMatch.GUI/Gui/GUIToolkit.cs              |   12 +++++++++++-
 LongoMatch.Services/Services/EventsManager.cs |   18 ++----------------
 3 files changed, 14 insertions(+), 18 deletions(-)
---
diff --git a/LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs b/LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs
index 59b5f40..a3d3824 100644
--- a/LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs
+++ b/LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs
@@ -77,7 +77,7 @@ namespace LongoMatch.Interfaces.GUI
                
                void ManageJobs ();
                
-               void TagPlay(Play play, Categories categories, TeamTemplate local, TeamTemplate visitor, bool 
showAllTags);
+               void TagPlay (Play play, Project project);
                void DrawingTool(Image pixbuf, Play play, Time stopTime);
                
                string RemuxFile (string filePath, string outputFile, VideoMuxerType muxer);
diff --git a/LongoMatch.GUI/Gui/GUIToolkit.cs b/LongoMatch.GUI/Gui/GUIToolkit.cs
index 609706e..b204cca 100644
--- a/LongoMatch.GUI/Gui/GUIToolkit.cs
+++ b/LongoMatch.GUI/Gui/GUIToolkit.cs
@@ -202,7 +202,17 @@ namespace LongoMatch.Gui
                                sd.Destroy();
                }
                
-               public void TagPlay (Play play, Categories categories, TeamTemplate local, TeamTemplate 
visitor, bool showAllTags) {
+               public void TagPlay (Play play, Project project) {
+                       Gtk.Dialog d = new Gtk.Dialog (Catalog.GetString ("Tag field positions"), mainWindow,
+                                                      DialogFlags.Modal | DialogFlags.DestroyWithParent,
+                                                      Gtk.Stock.Ok, ResponseType.Ok);
+                       PlaysCoordinatesTagger tagger = new PlaysCoordinatesTagger ();
+                       tagger.LoadBackgrounds (project);
+                       tagger.LoadPlay (play);
+                       tagger.ShowAll ();
+                       d.VBox.PackStart (tagger, true, true, 0);
+                       d.Run();
+                       d.Destroy();
                }
 
                public void DrawingTool (Image image, Play play, Time stopTime) {
diff --git a/LongoMatch.Services/Services/EventsManager.cs b/LongoMatch.Services/Services/EventsManager.cs
index 2f275dc..e52ee78 100644
--- a/LongoMatch.Services/Services/EventsManager.cs
+++ b/LongoMatch.Services/Services/EventsManager.cs
@@ -69,18 +69,17 @@ namespace LongoMatch.Services
                                return;
                                
                        if (player != null) {
-                               Console.WriteLine ("Disconnecting");
                                player.Prev -= OnPrev;
                                player.SegmentClosedEvent -= OnSegmentClosedEvent;
                                player.DrawFrame -= OnDrawFrame;
                                player.PlaybackRateChanged -= HandlePlaybackRateChanged;
                        }
 
+                       this.analysisWindow = analysisWindow;
                        player = analysisWindow.Player;
                        capturer = analysisWindow.Capturer;
                        
                        if (player != null) {
-                               Console.WriteLine ("Connecting");
                                player.Prev += OnPrev;
                                player.SegmentClosedEvent += OnSegmentClosedEvent;
                                player.DrawFrame += OnDrawFrame;
@@ -107,7 +106,6 @@ namespace LongoMatch.Services
                        Config.EventsBroker.PlayCategoryChanged += OnPlayCategoryChanged;
                        Config.EventsBroker.DuplicatePlay += OnDuplicatePlay;
                        Config.EventsBroker.PlayListNodeSelectedEvent += (tn) => {loadedPlay = tn;};
-                       Config.EventsBroker.TagPlay += OnTagPlay;
                        Config.EventsBroker.SnapshotSeries += OnSnapshotSeries;
                        
                        Config.EventsBroker.ShowProjectStatsEvent += HandleShowProjectStatsEvent;
@@ -212,7 +210,7 @@ namespace LongoMatch.Services
                        var play = openedProject.AddPlay(category, start, stop,miniature);
                        /* Tag subcategories of the new play */
                        if (!Config.FastTagging)
-                               LaunchPlayTagger(play, false);
+                               guiToolkit.TagPlay (play, openedProject);
                        analysisWindow.AddPlay(play);
                        filter.Update();
                        if (projectType == ProjectType.FileProject) {
@@ -296,14 +294,6 @@ namespace LongoMatch.Services
                        }
                }
 
-               void LaunchPlayTagger(Play play, bool showAllTags) {
-                       guiToolkit.TagPlay(play, openedProject.Categories,
-                                          openedProject.LocalTeamTemplate,
-                                          openedProject.VisitorTeamTemplate,
-                                          showAllTags);
-                       Config.EventsBroker.EmitTeamTagsChanged ();
-               }
-
                void HandlePlaybackRateChanged (float rate)
                {
                        if (loadedPlay != null) {
@@ -378,10 +368,6 @@ namespace LongoMatch.Services
                        guiToolkit.DrawingTool (pixbuf, loadedPlay as Play, time);
                }
 
-               protected virtual void OnTagPlay(Play play) {
-                       LaunchPlayTagger(play, true);
-               }
-               
                protected virtual void OnPlayCategoryChanged(Play play, Category cat)
                {
                        List<Play> plays = new List<Play>();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]