## GtkProgressBar GtkProgressBar |

## Functions

GtkWidget * | gtk_progress_bar_new ()
void | gtk_progress_bar_pulse ()
void | gtk_progress_bar_set_text ()
void | gtk_progress_bar_set_fraction ()
void | gtk_progress_bar_set_pulse_step ()
void | gtk_progress_bar_set_orientation ()
void | gtk_progress_bar_set_ellipsize ()
const gchar * | gtk_progress_bar_get_text ()
gdouble | gtk_progress_bar_get_fraction ()
gdouble | gtk_progress_bar_get_pulse_step ()
GtkProgressBarOrientation | gtk_progress_bar_get_orientation ()
PangoEllipsizeMode | gtk_progress_bar_get_ellipsize ()
GtkWidget * | gtk_progress_bar_new_with_adjustment ()
void | gtk_progress_bar_set_bar_style ()
void | gtk_progress_bar_set_discrete_blocks ()
void | gtk_progress_bar_set_activity_step ()
void | gtk_progress_bar_set_activity_blocks ()
void | gtk_progress_bar_update ()

## Properties

guint | activity-blocks | Read / Write
guint | activity-step | Read / Write
GtkAdjustment * | adjustment | Read / Write
GtkProgressBarStyle | bar-style | Read / Write
guint | discrete-blocks | Read / Write
PangoEllipsizeMode | ellipsize | Read / Write
gdouble | fraction | Read / Write
GtkProgressBarOrientation | orientation | Read / Write
gdouble | pulse-step | Read / Write
gchar * | text | Read / Write

## Style Properties

gint | min-horizontal-bar-height | Read / Write
gint | min-horizontal-bar-width | Read / Write
gint | min-vertical-bar-height | Read / Write
gint | min-vertical-bar-width | Read / Write
gint | xspacing | Read / Write
gint | yspacing | Read / Write

## Types and Values

struct | GtkProgressBar
enum | GtkProgressBarOrientation
enum | GtkProgressBarStyle

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkObject
                ╰── GtkWidget
                    ╰── GtkProgress
                        ╰── GtkProgressBar

## Implemented Interfaces

GtkProgressBar implements AtkImplementorIface and GtkBuildable.

## Includes

    #include <gtk/gtk.h>

## Description

## Functions

### gtk_progress_bar_new ()

    GtkWidget *
    gtk_progress_bar_new (void);

Creates a new GtkProgressBar.

#### Returns

a GtkProgressBar.

### gtk_progress_bar_pulse ()

    void
    gtk_progress_bar_pulse (GtkProgressBar *pbar);

Indicates that some progress is made, but you don't know how much. Causes the progress bar to enter "activity mode," where a block bounces back and forth. Each call to `gtk_progress_bar_pulse()` causes the block to move by a little bit (the amount of movement per pulse is determined by `gtk_progress_bar_set_pulse_step()`).

#### Parameters

pbar | a GtkProgressBar |

### gtk_progress_bar_set_text ()

    void
    gtk_progress_bar_set_text (GtkProgressBar *pbar,
                               const gchar *text);

Causes the given `text` to appear superimposed on the progress bar.

#### Parameters

pbar | a GtkProgressBar |
text | a UTF-8 string, or `NULL`. | [allow-none]

### gtk_progress_bar_set_fraction ()

    void
    gtk_progress_bar_set_fraction (GtkProgressBar *pbar,
                                   gdouble fraction);

Causes the progress bar to "fill in" the given fraction of the bar. The fraction should be between 0.0 and 1.0, inclusive.

#### Parameters

pbar | a GtkProgressBar |
fraction | fraction of the task that's been completed |

### gtk_progress_bar_set_pulse_step ()

    void
    gtk_progress_bar_set_pulse_step (GtkProgressBar *pbar,
                                     gdouble fraction);

Sets the fraction of total progress bar length to move the bouncing block for each call to `gtk_progress_bar_pulse()`.

#### Parameters

pbar | a GtkProgressBar |
fraction | fraction between 0.0 and 1.0 |

### gtk_progress_bar_set_orientation ()

    void
    gtk_progress_bar_set_orientation (GtkProgressBar *pbar,
                                      GtkProgressBarOrientation orientation);

