[longomatch] Clean up API adding services and managers accesor Config



commit 8e04b68082c3de9ac2720a5f24cc8d9175ab9ec2
Author: Andoni Morales Alastruey <ylatuya gmail com>
Date:   Thu Mar 20 17:25:00 2014 +0100

    Clean up API adding services and managers accesor Config

 LongoMatch.Core/Config.cs                          |   12 +++++++
 LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs      |   16 ++++----
 LongoMatch.Core/Utils.cs                           |    4 ++-
 LongoMatch.GUI/Gui/Dialog/DatabasesManager.cs      |    4 +-
 LongoMatch.GUI/Gui/Dialog/RenderingJobsDialog.cs   |    4 +-
 LongoMatch.GUI/Gui/GUIToolkit.cs                   |   35 ++++++++-----------
 LongoMatch.GUI/Gui/MainWindow.cs                   |    5 +--
 LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs        |   19 ++++------
 LongoMatch.Services/Services/Core.cs               |   20 +++++------
 LongoMatch.Services/Services/DataBaseManager.cs    |    2 +-
 LongoMatch.Services/Services/EventsManager.cs      |    2 +-
 LongoMatch.Services/Services/ProjectsManager.cs    |   17 ++++++----
 .../Services/RenderingJobsManager.cs               |    2 +-
 LongoMatch.Services/Services/ToolsManager.cs       |   14 ++++---
 14 files changed, 82 insertions(+), 74 deletions(-)
---
diff --git a/LongoMatch.Core/Config.cs b/LongoMatch.Core/Config.cs
index 8d77cf5..c1b0567 100644
--- a/LongoMatch.Core/Config.cs
+++ b/LongoMatch.Core/Config.cs
@@ -19,6 +19,9 @@ using System;
 using System.IO;
 
 using LongoMatch.Common;
