protected virtual void OkClicked(object sender, System.EventArgs e) { columnEditor.FillSchemaObjects(); if (constraintEditor != null) { constraintEditor.FillSchemaObjects(); } if (triggerEditor != null) { triggerEditor.FillSchemaObjects(); } if (commentEditor != null) { table.Comment = commentEditor.Comment; } if (action == SchemaActions.Create) { table.Definition = schemaProvider.GetTableCreateStatement(table); } // else // table.Definition = schemaProvider.GetTableAlterStatement (table); if (checkPreview.Active) { // Preview Dialog: If it's canceled the response to the previous dialog should be None to know that it // isn't OK and don't close the table editor dialog. PreviewDialog dlg = new PreviewDialog(table.Definition); int resp = 0; while ((resp = dlg.Run()) != (int)ResponseType.Ok) { if (resp == (int)ResponseType.Cancel) { break; } else { Respond(ResponseType.Cancel); } } if (resp == (int)ResponseType.Ok) { table.Definition = dlg.Text; Respond(ResponseType.Ok); Hide(); } else { Respond(ResponseType.None); } dlg.Destroy(); } else { Respond(ResponseType.Ok); Hide(); } }
protected void OnShowDefinitionOnClipboard() { TableNode node = CurrentNode.DataItem as TableNode; IEditSchemaProvider schemaProvider = (IEditSchemaProvider)node.ConnectionContext.SchemaProvider; Gtk.Clipboard clp = Clipboard.Get(Gdk.Selection.Clipboard); clp.Text = schemaProvider.GetTableCreateStatement(node.Table); MessageService.ShowMessage(AddinCatalog.GetString("CREATE Statement has been copied to Clipboard.")); }
protected void OnShowDefinitionOnNewWindow() { TableNode node = CurrentNode.DataItem as TableNode; IEditSchemaProvider schemaProvider = (IEditSchemaProvider)node.ConnectionContext.SchemaProvider; SqlQueryView view = new SqlQueryView(); view.SelectedConnectionContext = node.ConnectionContext; view.TextEditor.Insert(0, schemaProvider.GetTableCreateStatement(node.Table)); IdeApp.Workbench.OpenDocument(view, true); }
protected void OnShowDefinitionOnCurrentWindow() { TableNode node = CurrentNode.DataItem as TableNode; IEditSchemaProvider schemaProvider = (IEditSchemaProvider)node.ConnectionContext.SchemaProvider; if (IdeApp.Workbench.ActiveDocument.IsFile && !IdeApp.Workbench.ActiveDocument.IsViewOnly) { IdeApp.Workbench.ActiveDocument.Editor.InsertAtCaret(schemaProvider.GetTableCreateStatement(node.Table)); } else { MessageService.ShowError(AddinCatalog.GetString("Cannot insert text into the current window.")); } }