Ardour  9.0-pre0-582-g084a23a80d
gtktoolpalette.h
Go to the documentation of this file.
1 /* GtkToolPalette -- A tool palette with categories and DnD support
2  * Copyright (C) 2008 Openismus GmbH
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17  *
18  * Authors:
19  * Mathias Hasselmann
20  */
21 
22 #ifndef __GTK_TOOL_PALETTE_H__
23 #define __GTK_TOOL_PALETTE_H__
24 
25 #if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
26 #error "Only <gtk/gtk.h> can be included directly."
27 #endif
28 
29 #include <gtk/gtkcontainer.h>
30 #include <gtk/gtkdnd.h>
31 #include <gtk/gtktoolitem.h>
32 
33 G_BEGIN_DECLS
34 
35 #define GTK_TYPE_TOOL_PALETTE (gtk_tool_palette_get_type ())
36 #define GTK_TOOL_PALETTE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GTK_TYPE_TOOL_PALETTE, GtkToolPalette))
37 #define GTK_TOOL_PALETTE_CLASS(cls) (G_TYPE_CHECK_CLASS_CAST (cls, GTK_TYPE_TOOL_PALETTE, GtkToolPaletteClass))
38 #define GTK_IS_TOOL_PALETTE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GTK_TYPE_TOOL_PALETTE))
39 #define GTK_IS_TOOL_PALETTE_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE (obj, GTK_TYPE_TOOL_PALETTE))
40 #define GTK_TOOL_PALETTE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_TOOL_PALETTE, GtkToolPaletteClass))
41 
42 typedef struct _GtkToolPalette GtkToolPalette;
44 typedef struct _GtkToolPalettePrivate GtkToolPalettePrivate;
45 
53 typedef enum /*< flags >*/
54 {
57 }
59 
66 {
69 };
70 
72 {
74 
76  GtkAdjustment *hadjustment,
77  GtkAdjustment *vadjustment);
78 
79  /* Padding for future expansion */
80  void (*_gtk_reserved1) (void);
81  void (*_gtk_reserved2) (void);
82  void (*_gtk_reserved3) (void);
83  void (*_gtk_reserved4) (void);
84  void (*_gtk_reserved5) (void);
85  void (*_gtk_reserved6) (void);
86 };
87 
88 GType gtk_tool_palette_get_type (void) G_GNUC_CONST;
90 
92  GtkToolItemGroup *group,
93  gint position);
95  GtkToolItemGroup *group,
96  gboolean exclusive);
98  GtkToolItemGroup *group,
99  gboolean expand);
100 
102  GtkToolItemGroup *group);
104  GtkToolItemGroup *group);
106  GtkToolItemGroup *group);
107 
109  GtkIconSize icon_size);
112  GtkToolbarStyle style);
114 
117 
119  gint x,
120  gint y);
122  gint x,
123  gint y);
125  const GtkSelectionData *selection);
126 
128  GtkToolPaletteDragTargets targets);
130  GtkWidget *widget,
131  GtkDestDefaults flags,
133  GdkDragAction actions);
134 
137 
140 
141 
142 G_END_DECLS
143 
144 #endif /* __GTK_TOOL_PALETTE_H__ */
GdkDragAction
Definition: gdkdnd.h:41
GtkDestDefaults
Definition: gtkdnd.h:42
GtkToolbarStyle
Definition: gtkenums.h:426
GtkIconSize
Definition: gtkenums.h:143
gboolean gtk_tool_palette_get_exclusive(GtkToolPalette *palette, GtkToolItemGroup *group)
GType gtk_tool_palette_get_type(void) G_GNUC_CONST
void gtk_tool_palette_unset_icon_size(GtkToolPalette *palette)
GtkIconSize gtk_tool_palette_get_icon_size(GtkToolPalette *palette)
GtkWidget * gtk_tool_palette_get_drag_item(GtkToolPalette *palette, const GtkSelectionData *selection)
GtkToolItemGroup * gtk_tool_palette_get_drop_group(GtkToolPalette *palette, gint x, gint y)
GtkToolbarStyle gtk_tool_palette_get_style(GtkToolPalette *palette)
GtkWidget * gtk_tool_palette_new(void)
void gtk_tool_palette_set_icon_size(GtkToolPalette *palette, GtkIconSize icon_size)
void gtk_tool_palette_add_drag_dest(GtkToolPalette *palette, GtkWidget *widget, GtkDestDefaults flags, GtkToolPaletteDragTargets targets, GdkDragAction actions)
const GtkTargetEntry * gtk_tool_palette_get_drag_target_item(void) G_GNUC_CONST
void gtk_tool_palette_set_exclusive(GtkToolPalette *palette, GtkToolItemGroup *group, gboolean exclusive)
const GtkTargetEntry * gtk_tool_palette_get_drag_target_group(void) G_GNUC_CONST
void gtk_tool_palette_set_group_position(GtkToolPalette *palette, GtkToolItemGroup *group, gint position)
void gtk_tool_palette_set_style(GtkToolPalette *palette, GtkToolbarStyle style)
void gtk_tool_palette_set_expand(GtkToolPalette *palette, GtkToolItemGroup *group, gboolean expand)
GtkAdjustment * gtk_tool_palette_get_vadjustment(GtkToolPalette *palette)
gint gtk_tool_palette_get_group_position(GtkToolPalette *palette, GtkToolItemGroup *group)
void gtk_tool_palette_set_drag_source(GtkToolPalette *palette, GtkToolPaletteDragTargets targets)
struct _GtkToolPalettePrivate GtkToolPalettePrivate
void gtk_tool_palette_unset_style(GtkToolPalette *palette)
GtkToolPaletteDragTargets
@ GTK_TOOL_PALETTE_DRAG_GROUPS
@ GTK_TOOL_PALETTE_DRAG_ITEMS
GtkAdjustment * gtk_tool_palette_get_hadjustment(GtkToolPalette *palette)
GtkToolItem * gtk_tool_palette_get_drop_item(GtkToolPalette *palette, gint x, gint y)
gboolean gtk_tool_palette_get_expand(GtkToolPalette *palette, GtkToolItemGroup *group)
void(* _gtk_reserved2)(void)
void(* _gtk_reserved1)(void)
GtkContainerClass parent_class
void(* _gtk_reserved6)(void)
void(* _gtk_reserved5)(void)
void(* set_scroll_adjustments)(GtkWidget *widget, GtkAdjustment *hadjustment, GtkAdjustment *vadjustment)
void(* _gtk_reserved3)(void)
void(* _gtk_reserved4)(void)
GtkToolPalettePrivate * priv
GtkContainer parent_instance
link region and track selection