Ejemplo n.º 1
0
        public MediaTypeMenu(NodeMenuCommandParameters parameters, ExplorerToolWindow parent)
        {
            var cmd = new CommonMenuCommandHandler(parent);

            //Export to Xml
            CreateXmlExportMenuItem(cmd, parameters);
        }
        public ContentTypeRootMenu(NodeMenuCommandParameters parameters, ExplorerToolWindow parent)
        {
            var cmd = new CommonMenuCommandHandler(parent);

            //Import xml
            CreateXmlImportMenuItem(cmd, parameters);
        }
Ejemplo n.º 3
0
        public TriggerContextMenu(MenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            var tcmd = new TriggerMenuCommandsHandler(parent);

            CreateScriptAsCreateMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDropMenuItem(tcmd, menuCommandParameters);
        }
        public ContentTypeMenu(NodeMenuCommandParameters parameters, ExplorerToolWindow parent)
        {
            var cmd = new CommonMenuCommandHandler(parent);

            //Export to Xml
            CreateXmlExportMenuItem(cmd, parameters);
            //Items.Add(new Separator());
        }
Ejemplo n.º 5
0
        public IndexContextMenu(MenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            var tcmd = new IndexMenuCommandsHandler(parent);

            CreateScriptAsCreateMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDropMenuItem(tcmd, menuCommandParameters);
            Items.Add(new Separator());
            CreateScriptAsStatisticsMenuItem(tcmd, menuCommandParameters);
        }
Ejemplo n.º 6
0
        public ViewContextMenu(MenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            var tcmd = new ViewMenuCommandsHandler(parent);

            //TODO Why does the Report Viewer fail?
            //ReportDataMenuItem(tcmd, menuCommandParameters);
            //Items.Add(new Separator());
            CreateScriptAsCreateMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDropMenuItem(tcmd, menuCommandParameters);
        }
Ejemplo n.º 7
0
        public ViewContextMenu(MenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            var tcmd = new ViewMenuCommandsHandler(parent);

            CreateReportDataMenuItem(tcmd, menuCommandParameters);
            AddSqlEditorItem(tcmd, menuCommandParameters);
            Items.Add(new Separator());
            CreateScriptAsCreateMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDropMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDropAndCreateMenuItem(tcmd, menuCommandParameters);
        }
Ejemplo n.º 8
0
        public TableContextMenu(MenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            var isSqlCe = menuCommandParameters.DatabaseInfo.DatabaseType == DatabaseType.SQLCE35 ||
                          menuCommandParameters.DatabaseInfo.DatabaseType == DatabaseType.SQLCE40;
            var isSqlite = menuCommandParameters.DatabaseInfo.DatabaseType == DatabaseType.SQLite;

            var tcmd = new TableMenuCommandsHandler(parent);

            //Edit menu
            CreateEditTableDataMenuItem(tcmd, menuCommandParameters);
            ReportDataMenuItem(tcmd, menuCommandParameters);
            AddSqlEditorItem(tcmd, menuCommandParameters);
            Items.Add(new Separator());
            if (isSqlCe)
            {
                AddColumnMenuItem(tcmd, menuCommandParameters);
                AddIndexMenuItem(tcmd, menuCommandParameters);
                AddFkMenuItem(tcmd, menuCommandParameters);
                Items.Add(new Separator());
            }
            CreateScriptAsCreateMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDropMenuItem(tcmd, menuCommandParameters);
            if (!isSqlite)
            {
                CreateScriptAsDropAndCreateMenuItem(tcmd, menuCommandParameters);
            }
            Items.Add(new Separator());
            CreateScriptAsSelectMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsInsertMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsUpdateMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDeleteMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDataMenuItem(tcmd, menuCommandParameters);
#if SSMS
            if (isSqlCe)
            {
                CreateScriptAsSQLCLRSampleMenuItem(tcmd, menuCommandParameters);
            }
#endif
            Items.Add(new Separator());
            ImportDataMenuItem(tcmd, menuCommandParameters);
            Items.Add(new Separator());
            if (isSqlCe)
            {
                CompareDataMenuItem(tcmd, menuCommandParameters);
                Items.Add(new Separator());
            }
            RenameMenuItem(tcmd, menuCommandParameters);
            if (isSqlCe)
            {
                DescriptionMenuItem(tcmd, menuCommandParameters);
            }
        }
        public IndexContextMenu(MenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            var isSqlCe = menuCommandParameters.DatabaseInfo.DatabaseType == DatabaseType.SQLCE35 ||
                          menuCommandParameters.DatabaseInfo.DatabaseType == DatabaseType.SQLCE40;

            var tcmd = new IndexMenuCommandsHandler(parent);

            CreateScriptAsCreateMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDropMenuItem(tcmd, menuCommandParameters);
            if (isSqlCe)
            {
                Items.Add(new Separator());
                CreateScriptAsStatisticsMenuItem(tcmd, menuCommandParameters);
            }
        }
        public ViewsContextMenu(DatabaseMenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            var dcmd = new DatabaseMenuCommandsHandler(parent);

            var refreshCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                           dcmd.RefreshViews);
            var refreshMenuItem = new MenuItem
            {
                Header           = "Refresh",
                Icon             = ImageHelper.GetImageFromResource("../resources/refresh_16xLG.png"),
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = menuCommandParameters
            };

            refreshMenuItem.CommandBindings.Add(refreshCommandBinding);
            Items.Add(refreshMenuItem);
        }
