summaryrefslogtreecommitdiff
path: root/packages/gtk2/src/gtk+/gtk/gtkruler.inc
diff options
context:
space:
mode:
Diffstat (limited to 'packages/gtk2/src/gtk+/gtk/gtkruler.inc')
-rw-r--r--packages/gtk2/src/gtk+/gtk/gtkruler.inc124
1 files changed, 124 insertions, 0 deletions
diff --git a/packages/gtk2/src/gtk+/gtk/gtkruler.inc b/packages/gtk2/src/gtk+/gtk/gtkruler.inc
new file mode 100644
index 0000000000..ec9d4c1870
--- /dev/null
+++ b/packages/gtk2/src/gtk+/gtk/gtkruler.inc
@@ -0,0 +1,124 @@
+// included by gtk2.pas
+
+
+{
+ NOTE this widget is considered too specialized/little-used for
+ GTK+, and will in the future be moved to some other package. If
+ your application needs this widget, feel free to use it, as the
+ widget does work and is useful in some applications; it's just not
+ of general interest. However, we are not accepting new features for
+ the widget, and it will eventually move out of the GTK+
+ distribution.
+ }
+
+{$IFDEF read_forward_definitions}
+{$ENDIF read_forward_definitions}
+
+//------------------------------------------------------------------------------
+
+{$IFDEF read_interface_types}
+ PGtkRulerMetric = ^TGtkRulerMetric;
+
+{ All distances below are in 1/72nd's of an inch. (According to
+ Adobe that's a point, but points are really 1/72.27 in.)
+ }
+{ The upper limit of the ruler (in points) }
+{ The lower limit of the ruler }
+{ The position of the mark on the ruler }
+{ The maximum size of the ruler }
+ PGtkRuler = ^TGtkRuler;
+ TGtkRuler = record
+ widget : TGtkWidget;
+ backing_store : PGdkPixmap;
+ non_gr_exp_gc : PGdkGC;
+ metric : PGtkRulerMetric;
+ xsrc : gint;
+ ysrc : gint;
+ slider_size : gint;
+ lower : gdouble;
+ upper : gdouble;
+ position : gdouble;
+ max_size : gdouble;
+ end;
+
+{ Padding for future expansion }
+ PGtkRulerClass = ^TGtkRulerClass;
+ TGtkRulerClass = record
+ parent_class : TGtkWidgetClass;
+ draw_ticks : procedure (ruler:PGtkRuler); cdecl;
+ draw_pos : procedure (ruler:PGtkRuler); cdecl;
+ _gtk_reserved1 : procedure ; cdecl;
+ _gtk_reserved2 : procedure ; cdecl;
+ _gtk_reserved3 : procedure ; cdecl;
+ _gtk_reserved4 : procedure ; cdecl;
+ end;
+
+{ This should be points_per_unit. This is the size of the unit
+ in 1/72nd's of an inch and has nothing to do with screen pixels }
+{ five possible modes of subdivision }
+ TGtkRulerMetric = record
+ metric_name : Pgchar;
+ abbrev : Pgchar;
+ pixels_per_unit : gdouble;
+ ruler_scale : array[0..9] of gdouble;
+ subdivide : array[0..4] of gint;
+ end;
+
+{$ENDIF read_interface_types}
+
+//------------------------------------------------------------------------------
+
+{$IFDEF read_interface_rest}
+function GTK_TYPE_RULER : GType;
+function GTK_RULER(obj: pointer) : PGtkRuler;
+function GTK_RULER_CLASS(klass: pointer) : PGtkRulerClass;
+function GTK_IS_RULER(obj: pointer) : boolean;
+function GTK_IS_RULER_CLASS(klass: pointer) : boolean;
+function GTK_RULER_GET_CLASS(obj: pointer) : PGtkRulerClass;
+
+
+function gtk_ruler_get_type:TGtkType; cdecl; external gtklib;
+procedure gtk_ruler_set_metric(ruler:PGtkRuler; metric:TGtkMetricType); cdecl; external gtklib;
+procedure gtk_ruler_set_range(ruler:PGtkRuler; lower:gdouble; upper:gdouble; position:gdouble; max_size:gdouble); cdecl; external gtklib;
+procedure gtk_ruler_draw_ticks(ruler:PGtkRuler); cdecl; external gtklib;
+procedure gtk_ruler_draw_pos(ruler:PGtkRuler); cdecl; external gtklib;
+function gtk_ruler_get_metric(ruler:PGtkRuler):TGtkMetricType; cdecl; external gtklib;
+procedure gtk_ruler_get_range(ruler:PGtkRuler; lower:Pgdouble; upper:Pgdouble; position:Pgdouble; max_size:Pgdouble); cdecl; external gtklib;
+{$ENDIF read_interface_rest}
+
+//------------------------------------------------------------------------------
+
+{$IFDEF read_implementation}
+function GTK_TYPE_RULER : GType;
+begin
+ GTK_TYPE_RULER:=gtk_ruler_get_type;
+end;
+
+function GTK_RULER(obj: pointer) : PGtkRuler;
+begin
+ GTK_RULER:=PGtkRuler(GTK_CHECK_CAST(obj,GTK_TYPE_RULER));
+end;
+
+function GTK_RULER_CLASS(klass: pointer) : PGtkRulerClass;
+begin
+ GTK_RULER_CLASS:=PGtkRulerClass(GTK_CHECK_CLASS_CAST(klass,GTK_TYPE_RULER));
+end;
+
+function GTK_IS_RULER(obj: pointer) : boolean;
+begin
+ GTK_IS_RULER:=GTK_CHECK_TYPE(obj,GTK_TYPE_RULER);
+end;
+
+function GTK_IS_RULER_CLASS(klass: pointer) : boolean;
+begin
+ GTK_IS_RULER_CLASS:=GTK_CHECK_CLASS_TYPE(klass,GTK_TYPE_RULER);
+end;
+
+function GTK_RULER_GET_CLASS(obj: pointer) : PGtkRulerClass;
+begin
+ GTK_RULER_GET_CLASS:=PGtkRulerClass(GTK_CHECK_GET_CLASS(obj,GTK_TYPE_RULER));
+end;
+
+{$ENDIF read_implementation}
+// included by gtk2.pas
+