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 */
22 #ifndef __GDL_DOCK_BAR_H__
23 #define __GDL_DOCK_BAR_H__
25 #include <gtk/gtkvbox.h>
26 #include "libgdl/gdl-dock.h"
28 G_BEGIN_DECLS
30 /* standard macros */
31 #define GDL_TYPE_DOCK_BAR (gdl_dock_bar_get_type ())
32 #define GDL_DOCK_BAR(obj) (GTK_CHECK_CAST ((obj), GDL_TYPE_DOCK_BAR, GdlDockBar))
33 #define GDL_DOCK_BAR_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GDL_TYPE_DOCK_BAR, GdlDockBarClass))
34 #define GDL_IS_DOCK_BAR(obj) (GTK_CHECK_TYPE ((obj), GDL_TYPE_DOCK_BAR))
35 #define GDL_IS_DOCK_BAR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GDL_TYPE_DOCK_BAR))
36 #define GDL_DOCK_BAR_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), GTK_TYPE_DOCK_BAR, GdlDockBarClass))
38 /* data types & structures */
39 typedef struct _GdlDockBar GdlDockBar;
40 typedef struct _GdlDockBarClass GdlDockBarClass;
41 typedef struct _GdlDockBarPrivate GdlDockBarPrivate;
43 typedef enum {
44 GDL_DOCK_BAR_ICONS,
45 GDL_DOCK_BAR_TEXT,
46 GDL_DOCK_BAR_BOTH,
47 GDL_DOCK_BAR_AUTO
48 } GdlDockBarStyle;
50 struct _GdlDockBar {
51 GtkBox parent;
53 GdlDock *dock;
55 GdlDockBarPrivate *_priv;
56 };
58 struct _GdlDockBarClass {
59 GtkVBoxClass parent_class;
60 };
62 GType gdl_dock_bar_get_type (void);
64 GtkWidget *gdl_dock_bar_new (GdlDock *dock);
66 GtkOrientation gdl_dock_bar_get_orientation (GdlDockBar *dockbar);
67 void gdl_dock_bar_set_orientation (GdlDockBar *dockbar,
68 GtkOrientation orientation);
69 void gdl_dock_bar_set_style (GdlDockBar *dockbar,
70 GdlDockBarStyle style);
71 GdlDockBarStyle gdl_dock_bar_get_style (GdlDockBar *dockbar);
73 G_END_DECLS
75 #endif /* __GDL_DOCK_BAR_H__ */