plugin_list.c File Reference

This file manage plugin list window's behavior. More...

#include <libheraia.h>
Include dependency graph for plugin_list.c:

Go to the source code of this file.

Functions

static gboolean delete_plw_window_event (GtkWidget *widget, GdkEvent *event, gpointer data)
 Signal handler called when the user closes the window.
static void destroy_plw_window (GtkWidget *widget, GdkEvent *event, gpointer data)
 When the window is destroyed (Gtk's doc says that we may never get there).
static void plw_close_clicked (GtkWidget *widget, gpointer data)
 Closing the window effectively.
static void plw_refresh_clicked (GtkWidget *widget, gpointer data)
 Refreshing the window effectively.
static void mw_cmi_plw_toggle (GtkWidget *widget, gpointer data)
 When the toggle button 'Liste des plugins' is toggled !
static void pn_treeview_selection_changed_cb (GtkTreeSelection *selection, gpointer data)
 Function called when the selection changes in the treeview Displays informations about the selected plugin.
static void pn_treeview_double_click (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *col, gpointer data)
 In case of a double click on a plugin name in the treeview.
static void plugin_list_window_connect_signals (heraia_struct_t *main_struct)
 Connecting all signals to the right functions.
static void init_plugin_name_tv (heraia_struct_t *main_struct)
 Function to init the first treeview (plugin names).
static void print_plugin_basics (GtkTextView *textview, heraia_plugin_t *plugin)
 adds to the textview the relevant informations about the plugin basics !
static void print_plugin_interface (GtkTextView *textview, heraia_plugin_t *plugin)
 adds to the textview the relevant informations about the plugin interface (xml) !
static void print_plugin_filter_structure (GtkTextView *textview, heraia_plugin_t *plugin)
 adds to the textview the relevant informations about the plugin filter structure !
static void print_plugin_functions (GtkTextView *textview, heraia_plugin_t *plugin)
 adds to the textview the relevant informations about the plugin functions !
static void print_plugin_info_structure (GtkTextView *textview, heraia_plugin_t *plugin)
 adds to the textview the relevant informations about the plugin info structure !
static void print_plugin_extra_structure (GtkTextView *textview, heraia_plugin_t *plugin)
 adds to the textview the relevant informations about the plugin extra structure !
static void print_plugin_state (GtkTextView *textview, heraia_plugin_t *plugin)
 adds to the textview the relevant informations about the plugin state !
void plugin_list_window_init_interface (heraia_struct_t *main_struct)
 the function to init the plugin_list_window interface

Detailed Description

This file manage plugin list window's behavior.

Definition in file plugin_list.c.


Function Documentation

static gboolean delete_plw_window_event ( GtkWidget *  widget,
GdkEvent *  event,
gpointer  data 
) [static]

Signal handler called when the user closes the window.

Parameters:
widget : calling widget
event : event associated (may be NULL as we don't use this here)
data : MUST be heraia_struct_t *main_struct main structure and not NULL
Returns:
Always returns TRUE in order to propagate the signal

Definition at line 59 of file plugin_list.c.

References plw_close_clicked().

Referenced by plugin_list_window_connect_signals().

Here is the call graph for this function:

Here is the caller graph for this function:

static void destroy_plw_window ( GtkWidget *  widget,
GdkEvent *  event,
gpointer  data 
) [static]

When the window is destroyed (Gtk's doc says that we may never get there).

Parameters:
widget : calling widget
event : event associated (may be NULL as we don't use this here)
data : MUST be heraia_struct_t *main_struct main structure and not NULL

Definition at line 74 of file plugin_list.c.

References plw_close_clicked().

Referenced by plugin_list_window_connect_signals().

Here is the call graph for this function:

Here is the caller graph for this function:

static void init_plugin_name_tv ( heraia_struct_t main_struct  )  [static]

Function to init the first treeview (plugin names).

Parameters:
main_struct : main structure

< Treeview Stuff for rendering

< the text in it.

< plugin interface structure

< plugin list

< Treeview where plugin names are to be displayed

Definition at line 546 of file plugin_list.c.

References heraia_get_widget(), heraia_plugin_t::info, log_message(), xml_t::main, plugin_info_t::name, heraia_struct_t::plugins_list, PNTV_COLUMN_NAME, PNTV_N_COLUMNS, and heraia_struct_t::xmls.

Referenced by plugin_list_window_init_interface(), and plw_refresh_clicked().

Here is the call graph for this function:

Here is the caller graph for this function:

static void mw_cmi_plw_toggle ( GtkWidget *  widget,
gpointer  data 
) [static]

When the toggle button 'Liste des plugins' is toggled !

Parameters:
widget : calling widget (may be NULL as we do not even bother here)
data : MUST be heraia_struct_t *main_struct main structure and not NULL

Definition at line 118 of file plugin_list.c.

References heraia_get_widget(), xml_t::main, move_and_show_dialog_box(), all_window_prop_t::plugin_list, record_and_hide_dialog_box(), heraia_struct_t::win_prop, and heraia_struct_t::xmls.

Referenced by plugin_list_window_connect_signals().

Here is the call graph for this function:

Here is the caller graph for this function:

static void plugin_list_window_connect_signals ( heraia_struct_t main_struct  )  [static]

Connecting all signals to the right functions.

Parameters:
main_struct : main structure

Definition at line 504 of file plugin_list.c.

References delete_plw_window_event(), destroy_plw_window(), heraia_get_widget(), xml_t::main, mw_cmi_plw_toggle(), plw_close_clicked(), plw_refresh_clicked(), pn_treeview_double_click(), pn_treeview_selection_changed_cb(), and heraia_struct_t::xmls.

Referenced by plugin_list_window_init_interface().

Here is the call graph for this function:

Here is the caller graph for this function:

void plugin_list_window_init_interface ( heraia_struct_t main_struct  ) 

the function to init the plugin_list_window interface

Parameters:
main_struct : main structure

Definition at line 597 of file plugin_list.c.

References init_plugin_name_tv(), and plugin_list_window_connect_signals().

Referenced by init_heraia_plugin_system().

Here is the call graph for this function:

Here is the caller graph for this function:

static void plw_close_clicked ( GtkWidget *  widget,
gpointer  data 
) [static]

Closing the window effectively.

Parameters:
widget : calling widget
data : MUST be heraia_struct_t *main_struct main structure and not NULL

Definition at line 86 of file plugin_list.c.

References heraia_get_widget(), xml_t::main, all_window_prop_t::plugin_list, record_and_hide_dialog_box(), heraia_struct_t::win_prop, and heraia_struct_t::xmls.

Referenced by delete_plw_window_event(), destroy_plw_window(), and plugin_list_window_connect_signals().

Here is the call graph for this function:

Here is the caller graph for this function:

static void plw_refresh_clicked ( GtkWidget *  widget,
gpointer  data 
) [static]

Refreshing the window effectively.

Parameters:
widget : calling widget
data : MUST be heraia_struct_t *main_struct main structure and not NULL

Definition at line 102 of file plugin_list.c.

References heraia_get_widget(), init_plugin_name_tv(), kill_text_from_textview(), xml_t::main, and heraia_struct_t::xmls.

Referenced by plugin_list_window_connect_signals().

Here is the call graph for this function:

Here is the caller graph for this function:

static void pn_treeview_double_click ( GtkTreeView *  treeview,
GtkTreePath *  path,
GtkTreeViewColumn *  col,
gpointer  data 
) [static]

In case of a double click on a plugin name in the treeview.

Parameters:
treeview : concerned treeview's widget
path : Something related to a GtkTreePath ! (not used here)
col : concerned column (not used here)
data : user data MUST be a pointer to the heraia_struct_t * structure

Definition at line 467 of file plugin_list.c.

References heraia_plugin_t::cmi_entry, find_plugin_by_name(), heraia_struct_t::plugins_list, PNTV_COLUMN_NAME, and heraia_plugin_t::run_proc.

Referenced by plugin_list_window_connect_signals().

Here is the call graph for this function:

Here is the caller graph for this function:

static void pn_treeview_selection_changed_cb ( GtkTreeSelection *  selection,
gpointer  data 
) [static]

Function called when the selection changes in the treeview Displays informations about the selected plugin.

Parameters:
selection : user selection in the treeview
data : MUST be heraia_struct_t *main_struct main structure (must not be NULL)

Definition at line 424 of file plugin_list.c.

References find_plugin_by_name(), heraia_get_widget(), kill_text_from_textview(), xml_t::main, heraia_struct_t::plugins_list, PNTV_COLUMN_NAME, print_plugin_basics(), print_plugin_extra_structure(), print_plugin_filter_structure(), print_plugin_functions(), print_plugin_info_structure(), print_plugin_interface(), print_plugin_state(), and heraia_struct_t::xmls.

Referenced by plugin_list_window_connect_signals().

Here is the call graph for this function:

Here is the caller graph for this function:

static void print_plugin_basics ( GtkTextView *  textview,
heraia_plugin_t plugin 
) [static]

adds to the textview the relevant informations about the plugin basics !

Parameters:
textview : the specified textview (the one in the window)
plugin : the plugin we want to print information on

Definition at line 326 of file plugin_list.c.

References add_text_to_textview(), plugin_info_t::api_version, heraia_plugin_t::filename, heraia_plugin_t::handle, heraia_plugin_t::info, and heraia_plugin_t::path.

Referenced by pn_treeview_selection_changed_cb().

Here is the call graph for this function:

Here is the caller graph for this function:

static void print_plugin_extra_structure ( GtkTextView *  textview,
heraia_plugin_t plugin 
) [static]

adds to the textview the relevant informations about the plugin extra structure !

Parameters:
textview : the specified textview (the one in the window)
plugin : the plugin we want to print information on

Definition at line 360 of file plugin_list.c.

References add_text_to_textview(), and heraia_plugin_t::extra.

Referenced by pn_treeview_selection_changed_cb().

Here is the call graph for this function:

Here is the caller graph for this function:

static void print_plugin_filter_structure ( GtkTextView *  textview,
heraia_plugin_t plugin 
) [static]

adds to the textview the relevant informations about the plugin filter structure !

Parameters:
textview : the specified textview (the one in the window)
plugin : the plugin we want to print information on

Definition at line 259 of file plugin_list.c.

References add_text_to_textview(), plugin_filter_t::export, heraia_plugin_t::filter, and plugin_filter_t::import.

Referenced by pn_treeview_selection_changed_cb().

Here is the call graph for this function:

Here is the caller graph for this function:

static void print_plugin_functions ( GtkTextView *  textview,
heraia_plugin_t plugin 
) [static]

adds to the textview the relevant informations about the plugin functions !

Parameters:
textview : the specified textview (the one in the window)
plugin : the plugin we want to print information on

Definition at line 216 of file plugin_list.c.

References add_text_to_textview(), heraia_plugin_t::init_proc, heraia_plugin_t::quit_proc, heraia_plugin_t::refresh_proc, and heraia_plugin_t::run_proc.

Referenced by pn_treeview_selection_changed_cb().

Here is the call graph for this function:

Here is the caller graph for this function:

static void print_plugin_info_structure ( GtkTextView *  textview,
heraia_plugin_t plugin 
) [static]

adds to the textview the relevant informations about the plugin info structure !

Parameters:
textview : the specified textview (the one in the window)
plugin : the plugin we want to print information on

Definition at line 148 of file plugin_list.c.

References add_text_to_textview(), plugin_info_t::author, plugin_info_t::description, HERAIA_PLUGIN_ACTION, HERAIA_PLUGIN_FILTER, HERAIA_PLUGIN_UNKNOWN, plugin_info_t::homepage, plugin_info_t::id, heraia_plugin_t::info, plugin_info_t::name, plugin_info_t::priority, plugin_info_t::summary, plugin_info_t::type, and plugin_info_t::version.

Referenced by pn_treeview_selection_changed_cb().

Here is the call graph for this function:

Here is the caller graph for this function:

static void print_plugin_interface ( GtkTextView *  textview,
heraia_plugin_t plugin 
) [static]

adds to the textview the relevant informations about the plugin interface (xml) !

Parameters:
textview : the specified textview (the one in the window)
plugin : the plugin we want to print information on

Definition at line 296 of file plugin_list.c.

References add_text_to_textview(), heraia_plugin_t::cmi_entry, and heraia_plugin_t::xml.

Referenced by pn_treeview_selection_changed_cb().

Here is the call graph for this function:

Here is the caller graph for this function:

static void print_plugin_state ( GtkTextView *  textview,
heraia_plugin_t plugin 
) [static]

adds to the textview the relevant informations about the plugin state !

Parameters:
textview : the specified textview (the one in the window)
plugin : the plugin we want to print information on

Definition at line 382 of file plugin_list.c.

References add_text_to_textview(), PLUGIN_STATE_EXITING, PLUGIN_STATE_INITIALIZING, PLUGIN_STATE_LOADED, PLUGIN_STATE_NEW, PLUGIN_STATE_NONE, PLUGIN_STATE_RUNNING, and heraia_plugin_t::state.

Referenced by pn_treeview_selection_changed_cb().

Here is the call graph for this function:

Here is the caller graph for this function:

Generated on Tue May 11 18:47:14 2010 for Heraia by  doxygen 1.6.3