Ejemplo n.º 11
0
        public ColumnContextMenu(MenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            if (menuCommandParameters.DatabaseInfo.DatabaseType == DatabaseType.SQLite)
            {
                return;
            }

            var tcmd = new ColumnMenuCommandsHandler(parent);

            CreateModifyColumnMenuItem(tcmd, menuCommandParameters);
            Items.Add(new Separator());
            CreateScriptAsCreateMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsDropMenuItem(tcmd, menuCommandParameters);
            CreateScriptAsAlterMenuItem(tcmd, menuCommandParameters);
            Items.Add(new Separator());
            CreateDescriptionMenuItem(tcmd, menuCommandParameters);
        }
        public GenericMenu(NodeMenuCommandParameters parameters, ExplorerToolWindow parent)
        {
            var cmd = new CommonMenuCommandHandler(parent);

            //Rename
            CreateRenameMenuItem(cmd, parameters);
            //Move
            //CreateMoveMenuItem(cmd, parameters);
            Items.Add(new Separator());

            //Delete
            CreateDeleteMenuItem(cmd, parameters);
            //Trash
            CreateTrashMenuItem(cmd, parameters);

            Items.Add(new Separator());
            //Serialize item to xml
            CreateXmlExportMenuItem(cmd, parameters);
        }
        public ScopesContextMenu(MenuCommandParameters scopeMenuCommandParameters, ExplorerToolWindow parent)
        {
            var dcmd = new ScopesMenuCommandsHandler(parent);

            if (scopeMenuCommandParameters.MenuItemType == MenuType.Manage)

            {
                var dropScopeCommandBinding = new CommandBinding(ScopesMenuCommands.ScopeCommand,
                                                                 dcmd.DropScope);

                var dropScopeMenuItem = new MenuItem
                {
                    Header           = "Deprovision Scope...",
                    Icon             = ImageHelper.GetImageFromResource("../resources/action_Cancel_16xLG.png"),
                    Command          = ScopesMenuCommands.ScopeCommand,
                    CommandParameter = scopeMenuCommandParameters,
                };
                dropScopeMenuItem.CommandBindings.Add(dropScopeCommandBinding);
                Items.Add(dropScopeMenuItem);
            }
            else
            {
            }
        }
Ejemplo n.º 14
0
 public BaseCommandHandler(ExplorerToolWindow parent)
 {
     ParentWindow = parent;
 }
Ejemplo n.º 15
0
 protected BaseCommandHandler(ExplorerToolWindow parent)
 {
     _parentWindow = parent;
 }
Ejemplo n.º 16
0
        public DatabasesContextMenu(DatabaseMenuCommandParameters databaseMenuCommandParameters, ExplorerToolWindow parent)
        {
            var dcmd             = new DatabasesMenuCommandsHandler(parent);
            var ver40IsInstalled = DataConnectionHelper.IsV40Installed();
            var ver35IsInstalled = DataConnectionHelper.IsV35Installed();
            var pkg = parent.Package as SqlCeToolboxPackage;

            Items.Add(BuildAddCeDatabaseMenuItem(databaseMenuCommandParameters, dcmd, pkg, ver40IsInstalled));

            Items.Add(BuildAddCe35DatabaseMenuItem(databaseMenuCommandParameters, dcmd, pkg, ver35IsInstalled));

            Items.Add(BuildAddSqLiteDatabaseMenuItem(databaseMenuCommandParameters, dcmd));

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(BuildAddSqlServerDatabaseMenuItem(databaseMenuCommandParameters, dcmd));
            }

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(BuildAddFromSolutionMenuItem(databaseMenuCommandParameters, dcmd, ver40IsInstalled, ver35IsInstalled));
            }

            Items.Add(BuildFixConnectionsMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            Items.Add(BuildDesignDatabaseMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(BuildLocalDatabaseCacheMenuItem(databaseMenuCommandParameters, dcmd, ver35IsInstalled));
            }

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(new Separator());
            }

            Items.Add(BuildVersionDetectMenuItem(databaseMenuCommandParameters, dcmd));
        }