Causes the progress bar to switch to a different orientation (left-to-right, right-to-left, top-to-bottom, or bottom-to-top).

#### Parameters

pbar | a GtkProgressBar |
orientation | orientation of the progress bar |

### gtk_progress_bar_set_ellipsize ()

    void
    gtk_progress_bar_set_ellipsize (GtkProgressBar *pbar,
                                    PangoEllipsizeMode mode);

Sets the mode used to ellipsize (add an ellipsis: "...") the text if there is not enough space to render the entire string.

#### Parameters

pbar | a GtkProgressBar |
mode | a PangoEllipsizeMode |

Since: 2.6

### gtk_progress_bar_get_text ()

    const gchar *
    gtk_progress_bar_get_text (GtkProgressBar *pbar);

Retrieves the text displayed superimposed on the progress bar, if any, otherwise `NULL`. The return value is a reference to the text, not a copy of it, so will become invalid if you change the text in the progress bar.

#### Parameters

pbar | a GtkProgressBar |

#### Returns

text, or `NULL`; this string is owned by the widget and should not be modified or freed.

### gtk_progress_bar_get_fraction ()

    gdouble
    gtk_progress_bar_get_fraction (GtkProgressBar *pbar);

Returns the current fraction of the task that's been completed.

#### Parameters

pbar | a GtkProgressBar |

#### Returns

a fraction from 0.0 to 1.0

### gtk_progress_bar_get_pulse_step ()

    gdouble
    gtk_progress_bar_get_pulse_step (GtkProgressBar *pbar);

Retrieves the pulse step set with `gtk_progress_bar_set_pulse_step()`

#### Parameters

pbar | a GtkProgressBar |

#### Returns

a fraction from 0.0 to 1.0

### gtk_progress_bar_get_orientation ()

    GtkProgressBarOrientation
    gtk_progress_bar_get_orientation (GtkProgressBar *pbar);

Retrieves the current progress bar orientation.

#### Parameters

pbar | a GtkProgressBar |

#### Returns

orientation of the progress bar

### gtk_progress_bar_get_ellipsize ()

    PangoEllipsizeMode
    gtk_progress_bar_get_ellipsize (GtkProgressBar *pbar);

Returns the ellipsizing position of the progressbar. See `gtk_progress_bar_set_ellipsize()`.

#### Parameters

pbar | a GtkProgressBar |

#### Returns

PangoEllipsizeMode

Since: 2.6

### gtk_progress_bar_new_with_adjustment ()

    GtkWidget *
    gtk_progress_bar_new_with_adjustment (GtkAdjustment *adjustment);

`gtk_progress_bar_new_with_adjustment` is deprecated and should not be used in newly-written code.

Creates a new GtkProgressBar with an associated GtkAdjustment.

#### Parameters

adjustment | . | [allow-none]

#### Returns

a GtkProgressBar.

[transfer none]

### gtk_progress_bar_set_bar_style ()

    void
    gtk_progress_bar_set_bar_style (GtkProgressBar *pbar,
                                    GtkProgressBarStyle style);

`gtk_progress_bar_set_bar_style` is deprecated and should not be used in newly-written code.

### gtk_progress_bar_set_discrete_blocks ()

    void
    gtk_progress_bar_set_discrete_blocks (GtkProgressBar *pbar,
                                          guint blocks);

`gtk_progress_bar_set_discrete_blocks` is deprecated and should not be used in newly-written code.

### gtk_progress_bar_set_activity_step ()

    void
    gtk_progress_bar_set_activity_step (GtkProgressBar *pbar,
                                        guint step);

`gtk_progress_bar_set_activity_step` is deprecated and should not be used in newly-written code.

### gtk_progress_bar_set_activity_blocks ()

    void
    gtk_progress_bar_set_activity_blocks (GtkProgressBar *pbar,
                                          guint blocks);

`gtk_progress_bar_set_activity_blocks` is deprecated and should not be used in newly-written code.

### gtk_progress_bar_update ()

    void
    gtk_progress_bar_update (GtkProgressBar *pbar,
                             gdouble percentage);

