]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkrange.h
Grey out arrows if wrap == FALSE and interval borders are reached.
[~andy/gtk] / gtk / gtkrange.h
index ef7b36dea2da711b16c41aa0c58c961ff10f949e..1f9292c4d04fa126aae5d004d85455a1e56eac68 100644 (file)
@@ -12,8 +12,9 @@
  * Library General Public License for more details.
  *
  * You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the Free
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
  */
 #ifndef __GTK_RANGE_H__
 #define __GTK_RANGE_H__
@@ -29,9 +30,11 @@ extern "C" {
 #endif /* __cplusplus */
 
 
-#define GTK_RANGE(obj)          GTK_CHECK_CAST (obj, gtk_range_get_type (), GtkRange)
-#define GTK_RANGE_CLASS(klass)  GTK_CHECK_CLASS_CAST (klass, gtk_range_get_type (), GtkRangeClass)
-#define GTK_IS_RANGE(obj)       GTK_CHECK_TYPE (obj, gtk_range_get_type ())
+#define GTK_TYPE_RANGE            (gtk_range_get_type ())
+#define GTK_RANGE(obj)            (GTK_CHECK_CAST ((obj), GTK_TYPE_RANGE, GtkRange))
+#define GTK_RANGE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_RANGE, GtkRangeClass))
+#define GTK_IS_RANGE(obj)         (GTK_CHECK_TYPE ((obj), GTK_TYPE_RANGE))
+#define GTK_IS_RANGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_RANGE))
 
 
 typedef struct _GtkRange        GtkRange;
@@ -81,7 +84,8 @@ struct _GtkRangeClass
   guint8 step_forw;
   guint8 step_back;
 
-  void (* draw_background) (GtkRange *range);
+  void (* draw_background)  (GtkRange *range);
+  void (* clear_background) (GtkRange *range);
   void (* draw_trough)     (GtkRange *range);
   void (* draw_slider)     (GtkRange *range);
   void (* draw_step_forw)  (GtkRange *range);
@@ -89,7 +93,8 @@ struct _GtkRangeClass
   void (* slider_update)   (GtkRange *range);
   gint (* trough_click)    (GtkRange *range,
                            gint      x,
-                           gint      y);
+                           gint      y,
+                           gfloat   *jump_perc);
   gint (* trough_keys)     (GtkRange *range,
                            GdkEventKey *key,
                            GtkScrollType *scroll,
@@ -101,7 +106,7 @@ struct _GtkRangeClass
 };
 
 
-guint          gtk_range_get_type               (void);
+GtkType        gtk_range_get_type               (void);
 GtkAdjustment* gtk_range_get_adjustment         (GtkRange      *range);
 void           gtk_range_set_update_policy      (GtkRange      *range,
                                                 GtkUpdateType  policy);
@@ -109,6 +114,7 @@ void           gtk_range_set_adjustment         (GtkRange      *range,
                                                 GtkAdjustment *adjustment);
 
 void           gtk_range_draw_background        (GtkRange      *range);
+void           gtk_range_clear_background        (GtkRange      *range);
 void           gtk_range_draw_trough            (GtkRange      *range);
 void           gtk_range_draw_slider            (GtkRange      *range);
 void           gtk_range_draw_step_forw         (GtkRange      *range);
@@ -116,16 +122,19 @@ void           gtk_range_draw_step_back         (GtkRange      *range);
 void           gtk_range_slider_update          (GtkRange      *range);
 gint           gtk_range_trough_click           (GtkRange      *range,
                                                 gint           x,
-                                                gint           y);
+                                                gint           y,
+                                                gfloat        *jump_perc);
 
 void           gtk_range_default_hslider_update (GtkRange      *range);
 void           gtk_range_default_vslider_update (GtkRange      *range);
 gint           gtk_range_default_htrough_click  (GtkRange      *range,
                                                 gint           x,
-                                                gint           y);
+                                                gint           y,
+                                                gfloat        *jump_perc);
 gint           gtk_range_default_vtrough_click  (GtkRange      *range,
                                                 gint           x,
-                                                gint           y);
+                                                gint           y,
+                                                gfloat        *jump_perc);
 void           gtk_range_default_hmotion        (GtkRange      *range,
                                                 gint           xdelta,
                                                 gint           ydelta);