+using LongoMatch.Interfaces;
+using LongoMatch.Interfaces.GUI;
+using LongoMatch.Interfaces.Multimedia;
 
 namespace LongoMatch
 {
@@ -27,6 +30,15 @@ namespace LongoMatch
                public static string homeDirectory;
                public static string baseDirectory;
                public static string configDirectory;
+               
+               /* State */
+               public static IGUIToolkit GUIToolkit;
+               public static IMultimediaToolkit MultimediaToolkit;
+               public static ITeamTemplatesProvider TeamTemplatesProvider;
+               public static ICategoriesTemplatesProvider CategoriesTemplatesProvider;
+               public static IDataBaseManager DatabaseManager;
+               public static IRenderingJobsManager RenderingJobsManger;
+
                static ConfigState state;
                
                public static void Load () {
diff --git a/LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs b/LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs
index 1853582..ab7a5ac 100644
--- a/LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs
+++ b/LongoMatch.Core/Interfaces/GUI/IGUIToolkit.cs
@@ -66,17 +66,17 @@ namespace LongoMatch.Interfaces.GUI
                                             
                void SelectProject(List<ProjectDescription> projects);
                
-               void CreateNewProject (ITemplatesService tps, IMultimediaToolkit toolit, Project 
project=null);
+               void CreateNewProject (Project project=null);
                
-               void ShowProjectStats(Project project);
+               void ShowProjectStats (Project project);
                
-               void OpenProjectsManager(Project openedProject, IDatabase db, ITemplatesService ts);
-               void OpenCategoriesTemplatesManager(ITemplatesService ts);
-               void OpenTeamsTemplatesManager(ITeamTemplatesProvider tp);
-               void OpenDatabasesManager(IDataBaseManager dm);
-               void OpenPreferencesEditor();
+               void OpenProjectsManager (Project openedProject);
+               void OpenCategoriesTemplatesManager ();
+               void OpenTeamsTemplatesManager ();
+               void OpenDatabasesManager ();
+               void OpenPreferencesEditor ();
                
-               void ManageJobs(IRenderingJobsManager manager);
+               void ManageJobs ();
                
                void TagPlay(Play play, Categories categories, TeamTemplate local, TeamTemplate visitor, bool 
showAllTags);
                void DrawingTool(Image pixbuf, Play play, int stopTime);
diff --git a/LongoMatch.Core/Utils.cs b/LongoMatch.Core/Utils.cs
index 906abbe..eeaa878 100644
--- a/LongoMatch.Core/Utils.cs
+++ b/LongoMatch.Core/Utils.cs
@@ -25,9 +25,11 @@ namespace LongoMatch.Utils
 {
        public class Open
        {
-               public static MediaFile OpenFile (IGUIToolkit gui, IMultimediaToolkit multimedia, object 
parent) {
+               public static MediaFile OpenFile (object parent) {
                        IBusyDialog busy;
                        MediaFile mediaFile = null;
+                       IGUIToolkit gui = Config.GUIToolkit;
+                       IMultimediaToolkit multimedia = Config.MultimediaToolkit;
                        string folder, filename;
                        
                        
diff --git a/LongoMatch.GUI/Gui/Dialog/DatabasesManager.cs b/LongoMatch.GUI/Gui/Dialog/DatabasesManager.cs
index f277143..7ef552c 100644
--- a/LongoMatch.GUI/Gui/Dialog/DatabasesManager.cs
+++ b/LongoMatch.GUI/Gui/Dialog/DatabasesManager.cs
@@ -30,10 +30,10 @@ namespace LongoMatch.Gui.Dialog
                IDataBaseManager manager;
                ListStore store;
                        
-               public DatabasesManager (IDataBaseManager manager)
+               public DatabasesManager ()
                {
                        this.Build ();
-                       this.manager = manager;
+                       this.manager = Config.DatabaseManager;
                        ActiveDB = manager.ActiveDB;
                        SetTreeView ();
                }
diff --git a/LongoMatch.GUI/Gui/Dialog/RenderingJobsDialog.cs 
b/LongoMatch.GUI/Gui/Dialog/RenderingJobsDialog.cs
index 554c4d6..f3a86cc 100644
--- a/LongoMatch.GUI/Gui/Dialog/RenderingJobsDialog.cs
+++ b/LongoMatch.GUI/Gui/Dialog/RenderingJobsDialog.cs
@@ -29,10 +29,10 @@ namespace LongoMatch.Gui.Dialog
        {
                IRenderingJobsManager manager;
                
-               public RenderingJobsDialog (IRenderingJobsManager manager)
+               public RenderingJobsDialog ()
                {
                        this.Build ();
-                       this.manager = manager;
+                       this.manager = Config.RenderingJobsManger;
                        UpdateModel();
                        cancelbutton.Clicked += OnCancelbuttonClicked;
                        clearbutton.Clicked += OnClearbuttonClicked;
diff --git a/LongoMatch.GUI/Gui/GUIToolkit.cs b/LongoMatch.GUI/Gui/GUIToolkit.cs
index 75af3e8..7b6cfba 100644
--- a/LongoMatch.GUI/Gui/GUIToolkit.cs
+++ b/LongoMatch.GUI/Gui/GUIToolkit.cs
@@ -229,30 +229,25 @@ namespace LongoMatch.Gui
                        mainWindow.SelectProject (projects);
                }
                
-               public void OpenCategoriesTemplatesManager(ITemplatesService ts)
+               public void OpenCategoriesTemplatesManager()
                {
-                       var tManager = new TemplatesManager<Categories, Category> 
(ts.CategoriesTemplateProvider,
-                                                                                  new 
CategoriesTemplateEditorWidget(ts));
+                       SportsTemplatesPanel panel = new SportsTemplatesPanel ();
                        Log.Information ("Open sports templates manager");
-                       tManager.TransientFor = mainWindow as Gtk.Window;
-                       tManager.Show();
+                       mainWindow.SetPanel (panel);
                }
 
-               public void OpenTeamsTemplatesManager(ITeamTemplatesProvider teamProvider)
+               public void OpenTeamsTemplatesManager()
                {
-                       var tManager = new TemplatesManager<TeamTemplate, Player> (teamProvider,
-                                                                                  new 
TeamTemplateEditorWidget(teamProvider));
+                       TeamsTemplatesPanel panel = new TeamsTemplatesPanel ();
                        Log.Information ("Open teams templates manager");
-                       tManager.TransientFor = mainWindow as Gtk.Window;
-                       tManager.Show();
+                       mainWindow.SetPanel (panel);
                }
                
-               public void OpenProjectsManager(Project openedProject, IDatabase db, ITemplatesService ts)
+               public void OpenProjectsManager(Project openedProject)
                {
-                       Gui.Dialog.ProjectsManager pm = new Gui.Dialog.ProjectsManager(openedProject, db, ts);
+                       ProjectsManagerPanel panel = new ProjectsManagerPanel (openedProject);
                        Log.Information ("Open projects manager");
-                       pm.TransientFor = mainWindow as Gtk.Window;
-                       pm.Show();
+                       mainWindow.SetPanel (panel);
                }
                
                public void OpenPreferencesEditor()
@@ -264,17 +259,17 @@ namespace LongoMatch.Gui
                        pe.Destroy();
                }
                
-               public void OpenDatabasesManager(IDataBaseManager manager)
+               public void OpenDatabasesManager()
                {
-                       DatabasesManager dm = new DatabasesManager (manager);
+                       DatabasesManager dm = new DatabasesManager ();
                        Log.Information ("Open db manager");
                        dm.TransientFor = mainWindow as Gtk.Window;
                        dm.Run();
                        dm.Destroy();
                }
                
-               public void ManageJobs(IRenderingJobsManager manager) {
-                       RenderingJobsDialog dialog = new RenderingJobsDialog(manager);
+               public void ManageJobs() {
+                       RenderingJobsDialog dialog = new RenderingJobsDialog ();
                        Log.Information ("Manage jobs");
                        dialog.TransientFor = mainWindow as Gtk.Window;
                        dialog.Run();
@@ -294,8 +289,8 @@ namespace LongoMatch.Gui
                        return dialog;
                }
                
-               public void CreateNewProject(ITemplatesService tps, IMultimediaToolkit toolkit, Project 
project=null) {
-                       mainWindow.CreateNewProject (tps, toolkit, project);
+               public void CreateNewProject(Project project=null) {
+                       mainWindow.CreateNewProject (project);
                }
                
                public void ShowProjectStats (Project project) {
diff --git a/LongoMatch.GUI/Gui/MainWindow.cs b/LongoMatch.GUI/Gui/MainWindow.cs
index 05f5542..1810eee 100644
--- a/LongoMatch.GUI/Gui/MainWindow.cs
+++ b/LongoMatch.GUI/Gui/MainWindow.cs
@@ -184,9 +184,8 @@ namespace LongoMatch.Gui
                        SetPanel (panel);
                }
                
-               public void CreateNewProject (ITemplatesService tps, IMultimediaToolkit mtoolkit, Project 
project) {
-                       NewProjectPanel panel = new NewProjectPanel (tps, guiToolKit, mtoolkit, project);
-                       panel.CancelEvent += ResetGUI;
+               public void CreateNewProject (Project project) {
+                       NewProjectPanel panel = new NewProjectPanel (project);
                        panel.OpenNewProjectEvent += EmitOpenNewProject;
                        SetPanel (panel);
                }
diff --git a/LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs b/LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs
index e27c074..0d8d5e8 100644
--- a/LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs
+++ b/LongoMatch.GUI/Gui/Panel/NewProjectPanel.cs
@@ -50,7 +50,6 @@ namespace LongoMatch.Gui.Panel
                
                Project project;
                ProjectType projectType;
-               ITemplatesService tps;
                List<Device> videoDevices;
                ListStore videoStandardList, encProfileList, qualList;
                CalendarPopup cp;
@@ -60,13 +59,11 @@ namespace LongoMatch.Gui.Panel
                IGUIToolkit gtoolkit;
                Color red;
                
-               public NewProjectPanel (ITemplatesService tps, IGUIToolkit gtoolkit,
-                                       IMultimediaToolkit mtoolkit, Project project)
+               public NewProjectPanel (Project project)
                {
                        this.Build ();
-                       this.tps = tps;
-                       this.mtoolkit = mtoolkit;
-                       this.gtoolkit = gtoolkit;
+                       this.mtoolkit = Config.MultimediaToolkit;
+                       this.gtoolkit = Config.GUIToolkit;
                        notebook1.ShowTabs = false;
                        notebook1.ShowBorder = false;
                        backgroundwidget.Background = Gdk.Pixbuf.LoadFromResource 
(Constants.BACKGROUND).RotateSimple (Gdk.PixbufRotation.Counterclockwise);
@@ -81,8 +78,8 @@ namespace LongoMatch.Gui.Panel
                                notebook1.Page = 1;
                                this.project = project;
                        }
-                       localteamplayersselection.TemplatesProvider = tps.TeamTemplateProvider;
-                       awayteamplayersselection.TemplatesProvider = tps.TeamTemplateProvider;
+                       localteamplayersselection.TemplatesProvider = Config.TeamTemplatesProvider;
+                       awayteamplayersselection.TemplatesProvider = Config.TeamTemplatesProvider;
                        ConnectSignals ();
                        FillProjectDetails ();
                        FillCategories ();
@@ -125,7 +122,7 @@ namespace LongoMatch.Gui.Panel
                        int i=0;
                        int index = 0;
 
-                       foreach(string template in tps.CategoriesTemplateProvider.TemplatesNames) {
+                       foreach (string template in Config.CategoriesTemplatesProvider.TemplatesNames) {
                                tagscombobox.AppendText(template);
                                if(template == "default")
                                        index = i;
@@ -217,7 +214,7 @@ namespace LongoMatch.Gui.Panel
 
                void HandleOpenbuttonClicked(object sender, System.EventArgs e)
                {
-                       mediaFile = Open.OpenFile (gtoolkit, mtoolkit, this);
+                       mediaFile = Open.OpenFile (this);
                        if (mediaFile != null) {
                                fileEntry.Text = mediaFile.FilePath;
                        }
@@ -270,7 +267,7 @@ namespace LongoMatch.Gui.Panel
                                }
                        }
                        p = new Project ();
-                       p.Categories = tps.CategoriesTemplateProvider.Load(tagscombobox.ActiveText);
+                       p.Categories = Config.CategoriesTemplatesProvider.Load(tagscombobox.ActiveText);
                        p.LocalTeamTemplate = localteamplayersselection.Template;
                        p.VisitorTeamTemplate = awayteamplayersselection.Template;
                        p.Description = new ProjectDescription ();
diff --git a/LongoMatch.Services/Services/Core.cs b/LongoMatch.Services/Services/Core.cs
index 367e87f..c59f788 100644
--- a/LongoMatch.Services/Services/Core.cs
+++ b/LongoMatch.Services/Services/Core.cs
@@ -41,7 +41,6 @@ namespace LongoMatch.Services
                static GameUnitsManager guManager;
                static PlaylistManager plManager;
                static RenderingJobsManager videoRenderer;
-               static IGUIToolkit guiToolkit;
                static ToolsManager toolsManager;
 #if OSTYPE_WINDOWS
                [DllImport("libglib-2.0-0.dll") /* willfully unmapped */ ]
@@ -74,7 +73,8 @@ namespace LongoMatch.Services
                }
 
                public static void Start(IGUIToolkit guiToolkit, IMultimediaToolkit multimediaToolkit) {
-                       Core.guiToolkit = guiToolkit;
+                       Config.MultimediaToolkit = multimediaToolkit;
+                       Config.GUIToolkit= guiToolkit;
                        StartServices (guiToolkit, multimediaToolkit);
                        BindEvents (guiToolkit.MainController);
                }
@@ -84,9 +84,13 @@ namespace LongoMatch.Services
                        TemplatesService ts;
                                
                        ts = new TemplatesService (Config.TemplatesDir);
+                       Config.TeamTemplatesProvider = ts.TeamTemplateProvider;
+                       Config.CategoriesTemplatesProvider = ts.CategoriesTemplateProvider;
+
                        /* Start DB services */
                        dbManager = new DataBaseManager (Config.DBDir, guiToolkit);
                        dbManager.SetActiveByName (Config.CurrentDatabase);
+                       Config.DatabaseManager = dbManager;
                        
                        /* Start Migration */
                        MigrationsManager migration = new MigrationsManager(ts, dbManager);
@@ -94,6 +98,7 @@ namespace LongoMatch.Services
                        
                        /* Start the rendering jobs manager */
                        videoRenderer = new RenderingJobsManager(multimediaToolkit, guiToolkit);
+                       Config.RenderingJobsManger = videoRenderer;
                        
                        projectsManager = new ProjectsManager(guiToolkit, multimediaToolkit, ts);
                        
@@ -111,12 +116,11 @@ namespace LongoMatch.Services
                        guManager = new GameUnitsManager(projectsManager);
                        
                        /* Start playlists manager */
-                       plManager = new PlaylistManager(guiToolkit, videoRenderer, projectsManager);
-                       
+                       plManager = new PlaylistManager(Config.GUIToolkit, videoRenderer, projectsManager);
                }
 
                public static void BindEvents(IMainController mainController) {
-                       mainController.QuitApplicationEvent += () => {guiToolkit.Quit();};
+                       mainController.QuitApplicationEvent += () => {Config.GUIToolkit.Quit();};
                }
 
                public static void CheckDirs() {
@@ -136,12 +140,6 @@ namespace LongoMatch.Services
                                System.IO.Directory.CreateDirectory(Config.TempVideosDir);
                }
 
-               public static IDatabase DB {
-                       get {
-                               return dbManager.ActiveDB;
-                       }
-               }
-               
                private static void SetupBaseDir() {
                        string home;
                        
diff --git a/LongoMatch.Services/Services/DataBaseManager.cs b/LongoMatch.Services/Services/DataBaseManager.cs
index 3e8f24f..8cb22f3 100644
--- a/LongoMatch.Services/Services/DataBaseManager.cs
+++ b/LongoMatch.Services/Services/DataBaseManager.cs
@@ -122,7 +122,7 @@ namespace LongoMatch.DB
                                        var msg = Catalog.GetString("Close the current project to open the 
database manager");
                                        guiToolkit.ErrorMessage (msg);
                                } else {
-                                       guiToolkit.OpenDatabasesManager (this);
+                                       guiToolkit.OpenDatabasesManager ();
                                }
                        };
                }
diff --git a/LongoMatch.Services/Services/EventsManager.cs b/LongoMatch.Services/Services/EventsManager.cs
index 8b5e7dc..6fe4458 100644
--- a/LongoMatch.Services/Services/EventsManager.cs
+++ b/LongoMatch.Services/Services/EventsManager.cs
@@ -86,7 +86,7 @@ namespace LongoMatch.Services
 
                void Save (Project project) {
                        if (Config.AutoSave) {
-                               Core.DB.UpdateProject (project);
+                               Config.DatabaseManager.ActiveDB.UpdateProject (project);
                        }
                }
                
diff --git a/LongoMatch.Services/Services/ProjectsManager.cs b/LongoMatch.Services/Services/ProjectsManager.cs
index cb01f87..7392cd7 100644
--- a/LongoMatch.Services/Services/ProjectsManager.cs
+++ b/LongoMatch.Services/Services/ProjectsManager.cs
@@ -27,6 +27,7 @@ using LongoMatch.Interfaces.GUI;
 using LongoMatch.Interfaces.Multimedia;
 using LongoMatch.Store;
 using LongoMatch.Store.Templates;
+using LongoMatch.Interfaces;
 
 namespace LongoMatch.Services
 {
@@ -42,6 +43,7 @@ namespace LongoMatch.Services
                IAnalysisWindow analysisWindow;
                IProjectOptionsController projectOptionsController;
                TemplatesService ts;
+               IDatabase DB;
                
                public ProjectsManager (IGUIToolkit guiToolkit, IMultimediaToolkit multimediaToolkit,
                                       TemplatesService ts) {
@@ -49,6 +51,7 @@ namespace LongoMatch.Services
                        this.guiToolkit = guiToolkit;
                        this.ts =ts;
                        mainController = guiToolkit.MainController;
+                       DB = Config.DatabaseManager.ActiveDB;
                        ConnectSignals();
                }
 
@@ -145,7 +148,7 @@ namespace LongoMatch.Services
                                foreach (Play play in project.AllPlays ()) {
                                        play.Fps = project.Description.File.Fps;
                                }
-                               Core.DB.AddProject(project);
+                               DB.AddProject(project);
                        } catch(Exception ex) {
                                Log.Exception(ex);
                                Log.Debug ("Backing up project to file");
@@ -312,13 +315,13 @@ namespace LongoMatch.Services
                        
                        if(projectType == ProjectType.FileProject) {
                                try {
-                                       Core.DB.UpdateProject(project);
+                                       DB.UpdateProject(project);
                                } catch(Exception e) {
                                        Log.Exception(e);
                                }
                        } else if (projectType == ProjectType.FakeCaptureProject) {
                                try {
-                                       Core.DB.AddProject(project);
+                                       DB.AddProject(project);
                                } catch (Exception e) {
                                        Log.Exception(e);
                                }
@@ -335,7 +338,7 @@ namespace LongoMatch.Services
                                return;
                        }
                        
-                       guiToolkit.CreateNewProject (ts, multimediaToolkit);
+                       guiToolkit.CreateNewProject ();
                }
                
                protected void OpenNewProject (Project project, ProjectType projectType,
@@ -349,13 +352,13 @@ namespace LongoMatch.Services
                        if (!PromptCloseProject ()) {
                                return;
                        }
-                       guiToolkit.SelectProject(Core.DB.GetAllProjects());
+                       guiToolkit.SelectProject(DB.GetAllProjects());
                }
                
                protected void OpenProjectID (Guid projectID) {
                        Project project = null;
                        
-                       project = Core.DB.GetProject(projectID);
+                       project = DB.GetProject(projectID);
 
                        if (project.Description.File.FilePath == Constants.FAKE_PROJECT) {
                                /* If it's a fake live project prompt for a video file and
@@ -367,7 +370,7 @@ namespace LongoMatch.Services
                                        Catalog.GetString("You are opening a live project without any video 
file associated yet.") +
                                        "\n" + Catalog.GetString("Select a video file in the next step."));
                                
-                               guiToolkit.CreateNewProject (ts, multimediaToolkit, project);
+                               guiToolkit.CreateNewProject (project);
                                if (project == null)
                                        return;
                                ToolsManager.CreateThumbnails(project, guiToolkit, 
multimediaToolkit.GetFramesCapturer());
diff --git a/LongoMatch.Services/Services/RenderingJobsManager.cs 
b/LongoMatch.Services/Services/RenderingJobsManager.cs
index d8250ad..463c9d4 100644
--- a/LongoMatch.Services/Services/RenderingJobsManager.cs
+++ b/LongoMatch.Services/Services/RenderingJobsManager.cs
@@ -135,7 +135,7 @@ namespace LongoMatch.Services
                }
                
                protected void ManageJobs() {
-                       guiToolkit.ManageJobs(this);
+                       guiToolkit.ManageJobs ();
                }
                
                private void LoadConversionJob (ConversionJob job) {
diff --git a/LongoMatch.Services/Services/ToolsManager.cs b/LongoMatch.Services/Services/ToolsManager.cs
index 6b91c62..53575d1 100644
--- a/LongoMatch.Services/Services/ToolsManager.cs
+++ b/LongoMatch.Services/Services/ToolsManager.cs
@@ -22,6 +22,7 @@ using LongoMatch.Interfaces.GUI;
 using LongoMatch.Interfaces.Multimedia;
 using LongoMatch.Store;
 using LongoMatch.Common;
+using LongoMatch.Interfaces;
 
 namespace LongoMatch.Services {
 
@@ -48,13 +49,13 @@ namespace LongoMatch.Services {
                                guiToolkit.OpenPreferencesEditor();
                        };
                        guiToolkit.MainController.ManageCategoriesEvent += () => {
-                               guiToolkit.OpenCategoriesTemplatesManager (this.templatesService);
+                               guiToolkit.OpenCategoriesTemplatesManager ();
                        };
                        guiToolkit.MainController.ManageTeamsEvent += () => {
-                               guiToolkit.OpenTeamsTemplatesManager 
(this.templatesService.TeamTemplateProvider);
+                               guiToolkit.OpenTeamsTemplatesManager ();
                        };
                        guiToolkit.MainController.ManageProjectsEvent += () => {
-                               guiToolkit.OpenProjectsManager(this.openedProject, Core.DB, templatesService);
+                               guiToolkit.OpenProjectsManager(this.openedProject);
                        };
                        
                        guiToolkit.MainController.ImportProjectEvent += ImportProject;
@@ -87,6 +88,7 @@ namespace LongoMatch.Services {
                                           Func<string, Project> importProject, bool requiresNewFile) {
                        Project project;
                        string fileName;
+                       IDatabase DB = Config.DatabaseManager.ActiveDB;
 
                        Log.Debug("Importing project");
                        /* Show a file chooser dialog to select the file to import */
@@ -130,15 +132,15 @@ namespace LongoMatch.Services {
                        }
                        
                        /* If the project exists ask if we want to overwrite it */
-                       if (Core.DB.Exists (project)) {
+                       if (DB.Exists (project)) {
                                var res = guiToolkit.QuestionMessage (Catalog.GetString ("A project already 
exists for the file:") +
                                                                      project.Description.File.FilePath+ "\n" 
+
                                                                      Catalog.GetString ("Do you want to 
overwrite it?"), null);
                                if(!res)
                                        return;
-                               Core.DB.UpdateProject(project);
+                               DB.UpdateProject(project);
                        } else {
-                               Core.DB.AddProject(project);
+                               DB.AddProject(project);
                        }
                        guiToolkit.InfoMessage(Catalog.GetString("Project successfully imported."));
                }


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