From: <nor...@us...> - 2007-09-04 18:53:42
|
Revision: 893 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=893&view=rev Author: northern_sky Date: 2007-09-04 11:53:33 -0700 (Tue, 04 Sep 2007) Log Message: ----------- some importrestructure Modified Paths: -------------- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/DirectoryImport.cs trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/GamebaseImport.cs trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/ImportBase.cs trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/MameImport.cs trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItem.cs trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemDirectoryCache.cs trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemGameBase.cs trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemMame.cs Modified: trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/DirectoryImport.cs =================================================================== --- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/DirectoryImport.cs 2007-09-04 08:54:30 UTC (rev 892) +++ trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/DirectoryImport.cs 2007-09-04 18:53:33 UTC (rev 893) @@ -16,34 +16,32 @@ { public class DirectoryImport: ImportBase { - private ApplicationItem applicationItem = null; - private DatabaseHandler dbHandlerInstance = DatabaseHandler.DBHandlerInstance; - public DirectoryImport(ApplicationItem objApp) + public DirectoryImport(ApplicationItem applicationItem) { - applicationItem = objApp; + this.applicationItem = applicationItem; } private void ImportFileItem(FileInfo fileInfo) { - FileItem curFile = new FileItem(); - curFile.FileID = -1; // to force an INSERT statement when writing the item - curFile.ApplicationItemId = applicationItem.ApplicationItemId; - curFile.Title = Path.GetFileNameWithoutExtension(fileInfo.Name); - curFile.Filename = fileInfo.FullName; - curFile.LastTimeLaunched = DateTime.MinValue; - curFile.LaunchCount = 0; + FileItem newFileItem = new FileItem(); + newFileItem.FileID = -1; // to force an INSERT statement when writing the item + newFileItem.ApplicationItemId = applicationItem.ApplicationItemId; + newFileItem.Title = Path.GetFileNameWithoutExtension(fileInfo.Name); + newFileItem.Filename = fileInfo.FullName; + newFileItem.LastTimeLaunched = DateTime.MinValue; + newFileItem.LaunchCount = 0; //curFile.Imagefile = GetThumbsFile(fileInfo, curFile.Title); - curFile.Imagefile = ImportImageFiles(curFile.Filename, curFile.Title, applicationItem); + newFileItem.Imagefile = ImportImageFiles(newFileItem.Filename, newFileItem.Title, applicationItem); - if ((curFile.Imagefile == "") && (applicationItem.ImportValidImagesOnly)) + if ((newFileItem.Imagefile == "") && (applicationItem.ImportValidImagesOnly)) { // SendDisplayText("", (int)(100 * (((double)count) / total))); } else { - curFile.Write(); + newFileItem.Write(); } } @@ -117,7 +115,7 @@ } } - public void StartImport() + public override void StartImport() { string[] fileDirPaths = this.applicationItem.FileDirectory.Split(';'); Modified: trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/GamebaseImport.cs =================================================================== --- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/GamebaseImport.cs 2007-09-04 08:54:30 UTC (rev 892) +++ trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/GamebaseImport.cs 2007-09-04 18:53:33 UTC (rev 893) @@ -42,58 +42,61 @@ /// </summary> public class GamebaseImport : ImportBase { - private ApplicationItem applicationItem = null; - - public GamebaseImport(ApplicationItem objApp) + + public GamebaseImport(ApplicationItem applicationItem) { - applicationItem = objApp; + this.applicationItem = applicationItem; } - void DBImportGamebaseItem(OleDbDataReader myReader, string romFilename, string imgFilename, int curPos, int maxGames) { - FileItem curFile = new FileItem(); - curFile.FileID = -1; // to force an INSERT statement when writing the item - curFile.ApplicationItemId = applicationItem.ApplicationItemId; - curFile.Title = myReader["name"].ToString(); - curFile.Filename = romFilename; - curFile.Imagefile = imgFilename; + FileItem newFileItem = new FileItem(); + newFileItem.FileID = -1; // to force an INSERT statement when writing the item + newFileItem.ApplicationItemId = applicationItem.ApplicationItemId; + newFileItem.Title = myReader["name"].ToString(); + newFileItem.Filename = romFilename; + newFileItem.Imagefile = imgFilename; string strGenre1 = myReader["ParentGenre"].ToString(); string strGenre2 = myReader["Genre"].ToString(); int LexiconId = DatabaseHandler.DBHandlerInstance.LexiconDataExists("tblGenre", "genre", strGenre1); - curFile.GenreId = LexiconId; + newFileItem.GenreId = LexiconId; LexiconId = DatabaseHandler.DBHandlerInstance.LexiconDataExists("tblGenre", "genre", strGenre2); - curFile.GenreStyleId = LexiconId; + newFileItem.GenreStyleId = LexiconId; // todo: country - curFile.Country = ""; + newFileItem.Country = ""; LexiconId = DatabaseHandler.DBHandlerInstance.LexiconDataExists("tblManufacturer", "manufacturer", myReader["Publisher"].ToString()); - curFile.ManufacturerId = LexiconId; - curFile.Year = Convert.ToInt32(myReader["Year"]); - curFile.Rating = Convert.ToInt32(myReader["Rating"]) * 2; - if (curFile.Rating > 10) + newFileItem.ManufacturerId = LexiconId; + newFileItem.Year = Convert.ToInt32(myReader["Year"]); + newFileItem.Rating = Convert.ToInt32(myReader["Rating"]) * 2; + if (newFileItem.Rating > 10) { - curFile.Rating = 10; + newFileItem.Rating = 10; } - if (curFile.Rating < 1) + if (newFileItem.Rating < 1) { - curFile.Rating = 5; // average / not rated.... + newFileItem.Rating = 5; // average / not rated.... } - curFile.Overview = myReader["MemoText"].ToString(); - curFile.Platform = applicationItem.Title; + newFileItem.Overview = myReader["MemoText"].ToString(); + newFileItem.Platform = applicationItem.Title; // not imported properties => set default values - curFile.LastTimeLaunched = DateTime.MinValue; - curFile.LaunchCount = 0; - curFile.Write(); + newFileItem.LastTimeLaunched = DateTime.MinValue; + newFileItem.LaunchCount = 0; + newFileItem.Write(); return; } - public void StartImport() + public override void StartImport() { + string curRomname = ""; + string curFullRomname = ""; + string curTitleImage = ""; + bool bDoImport = false; + // string strCon = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=C:\\media\\GameBase\\snes\\Snes.mdb"; string strCon = String.Format("Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source={0}", applicationItem.ApplicationItemSource); @@ -125,27 +128,20 @@ ORDER BY Games.Name "; - string curRomname = ""; - string curFullRomname = ""; - string curTitleImage = ""; - bool bDoImport = false; + try { using (OleDbConnection myCon = new OleDbConnection(strCon)) { - using (OleDbCommand myCmd = new OleDbCommand(sqlStr, myCon)) { - using (SQLiteTransaction transaction = DatabaseHandler.DBHandlerInstance.SqlLiteConn.BeginTransaction()) { myCon.Open(); int maxGames = CountGames(myCon, sqlStrCount); - using (OleDbDataReader myReader = myCmd.ExecuteReader()) { - int i = 0; while (myReader.Read()) { @@ -221,7 +217,6 @@ { Log.Info("myProgams error in connecting to gamebase-mdb \n {0}", er.ToString()); } - return res; } } Modified: trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/ImportBase.cs =================================================================== --- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/ImportBase.cs 2007-09-04 08:54:30 UTC (rev 892) +++ trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/ImportBase.cs 2007-09-04 18:53:33 UTC (rev 893) @@ -5,8 +5,8 @@ using System.IO; using GUIProgramsAlt.Items; using GUIProgramsAlt; +using GUIProgramsAlt.Database; - namespace GUIProgramsAlt.Imports { public abstract class ImportBase @@ -15,6 +15,8 @@ public delegate void ReadNewFileEventHandler(object sender, FileReadEventArgs e); public event ReadNewFileEventHandler ReadNewFileEvent = null; + protected ApplicationItem applicationItem = null; + protected DatabaseHandler dbHandlerInstance = DatabaseHandler.DBHandlerInstance; protected void OnReadNewFileEvent(object sender,FileReadEventArgs e) { @@ -24,7 +26,9 @@ } } - public virtual void startImport() + + + public virtual void StartImport() { //override Modified: trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/MameImport.cs =================================================================== --- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/MameImport.cs 2007-09-04 08:54:30 UTC (rev 892) +++ trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Imports/MameImport.cs 2007-09-04 18:53:33 UTC (rev 893) @@ -48,7 +48,6 @@ /// </summary> public class MameImport : ImportBase { - ApplicationItem currentApplication = null; ConditionChecker conditionChecker = new ConditionChecker(); @@ -73,7 +72,7 @@ public MameImport(ApplicationItem applicationItem) { - currentApplication = applicationItem; + this.applicationItem = applicationItem; } void ReadListFull() @@ -85,7 +84,7 @@ using (Process process = new Process()) { - ProcessStartInfo processStartInfo = new ProcessStartInfo(currentApplication.Executable); + ProcessStartInfo processStartInfo = new ProcessStartInfo(applicationItem.Executable); processStartInfo.Arguments = "-listfull"; processStartInfo.UseShellExecute = false; processStartInfo.RedirectStandardOutput = true; @@ -112,13 +111,13 @@ void ReadListClones() { string line; - if (((ApplicationItemMame)currentApplication).ImportOriginalsOnly) + if (((ApplicationItemMame)applicationItem).ImportOriginalsOnly) { OnReadNewFileEvent(this,new FileReadEventArgs(20,"generating mame list (clones)")); using (Process process = new Process()) { - ProcessStartInfo myProcessStartInfo = new ProcessStartInfo(currentApplication.Executable); + ProcessStartInfo myProcessStartInfo = new ProcessStartInfo(applicationItem.Executable); myProcessStartInfo.Arguments = "-listclones"; myProcessStartInfo.UseShellExecute = false; myProcessStartInfo.RedirectStandardOutput = true; @@ -234,11 +233,11 @@ { char separator = ';'; conditionChecker.Clear(); - string[] fileDirs = currentApplication.FileDirectory.Split(separator); + string[] fileDirs = applicationItem.FileDirectory.Split(separator); - if (conditionChecker.DoCheck(System.IO.File.Exists(currentApplication.Executable), "mame-application not found!")) + if (conditionChecker.DoCheck(System.IO.File.Exists(applicationItem.Executable), "mame-application not found!")) { - mameDir = Path.GetDirectoryName(currentApplication.Executable); + mameDir = Path.GetDirectoryName(applicationItem.Executable); catverIniFile = mameDir + "\\catver.ini"; historyDatFile = mameDir + "\\history.dat"; } @@ -276,7 +275,7 @@ } - public void StartImport() + public override void StartImport() { if (!CheckPrerequisites()) { @@ -329,9 +328,9 @@ string fullEntry = ""; string genreEntry = ""; string versionEntry = ""; - bool onlyOriginals = ((ApplicationItemMame)currentApplication).ImportOriginalsOnly; - bool importMahjongGames = currentApplication.ImportMameMahjong; - bool importPlaychoiceGames = currentApplication.ImportMamePlaychoice10; + bool onlyOriginals = ((ApplicationItemMame)applicationItem).ImportOriginalsOnly; + bool importMahjongGames = applicationItem.ImportMameMahjong; + bool importPlaychoiceGames = applicationItem.ImportMamePlaychoice10; bool shouldImport = true; MameHistoryContainer mameHistoryNode = null; @@ -342,11 +341,11 @@ { FileItem curFile = new FileItem(); - curFile.ApplicationItemId = currentApplication.ApplicationItemId; + curFile.ApplicationItemId = applicationItem.ApplicationItemId; curFile.Filename = fullRomname; - curFile.Imagefile = ImportImageFiles(curFile.Filename, curFile.Title, currentApplication); + curFile.Imagefile = ImportImageFiles(curFile.Filename, curFile.Title, applicationItem); - if ((curFile.Imagefile == "") && (currentApplication.ImportValidImagesOnly)) + if ((curFile.Imagefile == "") && (applicationItem.ImportValidImagesOnly)) { OnReadNewFileEvent(this,new FileReadEventArgs( (int)(100 * (((double)count) / total)),"")); return; Modified: trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItem.cs =================================================================== --- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItem.cs 2007-09-04 08:54:30 UTC (rev 892) +++ trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItem.cs 2007-09-04 18:53:33 UTC (rev 893) @@ -51,6 +51,8 @@ { public abstract class ApplicationItem { + protected ImportBase importBase = null; + #region Events/Delegates // public delegate void FilelinkLaunchEventHandler(FilelinkItem curLink, bool mpGuiMode); @@ -67,6 +69,11 @@ public delegate void ImportDelegate(); protected ImportDelegate importDelegate = null; + protected void Import_ReadNewFileEvent(object sender, FileReadEventArgs e) + { + this.SetGUIProgressDialog(e.message, e.ctr); + } + public virtual void OnImportFinished(object sender, EventArgs e) { if (ImportFinishedEvent != null) @@ -463,7 +470,16 @@ protected virtual void Import(bool mpGUIMode) { - //override + + + if (!File.Exists(this.Executable)) // no "mame.exe" + return; + + + importBase.ReadNewFileEvent += new ImportBase.ReadNewFileEventHandler(Import_ReadNewFileEvent); + importDelegate = new ImportDelegate(importBase.StartImport); + importDelegate.BeginInvoke(new AsyncCallback(ImportEnded), null); + } #endregion protected methods Modified: trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemDirectoryCache.cs =================================================================== --- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemDirectoryCache.cs 2007-09-04 08:54:30 UTC (rev 892) +++ trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemDirectoryCache.cs 2007-09-04 18:53:33 UTC (rev 893) @@ -80,7 +80,6 @@ { Import(mpGuiMode); FixFileLinks(); - LoadFiles(); } protected override void Import(bool mpGUIMode) @@ -89,27 +88,14 @@ { ShowProgressDialog("Importing from folders.."); } - DirectoryImport directoryImport = null; - if (!File.Exists(this.Executable)) // no "mame.exe" - return; - ValidExtensions = ValidExtensions.Replace(" ", ""); - + importBase = new DirectoryImport(this); + base.Import(mpGUIMode); + } - directoryImport = new DirectoryImport(this); - directoryImport.ReadNewFileEvent += new ImportBase.ReadNewFileEventHandler(directoryImport_ReadNewFileEvent); - importDelegate = new ImportDelegate(directoryImport.StartImport); - importDelegate.BeginInvoke(new AsyncCallback(ImportEnded), null); - - - #endregion ApplicationItem Overloads - } - - void directoryImport_ReadNewFileEvent(object sender, FileReadEventArgs e) - { - this.SetGUIProgressDialog(e.message, e.ctr); - } + #endregion ApplicationItem Overloads + } } \ No newline at end of file Modified: trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemGameBase.cs =================================================================== --- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemGameBase.cs 2007-09-04 08:54:30 UTC (rev 892) +++ trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemGameBase.cs 2007-09-04 18:53:33 UTC (rev 893) @@ -60,35 +60,25 @@ if ((ApplicationItemSource == "") || (!File.Exists(ApplicationItemSource))) return; - GamebaseImport gameBaseImport = null; if (mpGUIMode) { ShowProgressDialog("Importing from gameBase.."); } - if (!File.Exists(this.Executable)) // no "mame.exe" - return; + importBase = new GamebaseImport(this); + base.Import(mpGUIMode); - gameBaseImport = new GamebaseImport(this); - gameBaseImport.ReadNewFileEvent += new ImportBase.ReadNewFileEventHandler(gameBaseImport_ReadNewFileEvent); - importDelegate = new ImportDelegate(gameBaseImport.StartImport); - importDelegate.BeginInvoke(new AsyncCallback(ImportEnded), null); - } - void gameBaseImport_ReadNewFileEvent(object sender, FileReadEventArgs e) - { - this.SetGUIProgressDialog(e.message, e.ctr); - } + public override void Refresh(bool bGUIMode) { DeleteFiles(); Import(bGUIMode); FixFileLinks(); - LoadFiles(); } #endregion ApplicationItem Overloads } Modified: trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemMame.cs =================================================================== --- trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemMame.cs 2007-09-04 08:54:30 UTC (rev 892) +++ trunk/plugins/myGUIProgramsAlt/GUIProgramsAlt/Items/ApplicationItemMame.cs 2007-09-04 18:53:33 UTC (rev 893) @@ -103,31 +103,20 @@ DeleteFiles(); Import(bGUIMode); FixFileLinks(); - LoadFiles(); } protected override void Import(bool mpGUIMode) { - if (!File.Exists(this.Executable)) // no "mame.exe" - return; - MameImport mameImport = null; - if (mpGUIMode) { - ShowProgressDialog("Importing Mameitems.."); + ShowProgressDialog("Importing from mame.."); } - mameImport = new MameImport(this); - mameImport.ReadNewFileEvent += new ImportBase.ReadNewFileEventHandler(mameImport_OnReadNewFileEvent); - importDelegate = new ImportDelegate(mameImport.StartImport); - importDelegate.BeginInvoke(new AsyncCallback(ImportEnded),null); + importBase = new MameImport(this); + base.Import(mpGUIMode); } - void mameImport_OnReadNewFileEvent(object sender,FileReadEventArgs e) - { - this.SetGUIProgressDialog(e.message, e.ctr); - } #endregion ApplicationItem Overloads } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |