1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- 2 * 3 * This file is part of the GNOME Devtools Libraries. 4 * 5 * Copyright (C) 2003 Jeroen Zwartepoorte <jeroen@xs4all.nl> 6 * 7 * This library is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU Lesser General Public 9 * License as published by the Free Software Foundation; either 10 * version 2.1 of the License, or (at your option) any later version. 11 * 12 * This library is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * Lesser General Public License for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public 18 * License along with this library; if not, write to the Free Software 19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 */ 21 22 #ifndef __GDL_DOCK_BAR_H__ 23 #define __GDL_DOCK_BAR_H__ 24 25 #include <gtk/gtk.h> 26 27 #include <gdl/gdl-dock.h> 28 29 30 G_BEGIN_DECLS 31 32 /* standard macros */ 33 #define GDL_TYPE_DOCK_BAR (gdl_dock_bar_get_type ()) 34 #define GDL_DOCK_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDL_TYPE_DOCK_BAR, GdlDockBar)) 35 #define GDL_DOCK_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDL_TYPE_DOCK_BAR, GdlDockBarClass)) 36 #define GDL_IS_DOCK_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDL_TYPE_DOCK_BAR)) 37 #define GDL_IS_DOCK_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDL_TYPE_DOCK_BAR)) 38 #define GDL_DOCK_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_DOCK_BAR, GdlDockBarClass)) 39 40 /* data types & structures */ 41 typedef struct _GdlDockBar GdlDockBar; 42 typedef struct _GdlDockBarClass GdlDockBarClass; 43 typedef struct _GdlDockBarPrivate GdlDockBarPrivate; 44 45 /** 46 * GdlDockBarStyle: 47 * @GDL_DOCK_BAR_ICONS: Buttons display only icons in the dockbar. 48 * @GDL_DOCK_BAR_TEXT: Buttons display only text labels in the dockbar. 49 * @GDL_DOCK_BAR_BOTH: Buttons display text and icons in the dockbar. 50 * @GDL_DOCK_BAR_AUTO: identical to @GDL_DOCK_BAR_BOTH. 51 * 52 * Used to customize the appearance of a #GdlDockBar. 53 * 54 **/ 55 typedef enum { 56 GDL_DOCK_BAR_ICONS, 57 GDL_DOCK_BAR_TEXT, 58 GDL_DOCK_BAR_BOTH, 59 GDL_DOCK_BAR_AUTO 60 } GdlDockBarStyle; 61 62 struct _GdlDockBar { 63 GtkBox parent; 64 65 /*< private >*/ 66 #ifndef GDL_DISABLE_DEPRECATED 67 GdlDock *deprecated_dock; 68 #endif 69 GdlDockBarPrivate *priv; 70 }; 71 72 struct _GdlDockBarClass { 73 GtkBoxClass parent_class; 74 }; 75 76 GType gdl_dock_bar_get_type (void); 77 78 GtkWidget *gdl_dock_bar_new (GObject *master); 79 80 void gdl_dock_bar_set_style (GdlDockBar *dockbar, 81 GdlDockBarStyle style); 82 GdlDockBarStyle gdl_dock_bar_get_style (GdlDockBar *dockbar); 83 84 #ifndef GDL_DISABLE_DEPRECATED 85 GtkOrientation gdl_dock_bar_get_orientation (GdlDockBar *dockbar) G_GNUC_DEPRECATED_FOR(gtk_orientable_get_orientation); 86 void gdl_dock_bar_set_orientation (GdlDockBar *dockbar, 87 GtkOrientation orientation) G_GNUC_DEPRECATED_FOR(gtk_orientable_set_orientation); 88 #endif 89 90 G_END_DECLS 91 92 #endif /* __GDL_DOCK_BAR_H__ */ 93