/* OpenIDA - Outil d'analyse de fichiers binaires * gtkdockpanel.h - prototypes pour la manipulation et l'affichage de panneaux dockables * * Copyright (C) 2009 Cyrille Bagard * * This file is part of OpenIDA. * * OpenIDA is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * OpenIDA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Foobar. If not, see . */ #ifndef _GTKEXT_GTKDOCKPANEL_H #define _GTKEXT_GTKDOCKPANEL_H #include #include "gtkdockitem.h" G_BEGIN_DECLS #define GTK_TYPE_DOCK_PANEL (gtk_dock_panel_get_type()) #define GTK_DOCK_PANEL(obj) GTK_CHECK_CAST(obj, gtk_dock_panel_get_type (), GtkDockPanel) #define GTK_DOCK_PANEL_CLASS(klass) GTK_CHECK_CLASS_CAST(klass, gtk_dock_panel_get_type(), GtkDockPanelClass) #define GTK_IS_DOCK_PANEL(obj) GTK_CHECK_TYPE(obj, gtk_dock_panel_get_type()) typedef struct _GtkDockPanel GtkDockPanel; typedef struct _GtkDockPanelClass GtkDockPanelClass; #include struct _GtkDockPanel { GtkVBox vbox; /* Présence obligatoire en 1er */ GtkLabel *title; /* Title du support principal */ GtkNotebook *notebook; /* Support à onglets */ GList *ditems; /* Panneaux intégrés */ GtkWidget *dropwin; /* Destination des Drag'n Drop */ }; struct _GtkDockPanelClass { GtkVBoxClass parent_class; /* Présence obligatoire en 1er */ /* Signaux */ void (* switch_item) (GtkDockPanel *, GDockItem *); }; /* Détermine le type du composant d'affichage des morceaux. */ GtkType gtk_dock_panel_get_type(void); /* Crée un nouveau composant pour station dockable. */ GtkWidget *gtk_dock_panel_new(void); /* Retrouve un membre du panneau d'après son nom. */ GDockItem *gtk_dock_panel_item_from_name(GtkDockPanel *, const char *); /* Ajoute un paquet d'informations à la station dockable. */ void gtk_dock_panel_add_item(GtkDockPanel *, GDockItem *); /* Supprime un paquet d'informations à la station dockable. */ void gtk_dock_panel_remove_item(GtkDockPanel *, GDockItem *); G_END_DECLS #endif /* _GTKEXT_GTKDOCKPANEL_H */