private void dgvStockpile_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { Point locate = new Point((sender as Control).Location.X + e.Location.X, (sender as Control).Location.Y + e.Location.Y); ToolStripSeparator stripSeparator = new ToolStripSeparator(); stripSeparator.Paint += stripSeparator_Paint; ContextMenuStrip columnsMenu = new ContextMenuStrip(); (columnsMenu.Items.Add("Show Item Name", null, new EventHandler((ob, ev) => { dgvStockpile.Columns["Item"].Visible ^= true; })) as ToolStripMenuItem).Checked = dgvStockpile.Columns["Item"].Visible; (columnsMenu.Items.Add("Show Game Name", null, new EventHandler((ob, ev) => { dgvStockpile.Columns["GameName"].Visible ^= true; })) as ToolStripMenuItem).Checked = dgvStockpile.Columns["GameName"].Visible; (columnsMenu.Items.Add("Show System Name", null, new EventHandler((ob, ev) => { dgvStockpile.Columns["SystemName"].Visible ^= true; })) as ToolStripMenuItem).Checked = dgvStockpile.Columns["SystemName"].Visible; (columnsMenu.Items.Add("Show System Core", null, new EventHandler((ob, ev) => { dgvStockpile.Columns["SystemCore"].Visible ^= true; })) as ToolStripMenuItem).Checked = dgvStockpile.Columns["SystemCore"].Visible; (columnsMenu.Items.Add("Show Note", null, new EventHandler((ob, ev) => { dgvStockpile.Columns["Note"].Visible ^= true; })) as ToolStripMenuItem).Checked = dgvStockpile.Columns["Note"].Visible; columnsMenu.Items.Add(stripSeparator); (columnsMenu.Items.Add("Load on Select", null, new EventHandler((ob, ev) => { S.GET <RTC_GlitchHarvesterBlast_Form>().LoadOnSelect ^= true; })) as ToolStripMenuItem).Checked = S.GET <RTC_GlitchHarvesterBlast_Form>().LoadOnSelect; (columnsMenu.Items.Add("Clear Infinite Units on Rewind", null, new EventHandler((ob, ev) => { S.GET <RTC_CorruptionEngine_Form>().cbClearCheatsOnRewind.Checked ^= true; })) as ToolStripMenuItem).Checked = S.GET <RTC_CorruptionEngine_Form>().cbClearCheatsOnRewind.Checked; columnsMenu.Items.Add(stripSeparator); ((ToolStripMenuItem)columnsMenu.Items.Add("Manual Inject", null, new EventHandler((ob, ev) => { var sk = (dgvStockpile.SelectedRows[0].Cells[0].Value as StashKey); StashKey newSk = (StashKey)sk.Clone(); S.GET <RTC_GlitchHarvesterBlast_Form>().IsCorruptionApplied = StockpileManager_UISide.ApplyStashkey(newSk, false); }))).Enabled = (dgvStockpile.SelectedRows.Count == 1); columnsMenu.Show(this, locate); } }
public void OneTimeExecute() { //Disable autocorrupt S.GET <UI_CoreForm>().AutoCorrupt = false; if (ghMode == GlitchHarvesterMode.CORRUPT) { IsCorruptionApplied = StockpileManager_UISide.ApplyStashkey(StockpileManager_UISide.CurrentStashkey, loadBeforeOperation); } else if (ghMode == GlitchHarvesterMode.INJECT) { IsCorruptionApplied = StockpileManager_UISide.InjectFromStashkey(StockpileManager_UISide.CurrentStashkey, loadBeforeOperation); S.GET <RTC_StashHistory_Form>().RefreshStashHistory(); } else if (ghMode == GlitchHarvesterMode.ORIGINAL) { IsCorruptionApplied = StockpileManager_UISide.OriginalFromStashkey(StockpileManager_UISide.CurrentStashkey); } if (Render.RenderAtLoad && loadBeforeOperation) { Render.StartRender(); } else { Render.StopRender(); } }
private void dgvStockpile_CellClick(object sender, DataGridViewCellEventArgs e) { if (currentlyLoading || !S.GET <RTC_GlitchHarvesterBlast_Form>().LoadOnSelect || e?.RowIndex == -1) { return; } try { //dgvStockpile.Enabled = false; currentlyLoading = true; if (e != null) { var senderGrid = (DataGridView)sender; StashKey sk = (StashKey)senderGrid.Rows[e.RowIndex].Cells["Item"].Value; if (sk.Note != null) { tbNoteBox.Text = sk.Note.Replace("\n", Environment.NewLine); } else { tbNoteBox.Text = ""; } if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn && e.RowIndex >= 0) { S.SET(new RTC_NoteEditor_Form(sk, senderGrid.Rows[e.RowIndex].Cells["Note"])); S.GET <RTC_NoteEditor_Form>().Show(); return; } } if (dgvStockpile.SelectedRows.Count > 0) { //Shut autocorrupt off because people (Vinny) kept turning it on to add to corruptions then forgetting to turn it off S.GET <UI_CoreForm>().AutoCorrupt = false; S.GET <RTC_GlitchHarvesterBlast_Form>().ghMode = GlitchHarvesterMode.CORRUPT; StockpileManager_UISide.CurrentStashkey = (dgvStockpile.SelectedRows[0].Cells[0].Value as StashKey); StockpileManager_UISide.ApplyStashkey(StockpileManager_UISide.CurrentStashkey); S.GET <RTC_StashHistory_Form>().lbStashHistory.ClearSelected(); S.GET <RTC_StockpileManager_Form>().dgvStockpile.ClearSelection(); S.GET <RTC_GlitchHarvesterBlast_Form>().IsCorruptionApplied = !(StockpileManager_UISide.CurrentStashkey.BlastLayer == null || StockpileManager_UISide.CurrentStashkey.BlastLayer.Layer.Count == 0); } } finally { currentlyLoading = false; //dgvStockpile.Enabled = true; } }
public void btnRerollSelected_Click(object sender, EventArgs e) { if (!btnRerollSelected.Visible) { return; } try { SetBlastButtonVisibility(false); if (S.GET <RTC_StashHistory_Form>().lbStashHistory.SelectedIndex != -1) { StockpileManager_UISide.CurrentStashkey = (StashKey)StockpileManager_UISide.StashHistory[S.GET <RTC_StashHistory_Form>().lbStashHistory.SelectedIndex].Clone(); } else if (S.GET <RTC_StockpileManager_Form>().dgvStockpile.SelectedRows.Count != 0 && S.GET <RTC_StockpileManager_Form>().dgvStockpile.SelectedRows[0].Cells[0].Value != null) { StockpileManager_UISide.CurrentStashkey = (StashKey)(S.GET <RTC_StockpileManager_Form>().dgvStockpile.SelectedRows[0].Cells[0].Value as StashKey)?.Clone(); //StockpileManager_UISide.unsavedEdits = true; } else { return; } if (StockpileManager_UISide.CurrentStashkey != null) { StockpileManager_UISide.CurrentStashkey.BlastLayer.Reroll(); if (StockpileManager_UISide.AddCurrentStashkeyToStash()) { S.GET <RTC_StockpileManager_Form>().dgvStockpile.ClearSelection(); S.GET <RTC_StashHistory_Form>() .RefreshStashHistory(); S.GET <RTC_StashHistory_Form>() .lbStashHistory.ClearSelected(); S.GET <RTC_StashHistory_Form>() .DontLoadSelectedStash = true; S.GET <RTC_StashHistory_Form>() .lbStashHistory.SelectedIndex = S.GET <RTC_StashHistory_Form>() .lbStashHistory.Items.Count - 1; } StockpileManager_UISide.ApplyStashkey(StockpileManager_UISide.CurrentStashkey); } } finally { SetBlastButtonVisibility(true); } }
private void dgvStockpile_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { Point locate = new Point((sender as Control).Location.X + e.Location.X, (sender as Control).Location.Y + e.Location.Y); ContextMenuStrip columnsMenu = new ContextMenuStrip(); (columnsMenu.Items.Add("Show Item Name", null, (ob, ev) => { dgvStockpile.Columns["Item"].Visible ^= true; }) as ToolStripMenuItem).Checked = dgvStockpile.Columns["Item"].Visible; (columnsMenu.Items.Add("Show Game Name", null, (ob, ev) => { dgvStockpile.Columns["GameName"].Visible ^= true; }) as ToolStripMenuItem) .Checked = dgvStockpile.Columns["GameName"].Visible; (columnsMenu.Items.Add("Show System Name", null, (ob, ev) => { dgvStockpile.Columns["SystemName"].Visible ^= true; }) as ToolStripMenuItem) .Checked = dgvStockpile.Columns["SystemName"].Visible; (columnsMenu.Items.Add("Show System Core", null, (ob, ev) => { dgvStockpile.Columns["SystemCore"].Visible ^= true; }) as ToolStripMenuItem) .Checked = dgvStockpile.Columns["SystemCore"].Visible; (columnsMenu.Items.Add("Show Note", null, (ob, ev) => { dgvStockpile.Columns["Note"].Visible ^= true; }) as ToolStripMenuItem).Checked = dgvStockpile.Columns["Note"].Visible; columnsMenu.Items.Add(new ToolStripSeparator()); ((ToolStripMenuItem)columnsMenu.Items.Add("Open Selected Item in Blast Editor", null, new EventHandler((ob, ev) => { if (S.GET <RTC_NewBlastEditor_Form>() != null) { var sk = (dgvStockpile.SelectedRows[0].Cells[0].Value as StashKey); RTC_NewBlastEditor_Form.OpenBlastEditor(sk); } }))).Enabled = (dgvStockpile.SelectedRows.Count == 1); ((ToolStripMenuItem)columnsMenu.Items.Add("Manual Inject", null, new EventHandler((ob, ev) => { var sk = (dgvStockpile.SelectedRows[0].Cells[0].Value as StashKey); StashKey newSk = (StashKey)sk.Clone(); S.GET <RTC_GlitchHarvesterBlast_Form>().IsCorruptionApplied = StockpileManager_UISide.ApplyStashkey(newSk, false); }))).Enabled = (dgvStockpile.SelectedRows.Count == 1); columnsMenu.Items.Add(new ToolStripSeparator()); ((ToolStripMenuItem)columnsMenu.Items.Add("Generate VMD from Selected Item", null, new EventHandler((ob, ev) => { var sk = (dgvStockpile.SelectedRows[0].Cells[0].Value as StashKey); MemoryDomains.GenerateVmdFromStashkey(sk); S.GET <RTC_VmdPool_Form>().RefreshVMDs(); }))).Enabled = (dgvStockpile.SelectedRows.Count == 1); ((ToolStripMenuItem)columnsMenu.Items.Add("Merge Selected Stashkeys", null, new EventHandler((ob, ev) => { List <StashKey> sks = new List <StashKey>(); foreach (DataGridViewRow row in dgvStockpile.SelectedRows) { sks.Add((StashKey)row.Cells[0].Value); } StockpileManager_UISide.MergeStashkeys(sks); S.GET <RTC_StashHistory_Form>().RefreshStashHistory(); }))).Enabled = (dgvStockpile.SelectedRows.Count > 1); ((ToolStripMenuItem)columnsMenu.Items.Add("Replace associated ROM", null, new EventHandler((ob, ev) => { List <StashKey> sks = new List <StashKey>(); foreach (DataGridViewRow row in dgvStockpile.SelectedRows) { sks.Add((StashKey)row.Cells[0].Value); } OpenFileDialog ofd = new OpenFileDialog { DefaultExt = "*", Title = "Select Replacement File", Filter = "Any file|*.*", RestoreDirectory = true }; if (ofd.ShowDialog() == DialogResult.OK) { string filename = ofd.FileName.ToString(); string oldFilename = sks.First().RomFilename; foreach (var sk in sks.Where(x => x.RomFilename == oldFilename)) { sk.RomFilename = filename; sk.RomShortFilename = Path.GetFileName(sk.RomFilename); } } }))).Enabled = (dgvStockpile.SelectedRows.Count >= 1); /* * if (!RTC_NetcoreImplementation.isStandaloneUI) * { * ((ToolStripMenuItem)columnsMenu.Items.Add("[Multiplayer] Send Selected Item as a Blast", null, new EventHandler((ob, ev) => { RTC_NetcoreImplementation.Multiplayer?.SendBlastlayer(); }))).Enabled = RTC_NetcoreImplementation.Multiplayer != null && RTC_NetcoreImplementation.Multiplayer.side != NetworkSide.DISCONNECTED; * ((ToolStripMenuItem)columnsMenu.Items.Add("[Multiplayer] Send Selected Item as a Game State", null, new EventHandler((ob, ev) => { RTC_NetcoreImplementation.Multiplayer?.SendStashkey(); }))).Enabled = RTC_NetcoreImplementation.Multiplayer != null && RTC_NetcoreImplementation.Multiplayer.side != NetworkSide.DISCONNECTED; * }*/ columnsMenu.Show(this, locate); } }