public void UpdateGame(GameExecutionInfo i) { using (SQLiteCommand insertGameRngCmd = (SQLiteCommand)conn.CreateCommand()) { using (SQLiteCommand insertTimeRngCmd = (SQLiteCommand)conn.CreateCommand()) { using (SQLiteCommand insertExecRngCmd = (SQLiteCommand)conn.CreateCommand()) { conn.Open(); insertGameRngCmd.CommandText = @"UPDATE games SET title=@TITLE,brand=@BRAND,nukige=@NUKIGE,saleday=@SALEDAY,esid=@ESID WHERE uid=@UID"; insertTimeRngCmd.CommandText = @"UPDATE gametimeinfo SET playtime=@PLAYTIME,firstplay=@FIRSTPLAY,lastplay=@LASTPLAY WHERE uid=@UID"; insertExecRngCmd.CommandText = @"UPDATE gameexecinfo SET proc_neq_exec=@P_N_E,procpath=@PROCPATH,execpath=@EXECPATH WHERE uid=@UID"; insertGameRngCmd.Parameters.AddWithValue("@UID", i.UID); insertGameRngCmd.Parameters.AddWithValue("@TITLE", i.Title); insertGameRngCmd.Parameters.AddWithValue("@BRAND", i.Brand); insertGameRngCmd.Parameters.AddWithValue("@NUKIGE", i.IsNukige ? 1 : 0); insertGameRngCmd.Parameters.AddWithValue("@SALEDAY", i.SaleDay.ToString("yyyy-MM-dd")); insertGameRngCmd.Parameters.AddWithValue("@ESID", i.ErogameScapeID); insertGameRngCmd.ExecuteNonQuery(); insertTimeRngCmd.Parameters.AddWithValue("@UID", i.UID); insertTimeRngCmd.Parameters.AddWithValue("@PLAYTIME", i.TotalPlayTime); insertTimeRngCmd.Parameters.AddWithValue("@FIRSTPLAY", i.FirstPlayTime.ToString("yyyy-MM-dd HH:mm:ss")); insertTimeRngCmd.Parameters.AddWithValue("@LASTPLAY", i.LastPlayTime.ToString("yyyy-MM-dd HH:mm:ss")); insertTimeRngCmd.ExecuteNonQuery(); insertExecRngCmd.Parameters.AddWithValue("@UID", i.UID); insertExecRngCmd.Parameters.AddWithValue("@P_N_E", (i.IsProcNEqExec ? 1 : 0)); insertExecRngCmd.Parameters.AddWithValue("@PROCPATH", i.ProcPath); insertExecRngCmd.Parameters.AddWithValue("@EXECPATH", i.ExecPath); insertExecRngCmd.ExecuteNonQuery(); conn.Close(); } } } }
public void UpdateGameInfoAndExec(GameExecutionInfo i) { using (SQLiteCommand insertGameRngCmd = (SQLiteCommand)conn.CreateCommand()) { using (SQLiteCommand insertExecRngCmd = (SQLiteCommand)conn.CreateCommand()) { conn.Open(); insertGameRngCmd.CommandText = @"UPDATE games SET title=@TITLE,brand=@BRAND,saleday=@SALEDAY,esid=@ESID WHERE uid=@UID"; insertExecRngCmd.CommandText = @"UPDATE gameexecinfo SET proc_neq_exec=@P_N_E,procpath=@PROCPATH,execpath=@EXECPATH WHERE uid=@UID"; insertGameRngCmd.Parameters.AddWithValue("@UID", i.UID); insertGameRngCmd.Parameters.AddWithValue("@TITLE", i.Title); insertGameRngCmd.Parameters.AddWithValue("@BRAND", i.Brand); insertGameRngCmd.Parameters.AddWithValue("@SALEDAY", i.SaleDay.ToString("yyyy-MM-dd")); insertGameRngCmd.Parameters.AddWithValue("@ESID", i.ErogameScapeID); insertGameRngCmd.ExecuteNonQuery(); insertExecRngCmd.Parameters.AddWithValue("@UID", i.UID); insertExecRngCmd.Parameters.AddWithValue("@P_N_E", (i.IsProcNEqExec ? 1 : 0)); insertExecRngCmd.Parameters.AddWithValue("@PROCPATH", i.ProcPath); insertExecRngCmd.Parameters.AddWithValue("@EXECPATH", i.ExecPath); insertExecRngCmd.ExecuteNonQuery(); conn.Close(); } } }
private void TryGetGameInfo_Click(object sender, RoutedEventArgs e) { List <GameInfo> allGames = Utility.im.getAllEsInfo(); GameExecutionInfo g = (GameExecutionInfo)GameListView.SelectedItem; Dictionary <GameInfo, int> dic = new Dictionary <GameInfo, int>(); string title = g.Title; foreach (GameInfo i in allGames) { int dist = StringProcessing.LevenshteinDistance(title, i.Title); dic[i] = dist; } var ordered = dic.OrderBy(x => x.Value); GameInfo ans = ordered.ElementAt(0).Key; List <GameInfo> ans_l = new List <GameInfo>(); for (int i = 0; i < 50; i++) { ans_l.Add(ordered.ElementAt(i).Key); } Dialog.GameInfoDialog td = new Dialog.GameInfoDialog(ans_l); td.Owner = this; if (td.ShowDialog() == true) { g.ErogameScapeID = td.SelectedGameInfo.ErogameScapeID; g.Title = td.SelectedGameInfo.Title; g.Brand = td.SelectedGameInfo.Brand; g.SaleDay = td.SelectedGameInfo.SaleDay; UpdateStatus(); db.UpdateGameInfoAndExec(g); } }
public void LoadGame(ObservableCollection <GameExecutionInfo> items) { using (SQLiteCommand command = conn.CreateCommand()) { conn.Open(); command.CommandText = "SELECT * FROM games g, gametimeinfo t, gameexecinfo e WHERE g.uid=e.uid AND g.uid=t.uid"; SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { GameExecutionInfo i = new GameExecutionInfo( reader["uid"].ToString(), reader["title"].ToString(), reader["brand"].ToString(), Convert.ToInt32(reader["esid"].ToString()), DateTime.ParseExact(reader["saleday"].ToString(), "yyyy-MM-dd", CultureInfo.InvariantCulture), Convert.ToInt32(reader["playtime"].ToString()), DateTime.ParseExact(reader["firstplay"].ToString(), "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture), DateTime.ParseExact(reader["lastplay"].ToString(), "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture), (Convert.ToInt32(reader["proc_neq_exec"].ToString()) == 1 ? true : false), reader["procpath"].ToString(), reader["execpath"].ToString(), LoadGameDisplayInfo(reader["uid"].ToString()) ); items.Add(i); } conn.Close(); } }
public void InsertOrReplaceGame(GameExecutionInfo i) { using (SQLiteCommand insertGameRngCmd = (SQLiteCommand)conn.CreateCommand()) { using (SQLiteCommand insertTimeRngCmd = (SQLiteCommand)conn.CreateCommand()) { using (SQLiteCommand insertExecRngCmd = (SQLiteCommand)conn.CreateCommand()) { conn.Open(); insertGameRngCmd.CommandText = @"INSERT or REPLACE INTO games VALUES(@UID,@TITLE,@BRAND,@NUKIGE,@SALEDAY,@ESID)"; insertTimeRngCmd.CommandText = @"INSERT or REPLACE INTO gametimeinfo VALUES(@UID,@PLAYTIME,@FIRSTPLAY,@LASTPLAY)"; insertExecRngCmd.CommandText = @"INSERT or REPLACE INTO gameexecinfo VALUES(@UID,@P_N_E,@PROCPATH,@EXECPATH)"; insertGameRngCmd.Parameters.AddWithValue("@UID", i.UID); insertGameRngCmd.Parameters.AddWithValue("@TITLE", i.Title); insertGameRngCmd.Parameters.AddWithValue("@BRAND", i.Brand); insertGameRngCmd.Parameters.AddWithValue("@NUKIGE", i.IsNukige ? 1 : 0); insertGameRngCmd.Parameters.AddWithValue("@SALEDAY", i.SaleDay.ToString("yyyy-MM-dd")); insertGameRngCmd.Parameters.AddWithValue("@ESID", i.ErogameScapeID); insertGameRngCmd.ExecuteNonQuery(); insertTimeRngCmd.Parameters.AddWithValue("@UID", i.UID); insertTimeRngCmd.Parameters.AddWithValue("@PLAYTIME", i.TotalPlayTime); insertTimeRngCmd.Parameters.AddWithValue("@FIRSTPLAY", i.FirstPlayTime.ToString("yyyy-MM-dd HH:mm:ss")); insertTimeRngCmd.Parameters.AddWithValue("@LASTPLAY", i.LastPlayTime.ToString("yyyy-MM-dd HH:mm:ss")); insertTimeRngCmd.ExecuteNonQuery(); insertExecRngCmd.Parameters.AddWithValue("@UID", i.UID); insertExecRngCmd.Parameters.AddWithValue("@P_N_E", (i.IsProcNEqExec ? 1 : 0)); insertExecRngCmd.Parameters.AddWithValue("@PROCPATH", i.ProcPath); insertExecRngCmd.Parameters.AddWithValue("@EXECPATH", i.ExecPath); insertExecRngCmd.ExecuteNonQuery(); conn.Close(); } } } }
private void OpenES_Click(object sender, RoutedEventArgs e) { GameExecutionInfo g = (GameExecutionInfo)GameListView.SelectedItem; if (g != null && g.ErogameScapeID != 0) { System.Diagnostics.Process.Start("http://erogamescape.dyndns.org/~ap2/ero/toukei_kaiseki/game.php?game=" + g.ErogameScapeID); } }
private void CopyBrand_Click(object sender, RoutedEventArgs e) { GameExecutionInfo g = (GameExecutionInfo)GameListView.SelectedItem; if (g != null) { Clipboard.SetText(g.Brand); } }
private void DoOpenGame() { GameExecutionInfo g = (GameExecutionInfo)GameListView.SelectedItem; if (g != null) { g.run(); } UpdateStatus(); }
private void AddGameFromProcess_Click(object sender, RoutedEventArgs e) { Dialog.ProcessDialog pd = new Dialog.ProcessDialog(); pd.Owner = this; if (pd.ShowDialog() == true) { GameExecutionInfo i = new GameExecutionInfo(pd.SelectedProc.ProcTitle, pd.SelectedProc.ProcPath); items.Add(i); db.InsertOrReplaceGame(i); UpdateStatus(); OnPropertyChanged("ItemCount"); } }
private void OpenFolder_Click(object sender, RoutedEventArgs e) { if (GameListView.SelectedItems.Count > 0) { try { GameExecutionInfo i = (GameExecutionInfo)GameListView.SelectedItem; Process.Start(System.IO.Path.GetDirectoryName(i.ExecPath)); } catch { } } }
public void UpdateGameComment(GameExecutionInfo i) { using (SQLiteCommand command = conn.CreateCommand()) { conn.Open(); command.CommandText = @"INSERT or REPLACE INTO gamecomment VALUES(@UID,@CLEARED,@COMMENT,@COMMENTDATE,@LATESTDUPDATE)"; command.Parameters.AddWithValue("@UID", i.UID); command.Parameters.AddWithValue("@CLEARED", i.Cleared ? 1 : 0); command.Parameters.AddWithValue("@COMMENT", i.Comment); command.Parameters.AddWithValue("@COMMENTDATE", i.CommentDate.Year == 1970 ? DateTime.Today.ToString("yyyy-MM-dd") : i.CommentDateString); command.Parameters.AddWithValue("@LATESTDUPDATE", DateTime.Today.ToString("yyyy-MM-dd")); command.ExecuteNonQuery(); conn.Close(); } }
private void OpenES_Click(object sender, RoutedEventArgs e) { GameExecutionInfo g = (GameExecutionInfo)GameListView.SelectedItem; if (g != null && g.ErogameScapeID != 0) { var uri = "http://erogamescape.dyndns.org/~ap2/ero/toukei_kaiseki/game.php?game=" + g.ErogameScapeID; if (Settings.Default.useGoogleCache) { uri = "https://webcache.googleusercontent.com/search?q=cache:" + HttpUtility.UrlEncode(uri) + "&strip=1"; } Process.Start(uri); } }
private void OpenPlayStatistics_Click(object sender, RoutedEventArgs e) { if (GameListView.SelectedItems.Count > 0) { GameExecutionInfo i = (GameExecutionInfo)GameListView.SelectedItem; List <TimeSummary> t = db.QueryGamePlayTime(i.UID); Dialog.GameTimeStatisticDialog td = new Dialog.GameTimeStatisticDialog(t); td.Owner = this; if (td.ShowDialog() == true) { } } }
private void GameListView_MouseDoubleClick(object sender, MouseButtonEventArgs e) { var listView = (ListView)sender; var item = listView.ContainerFromElement((DependencyObject)e.OriginalSource) as ListViewItem; if (item != null) { GameExecutionInfo g = (GameExecutionInfo)GameListView.SelectedItem; if (g != null) { g.run(); } } }
/* private void MWindow_Closing(object sender, CancelEventArgs e) * { * ExportXML(Utility.strSourcePath + @"data.xml"); * }*/ #endregion #region MenuRegion private void AddGameFromESID_Click(object sender, RoutedEventArgs e) { Dialogs.AddGameFromESIDDialog ad = new Dialogs.AddGameFromESIDDialog(); ad.Owner = this; if (ad.ShowDialog() == true) { GameExecutionInfo i = new GameExecutionInfo(ad.Value); items.Add(i); db.InsertOrReplaceGame(i); UpdateStatus(); OnPropertyChanged("ItemCount"); } }
private void GameProperty_Click(object sender, RoutedEventArgs e) { if (GameListView.SelectedItems.Count > 0) { GameExecutionInfo i = (GameExecutionInfo)GameListView.SelectedItem; Dialog.GamePropertyDialog gd = new Dialog.GamePropertyDialog(i); gd.Owner = this; if (gd.ShowDialog() == true) { UpdateStatus(); db.UpdateGameInfoAndExec(i); } } }
private void TimeSetting_Click(object sender, RoutedEventArgs e) { if (GameListView.SelectedItems.Count > 0) { GameExecutionInfo i = (GameExecutionInfo)GameListView.SelectedItem; Dialog.TimeSettingDialog td = new Dialog.TimeSettingDialog(i); td.Owner = this; if (td.ShowDialog() == true) { UpdateStatus(); db.UpdateGameTimeInfo(i.UID, i.TotalPlayTime, i.FirstPlayTime, i.LastPlayTime); } } }
public void Set(GameExecutionInfo t) { Title = t.Title; Brand = t.Brand; SaleDay = t.SaleDay; ErogameScapeID = t.ErogameScapeID; TotalPlayTime = t.TotalPlayTime; FirstPlayTime = t.FirstPlayTime; LastPlayTime = t.LastPlayTime; IsProcNEqExec = t.IsProcNEqExec; IsPathExist = t.IsPathExist; ExecPath = t.ExecPath; ProcPath = t.ProcPath; Status = t.Status; uid = t.uid; }
public void UpdateGameInfoAndExec(GameExecutionInfo i) { using (SQLiteCommand insertGameRngCmd = (SQLiteCommand)conn.CreateCommand()) { using (SQLiteCommand insertExecRngCmd = (SQLiteCommand)conn.CreateCommand()) { conn.Open(); insertGameRngCmd.CommandText = @"UPDATE games SET title=@TITLE,brand=@BRAND,saleday=@SALEDAY,esid=@ESID WHERE uid=@UID"; insertExecRngCmd.CommandText = @"UPDATE gameexecinfo SET proc_neq_exec=@P_N_E,procpath=@PROCPATH,execpath=@EXECPATH WHERE uid=@UID"; insertGameRngCmd.Parameters.AddWithValue("@UID", i.UID); insertGameRngCmd.Parameters.AddWithValue("@TITLE", i.Title); insertGameRngCmd.Parameters.AddWithValue("@BRAND", i.Brand); insertGameRngCmd.Parameters.AddWithValue("@SALEDAY", i.SaleDay.ToString("yyyy-MM-dd")); insertGameRngCmd.Parameters.AddWithValue("@ESID", i.ErogameScapeID); insertGameRngCmd.ExecuteNonQuery(); insertExecRngCmd.Parameters.AddWithValue("@UID", i.UID); insertExecRngCmd.Parameters.AddWithValue("@P_N_E", (i.IsProcNEqExec ? 1 : 0)); insertExecRngCmd.Parameters.AddWithValue("@PROCPATH", i.ProcPath); insertExecRngCmd.Parameters.AddWithValue("@EXECPATH", i.ExecPath); insertExecRngCmd.ExecuteNonQuery(); foreach (var device in i.DisplayInfo.devices) { using (SQLiteCommand insertDisplayCmd = new SQLiteCommand(@"INSERT OR REPLACE INTO gamedisplayinfo VALUES (@uid, @device_id, @scaling, @enabled)", conn)) { insertDisplayCmd.Parameters.AddWithValue("@uid", i.UID); insertDisplayCmd.Parameters.AddWithValue("@device_id", device.DeviceID); insertDisplayCmd.Parameters.AddWithValue("@scaling", device.Scaling); insertDisplayCmd.Parameters.AddWithValue("@enabled", device.Enabled ? 1 : 0); insertDisplayCmd.ExecuteNonQuery(); } } conn.Close(); } } }
/* private void MWindow_Closing(object sender, CancelEventArgs e) { ExportXML(Utility.strSourcePath + @"data.xml"); }*/ #endregion # region MenuRegion private void AddGameFromESID_Click(object sender, RoutedEventArgs e) { Dialogs.AddGameFromESIDDialog ad = new Dialogs.AddGameFromESIDDialog(); ad.Owner = this; if (ad.ShowDialog() == true) { GameExecutionInfo i = new GameExecutionInfo(ad.Value); items.Add(i); db.InsertOrReplaceGame(i); UpdateStatus(); OnPropertyChanged("ItemCount"); } }
public void InsertOrReplaceGame(GameExecutionInfo i) { using (SQLiteCommand insertGameRngCmd = (SQLiteCommand)conn.CreateCommand()) { using (SQLiteCommand insertTimeRngCmd = (SQLiteCommand)conn.CreateCommand()) { using (SQLiteCommand insertExecRngCmd = (SQLiteCommand)conn.CreateCommand()) { conn.Open(); insertGameRngCmd.CommandText = @"INSERT or REPLACE INTO games VALUES(@UID,@TITLE,@BRAND,@SALEDAY,@ESID)"; insertTimeRngCmd.CommandText = @"INSERT or REPLACE INTO gametimeinfo VALUES(@UID,@PLAYTIME,@FIRSTPLAY,@LASTPLAY)"; insertExecRngCmd.CommandText = @"INSERT or REPLACE INTO gameexecinfo VALUES(@UID,@P_N_E,@PROCPATH,@EXECPATH)"; insertGameRngCmd.Parameters.AddWithValue("@UID", i.UID); insertGameRngCmd.Parameters.AddWithValue("@TITLE", i.Title); insertGameRngCmd.Parameters.AddWithValue("@BRAND", i.Brand); insertGameRngCmd.Parameters.AddWithValue("@SALEDAY", i.SaleDay.ToString("yyyy-MM-dd")); insertGameRngCmd.Parameters.AddWithValue("@ESID", i.ErogameScapeID); insertGameRngCmd.ExecuteNonQuery(); insertTimeRngCmd.Parameters.AddWithValue("@UID", i.UID); insertTimeRngCmd.Parameters.AddWithValue("@PLAYTIME", i.TotalPlayTime); insertTimeRngCmd.Parameters.AddWithValue("@FIRSTPLAY", i.FirstPlayTime.ToString("yyyy-MM-dd HH:mm:ss")); insertTimeRngCmd.Parameters.AddWithValue("@LASTPLAY", i.LastPlayTime.ToString("yyyy-MM-dd HH:mm:ss")); insertTimeRngCmd.ExecuteNonQuery(); insertExecRngCmd.Parameters.AddWithValue("@UID", i.UID); insertExecRngCmd.Parameters.AddWithValue("@P_N_E", (i.IsProcNEqExec ? 1 : 0)); insertExecRngCmd.Parameters.AddWithValue("@PROCPATH", i.ProcPath); insertExecRngCmd.Parameters.AddWithValue("@EXECPATH", i.ExecPath); insertExecRngCmd.ExecuteNonQuery(); conn.Close(); } } } }
public void LoadGame(ObservableCollection<GameExecutionInfo> items) { using (SQLiteCommand command = conn.CreateCommand()) { conn.Open(); command.CommandText = "SELECT * FROM games g, gametimeinfo t, gameexecinfo e WHERE g.uid=e.uid AND g.uid=t.uid"; SQLiteDataReader reader = command.ExecuteReader(); while (reader.Read()) { GameExecutionInfo i = new GameExecutionInfo( reader["uid"].ToString(), reader["title"].ToString(), reader["brand"].ToString(), Convert.ToInt32(reader["esid"].ToString()), DateTime.ParseExact(reader["saleday"].ToString(), "yyyy-MM-dd", CultureInfo.InvariantCulture), Convert.ToInt32(reader["playtime"].ToString()), DateTime.ParseExact(reader["firstplay"].ToString(), "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture), DateTime.ParseExact(reader["lastplay"].ToString(), "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture), (Convert.ToInt32(reader["proc_neq_exec"].ToString()) == 1 ? true : false), reader["procpath"].ToString(), reader["execpath"].ToString() ); items.Add(i); } conn.Close(); } }