示例#1
0
        public Button(string displayName, string internalName, CommandTypesEnum commandType, string clientId, string description, string tooltip, Icon standardIcon, Icon largeIcon, ButtonDisplayEnum buttonDisplayType)
        {
            try
            {
                //get IPictureDisp for icons
                stdole.IPictureDisp standardIconIPictureDisp;
                standardIconIPictureDisp = (stdole.IPictureDisp)Support.IconToIPicture(standardIcon);

                stdole.IPictureDisp largeIconIPictureDisp;
                largeIconIPictureDisp = (stdole.IPictureDisp)Support.IconToIPicture(largeIcon);

                //create button definition
                m_buttonDefinition = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName, internalName, commandType, clientId, description, tooltip, standardIconIPictureDisp, largeIconIPictureDisp, buttonDisplayType);

                //enable the button
                m_buttonDefinition.Enabled = true;

                //connect the button event sink
                ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
                m_buttonDefinition.OnExecute           += ButtonDefinition_OnExecuteEventDelegate;
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
            }
        }
示例#2
0
        public void CreateButtonNoIcon(Application application, string displayName, string internalName, CommandTypesEnum commandType, object clientId, string description, string toolTip, object standardIcon, object largeIcon, ButtonDisplayEnum buttonType, bool autoAddToGUI)
        {
            //store the Inventor application object
            m_inventorApplication = application;

            //create the button definition
            m_buttonDefinition = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(
                displayName,
                internalName,
                commandType,
                clientId,
                description,
                toolTip,
                standardIcon,
                largeIcon,
                buttonType);

            //connect the button events sink
            m_buttonDefinition_OnExecute_Delegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
            m_buttonDefinition.OnExecute         += m_buttonDefinition_OnExecute_Delegate;

            //display button by default if specified
            if (autoAddToGUI)
            {
                m_buttonDefinition.AutoAddToGUI();
            }
        }
        /// <summary>
        /// Create a button from inventor using Image file as icon
        /// </summary>
        /// <param name="app"></param>
        /// <param name="displayName"></param>
        /// <param name="internalName"></param>
        /// <param name="commandType"></param>
        /// <param name="clientId"></param>
        /// <param name="description"></param>
        /// <param name="tooltip"></param>
        /// <param name="standardIcon"></param>
        /// <param name="largeIcon"></param>
        /// <param name="buttonDisplayType"></param>
        public Button(Inventor.Application app,
                      string displayName,
                      string internalName,
                      CommandTypesEnum commandType,
                      string clientId,
                      string description,
                      string tooltip,
                      object standardIcon,
                      object largeIcon,
                      ButtonDisplayEnum buttonDisplayType)
        {
            try
            {
                _buttonDefinition = app.CommandManager
                                    .ControlDefinitions
                                    .AddButtonDefinition(displayName,
                                                         internalName,
                                                         commandType,
                                                         clientId,
                                                         description,
                                                         tooltip,
                                                         standardIcon,
                                                         largeIcon,
                                                         buttonDisplayType);

                _buttonDefinition.Enabled         = true;
                _buttonDef_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(Button_OnExecute);
                _buttonDefinition.OnExecute      += _buttonDef_OnExecuteEventDelegate;
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
                throw new ApplicationException(ex.Message);
            }
        }
示例#4
0
        public Button(string displayName, string internalName, CommandTypesEnum commandType, string clientId, string description, string tooltip, Icon standardIcon, Icon largeIcon, ButtonDisplayEnum buttonDisplayType)
        {
            try
            {
                //get IPictureDisp for icons
                stdole.IPictureDisp standardIconIPictureDisp;
                standardIconIPictureDisp = (stdole.IPictureDisp)Support.IconToIPicture(standardIcon);

                stdole.IPictureDisp largeIconIPictureDisp;
                largeIconIPictureDisp = (stdole.IPictureDisp)Support.IconToIPicture(largeIcon);

                //create button definition
                m_buttonDefinition = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName, internalName, commandType, clientId, description, tooltip, standardIconIPictureDisp , largeIconIPictureDisp, buttonDisplayType);

                //enable the button
                m_buttonDefinition.Enabled = true;

                //connect the button event sink
                ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
                m_buttonDefinition.OnExecute += ButtonDefinition_OnExecuteEventDelegate;
            }
            catch(Exception e)
            {
                MessageBox.Show(e.ToString());
            }
        }
