Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

gtkenhancedscale.h File Reference

#include <gdk/gdk.h>
#include <gtk/gtkwidget.h>

Include dependency graph for gtkenhancedscale.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define GTK_ENHANCED_SCALE(obj)   GTK_CHECK_CAST (obj, gtk_enhanced_scale_get_type (), GtkEnhancedScale)
#define GTK_ENHANCED_SCALE_CLASS(klass)   GTK_CHECK_CLASS_CAST (klass, gtk_enhanced_scale_get_type (), GtkEnhancedScaleClass)
#define GTK_IS_ENHANCED_SCALE(obj)   GTK_CHECK_TYPE (obj, gtk_enhanced_scale_get_type ())

Typedefs

typedef _GtkEnhancedScale GtkEnhancedScale
typedef _GtkEnhancedScaleClass GtkEnhancedScaleClass

Functions

GtkWidget * gtk_enhanced_scale_new (GtkObject *adjustment[], gint num_adjustments)
GType gtk_enhanced_scale_get_type (void)
void gtk_enhanced_scale_set_breaks (GtkWidget *widget, GArray *breaks)


Define Documentation

#define GTK_ENHANCED_SCALE obj   )     GTK_CHECK_CAST (obj, gtk_enhanced_scale_get_type (), GtkEnhancedScale)
 

Definition at line 36 of file gtkenhancedscale.h.

Referenced by gtk_enhanced_scale_adjustment_value_changed(), gtk_enhanced_scale_button_press(), gtk_enhanced_scale_button_release(), gtk_enhanced_scale_destroy(), gtk_enhanced_scale_draw(), gtk_enhanced_scale_enter_notify(), gtk_enhanced_scale_expose(), gtk_enhanced_scale_key_press(), gtk_enhanced_scale_leave_notify(), gtk_enhanced_scale_motion_notify(), gtk_enhanced_scale_realize(), gtk_enhanced_scale_set_breaks(), gtk_enhanced_scale_size_allocate(), gtk_enhanced_scale_size_request(), gtk_enhanced_scale_style_set(), and gtk_enhanced_scale_unrealize().

#define GTK_ENHANCED_SCALE_CLASS klass   )     GTK_CHECK_CLASS_CAST (klass, gtk_enhanced_scale_get_type (), GtkEnhancedScaleClass)
 

Definition at line 37 of file gtkenhancedscale.h.

#define GTK_IS_ENHANCED_SCALE obj   )     GTK_CHECK_TYPE (obj, gtk_enhanced_scale_get_type ())
 

Definition at line 38 of file gtkenhancedscale.h.

Referenced by gtk_enhanced_scale_button_press(), gtk_enhanced_scale_button_release(), gtk_enhanced_scale_destroy(), gtk_enhanced_scale_draw(), gtk_enhanced_scale_draw_slider(), gtk_enhanced_scale_draw_trough(), gtk_enhanced_scale_enter_notify(), gtk_enhanced_scale_expose(), gtk_enhanced_scale_focus_in(), gtk_enhanced_scale_focus_out(), gtk_enhanced_scale_get_slider_position(), gtk_enhanced_scale_key_press(), gtk_enhanced_scale_leave_notify(), gtk_enhanced_scale_motion_notify(), gtk_enhanced_scale_motion_x(), gtk_enhanced_scale_pos_trough(), gtk_enhanced_scale_realize(), gtk_enhanced_scale_size_allocate(), gtk_enhanced_scale_slider_update(), gtk_enhanced_scale_style_set(), and gtk_enhanced_scale_unrealize().


Typedef Documentation

typedef struct _GtkEnhancedScale GtkEnhancedScale
 

Definition at line 40 of file gtkenhancedscale.h.

typedef struct _GtkEnhancedScaleClass GtkEnhancedScaleClass
 

Definition at line 41 of file gtkenhancedscale.h.


Function Documentation

GType gtk_enhanced_scale_get_type void   ) 
 

