|  |  |  | Totem Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | ||||
#include <totem-plugin.h> #define TOTEM_PLUGIN_REGISTER (TYPE_NAME, TypeName, type_name) char * totem_plugin_find_file (const char *plugin_name,const char *file); GtkBuilder * totem_plugin_load_interface (const char *plugin_name,const char *name,gboolean fatal,GtkWindow *parent,gpointer user_data); char ** totem_get_plugin_paths (void);
TotemPlugin is a general-purpose architecture for adding plugins to Totem, with derived support for different programming languages.
#define TOTEM_PLUGIN_REGISTER(TYPE_NAME, TypeName, type_name)
Registers a plugin with the Totem plugin system, including registering the type specified in the parameters and declaring its activate and deactivate functions.
| 
 | the name of the plugin type, in UPPER_CASE | 
| 
 | the name of the plugin type, in CamelCase | 
| 
 | the name of the plugin type, in lower_case | 
char * totem_plugin_find_file (const char *plugin_name,const char *file);
Finds the specified file by looking in the plugin paths
listed by totem_get_plugin_paths() and then in the system
Totem data directory.
This should be used by plugins to find plugin-specific resource files.
| 
 | the plugin name | 
| 
 | the file to find | 
| Returns : | a newly-allocated absolute path for the file, or NULL | 
GtkBuilder * totem_plugin_load_interface (const char *plugin_name,const char *name,gboolean fatal,GtkWindow *parent,gpointer user_data);
Loads an interface file (GtkBuilder UI file) for a plugin, given its filename and assuming it's installed in the plugin's data directory.
This should be used instead of attempting to load interfaces manually in plugins.
| 
 | the plugin name | 
| 
 | interface filename | 
| 
 | TRUEif it's a fatal error if the interface can't be loaded | 
| 
 | the interface's parent GtkWindow | 
| 
 | a pointer to be passed to each signal handler in the interface when they're called | 
| Returns : | the GtkBuilder instance for the interface |