示例#5
0
 public Button(string DisplayName, string internalName, string clientId, string description, string tooltip, Icon standarticon, Icon largeIcon, string catName = "CSharp")
 {
     try
     {
         stdole.IPictureDisp standartIconIPictureDisp;
         standartIconIPictureDisp = OleCreateConverter.ImageToPictureDisp(standarticon.ToBitmap());
         stdole.IPictureDisp largeIconIPictureDisp;
         largeIconIPictureDisp = OleCreateConverter.ImageToPictureDisp(largeIcon.ToBitmap());
         m_buttonDefinition    = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(DisplayName,
                                                                                                             "Autodesk:Macros:" + internalName, CommandTypesEnum.kNonShapeEditCmdType, clientId, description, tooltip, standartIconIPictureDisp,
                                                                                                             largeIconIPictureDisp, ButtonDisplayEnum.kDisplayTextInLearningMode);
         m_buttonDefinition.Enabled = true;
         ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
         m_buttonDefinition.OnExecute           += ButtonDefinition_OnExecuteEventDelegate;
         if (catName != "")
         {
             CommandCategory cat = u.get <CommandCategory>(m_inventorApplication.CommandManager.CommandCategories, c => c.DisplayName == catName) ??
                                   m_inventorApplication.CommandManager.CommandCategories.Add(catName, "Autodesk:Macros:" + catName);
             cat.Add(m_buttonDefinition);
         }
     }
     catch (System.Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
示例#6
0
        public McMasterButton(StandardAddInServer s)
        {
            _stAddIn = s;
            mv       = new MainWindowViewModel();
            Stream myStream = System.Reflection.Assembly.
                              GetExecutingAssembly().GetManifestResourceStream(
                "McMasterAddin.Resources.mcmaster.ico");

            stdole.IPictureDisp largeImage =
                PictureDispConverter.ToIPictureDisp(new Icon(myStream));

            //Button definition
            m_buttonDefinition = _stAddIn.m_invApp.CommandManager.
                                 ControlDefinitions.AddButtonDefinition("Browse",
                                                                        "BrowseButton",
                                                                        CommandTypesEnum.kQueryOnlyCmdType, StandardAddInServer.m_ClientIDstr,
                                                                        "Browse McMaster-Carr Inventory", "Use this to find " +
                                                                        "hardware and other products available on McMaster.com",
                                                                        largeImage, largeImage, ButtonDisplayEnum.kAlwaysDisplayText);

            m_button_Definition_OnExecute_Delegate = new
                                                     ButtonDefinitionSink_OnExecuteEventHandler(
                m_button_OnExecute);
            m_buttonDefinition.OnExecute +=
                m_button_Definition_OnExecute_Delegate;
            m_buttonDefinition.Enabled = true;
        }
示例#7
0
        public Button(string displayName,
                      string internalName,
                      CommandTypesEnum commandType,
                      string clientId,
                      string description,
                      string tooltip,
                      ButtonDisplayEnum buttonDisplayType)
        {
            try
            {
                buttonDefinition = PersistenceManager.InventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName,
                                                                                                                                internalName,
                                                                                                                                commandType,
                                                                                                                                clientId,
                                                                                                                                description,
                                                                                                                                tooltip,
                                                                                                                                Type.Missing,
                                                                                                                                Type.Missing,
                                                                                                                                buttonDisplayType);

                buttonDefinition.Enabled = true;
                ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
                buttonDefinition.OnExecute += ButtonDefinition_OnExecuteEventDelegate;
            }

            catch (Exception e)
            {
                throw new ApplicationException(e.ToString());
            }
        }
示例#8
0
 public Button(string displayName, string internalName, CommandTypesEnum commandType, string clientId, string description, string tooltip, ButtonDisplayEnum buttonDisplayType)
 {
     try
     {
         m_buttonDefinition = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName, "Autodesk:Macros:" + internalName,
                                                                                                          commandType, clientId, description, tooltip,
                                                                                                          Type.Missing, Type.Missing, buttonDisplayType);
         m_buttonDefinition.Enabled = true;
         ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
         m_buttonDefinition.OnExecute           += ButtonDefinition_OnExecuteEventDelegate;
     }
     catch (System.Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
示例#9
0
        public Button(string displayName, string internalName, CommandTypesEnum commandType, string clientId, string description, string tooltip, ButtonDisplayEnum buttonDisplayType)
        {
            try
            {
                //create button definition
                m_buttonDefinition = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName, internalName, commandType, clientId, description, tooltip, Type.Missing, Type.Missing, buttonDisplayType);

                //enable the button
                m_buttonDefinition.Enabled = true;

                //connect the button event sink
                ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
                m_buttonDefinition.OnExecute           += ButtonDefinition_OnExecuteEventDelegate;
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
            }
        }
示例#10
0
        public Button(string displayName, string internalName, CommandTypesEnum commandType, string clientId, string description, string tooltip, ButtonDisplayEnum buttonDisplayType)
        {
            try
            {
                //create button definition
                m_buttonDefinition = m_inventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName, internalName, commandType, clientId, description, tooltip, Type.Missing, Type.Missing, buttonDisplayType);

                //enable the button
                m_buttonDefinition.Enabled = true;

                //connect the button event sink
                ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
                m_buttonDefinition.OnExecute += ButtonDefinition_OnExecuteEventDelegate;
            }
            catch(Exception e)
            {
                MessageBox.Show(e.ToString());
            }
        }
