//initial the changeProcessor public void Execute(Application application, object changeDefinition, Inventor._Document document) { //create instance of ChangeProcessor class m_changeProcessor = new ValveBlockDesign.ChangeProcessor(); //set the parent to get the call back when change processor terminates m_changeProcessor.SetParentRequest(this); //connet change processor m_changeProcessor.Connect(application, changeDefinition, document); }
public void Connect(Application application, object changeDefinition, Inventor._Document document) { //get the change manager object ChangeManager oChangeManager = application.ChangeManager; //get the change definitions collection for this AddIn ChangeDefinitions oChangeDefinitions = oChangeManager["{c29d5be2-c9f7-4783-9191-5070d4944568}"]; //create the change processor associated with the change definition m_changeProcessor = oChangeDefinitions[changeDefinition].CreateChangeProcessor(); //connect event handler in order to receive change processor events m_changeProcessor_OnExecute_Delegate = new ChangeProcessorSink_OnExecuteEventHandler(ChangeProcessorEvnets_OnExecute); m_changeProcessor.OnExecute += m_changeProcessor_OnExecute_Delegate; m_changeProcessor_OnTerminate_Delegate = new ChangeProcessorSink_OnTerminateEventHandler(ChangeProcessorEvnets_OnTerminate); m_changeProcessor.OnTerminate += m_changeProcessor_OnTerminate_Delegate; //execute the change processor m_changeProcessor.Execute(document); }
//----------------------------------------------------------------------------- //----- Implementation of ChangeProcessor Events sink methods //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- public void ChangeProcessorEvnets_OnExecute(Inventor._Document document, NameValueMap context, ref bool succeeded) { m_parentRequest.OnExecute(document, context, succeeded); }
public void ExecuteChangeRequest(ValveBlockDesign.ChangeRequest changeRequest, object changeDefinition, Inventor._Document document) { changeRequest.Execute(m_inventorApplication, changeDefinition, document); }
private void m_ApplicationEvents_OnOpenDocument(Inventor._Document DocumentObject, string FullDocumentName, Inventor.EventTimingEnum BeforeOrAfter, Inventor.NameValueMap Context, Inventor.HandlingCodeEnum HandlingCode) { System.Windows.Forms.MessageBox.Show((string)("OnOpenDocument: " + DocumentObject.DisplayName)); }