diff options
Diffstat (limited to 'src/gui/panels/panel.h')
-rw-r--r-- | src/gui/panels/panel.h | 46 |
1 files changed, 45 insertions, 1 deletions
diff --git a/src/gui/panels/panel.h b/src/gui/panels/panel.h index 0bf5cb5..baf5fe7 100644 --- a/src/gui/panels/panel.h +++ b/src/gui/panels/panel.h @@ -26,6 +26,9 @@ #define _GUI_PANELS_PANEL_H +#include <stdbool.h> + + #include "../editem.h" @@ -45,11 +48,31 @@ typedef struct _GPanelItem GPanelItem; typedef struct _GPanelItemClass GPanelItemClass; +/* Types de panneaux pour éditeur */ +typedef enum _PanelItemPersonality +{ + PIP_INVALID, /* Information non initialisée */ + + PIP_SINGLETON, /* Instance unique */ + PIP_BINARY_VIEW, /* Affichage d'un binaire */ + PIP_OTHER, /* Reste du monde */ + + PIP_COUNT + +} PanelItemPersonality; + + /* Indique le type défini pour un élément destiné à un panneau. */ GType g_panel_item_get_type(void); /* Crée un élément de panneau réactif. */ -GEditorItem *g_panel_item_new(GObject *, const char *, const char *, GtkWidget *, const char *); +GEditorItem *g_panel_item_new(PanelItemPersonality, GObject *, const char *, const char *, GtkWidget *, const char *); + +/* Fournit une indication sur la personnalité du panneau. */ +PanelItemPersonality gtk_panel_item_get_personality(const GPanelItem *); + +/* Indique la définition d'un éventuel raccourci clavier. */ +const char *gtk_panel_item_get_key_bindings(const GPanelItem *); /* Recherche un panneau à partir de son nom court. */ GPanelItem *g_panel_item_get(const char *); @@ -57,11 +80,25 @@ GPanelItem *g_panel_item_get(const char *); /* Place un panneau dans l'ensemble affiché. */ void g_panel_item_dock(GPanelItem *); +/* Indique si le composant repose sur un support de l'éditeur. */ +bool g_panel_item_is_docked(const GPanelItem *); + /* Supprime un panneau de l'ensemble affiché. */ void g_panel_item_undock(GPanelItem *); + + + + +void save_panel_nodes(void); + + + + + + /* ----------------------- PLACEMENTS DES DIFFERENTS PANNEAUX ----------------------- */ @@ -72,5 +109,12 @@ GtkWidget *init_panels2(GCallback, gpointer); void load_main_panels(GObject *); +/* Réalise un traitement sur un panneau de l'éditeur. */ +typedef bool (* handle_panel_item_fc) (GPanelItem *, void *); + +/* Effectue le parcours de tous les panneaux chargés. */ +bool browse_all_item_panels(handle_panel_item_fc, void *); + + #endif /* _GUI_PANELS_PANEL_H */ |