f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm/* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 4; tab-width: 8 -*- */
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm/*
9dc68827cbd515262ecb8d5ae8547d9e82c72e00Jon A. Cruz * gdl-dock-item-grip.h
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm *
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm * Author: Michael Meeks Copyright (C) 2002 Sun Microsystems, Inc.
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm *
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm * Based on BonoboDockItemGrip. Original copyright notice follows.
799f674d1756b6937a578c2f64b7c57fed08a827Liam P. White *
032f369baeef7d4a3b8769997df5dcd6dd874830jfbarraud * Copyright (C) 1998 Ettore Perazzoli
f4a94b19c3c5d7d1e7bd926de1eb7e6c077babb2johanengelen * Copyright (C) 1998 Elliot Lee
f4a94b19c3c5d7d1e7bd926de1eb7e6c077babb2johanengelen * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
f4a94b19c3c5d7d1e7bd926de1eb7e6c077babb2johanengelen * All rights reserved.
f4a94b19c3c5d7d1e7bd926de1eb7e6c077babb2johanengelen *
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm * This library is free software; you can redistribute it and/or
8c39cbeab9949a0a7d6ae66b768a7352019e42f8johanengelen * modify it under the terms of the GNU Library General Public
5c45bb188ab729e501e48732842cb9de6a9813beAlex Valavanis * License as published by the Free Software Foundation; either
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński * version 2 of the License, or (at your option) any later version.
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński *
072916d0ef7dccd696b59381f50bcf776abccefbjohanengelen * This library is distributed in the hope that it will be useful,
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński * but WITHOUT ANY WARRANTY; without even the implied warranty of
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński * Library General Public License for more details.
8d9f5d586a04809427ce1df284a5720112177991cilix *
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński * You should have received a copy of the GNU Library General Public
0563fd55cbad59e8a878e6d4cbbdd8e47f74488djohanengelen * License along with this library; if not, write to the
044d712d4d03f8354962d54e47cfac2346a69ccccilix * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński * Boston, MA 02111-1307, USA.
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński */
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#ifndef _GDL_DOCK_ITEM_GRIP_H_
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#define _GDL_DOCK_ITEM_GRIP_H_
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#include <gtk/gtk.h>
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#include "libgdl/gdl-dock-item.h"
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński
0a75b58e47d3de42550c4f7960e253ea3befc09ajohanengelenG_BEGIN_DECLS
742a1b08138aef8fc3c19730ae48e5477ee43fc5Johan B. C. Engelen
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#define GDL_TYPE_DOCK_ITEM_GRIP (gdl_dock_item_grip_get_type())
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#define GDL_DOCK_ITEM_GRIP(obj) \
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDL_TYPE_DOCK_ITEM_GRIP, GdlDockItemGrip))
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#define GDL_DOCK_ITEM_GRIP_CLASS(klass) \
3515994554d167522343ce57417648b39370ccabcilix (G_TYPE_CHECK_CLASS_CAST ((klass), GDL_TYPE_DOCK_ITEM_GRIP, GdlDockItemGripClass))
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#define GDL_IS_DOCK_ITEM_GRIP(obj) \
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDL_TYPE_DOCK_ITEM_GRIP))
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#define GDL_IS_DOCK_ITEM_GRIP_CLASS(klass) \
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński (G_TYPE_CHECK_CLASS_TYPE ((klass), GDL_TYPE_DOCK_ITEM_GRIP))
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński#define GDL_DOCK_ITEM_GRIP_GET_CLASS(obj) \
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński (G_TYPE_INSTANCE_GET_CLASS ((obj), GDL_TYPE_DOCK_ITEM_GRIP, GdlDockItemGripClass))
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński
4fe8248cd521387d0829c423bf4492e2cbdfd7cdJohan Engelentypedef struct _GdlDockItemGrip GdlDockItemGrip;
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosińskitypedef struct _GdlDockItemGripClass GdlDockItemGripClass;
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosińskitypedef struct _GdlDockItemGripPrivate GdlDockItemGripPrivate;
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosińskistruct _GdlDockItemGrip {
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński GtkContainer parent;
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński GdlDockItem *item;
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński GdkWindow *title_window;
29b712141fb1db0064278da807d8028d9af0ca22Jabiertxof
d10a0baa40c22107b37b2ae2f687b108f5c05d99Liam P. White GdlDockItemGripPrivate *_priv;
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński};
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosińskistruct _GdlDockItemGripClass {
081a89987d4cb46e707c9dd5648a7a24a01a750djfbarraud GtkContainerClass parent_class;
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex Valavanis};
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex Valavanis
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex ValavanisGType gdl_dock_item_grip_get_type (void);
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex ValavanisGtkWidget *gdl_dock_item_grip_new (GdlDockItem *item);
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex Valavanisvoid gdl_dock_item_grip_set_label (GdlDockItemGrip *grip,
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex Valavanis GtkWidget *label);
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex Valavanisvoid gdl_dock_item_grip_hide_handle (GdlDockItemGrip *grip);
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex Valavanisvoid gdl_dock_item_grip_show_handle (GdlDockItemGrip *grip);
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex Valavanis
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex ValavanisG_END_DECLS
d1561c248f49dc3508ae9e6557fc0d371928e394Markus Engel
5e657c265e2687328f5f9c7bf71a4c6b39bb3be9Liam P. White#endif /* _GDL_DOCK_ITEM_GRIP_H_ */
1b3a8414f17dc95fc921d999ea715c99d10dd4aaAlex Valavanis