Panel Plugin Register Macros

Panel Plugin Register Macros — Register panel plugins that are compiled as modules.

Synopsis

#include <libxfce4panel/libxfce4panel.h>

gboolean            (*XfcePanelPluginCheck)             (GdkScreen *screen);
void                (*XfcePanelPluginFunc)              (XfcePanelPlugin *plugin);
gboolean            (*XfcePanelPluginPreInit)           (gint argc,
                                                         gchar **argv);
#define             XFCE_PANEL_PLUGIN_REGISTER          (construct_func)
#define             XFCE_PANEL_PLUGIN_REGISTER_WITH_CHECK(construct_func,
                                                         check_func)
#define             XFCE_PANEL_PLUGIN_REGISTER_FULL     (construct_func,
                                                         preinit_func,
                                                         check_func)

Description

Macros to register panel plugins that are compiled as modules. Internal or external is defined by the boolean key X-XFCE-Internal in the plugin's .desktop file.

Details

XfcePanelPluginCheck ()

gboolean            (*XfcePanelPluginCheck)             (GdkScreen *screen);

Callback function that is run before creating a plugin. It should return FALSE if the plugin is not available for whatever reason. The function can be given as argument to one of the registration macros.

screen :

the GdkScreen the panel is running on

Returns :

TRUE if the plugin can be started, FALSE otherwise.

XfcePanelPluginFunc ()

void                (*XfcePanelPluginFunc)              (XfcePanelPlugin *plugin);

Callback function to create the plugin contents. It should be given as the argument to the registration macros.

plugin :

an XfcePanelPlugin

XfcePanelPluginPreInit ()

gboolean            (*XfcePanelPluginPreInit)           (gint argc,
                                                         gchar **argv);

Callback function that is run in an external plugin before gtk_init(). It should return FALSE if the plugin is not available for whatever reason. The function can be given as argument to one of the registration macros.

The main purpose of this callback is to allow multithreaded plugins to call g_thread_init().

argc :

number of arguments to the plugin

argv :

argument array

Returns :

TRUE on success, FALSE otherwise.

Since 4.6


XFCE_PANEL_PLUGIN_REGISTER()

#define             XFCE_PANEL_PLUGIN_REGISTER(construct_func)

Register a panel plugin using a construct function. This is the simplest way to register a panel plugin. The construct_func is called everytime a plugin is created.

construct_func :

name of the function that points to an XfcePanelPluginFunc function.

Since 4.8


XFCE_PANEL_PLUGIN_REGISTER_WITH_CHECK()

#define             XFCE_PANEL_PLUGIN_REGISTER_WITH_CHECK(construct_func, check_func)

Register a panel plugin using a construct function. The check_func will be called before the plugin is created. If this function returns FALSE, the plugin won't be added to the panel. For proper feedback, you are responsible for showing a dialog why the plugin is not added to the panel.

construct_func :

name of the function that points to an XfcePanelPluginFunc function.

check_func :

name of the function that points to an XfcePanelPluginCheck function.

Since 4.8


XFCE_PANEL_PLUGIN_REGISTER_FULL()

#define             XFCE_PANEL_PLUGIN_REGISTER_FULL(construct_func, preinit_func, check_func)

Same as calling XFCE_PANEL_DEFINE_PREINIT_FUNC and XFCE_PANEL_PLUGIN_REGISTER_WITH_CHECK. See those macros for more information.

construct_func :

name of the function that points to an XfcePanelPluginFunc function.

preinit_func :

name of the function that points to an XfcePanelPluginPreInit function.

check_func :

name of the function that points to an XfcePanelPluginCheck function.

Since 4.8