`gtk_progress_bar_update` is deprecated and should not be used in newly-written code.

## Types and Values

### struct GtkProgressBar

    struct GtkProgressBar;

### enum GtkProgressBarOrientation

#### Members

GTK_PROGRESS_LEFT_TO_RIGHT |  |
GTK_PROGRESS_RIGHT_TO_LEFT |  |
GTK_PROGRESS_BOTTOM_TO_TOP |  |
GTK_PROGRESS_TOP_TO_BOTTOM |  |

### enum GtkProgressBarStyle

#### Members

GTK_PROGRESS_CONTINUOUS |  |
GTK_PROGRESS_DISCRETE |  |

## Property Details

### The `“activity-blocks”` property

      “activity-blocks”          guint

The number of blocks which can fit in the progress bar area in activity mode (Deprecated).

Flags: Read / Write

Allowed values: >= 2

Default value: 5

### The `“activity-step”` property

      “activity-step”            guint

The increment used for each iteration in activity mode (Deprecated).

Flags: Read / Write

Default value: 3

### The `“adjustment”` property

      “adjustment”               GtkAdjustment *

The GtkAdjustment connected to the progress bar (Deprecated).

Flags: Read / Write

### The `“bar-style”` property

      “bar-style”                GtkProgressBarStyle

Specifies the visual style of the bar in percentage mode (Deprecated).

Flags: Read / Write

Default value: GTK_PROGRESS_CONTINUOUS

### The `“discrete-blocks”` property

      “discrete-blocks”          guint

The number of discrete blocks in a progress bar (when shown in the discrete style).

Flags: Read / Write

Allowed values: >= 2

Default value: 10

### The `“ellipsize”` property

      “ellipsize”                PangoEllipsizeMode

The preferred place to ellipsize the string, if the progressbar does not have enough room to display the entire string, specified as a PangoEllisizeMode.

Note that setting this property to a value other than `PANGO_ELLIPSIZE_NONE` has the side-effect that the progressbar requests only enough space to display the ellipsis "...". Another means to set a progressbar's width is `gtk_widget_set_size_request()`.

Flags: Read / Write

Default value: PANGO_ELLIPSIZE_NONE

Since: 2.6

### The `“fraction”` property

      “fraction”                 gdouble

The fraction of total work that has been completed.

Flags: Read / Write

Allowed values: [0,1]

Default value: 0

### The `“orientation”` property

      “orientation”              GtkProgressBarOrientation

Orientation and growth direction of the progress bar.

Flags: Read / Write

Default value: GTK_PROGRESS_LEFT_TO_RIGHT

### The `“pulse-step”` property

      “pulse-step”               gdouble

The fraction of total progress to move the bouncing block when pulsed.

Flags: Read / Write

Allowed values: [0,1]

Default value: 0.1

### The `“text”` property

      “text”                     gchar *

Text to be displayed in the progress bar.

Flags: Read / Write

Default value: NULL

## Style Property Details

### The `“min-horizontal-bar-height”` style property

      “min-horizontal-bar-height” gint

Minimum horizontal height of the progress bar.

Flags: Read / Write

Allowed values: >= 1

Default value: 20

Since: 2.14

### The `“min-horizontal-bar-width”` style property

      “min-horizontal-bar-width” gint

The minimum horizontal width of the progress bar.

Flags: Read / Write

Allowed values: >= 1

Default value: 150

Since: 2.14

### The `“min-vertical-bar-height”` style property

      “min-vertical-bar-height”  gint

The minimum vertical height of the progress bar.

Flags: Read / Write

Allowed values: >= 1

Default value: 80

Since: 2.14

### The `“min-vertical-bar-width”` style property

      “min-vertical-bar-width”   gint

The minimum vertical width of the progress bar.

Flags: Read / Write

Allowed values: >= 1

Default value: 22

Since: 2.14

### The `“xspacing”` style property

      “xspacing”                 gint

Extra spacing applied to the width of a progress bar.

Flags: Read / Write

Allowed values: >= 0

Default value: 7

### The `“yspacing”` style property

      “yspacing”                 gint

Extra spacing applied to the height of a progress bar.

Flags: Read / Write

Allowed values: >= 0

Default value: 7