示例#1
0
        }          // FindDataTab

        private void AddItemToTab(EnvDTE.ToolBoxTab tab, string name, string dllpath)
        {
            tab.ToolBoxItems.Add(
                name,
                "Ingres.Client." + name + "," + dllpath,
                EnvDTE.vsToolBoxItemFormat.vsToolBoxItemFormatDotNETComponent);
            System.Windows.Forms.MessageBox.Show(
                name + " was added OK!", "Debugging");
        }
示例#2
0
        private void RemoveToolBoxItems()
        {
            EnvDTE.DTE dte = null;

            dte = LoadDTE();              // load the root object of VS.NET
            if (dte == null)
            {
                return;
            }

            try
            {
                EnvDTE.ToolBoxTab dataTab = FindDataTab(dte);;
                if (dataTab == null)
                {
                    return;
                }

                // only delete Ingres toolbox tabs, don't delete "Data" tab
                if (dataTab.Name == "Advantage Ingres" ||
                    dataTab.Name == "Ingres")
                {
                    System.Windows.Forms.MessageBox.Show(
                        "Deleted toolbox tab " + dataTab.Name, "Debugging");
                    dataTab.Delete();
                    return;
                }

                dataTab.Activate();

                RemoveItemFromTab(dataTab, "IngresDataAdapter");
                RemoveItemFromTab(dataTab, "IngresConnection");
                RemoveItemFromTab(dataTab, "IngresCommand");
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(
                    "RemoveToolBoxItems threw Exception" +
                    ex.ToString() + ".  Exiting...", "Debugging");
            }
            finally
            {
                try
                {
                    if (dte != null)
                    {
                        dte.Quit();                          // shut down the IDE
                        System.Windows.Forms.MessageBox.Show(
                            "EnvDTE Quit complete", "Debugging");
                    }
                }
                catch (Exception) {}
            }
        }          // RemoveToolBoxItems
示例#3
0
        }          // RemoveToolBoxItems

        private void RemoveItemFromTab(EnvDTE.ToolBoxTab tab, string name)
        {
            foreach (EnvDTE.ToolBoxItem item in tab.ToolBoxItems)
            {
                if (item.Name == name)
                {
                    item.Delete();
                    System.Windows.Forms.MessageBox.Show(
                        name + " was deleted OK!", "Debugging");
                }
            }
        }
示例#4
0
        private EnvDTE.ToolBoxTab AddDataTab(EnvDTE.DTE dte)
        {
            if (dte == null)
            {
                return(null);
            }

            //get the list of toolbox tabs
            EnvDTE.Window      win         = dte.Windows.Item(EnvDTE.Constants.vsWindowKindToolbox);
            EnvDTE.ToolBox     toolbox     = (EnvDTE.ToolBox)win.Object;       // toolbox root
            EnvDTE.ToolBoxTabs toolboxtabs = toolbox.ToolBoxTabs;              // toolbox tabs

            EnvDTE.ToolBoxTab dataTab = toolboxtabs.Add(dataTabname);
            return(dataTab);
        }
示例#5
0
        private EnvDTE.ToolBoxTab FindDataTab(EnvDTE.DTE dte)
        {
            EnvDTE.ToolBoxTab dataTab = null;
            if (dte == null)
            {
                return(null);
            }

            try
            {
                //get the list of toolbox tabs
                EnvDTE.Window      win         = dte.Windows.Item(EnvDTE.Constants.vsWindowKindToolbox);
                EnvDTE.ToolBox     toolbox     = (EnvDTE.ToolBox)win.Object;           // toolbox root
                EnvDTE.ToolBoxTabs toolboxtabs = toolbox.ToolBoxTabs;                  // toolbox tabs

                //locate the target toolbox tab
                foreach (EnvDTE.ToolBoxTab tab in toolboxtabs)
                {
                    if (tab.Name == dataTabname)
                    {
                        dataTab = tab;
                        break;
                    }
                }                  // end foreach
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(
                    "Walking toolbox threw Exception" +
                    ex.ToString() + ".  Exiting...", "Debugging");
            }

            if (dataTab != null)
            {
                System.Windows.Forms.MessageBox.Show(
                    dataTab.Name + " tab located OK!", "Debugging");
            }

            return(dataTab);
        }          // FindDataTab
示例#6
0
        private void AddToolBoxItems()
        {
            EnvDTE.DTE dte = null;

            object oInstallPath = Context.Parameters["InstallPath"];

            if (oInstallPath == null)
            {
                System.Windows.Forms.MessageBox.Show(
                    "InstallPath is null.  Exiting...", "Debugging");
                return;
            }
            string installPath = (string)oInstallPath;
            string dllPath     =
                System.IO.Path.Combine(installPath, "Ingres.Client.dll");

            System.Windows.Forms.MessageBox.Show(
                "dllPath is \"" + dllPath + "\"", "Debugging");


            dte = LoadDTE();              // load the root object of VS.NET
            if (dte == null)
            {
                return;
            }

            try
            {
                EnvDTE.ToolBoxTab dataTab = FindDataTab(dte);;
                if (dataTab == null)
                {
                    dataTab = AddDataTab(dte);
                }
//					return;

                dataTab.Activate();

                RemoveItemFromTab(dataTab, "IngresDataAdapter");
                RemoveItemFromTab(dataTab, "IngresConnection");
                RemoveItemFromTab(dataTab, "IngresCommand");

                AddItemToTab(dataTab, "IngresCommand", dllPath);
                AddItemToTab(dataTab, "IngresConnection", dllPath);
                AddItemToTab(dataTab, "IngresDataAdapter", dllPath);
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(
                    "Ingres .NET Data Provider " +
                    "Install.AddToolBoxItems threw Exception" +
                    ex.ToString() + ".  Continuing...",
                    "Ingres .NET Data Provider Install");
            }
            finally
            {
                try
                {
                    if (dte != null)
                    {
                        dte.Quit();                          // shut down the IDE
                        System.Windows.Forms.MessageBox.Show(
                            "EnvDTE Quit complete", "Debugging");
                    }
                }
                catch (Exception) {}
            }
        }          // AddToolBoxItems