Ejemplo n.º 17
0
        public SqliteDatabaseContextMenu(DatabaseMenuCommandParameters databaseMenuCommandParameters, ExplorerToolWindow parent)
        {
            var itemBuilder = new DatabaseContextMenuItems();
            var dbType      = databaseMenuCommandParameters.DatabaseInfo.DatabaseType;

            if (dbType != DatabaseType.SQLite)
            {
                return;
            }
            var dcmd = new DatabaseMenuCommandsHandler(parent);

            Items.Add(itemBuilder.BuildShowSqlEditorMenuItem(databaseMenuCommandParameters, dcmd));

            Items.Add(itemBuilder.BuildCreateTableMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            var scriptDatabaseRootMenuItem = new MenuItem
            {
                Header = "Script Database",
                Icon   = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
            };

            var toolTip = new ToolTip
            {
                Content = "Generate a SQL Server Compact/SQLite compatible database script"
            };

            // Database scripting items
            var scriptDatabaseCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                                  dcmd.ScriptDatabase);

            scriptDatabaseRootMenuItem.Items.Add(itemBuilder.BuildScriptDatabaseSchemaMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(itemBuilder.BuildScriptDatabaseSchemaDataMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(itemBuilder.BuildScriptDatabaseDataMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            //End Database scripting items
            Items.Add(scriptDatabaseRootMenuItem);
            Items.Add(new Separator());

            var maintenanceMenuItem = new MenuItem
            {
                Header = "Maintenance",
                Icon   = ImageHelper.GetImageFromResource("../resources/Hammer_Builder_16xLG.png"),
            };


            var shrinkMenuItem = itemBuilder.BuildShrinkMenuItem(databaseMenuCommandParameters, dcmd);

            maintenanceMenuItem.Items.Add(shrinkMenuItem);

            var compactMenuItem = itemBuilder.BuildCompactMenuItem(databaseMenuCommandParameters, dcmd);

            maintenanceMenuItem.Items.Clear();
            compactMenuItem.Header  = "Vacuum";
            compactMenuItem.ToolTip = "Rebuilds the database file, repacking it into a minimal amount of disk space";
            shrinkMenuItem.Header   = "Re-index";
            shrinkMenuItem.ToolTip  = "Deletes and recreates indexes";
            maintenanceMenuItem.Items.Add(compactMenuItem);
            maintenanceMenuItem.Items.Add(shrinkMenuItem);
            Items.Add(maintenanceMenuItem);
            Items.Add(new Separator());

            Items.Add(itemBuilder.BuildScriptDatabaseExportMenuItem(databaseMenuCommandParameters, dcmd));

            Items.Add(new Separator());

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(itemBuilder.BuildScriptDatabaseGraphMenuItem(databaseMenuCommandParameters, dcmd));
            }

            Items.Add(itemBuilder.BuildDocDatabaseMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            var generateCodeRootMenuItem = new MenuItem
            {
                Header = "Generate Code",
                Icon   = ImageHelper.GetImageFromResource("../resources/Schema_16xLG.png"),
            };

#if SSMS
#else
            if (SqlCeToolboxPackage.VsSupportsEfCore())
            {
                generateCodeRootMenuItem.Items.Add(itemBuilder.BuildEfCoreModelMenuItem(databaseMenuCommandParameters, dcmd));
            }
#endif
            generateCodeRootMenuItem.Items.Add(BuildScriptModelMenuItem(databaseMenuCommandParameters, dcmd));

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(generateCodeRootMenuItem);
            }
            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(new Separator());
            }

            Items.Add(itemBuilder.BuildGenerateInfoMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            if (!databaseMenuCommandParameters.DatabaseInfo.FromServerExplorer)
            {
                Items.Add(itemBuilder.BuildRenameConnectionMenuItem(databaseMenuCommandParameters, dcmd));
            }

            Items.Add(itemBuilder.BuildRemoveConnectionMenuItem(databaseMenuCommandParameters, dcmd));
        }
 public SqlServerDatabaseMenuCommandsHandler(ExplorerToolWindow parent)
 {
     _package = parent.Package as SqlCeToolboxPackage;
 }
Ejemplo n.º 19
0
 public ScopesMenuCommandsHandler(ExplorerToolWindow parent)
 {
     _parentWindow = parent;
 }
Ejemplo n.º 20
0
        public SqlCeDatabaseContextMenu(DatabaseMenuCommandParameters databaseMenuCommandParameters, ExplorerToolWindow parent)
        {
            var itemBuilder = new DatabaseContextMenuItems();
            var dbType      = databaseMenuCommandParameters.DatabaseInfo.DatabaseType;

            if (!(dbType == DatabaseType.SQLCE35 ||
                  dbType == DatabaseType.SQLCE40))
            {
                return;
            }

            var dcmd  = new DatabaseMenuCommandsHandler(parent);
            var cecmd = new SqlCeDatabaseMenuCommandsHandler(parent);

            Items.Add(itemBuilder.BuildShowSqlEditorMenuItem(databaseMenuCommandParameters, dcmd));

            Items.Add(itemBuilder.BuildCreateTableMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            var scriptDatabaseRootMenuItem = new MenuItem
            {
                Header = "Script Database",
                Icon   = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
            };

            var toolTip = new ToolTip
            {
                Content = "Generate a SQL Server Compact/SQLite compatible database script"
            };

            // Database scripting items
            var scriptDatabaseCommandBinding =
                new CommandBinding(DatabaseMenuCommands.DatabaseCommand, dcmd.ScriptDatabase);

            scriptDatabaseRootMenuItem.Items.Add(itemBuilder.BuildScriptDatabaseSchemaMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(itemBuilder.BuildScriptDatabaseSchemaDataMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptAzureSchemaDataMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(itemBuilder.BuildScriptDatabaseSchemaDataSqLiteMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(itemBuilder.BuildScriptDatabaseSchemaDataBlobMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(itemBuilder.BuildScriptDatabaseDataMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseDataForServerMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseDiffMenuItem(databaseMenuCommandParameters, dcmd));

            //End Database scripting items
            Items.Add(scriptDatabaseRootMenuItem);
            Items.Add(new Separator());

            var maintenanceMenuItem = new MenuItem
            {
                Header = "Maintenance",
                Icon   = ImageHelper.GetImageFromResource("../resources/Hammer_Builder_16xLG.png"),
            };

            maintenanceMenuItem.Items.Add(BuildPwdMenuItem(databaseMenuCommandParameters, cecmd));

            var shrinkMenuItem = itemBuilder.BuildShrinkMenuItem(databaseMenuCommandParameters, dcmd);

            maintenanceMenuItem.Items.Add(shrinkMenuItem);

            var compactMenuItem = itemBuilder.BuildCompactMenuItem(databaseMenuCommandParameters, dcmd);

            maintenanceMenuItem.Items.Add(compactMenuItem);

            maintenanceMenuItem.Items.Add(BuildVerifyMenuItem(databaseMenuCommandParameters, cecmd));

            maintenanceMenuItem.Items.Add(BuildRepairDeleteMenuItem(databaseMenuCommandParameters, cecmd));

            maintenanceMenuItem.Items.Add(BuildRepairRecoverAllMenuItem(databaseMenuCommandParameters, cecmd));

            maintenanceMenuItem.Items.Add(BuildRepairRecoverPossibleMenuItem(databaseMenuCommandParameters, cecmd));

            Items.Add(maintenanceMenuItem);
            Items.Add(new Separator());

            Items.Add(itemBuilder.BuildScriptDatabaseExportMenuItem(databaseMenuCommandParameters, dcmd));

            if (dbType == DatabaseType.SQLCE35 &&
                Helpers.RepositoryHelper.IsV40Installed())
            {
                Items.Add(BuildScriptUpgradeMenuItem(databaseMenuCommandParameters, cecmd));
            }

            Items.Add(new Separator());

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(itemBuilder.BuildScriptDatabaseGraphMenuItem(databaseMenuCommandParameters, dcmd));
            }

            Items.Add(itemBuilder.BuildDocDatabaseMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            var generateCodeRootMenuItem = new MenuItem
            {
                Header = "Generate Code",
                Icon   = ImageHelper.GetImageFromResource("../resources/Schema_16xLG.png"),
            };

#if SSMS
#else
            var scriptDcCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                            cecmd.GenerateDataContextInProject);

            generateCodeRootMenuItem.Items.Add(BuildScriptDcMenuItem(databaseMenuCommandParameters, scriptDcCommandBinding));

            generateCodeRootMenuItem.Items.Add(BuildScriptWpdcMenuItem(databaseMenuCommandParameters, scriptDcCommandBinding, dbType));
            generateCodeRootMenuItem.Items.Add(new Separator());
#endif

            var syncFxRootMenuItem = new MenuItem
            {
                Header = "Sync Framework Tools",
                Icon   = ImageHelper.GetImageFromResource("../resources/Synchronize_16xLG.png"),
            };

            var isSyncFxInstalled = DataConnectionHelper.IsSyncFx21Installed();

            syncFxRootMenuItem.Items.Add(BuildSyncFxProvisionMenuItem(databaseMenuCommandParameters, cecmd, dbType, isSyncFxInstalled));

            syncFxRootMenuItem.Items.Add(BuildSyncFxDeprovisionMenuItem(databaseMenuCommandParameters, cecmd, dbType, isSyncFxInstalled));

            syncFxRootMenuItem.Items.Add(BuildSyncFxGenerateSnapshotMenuItem(databaseMenuCommandParameters, cecmd, dbType, isSyncFxInstalled));

            generateCodeRootMenuItem.Items.Add(BuildSyncFxMenuItem(databaseMenuCommandParameters, cecmd, dbType, isSyncFxInstalled));
            generateCodeRootMenuItem.Items.Add(syncFxRootMenuItem);

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(generateCodeRootMenuItem);
            }
            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(new Separator());
            }

            Items.Add(BuildAddDescriptionMenuItem(databaseMenuCommandParameters, dcmd));

            Items.Add(itemBuilder.BuildGenerateInfoMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            Items.Add(BuildCopyConnectionMenuItem(databaseMenuCommandParameters, cecmd));

            Items.Add(itemBuilder.BuildRemoveConnectionMenuItem(databaseMenuCommandParameters, dcmd));
        }
 public KeyMenuCommandsHandler(ExplorerToolWindow parent)
 {
     ParentWindow = parent;
 }
        public SubscriptionsContextMenu(MenuCommandParameters subsMenuCommandParameters, ExplorerToolWindow parent)
        {
            var dcmd = new SubscriptionsMenuCommandsHandler(parent);

            if (subsMenuCommandParameters.MenuItemType == MenuType.Manage)

            {
                var newSubsCommandBinding = new CommandBinding(SubscriptionsMenuCommands.SubscriptionCommand,
                                                               dcmd.NewSubscription);

                var newSubsMenuItem = new MenuItem
                {
                    Header           = "Manage Subscription...",
                    Icon             = ImageHelper.GetImageFromResource("../resources/arrow_Sync_16xLG.png"),
                    Command          = SubscriptionsMenuCommands.SubscriptionCommand,
                    CommandParameter = subsMenuCommandParameters,
                };
                newSubsMenuItem.CommandBindings.Add(newSubsCommandBinding);
                Items.Add(newSubsMenuItem);


                var dropSubsCommandBinding = new CommandBinding(SubscriptionsMenuCommands.SubscriptionCommand,
                                                                dcmd.DropSubscription);

                var dropSubsMenuItem = new MenuItem
                {
                    Header           = "Drop Subscription...",
                    Icon             = ImageHelper.GetImageFromResource("../resources/arrow_Sync_16xLG.png"),
                    Command          = SubscriptionsMenuCommands.SubscriptionCommand,
                    CommandParameter = subsMenuCommandParameters,
                };
                dropSubsMenuItem.CommandBindings.Add(dropSubsCommandBinding);
                Items.Add(dropSubsMenuItem);
            }
            else
            {
                var newSubsCommandBinding = new CommandBinding(SubscriptionsMenuCommands.SubscriptionCommand,
                                                               dcmd.NewSubscription);

                var newSubsMenuItem = new MenuItem
                {
                    Header           = "New Subscription...",
                    Icon             = ImageHelper.GetImageFromResource("../resources/arrow_Sync_16xLG.png"),
                    Command          = SubscriptionsMenuCommands.SubscriptionCommand,
                    CommandParameter = subsMenuCommandParameters,
                };
                newSubsMenuItem.CommandBindings.Add(newSubsCommandBinding);
                Items.Add(newSubsMenuItem);
            }
        }
Ejemplo n.º 23
0
        public DatabaseContextMenu(DatabaseMenuCommandParameters databaseMenuCommandParameters, ExplorerToolWindow parent)
        {
            var dbType  = databaseMenuCommandParameters.DatabaseInfo.DatabaseType;
            var isSqlCe = dbType == DatabaseType.SQLCE35 ||
                          dbType == DatabaseType.SQLCE40;
            var dcmd  = new DatabaseMenuCommandsHandler(parent);
            var cecmd = new SqlCeDatabaseMenuCommandsHandler(parent);

            Items.Add(BuildShowSqlEditorMenuItem(databaseMenuCommandParameters, dcmd));

            Items.Add(BuildCreateTableMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            var scriptDatabaseRootMenuItem = new MenuItem
            {
                Header = "Script Database",
                Icon   = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
            };

            // Database scripting items
            var scriptDatabaseCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                                  dcmd.ScriptDatabase);

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseSchemaMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseSchemaDataMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));

            if (isSqlCe)
            {
                scriptDatabaseRootMenuItem.Items.Add(BuildScriptAzureSchemaDataMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));
            }

            if (isSqlCe)
            {
                scriptDatabaseRootMenuItem.Items.Add(BuildScriptSqliteSchemaDataMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));
            }

            if (isSqlCe)
            {
                scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseSchemaDataBlobMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));
            }

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseDataMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));

            if (isSqlCe)
            {
                scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseDataForServerMenuItem(databaseMenuCommandParameters, scriptDatabaseCommandBinding));
            }

            if (isSqlCe)
            {
                scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseDiffMenuItem(databaseMenuCommandParameters, dcmd));
            }

            //End Database scripting items
            Items.Add(scriptDatabaseRootMenuItem);
            Items.Add(new Separator());

            var maintenanceMenuItem = new MenuItem
            {
                Header = "Maintenance",
                Icon   = ImageHelper.GetImageFromResource("../resources/Hammer_Builder_16xLG.png"),
            };

            maintenanceMenuItem.Items.Add(BuildPwdMenuItem(databaseMenuCommandParameters, cecmd));

            var shrinkMenuItem = BuildShrinkMenuItem(databaseMenuCommandParameters, dcmd);

            maintenanceMenuItem.Items.Add(shrinkMenuItem);

            var compactMenuItem = BuildCompactMenuItem(databaseMenuCommandParameters, dcmd);

            maintenanceMenuItem.Items.Add(compactMenuItem);

            maintenanceMenuItem.Items.Add(BuildVerifyMenuItem(databaseMenuCommandParameters, cecmd));

            maintenanceMenuItem.Items.Add(BuildRepairDeleteMenuItem(databaseMenuCommandParameters, cecmd));

            maintenanceMenuItem.Items.Add(BuildRepairRecoverAllMenuItem(databaseMenuCommandParameters, cecmd));

            maintenanceMenuItem.Items.Add(BuildRepairRecoverPossibleMenuItem(databaseMenuCommandParameters, cecmd));

            if (isSqlCe)
            {
                Items.Add(maintenanceMenuItem);
                Items.Add(new Separator());
            }
            if (dbType == DatabaseType.SQLite)
            {
                maintenanceMenuItem.Items.Clear();
                compactMenuItem.Header  = "Vacuum";
                compactMenuItem.ToolTip = "Rebuilds the database file, repacking it into a minimal amount of disk space";
                shrinkMenuItem.Header   = "Re-index";
                shrinkMenuItem.ToolTip  = "Deletes and recreates indexes";
                maintenanceMenuItem.Items.Add(compactMenuItem);
                maintenanceMenuItem.Items.Add(shrinkMenuItem);
                Items.Add(maintenanceMenuItem);
                Items.Add(new Separator());
            }

            Items.Add(BuildScriptDatabaseExportMenuItem(databaseMenuCommandParameters, dcmd));

            if (dbType == DatabaseType.SQLCE35 &&
                DataConnectionHelper.IsV40Installed())
            {
                Items.Add(BuildScriptUpgradeMenuItem(databaseMenuCommandParameters, cecmd));
            }

            Items.Add(new Separator());

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(BuildScriptDatabaseGraphMenuItem(databaseMenuCommandParameters, dcmd));
            }

            Items.Add(BuildDocDatabaseMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            var generateCodeRootMenuItem = new MenuItem
            {
                Header = "Generate Code",
                Icon   = ImageHelper.GetImageFromResource("../resources/Schema_16xLG.png"),
            };

#if SSMS
#else
            if (dbType != DatabaseType.SQLCE35)
            {
                generateCodeRootMenuItem.Items.Add(BuildEfCoreModelMenuItem(databaseMenuCommandParameters, dcmd));
            }
#endif
            if (dbType == DatabaseType.SQLite)
            {
                generateCodeRootMenuItem.Items.Add(BuildScriptModelMenuItem(databaseMenuCommandParameters, dcmd));
            }

            if (isSqlCe && SqlCeToolboxPackage.VsSupportsEf6())
            {
                generateCodeRootMenuItem.Items.Add(BuildScriptEfPocoMenuItem(databaseMenuCommandParameters, dcmd));
            }

#if SSMS
#else
            var scriptDcCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                            cecmd.GenerateDataContextInProject);

            if (isSqlCe)
            {
                generateCodeRootMenuItem.Items.Add(BuildScriptDcMenuItem(databaseMenuCommandParameters, scriptDcCommandBinding));
            }

            if (isSqlCe)
            {
                generateCodeRootMenuItem.Items.Add(BuildScriptWpdcMenuItem(databaseMenuCommandParameters, scriptDcCommandBinding, dbType));
            }
            if (isSqlCe)
            {
                generateCodeRootMenuItem.Items.Add(new Separator());
            }
