Example #1
0
 public TriggerNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
     base(hierarchyAccessor, id)
 {
     NodeId    = "Trigger";
     NameIndex = 2;
     editor    = new VSCodeEditor((IOleServiceProvider)hierarchyAccessor.ServiceProvider);
 }
Example #2
0
        public BaseNode(DataViewHierarchyAccessor hierarchyAccessor, int id)
        {
            HierarchyAccessor = hierarchyAccessor;
            ItemId            = id;
            IsNew             = ItemId == 0;

            // set the server and database from our active connection
            DbConnection conn = (DbConnection)HierarchyAccessor.Connection.GetLockedProviderObject();

            Server   = conn.DataSource;
            Database = conn.Database;
            HierarchyAccessor.Connection.UnlockProviderObject();

            if (!IsNew)
            {
                Name = hierarchyAccessor.GetNodeName(id);
            }
            else
            {
                ItemId = hierarchyAccessor.CreateObjectNode();
            }

            NameIndex        = 2;
            commandGroupGuid = VSConstants.GUID_TextEditorFactory;
            editorGuid       = Guid.Empty;
        }
Example #3
0
 public TriggerNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
   base(hierarchyAccessor, id)
 {
   NodeId = "Trigger";
   NameIndex = 2;
   editor = new VSCodeEditor((IOleServiceProvider)hierarchyAccessor.ServiceProvider);
 }
Example #4
0
        public static void CreateNew(DataViewHierarchyAccessor HierarchyAccessor, TableNode parent)
        {
            TriggerNode node = new TriggerNode(HierarchyAccessor, 0);

            node.ParentTable = parent;
            node.Edit();
        }
