Application Button
sd-add-application-button
sd-remove-application-button
sd-switch-application
sd-get-current-application
Concept
The Application Button allows switching between complementary
applications and Creo Elements/Direct Modeling. Each application is
responsible for modifications of Creo Elements/Direct Modeling's default
User Interface and for the correct cleanup after returning from the
complementary application, i.e. restoration of Creo Elements/Direct
Modeling's default User Interface.
After each application switch the event *SD-SWITCH-APPLICATION-EVENT*
is processed. Subscribe any function to this event to do additional cleanup
work for specific applications.
The application button appears in the Application ribbon tab. The
button of the active application gets pressed and in addition to that the
main Creo Elements/Direct Modeling window title changes to the name of the
activated application (here 3D Documentation).
The Application tab provides a fast access to switch between
different applications.
SD-ADD-APPLICATION-BUTTON [function]
(sd-add-application-button name
:icon icon
:activateAction LISP-form
:cleanupAction LISP-form)
- Description:
-
Creates a new application button in the Application ribbon
tab.
Note: If you create a button for a new application, make sure to
announce the application before this call by calling sd-add-application-data.
With the definition of ribbon tabs the application to which it belongs
is defined. Switching of an application automatically shows and hides
corresponding ribbon tabs.
- Parameters:
-
- name {STRING}
- Name of the application as handle. If another application button
with the same name exists, this button will be destroyed silently.
It is not possible to destroy or change the Creo Elements/Direct
Modeling application button.
- :icon {STRING}
- Relative path to optional icon. The icon is displayed in the
'Application' ribbon tab in the 'Add-On' ribbon group.
- :activateAction {quoted LISP form}
- LISP Form which will be evaluated when the user hits this
application button. Here the new application can modify Creo
Elements/Direct Modeling's default User Interface and can add new UI
components.
- :cleanupAction {quoted LISP form}
- LISP Form which will be evaluated when the user selects another
application out of the application tab or he returns to the core
application Modeling. The programmer of this application is
responsible to restorate Creo Elements/Direct Modeling's UI in this
function, that means he must undo all his modifications and additions.
This is not true for the ribbon tabs. They are switched by system
functionality.
- Return Value:
-
- t - success
- nil - failure
- Example:
-
(sd-add-application-button "Test-Application"
:icon "Addins/addin_default")
- See Also:
-
- sd-fluentui-add-ribbon-tab
- sd-fluentui-show-ribbon-tab-in-application
- sd-fluentui-hide-ribbon-tab-in-application
SD-REMOVE-APPLICATION-BUTTON [function]
(sd-remove-application-button name)
- Description:
-
Removes an application button from the Application ribbon tab. If
this application button was the current application button Creo
Elements/Direct Modeling switches automatically to the Modeling
application.
- Parameters:
-
name {STRING} - Name of the application
- Return Value:
- t - success
- nil - failure
SD-SWITCH-APPLICATION [function]
(sd-switch-application name)
- Description:
-
Switches to the application with name name if it exists. The
application button will be set accordingly. The event *SD-SWITCH-APPLICATION-EVENT*
is processed as well.
- Parameters:
-
- name {STRING}
- Name of the application where to switch to. Same as in sd-add-application-button.
- Return Value:
-
- t - success
- nil - failure
- Example:
-
(defun my-application-switch-notification (from to)
(format t "~%Application switched from ~S to ~S" from to))
(sd-subscribe-event *SD-SWITCH-APPLICATION-EVENT* 'my-application-switch-notification)
(sd-switch-application "SheetAdvisor")
SD-GET-CURRENT-APPLICATION [function]
(sd-get-current-application)
- Description:
-
Returns the name of the current application. If you are in the core Creo
Elements/Direct Modeling application, "SolidDesigner" will be
returned.
- Parameters:
-
- Return Value:
-
- name {STRING} - The name of the current application
© 2023 Parametric
Technology GmbH
(a subsidiary of PTC Inc.), All Rights Reserved |