summaryrefslogtreecommitdiff
path: root/src/gui/panels/panel.h
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2016-03-08 21:44:52 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2016-03-08 21:46:19 (GMT)
commit235b34006d734d55333a182ffd8bbe7fbf8f54bc (patch)
treef1c8f75391537c8c187aea46c16b3d2642c92107 /src/gui/panels/panel.h
parent02e978d601cdcf2ea9bb39ae21207c3b97d16e22 (diff)
Loaded a dynamic list of dockable panels in the View menu.
Diffstat (limited to 'src/gui/panels/panel.h')
-rw-r--r--src/gui/panels/panel.h46
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 */