aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/e-table/e-table.h
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@helixcode.com>2000-07-22 04:48:43 +0800
committerChris Lahey <clahey@src.gnome.org>2000-07-22 04:48:43 +0800
commit161076affab5d0779df383e8b3e611749605e330 (patch)
tree5cd68b9301632e1b1432ca4e5ae536d048a77e82 /widgets/e-table/e-table.h
parent908df637f32ce2cb2688062fbe41792608c83e21 (diff)
downloadgsoc2013-evolution-161076affab5d0779df383e8b3e611749605e330.tar.gz
gsoc2013-evolution-161076affab5d0779df383e8b3e611749605e330.tar.zst
gsoc2013-evolution-161076affab5d0779df383e8b3e611749605e330.zip
Added some unused declarations for drag and drop work.
2000-07-21 Christopher James Lahey <clahey@helixcode.com> * e-table.h: Added some unused declarations for drag and drop work. svn path=/trunk/; revision=4267
Diffstat (limited to 'widgets/e-table/e-table.h')
-rw-r--r--widgets/e-table/e-table.h105
1 files changed, 105 insertions, 0 deletions
diff --git a/widgets/e-table/e-table.h b/widgets/e-table/e-table.h
index c4644c7a98..34eb5e921a 100644
--- a/widgets/e-table/e-table.h
+++ b/widgets/e-table/e-table.h
@@ -77,6 +77,57 @@ typedef struct {
void (*set_scroll_adjustments) (ETable *table,
GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment);
+
+ /* Source side drag signals */
+ void (* drag_begin) (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context);
+ void (* drag_end) (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context);
+ void (* drag_data_get) (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context,
+ GtkSelectionData *selection_data,
+ guint info,
+ guint time);
+ void (* drag_data_delete) (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context);
+
+ /* Target side drag signals */
+ void (* drag_leave) (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context,
+ guint time);
+ gboolean (* drag_motion) (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context,
+ gint x,
+ gint y,
+ guint time);
+ gboolean (* drag_drop) (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context,
+ gint x,
+ gint y,
+ guint time);
+ void (* drag_data_received) (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context,
+ gint x,
+ gint y,
+ GtkSelectionData *selection_data,
+ guint info,
+ guint time);
} ETableClass;
GtkType e_table_get_type (void);
@@ -106,6 +157,60 @@ void e_table_selected_row_foreach (ETable *e_table,
gpointer closure);
EPrintable *e_table_get_printable (ETable *e_table);
+
+/* Drag & drop stuff. */
+/* Target */
+void e_table_drag_get_data (ETable *table,
+ int row,
+ int col,
+ GdkDragContext *context,
+ GdkAtom target,
+ guint32 time);
+
+void e_table_drag_highlight (ETable *table,
+ int row,
+ int col); /* col == -1 to highlight entire row. */
+void e_table_drag_unhighlight (ETable *table);
+
+void e_table_drag_dest_set (ETable *table,
+ GtkDestDefaults flags,
+ const GtkTargetEntry *targets,
+ gint n_targets,
+ GdkDragAction actions);
+
+void e_table_drag_dest_set_proxy (ETable *table,
+ GdkWindow *proxy_window,
+ GdkDragProtocol protocol,
+ gboolean use_coordinates);
+
+/* There probably should be functions for setting the targets
+ * as a GtkTargetList
+ */
+
+void e_table_drag_dest_unset (GtkWidget *widget);
+
+/* Source side */
+
+void e_table_drag_source_set (ETable *table,
+ GdkModifierType start_button_mask,
+ const GtkTargetEntry *targets,
+ gint n_targets,
+ GdkDragAction actions);
+
+void e_table_drag_source_unset (ETable *table);
+
+/* There probably should be functions for setting the targets
+ * as a GtkTargetList
+ */
+
+GdkDragContext *e_table_drag_begin (ETable *table,
+ int row,
+ int col,
+ GtkTargetList *targets,
+ GdkDragAction actions,
+ gint button,
+ GdkEvent *event);
+
END_GNOME_DECLS
#endif /* _E_TABLE_H_ */