BEAST/BSE - Better Audio System and Sound Engine  0.9.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
gxkrackeditor.hh
Go to the documentation of this file.
1  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
2 #ifndef __GXK_RACK_EDITOR_H__
3 #define __GXK_RACK_EDITOR_H__
4 
5 #include <gxk/gxkracktable.hh>
6 
7 G_BEGIN_DECLS
8 
9 struct _GxkRackEditor {
10  GdkWindow *iwindow;
11  gint rfx, rfy, rfw, rfh;
12  /* child resizing windows */
13  GdkWindow *crq1, *crq2, *crq3, *crq4; /* corner windows */
14  GdkWindow *crb1, *crb2, *crb3, *crb4; /* bar windows: 1=upper, 2=right, 3=bottom 4=left */
15  /* dragging */
16  guint grabbing : 1;
17  GtkWidget *drag_child;
18  /* corners: 1=top-left, 2=top-right, 3=bottom-left, 4=bottom-right */
19  gint drag_corner, drag_x, drag_y;
20  gint drag_col, drag_row, drag_hspan, drag_vspan;
21 };
22 
23 
24 /* --- prototypes --- */
25 void gxk_rack_table_set_edit_mode (GxkRackTable *self,
26  gboolean enable_editing);
27 gboolean gxk_rack_table_check_cell (GxkRackTable *self,
28  guint col,
29  guint row);
30 gboolean gxk_rack_table_check_area (GxkRackTable *self,
31  gboolean framed,
32  guint col,
33  guint row,
34  guint hspan,
35  guint vspan,
36  GtkWidget *exempt);
37 gboolean gxk_rack_table_expand_rect (GxkRackTable *self,
38  guint col,
39  guint row,
40  guint *hspan,
41  guint *vspan);
42 
43 
44 /* --- implementation details --- */
45 void gxk_rack_table_destroy_editor (GxkRackTable *self);
46 gboolean gxk_rack_table_handle_enter_notify (GxkRackTable *self,
47  GdkEventCrossing *event);
48 gboolean gxk_rack_table_handle_button_press (GxkRackTable *self,
49  GdkEventButton *event);
50 gboolean gxk_rack_table_handle_motion_notify (GxkRackTable *self,
51  GdkEventMotion *event);
52 gboolean gxk_rack_table_handle_button_release (GxkRackTable *self,
53  GdkEventButton *event);
54 gboolean gxk_rack_table_handle_leave_notify (GxkRackTable *self,
55  GdkEventCrossing *event);
56 void gxk_rack_table_adjust_editor (GxkRackTable *self);
57 void gxk_rack_table_unmap_editor (GxkRackTable *self);
58 
59 
60 G_END_DECLS
61 
62 #endif /* __GXK_RACK_EDITOR_H__ */
Definition: gxkrackeditor.hh:9