36 static void pn_treeview_double_click(GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *col, gpointer data);
92 gtk_check_menu_item_set_active(cmi, FALSE);
125 if (gtk_check_menu_item_get_active(cmi) == TRUE)
127 pos = gtk_paned_get_position(paned);
131 gtk_paned_set_position(paned, pos);
150 if (plugin->
info != NULL)
261 if (plugin->
filter != NULL)
309 if (plugin->
xml != NULL)
328 if (plugin->
info != NULL)
338 if (plugin->
path != NULL)
343 if (plugin->
handle != NULL)
363 if (plugin->
extra != NULL)
365 add_text_to_textview(textview, Q_(
"\nThis plugin has an additionnal 'extra' structure (%p) sized %d bytes.\n"),
386 switch (plugin->
state)
427 GtkTreeModel *model = NULL;
433 if (gtk_tree_selection_get_selected(selection, &model, &iter))
474 gboolean active = FALSE;
477 model = gtk_tree_view_get_model(treeview);
479 if (gtk_tree_model_get_iter(model, &iter, path))
486 active = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(plugin->
cmi_entry));
490 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(plugin->
cmi_entry), TRUE);
491 plugin->
run_proc(GTK_WIDGET(treeview), main_struct);
506 GtkTreeSelection *select = NULL;
508 if (main_struct != NULL)
527 gtk_tree_selection_set_mode(select, GTK_SELECTION_SINGLE);
548 GtkListStore *list_store = NULL;
550 GtkCellRenderer *renderer = NULL;
552 GtkTreeViewColumn *column = NULL;
554 GList *p_list = NULL;
555 GtkTreeView *treeview = NULL;
557 if (main_struct != NULL)
565 while (p_list != NULL)
570 gtk_list_store_append(list_store, &iter);
573 p_list = p_list->next;
576 gtk_tree_view_set_model(treeview, GTK_TREE_MODEL(list_store));
582 gtk_tree_view_remove_column(treeview, column);
585 renderer = gtk_cell_renderer_text_new();
586 column = gtk_tree_view_column_new_with_attributes(
"Name", renderer,
"text",
PNTV_COLUMN_NAME, NULL);
587 gtk_tree_view_append_column(treeview, column);
void kill_text_from_textview(GtkTextView *textview)
Kills the text from a textview.
This is the main structure.
void plugin_list_window_init_interface(heraia_struct_t *main_struct)
the function to init the plugin_list_window interface
void add_text_to_textview(GtkTextView *textview, const char *format,...)
adds a text to a textview
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.
RefreshProc refresh_proc
Called when the cursor changes it's position.
heraia_plugin_t * find_plugin_by_name(GList *plugins_list, gchar *name)
Finds the desired plugin by its name and return the plugin structure or NULL.
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 p...
static void plw_refresh_clicked(GtkWidget *widget, gpointer data)
Refreshing the window effectively.
void log_message(heraia_struct_t *main_struct, GLogLevelFlags log_level, const char *format,...)
A function that helps logging a message a the specified level.
static void print_plugin_functions(GtkTextView *textview, heraia_plugin_t *plugin)
adds to the textview the relevant informations about the plugin functions !
GtkBuilder * xml
Eventually the plugin's GtkBuilder XML interface.
window_prop_t * plugin_list
plugin description window
void record_and_hide_dialog_box(GtkWidget *dialog_box, window_prop_t *dialog_prop)
Record position and hide a dialog box.
InitProc init_proc
Called when the application initialy starts up.
static void print_plugin_info_structure(GtkTextView *textview, heraia_plugin_t *plugin)
adds to the textview the relevant informations about the plugin info structure !
all_window_prop_t * win_prop
Keeps window properties.
plugin_info_t * info
The plugin information.
RunProc run_proc
Called to run an interface everytime the plugin is called.
static void mw_cmi_plw_toggle(GtkWidget *widget, gpointer data)
When the toggle button 'Liste des plugins' is toggled !
xml_t * xmls
All the xmls used in the program, loaded at running time.
static void print_plugin_state(GtkTextView *textview, heraia_plugin_t *plugin)
adds to the textview the relevant informations about the plugin state !
static void plw_close_clicked(GtkWidget *widget, gpointer data)
Closing the window effectively.
static void print_plugin_filter_structure(GtkTextView *textview, heraia_plugin_t *plugin)
adds to the textview the relevant informations about the plugin filter structure ! ...
GModule * handle
The module handle.
void * extra
Plugin-specific data.
static void plugin_list_window_connect_signals(heraia_struct_t *main_struct)
Connecting all signals to the right functions.
static gboolean delete_plw_window_event(GtkWidget *widget, GdkEvent *event, gpointer data)
Signal handler called when the user closes the window.
GtkBuilder * main
the main interface xml description
PluginState state
The state of the plugin.
void move_and_show_dialog_box(GtkWidget *dialog_box, window_prop_t *dialog_prop)
Move the dialog box to the wanted position, shows it and says it in the displayed prop...
static void init_plugin_name_tv(heraia_struct_t *main_struct)
Function to init the first treeview (plugin names)
Complete plugin structure.
static void print_plugin_basics(GtkTextView *textview, heraia_plugin_t *plugin)
adds to the textview the relevant informations about the plugin basics !
GList * plugins_list
A list of plugins.
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 destroy_plw_window(GtkWidget *widget, GdkEvent *event, gpointer data)
When the window is destroyed (Gtk's doc says that we may never get there)
This file contains all the definitions and includes all other .h files.
GtkWidget * heraia_get_widget(GtkBuilder *xml, gchar *widget_name)
This is a wrapper to the GtkBuilder xml get widget.
QuitProc quit_proc
Called when the application exits.
plugin_filter_t * filter
The plugin filter.
static void print_plugin_interface(GtkTextView *textview, heraia_plugin_t *plugin)
adds to the textview the relevant informations about the plugin interface (xml) ! ...
char * filename
Filename of the plugin.
char * path
The path to the plugin.
GtkCheckMenuItem * cmi_entry
The CheckMenuItem that may be created in the heraia interface.