[longomatch] Add support for disabling the subcategories tagging



commit 7a9602db9e7e560cb963b010d7ac122b82ad6c40
Author: Andoni Morales Alastruey <ylatuya gmail com>
Date:   Sat Dec 29 14:44:59 2012 +0100

    Add support for disabling the subcategories tagging

 LongoMatch.Core/Config.cs                          |   10 ++++++++++
 LongoMatch.GUI/Gui/MainWindow.cs                   |    5 +++++
 .../gtk-gui/LongoMatch.Gui.MainWindow.cs           |    8 +++++++-
 LongoMatch.GUI/gtk-gui/gui.stetic                  |    9 +++++++++
 LongoMatch.Services/Services/EventsManager.cs      |    3 ++-
 5 files changed, 33 insertions(+), 2 deletions(-)
---
diff --git a/LongoMatch.Core/Config.cs b/LongoMatch.Core/Config.cs
index e3fcd33..efbe0cc 100644
--- a/LongoMatch.Core/Config.cs
+++ b/LongoMatch.Core/Config.cs
@@ -27,6 +27,7 @@ namespace LongoMatch
 		public static string baseDirectory;
 		public static string homeDirectory;
 		public static string configDirectory;
+		public static bool fastTagging = false;
 		
 		public static string HomeDir() {
 			return homeDirectory;
@@ -74,6 +75,15 @@ namespace LongoMatch
 			return Path.Combine(baseDirectory, relativePath);
 		}
 		
+		public static bool FastTagging {
+			get {
+				return fastTagging;
+			}
+			set {
+				fastTagging = value;
+			}
+		}
+		
 		
 		/* Properties */
 		public static bool useGameUnits = false;
diff --git a/LongoMatch.GUI/Gui/MainWindow.cs b/LongoMatch.GUI/Gui/MainWindow.cs
index 0bccd66..c78173f 100644
--- a/LongoMatch.GUI/Gui/MainWindow.cs
+++ b/LongoMatch.GUI/Gui/MainWindow.cs
@@ -521,6 +521,11 @@ namespace LongoMatch.Gui
 		#endregion
 		
 		#region View
+		protected void OnTagSubcategoriesActionToggled (object sender, System.EventArgs e)
+		{
+			Config.FastTagging = !TagSubcategoriesAction.Active;
+		}
+
 		protected virtual void OnFullScreenActionToggled(object sender, System.EventArgs e)
 		{
 			playercapturer.FullScreen = (sender as Gtk.ToggleAction).Active;
diff --git a/LongoMatch.GUI/gtk-gui/LongoMatch.Gui.MainWindow.cs b/LongoMatch.GUI/gtk-gui/LongoMatch.Gui.MainWindow.cs
index fe77639..defbc6d 100644
--- a/LongoMatch.GUI/gtk-gui/LongoMatch.Gui.MainWindow.cs
+++ b/LongoMatch.GUI/gtk-gui/LongoMatch.Gui.MainWindow.cs
@@ -35,6 +35,7 @@ namespace LongoMatch.Gui
 		private global::Gtk.Action ExportToProjectFileAction;
 		private global::Gtk.Action dialogInfoAction;
 		private global::Gtk.Action ImportFromFileAction;
+		private global::Gtk.ToggleAction TagSubcategoriesAction;
 		private global::Gtk.VBox vbox1;
 		private global::Gtk.VBox menubox;
 		private global::Gtk.MenuBar menubar1;
@@ -163,6 +164,10 @@ namespace LongoMatch.Gui
 			this.ImportFromFileAction = new global::Gtk.Action ("ImportFromFileAction", global::Mono.Unix.Catalog.GetString ("Import from file"), null, null);
 			this.ImportFromFileAction.ShortLabel = global::Mono.Unix.Catalog.GetString ("Import from file");
 			w1.Add (this.ImportFromFileAction, null);
+			this.TagSubcategoriesAction = new global::Gtk.ToggleAction ("TagSubcategoriesAction", global::Mono.Unix.Catalog.GetString ("Tag subcategories"), null, null);
+			this.TagSubcategoriesAction.Active = true;
+			this.TagSubcategoriesAction.ShortLabel = global::Mono.Unix.Catalog.GetString ("Tag subcategories");
+			w1.Add (this.TagSubcategoriesAction, null);
 			this.UIManager.InsertActionGroup (w1, 0);
 			this.AddAccelGroup (this.UIManager.AccelGroup);
 			this.Name = "LongoMatch.Gui.MainWindow";
@@ -179,7 +184,7 @@ namespace LongoMatch.Gui
 			this.menubox.Name = "menubox";
 			this.menubox.Spacing = 6;
 			// Container child menubox.Gtk.Box+BoxChild
-			this.UIManager.AddUiFromString ("<ui><menubar name='menubar1'><menu name='FileAction' action='FileAction'><menuitem name='NewPojectAction' action='NewPojectAction'/><menuitem name='openAction' action='openAction'/><menuitem name='SaveProjectAction' action='SaveProjectAction'/><menuitem name='CloseProjectAction' action='CloseProjectAction'/><separator/><menu name='ImportProjectAction' action='ImportProjectAction'/><separator/><menuitem name='QuitAction' action='QuitAction'/></menu><menu name='ToolsAction' action='ToolsAction'><menuitem name='ProjectsManagerAction' action='ProjectsManagerAction'/><menuitem name='CategoriesTemplatesManagerAction' action='CategoriesTemplatesManagerAction'/><menuitem name='TeamsTemplatesManagerAction' action='TeamsTemplatesManagerAction'/><menu name='ExportProjectAction1' action='ExportProjectAction1'><menuitem name='ExportToProjectFileAction' action='ExportToProjectFileAction'/></menu></menu><menu name='ViewAction' action='ViewAction'><menuit
 em name='FullScreenAction' action='FullScreenAction'/><menuitem name='HideAllWidgetsAction' action='HideAllWidgetsAction'/><separator/><menuitem name='PlaylistAction' action='PlaylistAction'/><separator/><menuitem name='TaggingViewAction' action='TaggingViewAction'/><menuitem name='ManualTaggingViewAction' action='ManualTaggingViewAction'/><menuitem name='TimelineViewAction' action='TimelineViewAction'/><menuitem name='GameUnitsViewAction' action='GameUnitsViewAction'/></menu><menu name='HelpAction' action='HelpAction'><menuitem name='AboutAction' action='AboutAction'/><menuitem name='HelpAction1' action='HelpAction1'/><menuitem name='dialogInfoAction' action='dialogInfoAction'/></menu></menubar></ui>");
+			this.UIManager.AddUiFromString ("<ui><menubar name='menubar1'><menu name='FileAction' action='FileAction'><menuitem name='NewPojectAction' action='NewPojectAction'/><menuitem name='openAction' action='openAction'/><menuitem name='SaveProjectAction' action='SaveProjectAction'/><menuitem name='CloseProjectAction' action='CloseProjectAction'/><separator/><menu name='ImportProjectAction' action='ImportProjectAction'/><separator/><menuitem name='QuitAction' action='QuitAction'/></menu><menu name='ToolsAction' action='ToolsAction'><menuitem name='ProjectsManagerAction' action='ProjectsManagerAction'/><menuitem name='CategoriesTemplatesManagerAction' action='CategoriesTemplatesManagerAction'/><menuitem name='TeamsTemplatesManagerAction' action='TeamsTemplatesManagerAction'/><menu name='ExportProjectAction1' action='ExportProjectAction1'><menuitem name='ExportToProjectFileAction' action='ExportToProjectFileAction'/></menu></menu><menu name='ViewAction' action='ViewAction'><menuit
 em name='FullScreenAction' action='FullScreenAction'/><menuitem name='HideAllWidgetsAction' action='HideAllWidgetsAction'/><separator/><menuitem name='PlaylistAction' action='PlaylistAction'/><separator/><menuitem name='TagSubcategoriesAction' action='TagSubcategoriesAction'/><menuitem name='TaggingViewAction' action='TaggingViewAction'/><menuitem name='ManualTaggingViewAction' action='ManualTaggingViewAction'/><menuitem name='TimelineViewAction' action='TimelineViewAction'/><menuitem name='GameUnitsViewAction' action='GameUnitsViewAction'/></menu><menu name='HelpAction' action='HelpAction'><menuitem name='AboutAction' action='AboutAction'/><menuitem name='HelpAction1' action='HelpAction1'/><menuitem name='dialogInfoAction' action='dialogInfoAction'/></menu></menubar></ui>");
 			this.menubar1 = ((global::Gtk.MenuBar)(this.UIManager.GetWidget ("/menubar1")));
 			this.menubar1.Name = "menubar1";
 			this.menubox.Add (this.menubar1);
@@ -343,6 +348,7 @@ namespace LongoMatch.Gui
 			this.ManualTaggingViewAction.Toggled += new global::System.EventHandler (this.OnViewToggled);
 			this.GameUnitsViewAction.Toggled += new global::System.EventHandler (this.OnViewToggled);
 			this.dialogInfoAction.Activated += new global::System.EventHandler (this.OnDialogInfoActionActivated);
+			this.TagSubcategoriesAction.Toggled += new global::System.EventHandler (this.OnTagSubcategoriesActionToggled);
 		}
 	}
 }