示例#11
0
		public Button(string displayName, 
                      string internalName, 
                      CommandTypesEnum commandType, 
                      string clientId, 
                      string description, 
                      string tooltip, 
                      Icon standardIcon, 
                      Icon largeIcon, 
                      ButtonDisplayEnum buttonDisplayType)
		{
			try
			{
				stdole.IPictureDisp standardIconIPictureDisp;				
				standardIconIPictureDisp = PictureDispConverter.ToIPictureDisp(standardIcon);			
				stdole.IPictureDisp largeIconIPictureDisp;
		        largeIconIPictureDisp = PictureDispConverter.ToIPictureDisp(largeIcon);   
				buttonDefinition = PersistenceManager.InventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName, 
                                                                                                                             internalName, 
                                                                                                                             commandType, 
                                                                                                                             clientId, 
                                                                                                                             description, 
                                                                                                                             tooltip, 
                                                                                                                             standardIconIPictureDisp , 
                                                                                                                             largeIconIPictureDisp, 
                                                                                                                             buttonDisplayType);
												
                buttonDefinition.Enabled = true;			
                ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
                buttonDefinition.OnExecute += ButtonDefinition_OnExecuteEventDelegate;
			}

			catch(Exception e)
			{
                throw new ApplicationException(e.ToString());
			}
		}
示例#12
0
        public Button(string displayName,
                      string internalName,
                      CommandTypesEnum commandType,
                      string clientId,
                      string description,
                      string tooltip,
                      Icon standardIcon,
                      Icon largeIcon,
                      ButtonDisplayEnum buttonDisplayType)
        {
            try
            {
                stdole.IPictureDisp standardIconIPictureDisp;
                standardIconIPictureDisp = PictureDispConverter.ToIPictureDisp(standardIcon);
                stdole.IPictureDisp largeIconIPictureDisp;
                largeIconIPictureDisp = PictureDispConverter.ToIPictureDisp(largeIcon);
                buttonDefinition      = PersistenceManager.InventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName,
                                                                                                                                     internalName,
                                                                                                                                     commandType,
                                                                                                                                     clientId,
                                                                                                                                     description,
                                                                                                                                     tooltip,
                                                                                                                                     standardIconIPictureDisp,
                                                                                                                                     largeIconIPictureDisp,
                                                                                                                                     buttonDisplayType);

                buttonDefinition.Enabled = true;
                ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
                buttonDefinition.OnExecute += ButtonDefinition_OnExecuteEventDelegate;
            }

            catch (Exception e)
            {
                throw new ApplicationException(e.ToString());
            }
        }
示例#13
0
		public Button(string displayName, 
                      string internalName, 
                      CommandTypesEnum commandType, 
                      string clientId, 
                      string description, 
                      string tooltip, 
                      ButtonDisplayEnum buttonDisplayType)
		{
			try
			{			
                buttonDefinition = PersistenceManager.InventorApplication.CommandManager.ControlDefinitions.AddButtonDefinition(displayName, 
                                                                                                                             internalName, 
                                                                                                                             commandType, 
                                                                                                                             clientId, 
                                                                                                                             description, 
                                                                                                                             tooltip, 
                                                                                                                             Type.Missing, 
                                                                                                                             Type.Missing, 
                                                                                                                             buttonDisplayType);
								
                buttonDefinition.Enabled = true;
				ButtonDefinition_OnExecuteEventDelegate = new ButtonDefinitionSink_OnExecuteEventHandler(ButtonDefinition_OnExecute);
                buttonDefinition.OnExecute += ButtonDefinition_OnExecuteEventDelegate;
			}

			catch(Exception e)
			{
                throw new ApplicationException(e.ToString());
			}
		}