To create a new plugin compatible with "Asset Extended Detail", you must first create a new folder in the "Plugins" folder at the root of the application (the name has no impact), then you must create a child of the class "CyE_AssetExtendedDetail_PluginWidget_Class" for the plugin to work.
This class is a child of an "Editor Utilities Widget", so it allows the display of a widget internally that will be displayed as a tab in the application.
It is recommended not to use a free canvas in the main panel.
After creating your new plugin you need to configure it, to do this you need to access the configuration of the parent class using the "Class Defaults" button.
We can then configure the plugin .
There are several configurations ;
Supported Class [Array name]: This variable allows you to configure the activation of the tab by an asset class filter.
Master : is ignored
Tab Name : this is the name that will be displayed in the tab, you must be careful not to have twice the same name to avoid conflicts.
Close Tab? : if active, allows you to close the tab manually.
Plugin Full Name: is simply the full name of the plugin that will be displayed in the "Plugins" menu.
Plugin Description: is currently useless .
Plugin version : is the version of the plugin .
Any Supported Class : this allows to ignore the class filter, so the tab will always remain active.
Example of a plugin for texture edition .
Example of a plugin for editing asset names, note that the any is checked to not have the class filter.
There are 2 events added that you can use to retrieve the object selected by the basic application, you can also use the reference "Master" to get access to the application directly.
You can also simply use your own system.
Event Update Object : Is called at the time of a new compatible selection (if the class filter is activated).
This event uses the solo selection, if you want to get all the selections you have to use the "Get Selected Assets" function.
Event Clear : Is called if there is no selection.
You can look at the already existing plugins to understand the system of interaction with the program.