diff --git a/LongoMatch.GUI/gtk-gui/gui.stetic b/LongoMatch.GUI/gtk-gui/gui.stetic
index 72cc771..89e101f 100644
--- a/LongoMatch.GUI/gtk-gui/gui.stetic
+++ b/LongoMatch.GUI/gtk-gui/gui.stetic
@@ -1809,6 +1809,14 @@
         <property name="Label" translatable="yes">Import from file</property>
         <property name="ShortLabel" translatable="yes">Import from file</property>
       </action>
+      <action id="TagSubcategoriesAction">
+        <property name="Type">Toggle</property>
+        <property name="Label" translatable="yes">Tag subcategories</property>
+        <property name="ShortLabel" translatable="yes">Tag subcategories</property>
+        <property name="DrawAsRadio">False</property>
+        <property name="Active">True</property>
+        <signal name="Toggled" handler="OnTagSubcategoriesActionToggled" />
+      </action>
     </action-group>
     <property name="MemberName" />
     <property name="Title" translatable="yes">LongoMatch</property>
@@ -1851,6 +1859,7 @@
                     <node type="Separator" />
                     <node type="Menuitem" action="PlaylistAction" />
                     <node type="Separator" />
+                    <node type="Menuitem" action="TagSubcategoriesAction" />
                     <node type="Menuitem" action="TaggingViewAction" />
                     <node type="Menuitem" action="ManualTaggingViewAction" />
                     <node type="Menuitem" action="TimelineViewAction" />
diff --git a/LongoMatch.Services/Services/EventsManager.cs b/LongoMatch.Services/Services/EventsManager.cs
index f446a67..df942f9 100644
--- a/LongoMatch.Services/Services/EventsManager.cs
+++ b/LongoMatch.Services/Services/EventsManager.cs
@@ -145,7 +145,8 @@ namespace LongoMatch.Services
 			var play = openedProject.AddPlay(category, start, stop,miniature);
 			mainWindow.AddPlay(play);
 			/* Tag subcategories of the new play */
-			LaunchPlayTagger(play);
+			if (!Config.FastTagging)
+				LaunchPlayTagger(play);
 			if (projectType == ProjectType.FileProject) {
 				player.Play();
 			}



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