Definition at line 76 of file gtkenhancedscale.c.

References gtk_enhanced_scale_class_init(), and gtk_enhanced_scale_init().

Referenced by gtk_enhanced_scale_new().

00077 {
00078     static GType enhanced_scale_type = 0;
00079 
00080     if ( !enhanced_scale_type )
00081     {
00082         GtkTypeInfo enhanced_scale_info =
00083             {
00084                 "GtkEnhancedScale",
00085                 sizeof ( GtkEnhancedScale ),
00086                 sizeof ( GtkEnhancedScaleClass ),
00087                 ( GtkClassInitFunc ) gtk_enhanced_scale_class_init,
00088                 ( GtkObjectInitFunc ) gtk_enhanced_scale_init,
00089                 NULL,
00090                 NULL,
00091             };
00092         enhanced_scale_type = gtk_type_unique ( gtk_widget_get_type (),
00093                                                 &enhanced_scale_info );
00094     }
00095     return enhanced_scale_type;
00096 }

GtkWidget* gtk_enhanced_scale_new GtkObject *  adjustment[],
gint  num_adjustments
 

Definition at line 146 of file gtkenhancedscale.c.

References _GtkEnhancedScale::adjustment, gtk_enhanced_scale_adjustment_value_changed(), gtk_enhanced_scale_get_type(), _GtkEnhancedScale::handler_id, and _GtkEnhancedScale::num_adjustments.

Referenced by PageEditor::PageEditor(), PageMagick::PageMagick(), and PageTrim::PageTrim().

00148 {
00149     GtkEnhancedScale * enhanced_scale;
00150     int i;
00151 
00152     for ( i = 0;i < num_adjustments;i++ )
00153     {
00154         if ( adjustment[ i ] == NULL )
00155             return NULL;
00156     }
00157 
00158     enhanced_scale = gtk_type_new ( gtk_enhanced_scale_get_type () );
00159     enhanced_scale->adjustment = adjustment;
00160     enhanced_scale->num_adjustments = num_adjustments;
00161 
00162     enhanced_scale->handler_id = malloc( num_adjustments * sizeof(*enhanced_scale->handler_id) );
00163 
00164     for ( i = 0;i < num_adjustments;i++ )
00165     {
00166         enhanced_scale->handler_id[ i ] = g_signal_connect ( adjustment[ i ], "value_changed",
00167                                           G_CALLBACK( gtk_enhanced_scale_adjustment_value_changed ),
00168                                           ( gpointer ) enhanced_scale );
00169     }
00170 
00171     return GTK_WIDGET ( enhanced_scale );
00172 }

void gtk_enhanced_scale_set_breaks GtkWidget *  widget,
GArray *  breaks
 

Definition at line 1202 of file gtkenhancedscale.c.

References _GtkEnhancedScale::breaks, GTK_ENHANCED_SCALE, and gtk_enhanced_scale_draw().

Referenced by PageEditor::ResetBar().

01203 {
01204     GtkEnhancedScale * enhanced_scale;
01205     GdkRectangle area;
01206 
01207     g_return_if_fail( widget != NULL );
01208     g_return_if_fail( breaks != NULL );
01209 
01210     if ( GTK_WIDGET_REALIZED ( widget ) )
01211     {
01212         enhanced_scale = GTK_ENHANCED_SCALE( widget );
01213         enhanced_scale->breaks = breaks;
01214 
01215         gdk_window_clear_area ( widget->window, 0, 0,
01216                             widget->allocation.width, widget->allocation.height );
01217 
01218         /* This would be the place to draw it */
01219         area.x = 0;
01220         area.y = 0;
01221         area.width = widget->allocation.width;
01222         area.height = widget->allocation.height;
01223         gtk_enhanced_scale_draw ( widget, &area );
01224     }
01225 }


Generated on Sun Mar 11 22:12:03 2007 for Kino by  doxygen 1.4.2