## EogScrollView

EogScrollView

## Synopsis

    struct              EogScrollView;
    enum                EogTransparencyStyle;
    enum                EogZoomMode;
    GtkWidget *         eog_scroll_view_new                 (void);
    void                eog_scroll_view_set_image           (EogScrollView *view,
                                                             EogImage *image);
    void                eog_scroll_view_set_scroll_wheel_zoom
                                                            (EogScrollView *view,
                                                             gboolean scroll_wheel_zoom);
    void                eog_scroll_view_set_zoom_upscale    (EogScrollView *view,
                                                             gboolean upscale);
    void                eog_scroll_view_set_zoom_multiplier (EogScrollView *view,
                                                             gdouble multiplier);
    void                eog_scroll_view_set_antialiasing_in (EogScrollView *view,
                                                             gboolean state);
    void                eog_scroll_view_set_antialiasing_out
                                                            (EogScrollView *view,
                                                             gboolean state);
    void                eog_scroll_view_set_transparency    (EogScrollView *view,
                                                             EogTransparencyStyle style);
    gboolean            eog_scroll_view_scrollbars_visible  (EogScrollView *view);
    void                eog_scroll_view_set_popup           (EogScrollView *view,
                                                             GtkMenu *menu);
    void                eog_scroll_view_zoom_in             (EogScrollView *view,
                                                             gboolean smooth);
    void                eog_scroll_view_zoom_out            (EogScrollView *view,
                                                             gboolean smooth);
    void                eog_scroll_view_set_zoom            (EogScrollView *view,
                                                             double zoom);
    double              eog_scroll_view_get_zoom            (EogScrollView *view);
    gboolean            eog_scroll_view_get_zoom_is_min     (EogScrollView *view);
    gboolean            eog_scroll_view_get_zoom_is_max     (EogScrollView *view);
    EogZoomMode         eog_scroll_view_get_zoom_mode       (EogScrollView *view);
    void                eog_scroll_view_set_zoom_mode       (EogScrollView *view,
                                                             EogZoomMode mode);
    void                eog_scroll_view_show_cursor         (EogScrollView *view);
    void                eog_scroll_view_hide_cursor         (EogScrollView *view);
    void                eog_scroll_view_override_bg_color   (EogScrollView *view,
                                                             const GdkColor *color);
    void                eog_scroll_view_set_background_color
                                                            (EogScrollView *view,
                                                             const GdkColor *color);
    void                eog_scroll_view_set_transparency_color
                                                            (EogScrollView *view,
                                                             GdkColor *color);
    void                eog_scroll_view_set_use_bg_color    (EogScrollView *view,
                                                             gboolean use);
    gboolean            eog_scroll_view_event_is_over_image (EogScrollView *view,
                                                             const GdkEvent *ev);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkWidget
                   +----GtkContainer
                         +----GtkTable
                               +----EogScrollView

## Implemented Interfaces

EogScrollView implements AtkImplementorIface and GtkBuildable.

## Properties

      "antialiasing-in"          gboolean              : Read / Write
      "antialiasing-out"         gboolean              : Read / Write
      "background-color"         GdkColor*             : Read / Write
      "image"                    EogImage*             : Read / Write
      "scrollwheel-zoom"         gboolean              : Read / Write
      "transparency-color"       GdkColor*             : Write
      "transparency-style"       EogTransparencyStyle  : Read / Write
      "use-background-color"     gboolean              : Read / Write
      "zoom-mode"                EogZoomMode           : Read / Write
      "zoom-multiplier"          gdouble               : Read / Write

## Signals

      "zoom-changed"                                   : Run Last

## Description

## Details

### struct EogScrollView

    struct EogScrollView;

### enum EogTransparencyStyle

    typedef enum {
    	EOG_TRANSP_BACKGROUND,
    	EOG_TRANSP_CHECKED,
    	EOG_TRANSP_COLOR
    } EogTransparencyStyle;

Used to define how transparent image parts are drawn.

`EOG_TRANSP_BACKGROUND` | Use the background color of the current UI theme
`EOG_TRANSP_CHECKED` | Show transparent parts as a checkerboard pattern
`EOG_TRANSP_COLOR` | Show transparent parts in a user defined color (see "transparency-color" )

### enum EogZoomMode

    typedef enum {
    	EOG_ZOOM_MODE_FREE,
    	EOG_ZOOM_MODE_SHRINK_TO_FIT
    } EogZoomMode;

Used to determine the zooming behaviour of an EogScrollView.

`EOG_ZOOM_MODE_FREE` | Use the currently set zoom factor to display the image (see `eog_scroll_view_set_zoom()`).
`EOG_ZOOM_MODE_SHRINK_TO_FIT` | If an image is to large for the window, zoom out until the image is fully visible. This will never zoom in on smaller images.

### eog_scroll_view_new ()

    GtkWidget *         eog_scroll_view_new                 (void);

### eog_scroll_view_set_image ()

    void                eog_scroll_view_set_image           (EogScrollView *view,
                                                             EogImage *image);

### eog_scroll_view_set_scroll_wheel_zoom ()

    void                eog_scroll_view_set_scroll_wheel_zoom
                                                            (EogScrollView *view,
                                                             gboolean scroll_wheel_zoom);

### eog_scroll_view_set_zoom_upscale ()

    void                eog_scroll_view_set_zoom_upscale    (EogScrollView *view,
                                                             gboolean upscale);

### eog_scroll_view_set_zoom_multiplier ()

    void                eog_scroll_view_set_zoom_multiplier (EogScrollView *view,
                                                             gdouble multiplier);