#endif

            var syncFxRootMenuItem = new MenuItem
            {
                Header = "Sync Framework Tools",
                Icon   = ImageHelper.GetImageFromResource("../resources/Synchronize_16xLG.png"),
            };

            var isSyncFxInstalled = DataConnectionHelper.IsSyncFx21Installed();

            syncFxRootMenuItem.Items.Add(BuildSyncFxProvisionMenuItem(databaseMenuCommandParameters, cecmd, dbType, isSyncFxInstalled));

            syncFxRootMenuItem.Items.Add(BuildSyncFxDeprovisionMenuItem(databaseMenuCommandParameters, cecmd, dbType, isSyncFxInstalled));

            syncFxRootMenuItem.Items.Add(BuildSyncFxGenerateSnapshotMenuItem(databaseMenuCommandParameters, cecmd, dbType, isSyncFxInstalled));

            if (isSqlCe)
            {
                generateCodeRootMenuItem.Items.Add(BuildSyncFxMenuItem(databaseMenuCommandParameters, cecmd, dbType, isSyncFxInstalled));
            }
            if (isSqlCe)
            {
                generateCodeRootMenuItem.Items.Add(syncFxRootMenuItem);
            }

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(generateCodeRootMenuItem);
            }
            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(new Separator());
            }

            if (isSqlCe)
            {
                Items.Add(BuildAddDescriptionMenuItem(databaseMenuCommandParameters, dcmd));
            }

            Items.Add(BuildGenerateInfoMenuItem(databaseMenuCommandParameters, dcmd));
            Items.Add(new Separator());

            Items.Add(BuildCopyConnectionMenuItem(databaseMenuCommandParameters, cecmd));

            if (!databaseMenuCommandParameters.DatabaseInfo.FromServerExplorer)
            {
                Items.Add(BuildRenameConnectionMenuItem(databaseMenuCommandParameters, dcmd));
            }

            Items.Add(BuildRemoveCeConnectionMenuItem(databaseMenuCommandParameters, dcmd));
        }
