Remove the gsheet-row-* modules and replaced with psppire-axis-*
[pspp-builds.git] / lib / gtksheet / psppire-axis.h
index ef4b2908ab0f99b35954d5ebb3e879102c745bef..4ec23137967b9d442cdb1bd7b30d81542cc1b2bc 100644 (file)
@@ -27,6 +27,7 @@
 G_BEGIN_DECLS
 
 
+
 /* --- type macros --- */
 #define G_TYPE_PSPPIRE_AXIS              (psppire_axis_get_type ())
 #define PSPPIRE_AXIS(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_PSPPIRE_AXIS, PsppireAxis))
@@ -36,20 +37,14 @@ G_BEGIN_DECLS
 #define PSPPIRE_AXIS_GET_CLASS(obj)    (G_TYPE_INSTANCE_GET_CLASS ((obj), G_TYPE_PSPPIRE_AXIS, PsppireAxisClass))
 
 
-
 /* --- typedefs & structures --- */
 typedef struct _PsppireAxis       PsppireAxis;
 typedef struct _PsppireAxisClass PsppireAxisClass;
 
-struct pool;
-
 struct _PsppireAxis
 {
   GObject             parent;
 
-  struct tower tower;
-  struct pool *pool;
-
   glong min_extent;
   gint default_size;
 };
@@ -59,34 +54,46 @@ struct _PsppireAxisClass
   GObjectClass parent_class;
 };
 
+
 GType          psppire_axis_get_type (void);
 
-PsppireAxis*   psppire_axis_new (void);
 
 \f
-/* Interface between sheet and axis */
 
-gint psppire_axis_unit_size (PsppireAxis *a, gint unit);
+GType psppire_axis_iface_get_type (void);
+
+#define PSPPIRE_TYPE_AXIS_IFACE (psppire_axis_iface_get_type ())
 
-gint psppire_axis_unit_count (PsppireAxis *a);
+typedef struct _PsppireAxisIface PsppireAxisIface;
+
+struct _PsppireAxisIface
+{
+  GTypeInterface g_iface;
 
-glong psppire_axis_pixel_start (PsppireAxis *a, gint unit);
 
-gint psppire_axis_get_unit_at_pixel (PsppireAxis *a, glong pixel);
+  /* Virtual Table */
 
+  gint  (*unit_size) (const PsppireAxis *a, gint unit);
 
+  gint  (*unit_count) (const PsppireAxis *a);
 
-/* Interface between axis and model */
+  glong (*pixel_start) (const PsppireAxis *a, gint unit);
 
-void psppire_axis_clear (PsppireAxis *a);
+  gint  (*get_unit_at_pixel) (const PsppireAxis *a, glong pixel);
+
+  glong (*total_size ) (const PsppireAxis *a);
+};
+
+
+/* Interface between sheet and axis */
 
-void psppire_axis_append (PsppireAxis *a, gint size);
+gint psppire_axis_unit_size (const PsppireAxis *a, gint unit);
 
-void psppire_axis_insert (PsppireAxis *a, gint size, gint posn);
+gint psppire_axis_unit_count (const PsppireAxis *a);
 
-void psppire_axis_remove (PsppireAxis *a, gint posn);
+glong psppire_axis_pixel_start (const PsppireAxis *a, gint unit);
 
-void psppire_axis_resize_unit (PsppireAxis *a, gint size, gint posn);
+gint psppire_axis_get_unit_at_pixel (const PsppireAxis *a, glong pixel);
 
 
 G_END_DECLS