### eog_scroll_view_set_antialiasing_in ()

    void                eog_scroll_view_set_antialiasing_in (EogScrollView *view,
                                                             gboolean state);

### eog_scroll_view_set_antialiasing_out ()

    void                eog_scroll_view_set_antialiasing_out
                                                            (EogScrollView *view,
                                                             gboolean state);

### eog_scroll_view_set_transparency ()

    void                eog_scroll_view_set_transparency    (EogScrollView *view,
                                                             EogTransparencyStyle style);

### eog_scroll_view_scrollbars_visible ()

    gboolean            eog_scroll_view_scrollbars_visible  (EogScrollView *view);

### eog_scroll_view_set_popup ()

    void                eog_scroll_view_set_popup           (EogScrollView *view,
                                                             GtkMenu *menu);

### eog_scroll_view_zoom_in ()

    void                eog_scroll_view_zoom_in             (EogScrollView *view,
                                                             gboolean smooth);

### eog_scroll_view_zoom_out ()

    void                eog_scroll_view_zoom_out            (EogScrollView *view,
                                                             gboolean smooth);

### eog_scroll_view_set_zoom ()

    void                eog_scroll_view_set_zoom            (EogScrollView *view,
                                                             double zoom);

### eog_scroll_view_get_zoom ()

    double              eog_scroll_view_get_zoom            (EogScrollView *view);

### eog_scroll_view_get_zoom_is_min ()

    gboolean            eog_scroll_view_get_zoom_is_min     (EogScrollView *view);

### eog_scroll_view_get_zoom_is_max ()

    gboolean            eog_scroll_view_get_zoom_is_max     (EogScrollView *view);

### eog_scroll_view_get_zoom_mode ()

    EogZoomMode         eog_scroll_view_get_zoom_mode       (EogScrollView *view);

### eog_scroll_view_set_zoom_mode ()

    void                eog_scroll_view_set_zoom_mode       (EogScrollView *view,
                                                             EogZoomMode mode);

### eog_scroll_view_show_cursor ()

    void                eog_scroll_view_show_cursor         (EogScrollView *view);

### eog_scroll_view_hide_cursor ()

    void                eog_scroll_view_hide_cursor         (EogScrollView *view);

### eog_scroll_view_override_bg_color ()

    void                eog_scroll_view_override_bg_color   (EogScrollView *view,
                                                             const GdkColor *color);

### eog_scroll_view_set_background_color ()

    void                eog_scroll_view_set_background_color
                                                            (EogScrollView *view,
                                                             const GdkColor *color);

### eog_scroll_view_set_transparency_color ()

    void                eog_scroll_view_set_transparency_color
                                                            (EogScrollView *view,
                                                             GdkColor *color);

### eog_scroll_view_set_use_bg_color ()

    void                eog_scroll_view_set_use_bg_color    (EogScrollView *view,
                                                             gboolean use);

### eog_scroll_view_event_is_over_image ()

    gboolean            eog_scroll_view_event_is_over_image (EogScrollView *view,
                                                             const GdkEvent *ev);

Tells if `ev`'s originates from inside the image area. `view` must be realized and have an image set for this to work.

It only works with GdkEvents that supply coordinate data, i.e. GdkEventButton.

`view` : | An EogScrollView that has an image loaded.
`ev` : | A GdkEvent which must have window-relative coordinates.
Returns : | `TRUE` if `ev` originates from over the image, `FALSE` otherwise.

## Property Details

### The `"antialiasing-in"` property

      "antialiasing-in"          gboolean              : Read / Write

If `TRUE` the displayed image will be filtered in a second pass while being zoomed in.

Default value: TRUE

### The `"antialiasing-out"` property

      "antialiasing-out"         gboolean              : Read / Write

If `TRUE` the displayed image will be filtered in a second pass while being zoomed out.

Default value: TRUE

### The `"background-color"` property

      "background-color"         GdkColor*             : Read / Write

This is the default background color used for painting the background of the image view. If set to `NULL` the color is determined by the active GTK theme.

### The `"image"` property

      "image"                    EogImage*             : Read / Write

This is the currently display EogImage.

### The `"scrollwheel-zoom"` property

      "scrollwheel-zoom"         gboolean              : Read / Write

If `TRUE` the scrollwheel will zoom the view, otherwise it will be used for scrolling a zoomed image.

Default value: TRUE

### The `"transparency-color"` property

      "transparency-color"       GdkColor*             : Write

This is the color used to fill the transparent parts of an image if "transparency-style" is set to `EOG_TRANSP_COLOR`.

### The `"transparency-style"` property

      "transparency-style"       EogTransparencyStyle  : Read / Write

Determines how to fill the shown image's transparent areas.

Default value: EOG_TRANSP_CHECKED

### The `"use-background-color"` property

      "use-background-color"     gboolean              : Read / Write

Default value: FALSE

### The `"zoom-mode"` property

      "zoom-mode"                EogZoomMode           : Read / Write

Default value: EOG_ZOOM_MODE_SHRINK_TO_FIT

### The `"zoom-multiplier"` property

      "zoom-multiplier"          gdouble               : Read / Write

The current zoom factor is multiplied with this value + 1.0 when scrolling with the scrollwheel to determine the next zoom factor.

Default value: 0.05

## Signal Details

### The `"zoom-changed"` signal

    void                user_function                      (EogScrollView *eogscrollview,
                                                            gdouble        arg1,
                                                            gpointer       user_data)          : Run Last

`eogscrollview` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.