Example #5
0
        private void DropSelectedIndexes()
        {
            int[] items = DataViewHierarchyAccessor.GetSelectedItems();
            int   n;

            object[] parts;

            for (n = 0; n < items.Length; n++)
            {
                parts = DataViewHierarchyAccessor.GetObjectIdentifier(items[n]);
                if (parts == null)
                {
                    continue;
                }

                if (System.Windows.Forms.MessageBox.Show(String.Format("Drop index {0} ({1}), are you sure?", parts[3], parts[0]), "Confirm delete", System.Windows.Forms.MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes)
                {
                    string sql = String.Format("DROP INDEX [{0}].[{1}]", parts[0], parts[3]);

                    DataViewHierarchyAccessor.Connection.Command.ExecuteWithoutResults(sql, (int)System.Data.CommandType.Text, null, 0);
                    DataViewHierarchyAccessor.DropObjectNode(items[n]);
                }
                else
                {
                    throw new OperationCanceledException();
                }
            }
        }
Example #6
0
        public static void Refresh(DataViewHierarchyAccessor accessor, int itemId)
        {
            IVsUIHierarchy hier = accessor.Hierarchy as IVsUIHierarchy;
            Guid           g    = VSConstants.GUID_VSStandardCommandSet97;

            hier.ExecCommand((uint)itemId, ref g, (uint)0xbd, (uint)OleCommandExecutionOption.DoDefault, IntPtr.Zero, IntPtr.Zero);
        }
Example #7
0
        public static void CreateNew(DataViewHierarchyAccessor hierarchyAccessor, bool isFunc)
        {
            StoredProcedureNode node = new StoredProcedureNode(hierarchyAccessor, 0, isFunc);

            RegisterNode(node);
            node.Edit();
        }
Example #8
0
 public ViewNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
     base(hierarchyAccessor, id)
 {
     NodeId  = "View";
     _editor = new VSCodeEditor((IOleServiceProvider)hierarchyAccessor.ServiceProvider);
     RegisterNode(this);
 }
Example #9
0
 public StoredProcedureNode(DataViewHierarchyAccessor hierarchyAccessor, int id, bool isFunc) :
     base(hierarchyAccessor, id)
 {
     NodeId     = isFunc ? "StoredFunction" : "StoredProcedure";
     isFunction = isFunc;
     NameIndex  = 3;
     editor     = new VSCodeEditor((IOleServiceProvider)hierarchyAccessor.ServiceProvider);
 }
Example #10
0
 public TableNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
     base(hierarchyAccessor, id)
 {
     NodeId = "Table";
     //commandGroupGuid = GuidList.DavinciCommandSet;
     RegisterNode(this);
     Saving += TableNode_Saving;
 }
Example #11
0
 public StoredProcedureNode(DataViewHierarchyAccessor hierarchyAccessor, int id, bool isFunc) :
   base(hierarchyAccessor, id)
 {
   NodeId = isFunc ? "StoredFunction" : "StoredProcedure";
   isFunction = isFunc;
   NameIndex = 3;
   editor = new VSCodeEditor((IOleServiceProvider)hierarchyAccessor.ServiceProvider);
 }
 public StoredProcedureNode(DataViewHierarchyAccessor hierarchyAccessor, int id, bool isFunc) :
   base(hierarchyAccessor, id)
 {
   NodeId = isFunc ? "StoredFunction" : "StoredProcedure";
   isFunction = isFunc;
   NameIndex = 3;
   editor = new VSCodeEditor((IOleServiceProvider)hierarchyAccessor.ServiceProvider);
   Dte = (EnvDTE.DTE)hierarchyAccessor.ServiceProvider.GetService(typeof(EnvDTE.DTE));
   RegisterNode(this);
 }
        public ViewDesignerDoc(int itemId, DataViewHierarchyAccessor accessor, string viewName)
        {
            _accessor   = accessor;
            _connection = accessor.Connection;
            _itemId     = itemId;
            InitializeComponent();

            _init = true;
            try
            {
                _typeQB = SQLiteDataAdapterToolboxItem._vsdesigner.GetType("Microsoft.VSDesigner.Data.Design.QueryBuilderControl");

                if (_typeQB != null)
                {
                    _queryDesigner = Activator.CreateInstance(_typeQB) as UserControl;
                    _typeQB.InvokeMember("Provider", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.SetProperty | System.Reflection.BindingFlags.NonPublic, null, _queryDesigner, new object[] { "System.Data.SQLite" });
                    _typeQB.InvokeMember("ConnectionString", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.SetProperty | System.Reflection.BindingFlags.NonPublic, null, _queryDesigner, new object[] { _connection.ConnectionSupport.ConnectionString });
                    _typeQB.InvokeMember("EnableMorphing", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.SetProperty | System.Reflection.BindingFlags.NonPublic, null, _queryDesigner, new object[] { false });
                    Controls.Add(_queryDesigner);
                    _queryDesigner.Dock    = DockStyle.Fill;
                    _queryDesigner.Visible = true;
                }

                StringBuilder tables = new StringBuilder();

                using (DataReader reader = _connection.Command.Execute("SELECT * FROM sqlite_master", 1, null, 30))
                {
                    while (reader.Read())
                    {
                        tables.Append(reader.GetItem(2).ToString());
                        tables.Append(",");
                    }
                }

                int n = 1;

                if (String.IsNullOrEmpty(viewName))
                {
                    string alltables = tables.ToString();

                    do
                    {
                        viewName = String.Format(CultureInfo.InvariantCulture, "View{0}", n);
                        n++;
                    } while (alltables.IndexOf(viewName + ",", StringComparison.OrdinalIgnoreCase) > -1 || _editingTables.ContainsValue(viewName));

                    _editingTables.Add(GetHashCode(), viewName);
                }
                _view = new SQLite.Designer.Design.View(viewName, _connection.ConnectionSupport.ProviderObject as DbConnection, this);
            }
            finally
            {
                _init = false;
            }
        }
    public ViewDesignerDoc(int itemId, DataViewHierarchyAccessor accessor, string viewName)
    {
      _accessor = accessor;
      _connection = accessor.Connection;
      _itemId = itemId;
      InitializeComponent();

      _init = true;
      try
      {
        _typeQB = SQLiteDataAdapterToolboxItem._vsdesigner.GetType("Microsoft.VSDesigner.Data.Design.QueryBuilderControl");

        if (_typeQB != null)
        {
          _queryDesigner = Activator.CreateInstance(_typeQB) as UserControl;
          _typeQB.InvokeMember("Provider", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.SetProperty | System.Reflection.BindingFlags.NonPublic, null, _queryDesigner, new object[] { SQLiteOptions.GetProviderName() });
          _typeQB.InvokeMember("ConnectionString", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.SetProperty | System.Reflection.BindingFlags.NonPublic, null, _queryDesigner, new object[] { _connection.ConnectionSupport.ConnectionString });
          _typeQB.InvokeMember("EnableMorphing", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.SetProperty | System.Reflection.BindingFlags.NonPublic, null, _queryDesigner, new object[] { false });
          Controls.Add(_queryDesigner);
          _queryDesigner.Dock = DockStyle.Fill;
          _queryDesigner.Visible = true;
        }

        StringBuilder tables = new StringBuilder();

        using (DataReader reader = _connection.Command.Execute("SELECT * FROM sqlite_master", 1, null, 30))
        {
          while (reader.Read())
          {
            tables.Append(reader.GetItem(2).ToString());
            tables.Append(",");
          }
        }

        int n = 1;

        if (String.IsNullOrEmpty(viewName))
        {
          string alltables = tables.ToString();

          do
          {
            viewName = String.Format(CultureInfo.InvariantCulture, "View{0}", n);
            n++;
          } while (alltables.IndexOf(viewName + ",", StringComparison.OrdinalIgnoreCase) > -1 || _editingTables.ContainsValue(viewName));

          _editingTables.Add(GetHashCode(), viewName);
        }
        _view = new SQLite.Designer.Design.View(viewName, _connection.ConnectionSupport.ProviderObject as DbConnection, this);
      }
      finally
      {
        _init = false;
      }
    }
Example #15
0
 public StoredProcedureNode(DataViewHierarchyAccessor hierarchyAccessor, int id, bool isFunc) :
     base(hierarchyAccessor, id)
 {
     NodeId      = isFunc ? "StoredFunction" : "StoredProcedure";
     _isFunction = isFunc;
     NameIndex   = 3;
     _editor     = new VSCodeEditor((IOleServiceProvider)hierarchyAccessor.ServiceProvider);
     if (Dte == null)
     {
         Dte = (EnvDTE.DTE)hierarchyAccessor.ServiceProvider.GetService(typeof(EnvDTE.DTE));
     }
     RegisterNode(this);
 }
Example #16
0
        public static IDbConnection GetConnection(DSRefNavigator navigator, out string type)
        {
            type = null;
            try
            {
                if (navigator != null)
                {
                    IVsDataConnectionsService dataConnectionsService =
                        (IVsDataConnectionsService)Package.GetGlobalService(typeof(IVsDataConnectionsService));
                    string itemName = navigator.GetConnectionName();

                    if (itemName != null)
                    {
                        int iConn;                         // = dataConnectionsService.GetConnectionIndex(itemName);
                        DataViewHierarchyAccessor dataViewHierarchy = null;

                        for (iConn = 0; iConn < dataConnectionsService.Count; iConn++)
                        {
                            DataViewHierarchyAccessor hierarchyAccessor =
                                new DataViewHierarchyAccessor((IVsUIHierarchy)dataConnectionsService.GetConnectionHierarchy(iConn));
                            try
                            {
                                if (hierarchyAccessor.Connection.DisplayConnectionString == itemName)
                                {
                                    dataViewHierarchy = hierarchyAccessor;
                                    break;
                                }
                            }
                            catch
                            {
                            }
                        }
                        if (dataViewHierarchy != null)
                        {
                            DataConnection connection = dataViewHierarchy.Connection;
                            if (connection != null && connection.ConnectionSupport.ProviderObject != null)
                            {
                                type = connection.ConnectionSupport.ProviderObject.GetType().FullName;
                                return((IDbConnection)connection.ConnectionSupport.ProviderObject);
                            }
                        }
                    }
                }
            }
            catch
            {
            }

            return(null);
        }
		public static IDbConnection GetConnection(DSRefNavigator navigator, out string type)
		{
			type = null;
			try
			{
				if (navigator != null)
				{
					IVsDataConnectionsService dataConnectionsService =
						(IVsDataConnectionsService) Package.GetGlobalService(typeof(IVsDataConnectionsService));
					string itemName = navigator.GetConnectionName();

					if (itemName != null)
					{
						int iConn; // = dataConnectionsService.GetConnectionIndex(itemName);
						DataViewHierarchyAccessor dataViewHierarchy = null;

						for(iConn = 0; iConn < dataConnectionsService.Count; iConn++)
						{
							DataViewHierarchyAccessor hierarchyAccessor =
								new DataViewHierarchyAccessor((IVsUIHierarchy) dataConnectionsService.GetConnectionHierarchy(iConn));
							try
							{
								if (hierarchyAccessor.Connection.DisplayConnectionString == itemName)
								{
									dataViewHierarchy = hierarchyAccessor;
									break;
								}
							}
							catch
							{
							}
						}
						if (dataViewHierarchy != null)
						{
							DataConnection connection = dataViewHierarchy.Connection;
							if (connection != null && connection.ConnectionSupport.ProviderObject != null)
							{
								type = connection.ConnectionSupport.ProviderObject.GetType().FullName;
								return (IDbConnection) connection.ConnectionSupport.ProviderObject;
							}
						}
					}
				}
			}
			catch
			{
			}

			return null;
		}
Example #18
0
    public TableDesignerDoc(int itemId, DataViewHierarchyAccessor accessor, string tableName)
    {
      _accessor = accessor;
      _connection = accessor.Connection;
      _itemId = itemId;
      _init = true;

      InitializeComponent();

      StringBuilder tables = new StringBuilder();

      using (DataReader reader = _connection.Command.Execute("SELECT * FROM sqlite_master", 1, null, 30))
      {
        while (reader.Read())
        {
          tables.Append(reader.GetItem(2).ToString());
          tables.Append(",");
        }
      }

      int n = 1;

      if (String.IsNullOrEmpty(tableName))
      {
        string alltables = tables.ToString();

        do
        {
          tableName = String.Format("Table{0}", n);
          n++;
        } while (alltables.IndexOf(tableName + ",", StringComparison.OrdinalIgnoreCase) > -1 || _editingTables.ContainsValue(tableName));

        _editingTables.Add(GetHashCode(), tableName);
      }
      _table = new Table(tableName, _connection.ConnectionSupport.ProviderObject as DbConnection, this);
      foreach(Column c in _table.Columns)
      {
        n = _dataGrid.Rows.Add();
        _dataGrid.Rows[n].Tag = c;
        c.Parent = _dataGrid.Rows[n];
      }
      _init = false;

      if (_dataGrid.Rows.Count > 0)
      {
        _dataGrid.EndEdit();
        _sqlText.Text = _table.OriginalSql;
      }
    }
Example #19
0
        /// <summary>
        /// Constructor stores DataViewHierarchyAccessor reference in the private variable.
        /// </summary>
        /// <param name="hierarchy">DataViewHierarchyAccessor reference.</param>
        public ServerExplorerFacade(DataViewHierarchyAccessor hierarchy)
        {
            if (hierarchy == null)
            {
                throw new ArgumentNullException("hierarchy");
            }
            if (hierarchy.Connection == null)
            {
                throw new ArgumentException(Resources.Error_InvalidAccessorNoConnection, "hierarchy");
            }

            // Store hierarchy accessor reference
            hierarchyAccessor = hierarchy;
            //Extract connection wrapper
            connectionWrapper = new DataConnectionWrapper(hierarchy.Connection);

            // Get UI shell object
            uiShell = Package.GetGlobalService(typeof(IVsUIShell)) as IVsUIShell;
            Debug.Assert(uiShell != null, "Unable to get UI shell");
            if (uiShell == null)
            {
                throw new Exception(Resources.Error_UnableToGetUIShell);
            }

            // Retrieve IVsUIShellOpenDocument interface
            shell = Package.GetGlobalService(typeof(SVsUIShellOpenDocument)) as IVsUIShellOpenDocument;
            Debug.Assert(shell != null, "Unable to get IVsUIShellOpenDocument reference!");
            if (shell == null)
            {
                throw new Exception(Resources.Error_UnableToGetOpenDocumentShell);
            }

            // Get RDT interface
            rdt = Package.GetGlobalService(typeof(SVsRunningDocumentTable)) as IVsRunningDocumentTable;
            Debug.Assert(rdt != null, "Unable to get Running Document Table interface reference!");
            if (rdt == null)
            {
                throw new Exception(Resources.Error_UnableToGetRdt);
            }

            // Get RDT2 interface
            rdt2 = rdt as IVsRunningDocumentTable2;
            Debug.Assert(rdt2 != null, "Unable to get Running Document Table extended interface reference!");
            if (rdt2 == null)
            {
                throw new Exception(Resources.Error_UnableToGetRdt);
            }
        }
    public BaseNode(DataViewHierarchyAccessor hierarchyAccessor, int id)
    {
      HierarchyAccessor = hierarchyAccessor;
      ItemId = id;
      IsNew = ItemId == 0;

      // set the server and database from our active connection
      DbConnection conn = (DbConnection)HierarchyAccessor.Connection.GetLockedProviderObject();
      Server = conn.DataSource;
      Database = conn.Database;
      HierarchyAccessor.Connection.UnlockProviderObject();

      if (!IsNew)
        Name = hierarchyAccessor.GetNodeName(id);
      else
        ItemId = hierarchyAccessor.CreateObjectNode();

      NameIndex = 2;
      commandGroupGuid = VSConstants.GUID_TextEditorFactory;
      editorGuid = Guid.Empty;
    }
        private BaseNode MakeNewNode(int id)
        {
            string nodeId = DataViewHierarchyAccessor.GetNodeId(id);

            nodeId = nodeId.ToLowerInvariant();

            BaseNode newNode = null;

            switch (nodeId)
            {
            case "table":
                newNode = new TableNode(DataViewHierarchyAccessor, id);
                break;

            case "storedprocedure":
                newNode = new StoredProcedureNode(DataViewHierarchyAccessor, id, false);
                break;

            case "storedfunction":
                newNode = new StoredProcedureNode(DataViewHierarchyAccessor, id, true);
                break;

            case "view":
                newNode = new ViewNode(DataViewHierarchyAccessor, id);
                break;

            case "udf":
                newNode = new UDFNode(DataViewHierarchyAccessor, id);
                break;

            case "trigger":
                newNode = new TriggerNode(DataViewHierarchyAccessor, id);
                break;

            default:
                throw new NotSupportedException("Node type not supported");
            }
            Debug.Assert(newNode != null);
            return(newNode);
        }
Example #22
0
        /// <summary>
        /// Constructor stores DataViewHierarchyAccessor reference in the private variable.
        /// </summary>
        /// <param name="hierarchy">DataViewHierarchyAccessor reference.</param>
        public ServerExplorerFacade(DataViewHierarchyAccessor hierarchy)
        {
            if (hierarchy == null)
                throw new ArgumentNullException("hierarchy");
            if (hierarchy.Connection == null)
                throw new ArgumentException(Resources.Error_InvalidAccessorNoConnection, "hierarchy");
            
            // Store hierarchy accessor reference
            hierarchyAccessor = hierarchy;
            //Extract connection wrapper
            connectionWrapper = new DataConnectionWrapper(hierarchy.Connection);

            // Get UI shell object
            uiShell = Package.GetGlobalService(typeof(IVsUIShell)) as IVsUIShell;
            Debug.Assert(uiShell != null, "Unable to get UI shell");
            if (uiShell == null)
                throw new Exception(Resources.Error_UnableToGetUIShell);

            // Retrieve IVsUIShellOpenDocument interface
            shell = Package.GetGlobalService(typeof(SVsUIShellOpenDocument)) as IVsUIShellOpenDocument;
            Debug.Assert(shell != null, "Unable to get IVsUIShellOpenDocument reference!");
            if (shell == null)
                throw new Exception(Resources.Error_UnableToGetOpenDocumentShell);

            // Get RDT interface
            rdt = Package.GetGlobalService(typeof(SVsRunningDocumentTable)) as IVsRunningDocumentTable;
            Debug.Assert(rdt != null, "Unable to get Running Document Table interface reference!");
            if (rdt == null)
                throw new Exception(Resources.Error_UnableToGetRdt);

            // Get RDT2 interface
            rdt2 = rdt as IVsRunningDocumentTable2;
            Debug.Assert(rdt2 != null, "Unable to get Running Document Table extended interface reference!");
            if (rdt2 == null)
                throw new Exception(Resources.Error_UnableToGetRdt);
        }
 public ViewNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
   base(hierarchyAccessor, id)
 {
   NodeId = "View";
   editor = new VSCodeEditor((IOleServiceProvider)hierarchyAccessor.ServiceProvider);
 }
Example #24
0
 public static void CreateNew(DataViewHierarchyAccessor HierarchyAccessor, bool isFunc)
 {
   StoredProcedureNode node = new StoredProcedureNode(HierarchyAccessor, 0, isFunc);
   RegisterNode( node );
   node.Edit();
 }
        //		private NodeIdMapper nodeMapper;

        /*		private NodeIdMapper NodeMapper
         *  {
         *    get
         *    {
         *      if (nodeMapper == null)
         *        nodeMapper = new NodeIdMapper(DataViewHierarchyAccessor);
         *      return nodeMapper;
         *    }
         *  }*/

        /// <summary>
        /// This method supplies information about a command's status. At this point all
        /// commands are supported and visible.
        /// </summary>
        /// <param name="itemIds">
        /// Array of identifiers for the items in the data view hierarchy on which this
        /// command should be invoked.
        /// </param>
        /// <param name="command">
        /// The OleCommand object representing the command to invoke.
        /// </param>
        /// <param name="textType">
        /// The OleCommandTextType object instance for the specified command.
        /// </param>
        /// <param name="status">
        /// The OleCommandStatus object instance for the specified command.
        /// </param>
        /// <returns>
        /// Returns an OleCommandStatus object instance representing the status returned by the specified commands. ///
        /// </returns>
        public override OleCommandStatus GetCommandStatus(int[] itemIds, OleCommand command,
                                                          OleCommandTextType textType, OleCommandStatus status)
        {
            if (command == null)
            {
                throw new ArgumentNullException("command");
            }
            if (status == null)
            {
                throw new ArgumentNullException("status");
            }

            OleCommandStatus result = new OleCommandStatus();

            /*			string[] selTypes = DataViewHierarchyAccessor.GetChildSelectionTypes(itemIds[0]);
             *    string type = DataViewHierarchyAccessor.GetObjectType(itemIds[0]);
             *    string[] staticNodes = DataViewHierarchyAccessor.GetChildStaticNodeIds(itemIds[0]);
             *    string path = DataViewHierarchyAccessor.GetNodePath(itemIds[0]);
             *    object[] identifier = DataViewHierarchyAccessor.GetObjectIdentifier(itemIds[0]);
             *
             *    object v1 = DataViewHierarchyAccessor.GetProperty(itemIds[0], (int)__VSHPROPID.VSHPROPID_IsHiddenItem);
             *    object v2 = DataViewHierarchyAccessor.GetProperty(itemIds[0], (int)__VSHPROPID.VSHPROPID_Parent);
             */

            //BaseNode node = NodeMapper[itemIds[0]];

            result.Enabled   = true;
            result.Visible   = true;
            result.Supported = true;

            if (command.CommandId == PkgCmdIDList.cmdDebugProcedure)
            {
                result.Visible = DataViewHierarchyAccessor.GetNodeId(itemIds[0]).Equals("StoredProcedure", StringComparison.OrdinalIgnoreCase);
            }
            else if (command.CommandId == PkgCmdIDList.cmdGenerateTableScript)
            {
                result.Visible = DataViewHierarchyAccessor.GetNodeId(itemIds[0]).Equals("Table", StringComparison.OrdinalIgnoreCase);
            }
            return(result);

            /*            // Get command handler instance
             *          ICommand commandHandler = CommandFactory.Instance.CreateCommandHandler(command.GroupGuid, command.CommandId);
             *          if (commandHandler == null)
             *              return base.GetCommandStatus(itemIds, command, textType, status);
             *          result.Supported = true;
             *
             *          // Determine visibility
             *          if (!commandHandler.GetIsVisible(Hierarchy, itemIds))
             *          {
             *              result.Visible = false;
             *              return result;
             *          }
             *          result.Visible = true;
             *          result.Enabled = true;
             *
             *          // TODO: Find out why this doesn't work at all!
             *          // Localize text if possible
             *          string localizedText = commandHandler.GetText(Hierarchy, itemIds);
             *          if (!String.IsNullOrEmpty(localizedText))
             *              result.Text = localizedText;
             *
             *          return result;*/
        }
Example #26
0
        public static void CreateNew(DataViewHierarchyAccessor hierarchyAccessor)
        {
            var node = new ViewNode(hierarchyAccessor, 0);

            node.Edit();
        }
Example #27
0
 public static void CreateNew(DataViewHierarchyAccessor HierarchyAccessor, TableNode parent)
 {
   TriggerNode node = new TriggerNode(HierarchyAccessor, 0);
   node.ParentTable = parent;
   node.Edit();
 }
Example #28
0
        /// <summary>
        /// This method executes a specified command, potentially based
        /// on parameters passed in from the data view support XML.
        /// </summary>
        public override object ExecuteCommand(int itemId, OleCommand command, OleCommandExecutionOption executionOption, object arguments)
        {
            object returnValue = null;

            object[] args = arguments as object[];

            if (command.GroupGuid == guidSQLiteCmdSet)
            {
                switch ((cmdid)command.CommandId)
                {
                case cmdid.Vacuum:
                    Vacuum();
                    break;

                case cmdid.Rekey:
                    ChangePassword(itemId);
                    break;

                default:
                    returnValue = base.ExecuteCommand(itemId, command, executionOption, arguments);
                    break;
                }
            }
            else if (command.GroupGuid == VSConstants.GUID_VSStandardCommandSet97)
            {
                switch ((VSConstants.VSStd97CmdID)command.CommandId)
                {
                case VSConstants.VSStd97CmdID.Delete:
                    switch ((string)args[0])
                    {
                    case "Table":
                        DropSelectedTables();
                        break;

                    case "Index":
                        DropSelectedIndexes();
                        break;

                    case "View":
                        DropSelectedViews();
                        break;
                    }
                    break;
                }
            }
            else if (command.GroupGuid == guidDataCmdSet)
            {
                switch ((cmdid)command.CommandId)
                {
                case cmdid.CreateTable:
                    DesignTable(itemId, null);
                    break;

                case cmdid.CreateView:
                    DesignView(itemId, null);
                    break;

                case cmdid.Alter:
                    switch ((string)args[0])
                    {
                    case "Table":
                    {
                        object[] parts;
                        int[]    items = DataViewHierarchyAccessor.GetSelectedItems();
                        parts = DataViewHierarchyAccessor.GetObjectIdentifier(items[0]);
                        DesignTable(itemId, parts[2].ToString());
                    }
                    break;

                    case "Index":
                        break;

                    case "View":
                    {
                        object[] parts;
                        int[]    items = DataViewHierarchyAccessor.GetSelectedItems();
                        parts = DataViewHierarchyAccessor.GetObjectIdentifier(items[0]);
                        DesignView(itemId, parts[2].ToString());
                    }
                    break;
                    }
                    break;
                }
            }
            else
            {
                returnValue = base.ExecuteCommand(itemId, command, executionOption, arguments);
            }
            return(returnValue);
        }
 public static void Refresh(DataViewHierarchyAccessor accessor, int itemId)
 {
     IVsUIHierarchy hier = accessor.Hierarchy as IVsUIHierarchy;
       Guid g = VSConstants.GUID_VSStandardCommandSet97;
       hier.ExecCommand((uint)itemId, ref g, (uint)0xbd, (uint)OleCommandExecutionOption.DoDefault, IntPtr.Zero, IntPtr.Zero);
 }
Example #30
0
        public static void CreateNew(DataViewHierarchyAccessor HierarchyAccessor)
        {
            TableNode node = new TableNode(HierarchyAccessor, 0);

            node.Edit();
        }
Example #31
0
 public DocumentNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
     base(hierarchyAccessor, id)
 {
 }
 public DocumentNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
   base(hierarchyAccessor, id)
 {
 }
Example #33
0
 public TableNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
   base(hierarchyAccessor, id)
 {
   NodeId = "Table";
   //commandGroupGuid = GuidList.DavinciCommandSet;
 }
Example #34
0
 public UDFNode(DataViewHierarchyAccessor hierarchyAccessor, int itemId) :
   base(hierarchyAccessor, itemId)
 {
   NodeId = "UDF";
 }
 public static void CreateNew(DataViewHierarchyAccessor HierarchyAccessor)
 {
   ViewNode node = new ViewNode(HierarchyAccessor, 0);
   node.Edit();
 }
Example #36
0
 public UdfNode(DataViewHierarchyAccessor hierarchyAccessor, int itemId) :
     base(hierarchyAccessor, itemId)
 {
     NodeId = "UDF";
     DocumentNode.RegisterNode(this);
 }
Example #37
0
 public TableNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
     base(hierarchyAccessor, id)
 {
     NodeId = "Table";
     //commandGroupGuid = GuidList.DavinciCommandSet;
 }
Example #38
0
 protected DocumentNode(DataViewHierarchyAccessor hierarchyAccessor, int id) :
     base(hierarchyAccessor, id)
 {
 }
Example #39
0
 public UDFNode(DataViewHierarchyAccessor hierarchyAccessor, int itemId) :
     base(hierarchyAccessor, itemId)
 {
     NodeId = "UDF";
 }