Ejemplo n.º 24
0
 public TableMenuCommandsHandler(ExplorerToolWindow parent) : base(parent)
 {
 }
        public SqlServerDatabaseContextMenu(DatabaseMenuCommandParameters databaseMenuCommandParameters, ExplorerToolWindow parent)
        {
            var dcmd  = new SqlServerDatabaseMenuCommandsHandler(parent);
            var dbcmd = new DatabaseMenuCommandsHandler(parent);
            var isSqlCe40Installed = DataConnectionHelper.IsV40Installed();

            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(BuildScriptDatabaseGraphMenuItem(databaseMenuCommandParameters, dcmd));
            }
            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(new Separator());
            }

            var scriptDatabaseRootMenuItem = new MenuItem
            {
                Header = "Script Database",
                Icon   = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
            };

            var toolTip = new ToolTip
            {
                Content = "Generate a SQL Server Compact compatible database script from SQL Server 2005+"
            };

            var scriptDatabaseCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand, dcmd.ScriptServerDatabase);

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseSchemaMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseDataMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseSchemaDataMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseSchemaDataSqLiteMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseSchemaSqLiteMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            scriptDatabaseRootMenuItem.Items.Add(BuildScriptDatabaseSchemaDataBlobMenuItem(databaseMenuCommandParameters, toolTip, scriptDatabaseCommandBinding));

            Items.Add(scriptDatabaseRootMenuItem);
            Items.Add(new Separator());
