]> Pileus Git - grits/blobdiff - src/objects/grits-object.h
Add cursor support to GritsObject
[grits] / src / objects / grits-object.h
index d7b8b03b460f64128e5ce5f80bc902f2b1266024..9969278b5114891034bb9817cbd692b698d2c29c 100644 (file)
@@ -57,6 +57,7 @@ struct _GritsObject {
        guint32      skip;   // Bit mask of safe operations
 
        GritsState   state;  // Internal, used for picking
+       GdkCursor   *cursor; // Internal, cached cursor
 };
 
 struct _GritsObjectClass {
@@ -77,8 +78,8 @@ void grits_object_hide(GritsObject *object, gboolean hidden);
 
 /* Interal, used by grits_opengl */
 void grits_object_pick(GritsObject *object, GritsOpenGL *opengl);
-void grits_object_set_pointer(GritsObject *object, gboolean selected);
-void grits_object_event(GritsObject *object, GdkEvent *event);
+gboolean grits_object_set_pointer(GritsObject *object, GdkEvent *event, gboolean selected);
+gboolean grits_object_event(GritsObject *object, GdkEvent *event);
 
 /**
  * grits_object_queue_draw:
@@ -88,6 +89,15 @@ void grits_object_event(GritsObject *object, GdkEvent *event);
  */
 void grits_object_queue_draw(GritsObject *object);
 
+/**
+ * grits_object_set_cursor:
+ * @object: The #GritsObject to set the cursor for
+ * @cursor: The cursor to use when the object is hovered over
+ *
+ * Causes the cursor to use a particular icon when located over a given object
+ */
+void grits_object_set_cursor(GritsObject *object, GdkCursorType cursor);
+
 /**
  * grits_object_center:
  * @object: The #GritsObject to get the center of