Exemplo n.º 1
0
        public ViewEditorDialog(ISchemaProvider schemaProvider, ViewSchema view, bool create)
        {
            if (schemaProvider == null)
            {
                throw new ArgumentNullException("schemaProvider");
            }
            if (view == null)
            {
                throw new ArgumentNullException("view");
            }

            this.schemaProvider = schemaProvider;
            this.view           = view;
            this.action         = create ? SchemaActions.Create : SchemaActions.Alter;

            this.Build();

            if (create)
            {
                Title = GettextCatalog.GetString("Create View");
            }
            else
            {
                Title = GettextCatalog.GetString("Alter View");
            }

            notebook = new Notebook();

            sqlEditor              = new SqlEditorWidget();
            sqlEditor.TextChanged += new EventHandler(SqlChanged);
            notebook.AppendPage(sqlEditor, new Label(GettextCatalog.GetString("Definition")));

            IDbFactory fac = schemaProvider.ConnectionPool.DbFactory;

            if (fac.IsCapabilitySupported("View", action, ViewCapabilities.Comment))
            {
                commentEditor = new CommentEditorWidget();
                notebook.AppendPage(commentEditor, new Label(GettextCatalog.GetString("Comment")));
            }

            notebook.Page = 0;

            entryName.Text = view.Name;
            if (!create)
            {
                sqlEditor.Text        = schemaProvider.GetViewAlterStatement(view);
                commentEditor.Comment = view.Comment;
            }

            vboxContent.PackStart(notebook, true, true, 0);
            vboxContent.ShowAll();
            SetWarning(null);
        }
        public ProcedureEditorDialog(IEditSchemaProvider schemaProvider, bool create, ProcedureEditorSettings settings)
        {
            if (schemaProvider == null)
            {
                throw new ArgumentNullException("schemaProvider");
            }

            this.settings       = settings;
            this.schemaProvider = schemaProvider;
            this.action         = create ? SchemaActions.Create : SchemaActions.Alter;

            this.Build();

            if (create)
            {
                Title = AddinCatalog.GetString("Create Procedure");
            }
            else
            {
                Title = AddinCatalog.GetString("Alter Procedure");
            }

            notebook = new Notebook();

            sqlEditor              = new SqlEditorWidget();
            sqlEditor.TextChanged += new EventHandler(SqlChanged);
            notebook.AppendPage(sqlEditor, new Label(AddinCatalog.GetString("Definition")));

            if (settings.ShowComment)
            {
                commentEditor = new CommentEditorWidget();
                notebook.AppendPage(commentEditor, new Label(AddinCatalog.GetString("Comment")));
            }

            if (!settings.ShowName)
            {
                nameLabel.Visible = false;
                entryName.Visible = false;
            }

            vboxContent.PackStart(notebook, true, true, 0);
            vboxContent.ShowAll();
            SetWarning(null);
        }