#if SSMS
#else
            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(BuildEfCoreModelMenuItem(databaseMenuCommandParameters, dbcmd));
            }
#endif
#if VS2010
#else
            if (SqlCeToolboxPackage.VsSupportsEf6())
            {
                Items.Add(BuildScriptEfPocoDacPacMenuItem(databaseMenuCommandParameters, dcmd));
            }
#endif
            if (SqlCeToolboxPackage.IsVsExtension)
            {
                Items.Add(new Separator());
            }
            Items.Add(BuildExportServerMenuItem(databaseMenuCommandParameters, dcmd, isSqlCe40Installed));

            Items.Add(BuildExportServerToLiteMenuItem(databaseMenuCommandParameters, dcmd));
        }
 public SubscriptionsMenuCommandsHandler(ExplorerToolWindow parent)
 {
     _parentWindow = parent;
 }
Ejemplo n.º 27
0
        public TablesContextMenu(DatabaseMenuCommandParameters menuCommandParameters, ExplorerToolWindow parent)
        {
            var dcmd = new DatabaseMenuCommandsHandler(parent);

            var createTableCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                               dcmd.BuildTable);
            var createTableMenuItem = new MenuItem
            {
                Header           = "Build Table (beta)...",
                Icon             = ImageHelper.GetImageFromResource("../resources/AddTable_5632.png"),
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = menuCommandParameters
            };

            createTableMenuItem.CommandBindings.Add(createTableCommandBinding);
            Items.Add(createTableMenuItem);

            Items.Add(new Separator());

            var refreshCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                           dcmd.RefreshTables);
            var refreshMenuItem = new MenuItem
            {
                Header           = "Refresh",
                Icon             = ImageHelper.GetImageFromResource("../resources/refresh_16xLG.png"),
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = menuCommandParameters
            };

            refreshMenuItem.CommandBindings.Add(refreshCommandBinding);
            Items.Add(refreshMenuItem);
        }
