private void lstRight_MouseClick(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { var selectedTables = lstRight.SelectedItems.Cast <ListViewItem>().Select(i => (DMSTable)i.Tag).ToList(); if (selectedTables.Count > 0) { ContextMenu m = new ContextMenu(); MenuItem generateSQL = new MenuItem("Generate SQL..."); generateSQL.Tag = selectedTables; generateSQL.Click += (o, args) => { var sqlGen = new SQLGeneratorOptions(rightFile, rightPath, selectedTables); sqlGen.ShowDialog(this); }; m.MenuItems.Add(generateSQL); if (rightFile.Tables.Any(t => t.CompareResult == DMSCompareResult.NEW || t.CompareResult == DMSCompareResult.UPDATE)) { MenuItem saveDiffs = new MenuItem("Save DAT diff..."); saveDiffs.Tag = selectedTables; saveDiffs.Click += (o, args) => { SaveDATDiff(rightFile); }; m.MenuItems.Add(saveDiffs); } m.Show(lstRight, new Point(e.X, e.Y)); } } }
private void generateSQLToolStripMenuItem_Click(object sender, EventArgs e) { /* DMSFile dms, string outputFolder, bool padColumns, bool extractLongs, bool ignoreEmptyTables*/ var opts = new SQLGeneratorOptions(dmsFile); opts.ShowDialog(this); opts = null; }
private void generateSQLToolStripMenuItem_Click(object sender, EventArgs e) { /* DMSFile dms, string outputFolder, bool padColumns, bool extractLongs, bool ignoreEmptyTables*/ if (sqlOpts == null) { sqlOpts = new SQLGeneratorOptions(dmsFile, currentDmsPath); } else { /* always make sure it has reference to current dmsFile */ sqlOpts.UpdateDMSInfo(dmsFile, currentDmsPath); } sqlOpts.ShowDialog(this); }