Exemplo n.º 3
0
        public SqlQueryView()
        {
            stoppedQueries = new List <object> ();
            MonoDevelop.SourceEditor.Extension.TemplateExtensionNodeLoader.Init();
            this.UntitledName = string.Concat(AddinCatalog.GetString("Untitled Sql Script"), ".sql");

            vbox             = new VBox(false, 6);
            vbox.BorderWidth = 6;

            Toolbar toolbar = new Toolbar();

            toolbar.ToolbarStyle = ToolbarStyle.BothHoriz;

            buttonExecute = new ToolButton(ImageService.GetImage("md-db-execute", IconSize.SmallToolbar),
                                           AddinCatalog.GetString("_Execute"));
            buttonExecute.Label         = AddinCatalog.GetString("Execute");
            buttonExecute.Sensitive     = false;
            buttonExecute.TooltipMarkup = AddinCatalog.GetString("Execute Query");
            buttonExecute.IsImportant   = true;
            buttonExecute.Clicked      += new EventHandler(ExecuteClicked);

            buttonStop             = new ToolButton("gtk-stop");
            buttonStop.TooltipText = AddinCatalog.GetString("Stop Query Execution");
            buttonStop.Sensitive   = false;
            buttonStop.Clicked    += new EventHandler(StopClicked);

            buttonClear = new ToolButton(ImageService.GetImage("gtk-clear", IconSize.Button),
                                         AddinCatalog.GetString("Clear Results"));
            buttonClear.TooltipText = AddinCatalog.GetString("Clear Results");
            buttonClear.Clicked    += new EventHandler(ClearClicked);

            comboConnections          = new DatabaseConnectionContextComboBox();
            selectedConnection        = comboConnections.DatabaseConnection;
            comboConnections.Changed += new EventHandler(ConnectionChanged);
            ToolItem comboItem = new ToolItem();

            comboItem.Child = comboConnections;

            toolbar.Add(buttonExecute);
            toolbar.Add(buttonStop);
            toolbar.Add(buttonClear);
            toolbar.Add(new SeparatorToolItem());
            toolbar.Add(comboItem);

            pane = new VPaned();

            // Sql History Window
            ScrolledWindow windowHistory = new ScrolledWindow();

            history          = new SqlEditorWidget();
            history.Editable = false;
            windowHistory.AddWithViewport(history);

            // Status of the Last Query
            ScrolledWindow windowStatus = new ScrolledWindow();

            status = new TextView();
            windowStatus.Add(status);

            notebook = new Notebook();
            notebook.AppendPage(windowStatus, new Label(AddinCatalog.GetString("Status")));
            notebook.AppendPage(windowHistory, new Label(AddinCatalog.GetString("Query History")));

            pane.Pack2(notebook, true, true);
            vbox.PackStart(toolbar, false, true, 0);
            vbox.PackStart(pane, true, true, 0);
            this.Document.TextReplaced += SqlChanged;
            vbox.ShowAll();
            Document.DocumentUpdated += delegate(object sender, EventArgs args) {
                // Default mime type or a provider defined.
                if (selectedConnection == null)
                {
                    Document.MimeType = "text/x-sql";
                }
                else
                {
                    Document.MimeType = GetMimeType();
                }
            };
            Document.Text = string.Empty;
            notebook.Hide();
        }
Exemplo n.º 4
0
        public SqlQueryView()
        {
            stoppedQueries = new List <object> ();

            vbox             = new VBox(false, 6);
            vbox.BorderWidth = 6;

            sqlEditor              = new SqlEditorWidget();
            sqlEditor.TextChanged += new EventHandler(SqlChanged);

            Toolbar toolbar = new Toolbar();

            toolbar.ToolbarStyle = ToolbarStyle.BothHoriz;

            buttonExecute = new ToolButton(
                Services.Resources.GetImage("md-db-execute", IconSize.SmallToolbar),
                GettextCatalog.GetString("Execute")
                );
            buttonStop              = new ToolButton("gtk-stop");
            buttonClear             = new ToolButton(Services.Resources.GetImage("gtk-clear", IconSize.Button), GettextCatalog.GetString("Clear Results"));
            buttonStop.Sensitive    = false;
            buttonExecute.Sensitive = false;

            buttonExecute.Clicked += new EventHandler(ExecuteClicked);
            buttonStop.Clicked    += new EventHandler(StopClicked);
            buttonClear.Clicked   += new EventHandler(ClearClicked);

            comboConnections          = new DatabaseConnectionContextComboBox();
            selectedConnection        = comboConnections.DatabaseConnection;
            comboConnections.Changed += new EventHandler(ConnectionChanged);

            buttonExecute.IsImportant = true;

            ToolItem comboItem = new ToolItem();

            comboItem.Child = comboConnections;

            toolbar.Add(buttonExecute);
            toolbar.Add(buttonStop);
            toolbar.Add(buttonClear);
            toolbar.Add(new SeparatorToolItem());
            toolbar.Add(comboItem);

            pane = new VPaned();

            ScrolledWindow windowStatus = new ScrolledWindow();

            status = new TextView();
            windowStatus.Add(status);

            notebook = new Notebook();
            notebook.AppendPage(windowStatus, new Label(GettextCatalog.GetString("Status")));

            pane.Pack1(sqlEditor, true, true);
            pane.Pack2(notebook, true, true);

            vbox.PackStart(toolbar, false, true, 0);
            vbox.PackStart(pane, true, true, 0);

            vbox.ShowAll();
            notebook.Hide();
        }