Ejemplo n.º 28
0
 public CommonMenuCommandHandler(ExplorerToolWindow parent) : base(parent)
 {
 }
 public DatabaseMenuCommandsHandler(ExplorerToolWindow parent)
 {
     _parentWindow = parent;
     package       = _parentWindow.Package as SqlCeToolboxPackage;
 }
        public SqlServerDatabaseContextMenu(DatabaseMenuCommandParameters databaseMenuCommandParameters, ExplorerToolWindow parent)
        {
            var  dcmd = new DatabasesMenuCommandsHandler(parent);
            bool isSqlCe40Installed = DataConnectionHelper.IsV40Installed();

            var scriptGraphCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                               dcmd.GenerateServerDgmlFiles);
            var scriptDatabaseGraphMenuItem = new MenuItem
            {
                Header           = "Create SQL Server Database Graph (DGML)...",
                Icon             = ImageHelper.GetImageFromResource("../resources/Diagram_16XLG.png"),
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters,
            };

            scriptDatabaseGraphMenuItem.CommandBindings.Add(scriptGraphCommandBinding);
            Items.Add(scriptDatabaseGraphMenuItem);

            Items.Add(new Separator());

            var scriptDatabaseRootMenuItem = new MenuItem
            {
                Header = "Script SQL Server Database",
                Icon   = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
            };

            var toolTip = new ToolTip();

            toolTip.Content = "Generate a SQL Server Compact compatible database script from SQL Server 2005+";

            var scriptDatabaseCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                                  dcmd.ScriptServerDatabase);

            var scriptDatabaseSchemaMenuItem = new MenuItem
            {
                Header           = "Script SQL Server Database Schema...",
                Icon             = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
                ToolTip          = toolTip,
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters,
                Tag = SqlCeScripting.Scope.Schema
            };

            scriptDatabaseSchemaMenuItem.CommandBindings.Add(scriptDatabaseCommandBinding);
            scriptDatabaseRootMenuItem.Items.Add(scriptDatabaseSchemaMenuItem);

            var scriptDatabaseDataMenuItem = new MenuItem
            {
                Header           = "Script SQL Server Database Data...",
                Icon             = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
                ToolTip          = toolTip,
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters,
                Tag = SqlCeScripting.Scope.DataOnly
            };

            scriptDatabaseDataMenuItem.CommandBindings.Add(scriptDatabaseCommandBinding);
            scriptDatabaseRootMenuItem.Items.Add(scriptDatabaseDataMenuItem);

            var scriptDatabaseSchemaDataMenuItem = new MenuItem
            {
                Header           = "Script SQL Server Database Schema and Data...",
                Icon             = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
                ToolTip          = toolTip,
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters,
                Tag = SqlCeScripting.Scope.SchemaData
            };

            scriptDatabaseSchemaDataMenuItem.CommandBindings.Add(scriptDatabaseCommandBinding);
            scriptDatabaseRootMenuItem.Items.Add(scriptDatabaseSchemaDataMenuItem);

            var scriptDatabaseSchemaDataSqLiteMenuItem = new MenuItem
            {
                Header           = "Script SQL Server Database Schema and Data for SQLite...",
                Icon             = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
                ToolTip          = toolTip,
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters,
                Tag = SqlCeScripting.Scope.SchemaDataSQLite
            };

            scriptDatabaseSchemaDataSqLiteMenuItem.CommandBindings.Add(scriptDatabaseCommandBinding);
            scriptDatabaseRootMenuItem.Items.Add(scriptDatabaseSchemaDataSqLiteMenuItem);

            var scriptDatabaseSchemaSqLiteMenuItem = new MenuItem
            {
                Header           = "Script SQL Server Database Schema for SQLite...",
                Icon             = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
                ToolTip          = toolTip,
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters,
                Tag = SqlCeScripting.Scope.SchemaSQLite
            };

            scriptDatabaseSchemaSqLiteMenuItem.CommandBindings.Add(scriptDatabaseCommandBinding);
            scriptDatabaseRootMenuItem.Items.Add(scriptDatabaseSchemaSqLiteMenuItem);

            var scriptDatabaseSchemaDataBlobMenuItem = new MenuItem
            {
                Header           = "Script SQL Server Database Schema and Data with BLOBs...",
                ToolTip          = toolTip,
                Icon             = ImageHelper.GetImageFromResource("../resources/script_16xLG.png"),
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters,
                Tag = SqlCeScripting.Scope.SchemaDataBlobs
            };

            scriptDatabaseSchemaDataBlobMenuItem.CommandBindings.Add(scriptDatabaseCommandBinding);
            scriptDatabaseRootMenuItem.Items.Add(scriptDatabaseSchemaDataBlobMenuItem);
            Items.Add(scriptDatabaseRootMenuItem);
            Items.Add(new Separator());

            var exportServerCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                                dcmd.ExportServerDatabaseTo40);
            var exportServerMenuItem = new MenuItem
            {
                Header           = "Export SQL Server to SQL Server Compact 4.0...",
                Icon             = ImageHelper.GetImageFromResource("../resources/ExportReportData_10565.png"),
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters
            };

            exportServerMenuItem.CommandBindings.Add(exportServerCommandBinding);
            exportServerMenuItem.IsEnabled = (isSqlCe40Installed);
            Items.Add(exportServerMenuItem);

            var exportServerToLiteCommandBinding = new CommandBinding(DatabaseMenuCommands.DatabaseCommand,
                                                                      dcmd.ExportServerDatabaseToSqlite);
            var exportServerToLiteMenuItem = new MenuItem
            {
                Header           = "Export SQL Server to SQLite... (beta)",
                Icon             = ImageHelper.GetImageFromResource("../resources/ExportReportData_10565.png"),
                Command          = DatabaseMenuCommands.DatabaseCommand,
                CommandParameter = databaseMenuCommandParameters
            };

            exportServerToLiteMenuItem.CommandBindings.Add(exportServerToLiteCommandBinding);
            Items.Add(exportServerToLiteMenuItem);
        }