Main Page Widgets Namespaces Book

# Gtk::ProgressBar Class Reference
[Widgets]

Inheritance diagram for Gtk::ProgressBar:

[legend]
List of all members.

## Detailed Description

A widget which indicates progress visually.

The Gtk::ProgressBar is typically used to display the progress of a long running operation. It provides a visual clue that processing is underway. The Gtk::ProgressBar can be used in two different modes: percentage mode and activity mode.

When an application can determine how much work needs to take place (e.g. read a fixed number of bytes from a file) and can monitor its progress, it can use the Gtk::ProgressBar in percentage mode and the user sees a growing bar indicating the percentage of the work that has been completed. In this mode, the application is required to call set_fraction() periodically to update the progress bar.

When an application has no accurate way of knowing the amount of work to do, it can use the Gtk::ProgressBar in activity mode, which shows activity by a block moving back and forth within the progress area. In this mode, the application is required to call pulse() perodically to update the progress bar.

There is quite a bit of flexibility provided to control the appearance of the Gtk::ProgressBar. Functions are provided to control the orientation of the bar, optional text can be displayed along with the bar, and the step size used in activity mode can be set.

## Public Member Functions

Pango::EllipsizeMode | get_ellipsize () const
| Returns the ellipsizing position of the progressbar.
double | get_fraction () const
| Returns the current fraction of the task that's been completed.
ProgressBarOrientation | get_orientation () const
| Retrieves the current progress bar orientation.
double | get_pulse_step () const
| Retrieves the pulse step set with set_pulse_step().
Glib::ustring | get_text () const
| Retrieves the text displayed superimposed on the progress bar, if any, otherwise `0`.
const GtkProgressBar* | gobj () const
| Provides access to the underlying C GtkObject.
GtkProgressBar* | gobj ()
| Provides access to the underlying C GtkObject.
| ProgressBar ()
Glib::PropertyProxy_ReadOnly< bool > | property_ellipsize () const
| The preferred place to ellipsize the string.
Glib::PropertyProxy<bool> | property_ellipsize ()
| The preferred place to ellipsize the string.
Glib::PropertyProxy_ReadOnly< double > | property_fraction () const
| The fraction of total work that has been completed.
Glib::PropertyProxy<double> | property_fraction ()
| The fraction of total work that has been completed.
Glib::PropertyProxy_ReadOnly< ProgressBarOrientation > | property_orientation () const
| Orientation and growth direction of the progress bar.
Glib::PropertyProxy<ProgressBarOrientation> | property_orientation ()
| Orientation and growth direction of the progress bar.
Glib::PropertyProxy_ReadOnly< double > | property_pulse_step () const
| The fraction of total progress to move the bouncing block when pulsed.
Glib::PropertyProxy<double> | property_pulse_step ()
| The fraction of total progress to move the bouncing block when pulsed.
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_text () const
| Text to be displayed in the progress bar.
Glib::PropertyProxy<Glib::ustring> | property_text ()
| Text to be displayed in the progress bar.
void | pulse ()
| Indicates that some progress is made, but you don't know how much.
void | set_ellipsize (Pango::EllipsizeMode mode)
| Sets the mode used to ellipsize (add an ellipsis: "...") the text if there is not enough space to render the entire string.
void | set_fraction (double fraction)
| Causes the progress bar to "fill in" the given fraction of the bar.
void | set_orientation (ProgressBarOrientation orientation=PROGRESS_LEFT_TO_RIGHT)
| Causes the progress bar to switch to a different orientation (left-to-right, right-to-left, top-to-bottom, or bottom-to-top).
void | set_pulse_step (double fraction)
| Sets the fraction of total progress bar length to move the bouncing block for each call to pulse().
void | set_text (const Glib::ustring& text)
| Causes the given text to appear superimposed on the progress bar.
virtual | ~ProgressBar ()

## Related Functions

(Note that these are not member functions.)
Gtk::ProgressBar* | wrap (GtkProgressBar* object, bool take_copy=false)

## Constructor & Destructor Documentation

virtual Gtk::ProgressBar::~ProgressBar | ( |  | ) | `[virtual]`

Gtk::ProgressBar::ProgressBar | ( |  | ) |

## Member Function Documentation

Pango::EllipsizeMode Gtk::ProgressBar::get_ellipsize | ( |  | ) | const

Returns the ellipsizing position of the progressbar.

See set_ellipsize().

Returns:
  Pango::EllipsizeMode

Since: 2.6.

double Gtk::ProgressBar::get_fraction | ( |  | ) | const

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

Returns:
  A fraction from 0.0 to 1.0.

ProgressBarOrientation Gtk::ProgressBar::get_orientation | ( |  | ) | const

Retrieves the current progress bar orientation.

Returns:
  Orientation of the progress bar.

double Gtk::ProgressBar::get_pulse_step | ( |  | ) | const

Retrieves the pulse step set with set_pulse_step().

Returns:
  A fraction from 0.0 to 1.0.

Glib::ustring Gtk::ProgressBar::get_text | ( |  | ) | const

Retrieves the text displayed superimposed on the progress bar, if any, otherwise `0`.

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.

Returns:
  Text, or `0`; this string is owned by the widget and should not be modified or freed.

const GtkProgressBar* Gtk::ProgressBar::gobj | ( |  | ) | const`[inline]`

| Provides access to the underlying C GtkObject. Reimplemented from Gtk::Widget.

GtkProgressBar* Gtk::ProgressBar::gobj | ( |  | ) | `[inline]`

| Provides access to the underlying C GtkObject. Reimplemented from Gtk::Widget.

Glib::PropertyProxy_ReadOnly<bool> Gtk::ProgressBar::property_ellipsize | ( |  | ) | const

The preferred place to ellipsize the string.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::ProgressBar::property_ellipsize | ( |  | ) |

The preferred place to ellipsize the string.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<double> Gtk::ProgressBar::property_fraction | ( |  | ) | const

The fraction of total work that has been completed.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<double> Gtk::ProgressBar::property_fraction | ( |  | ) |

The fraction of total work that has been completed.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<ProgressBarOrientation> Gtk::ProgressBar::property_orientation | ( |  | ) | const

Orientation and growth direction of the progress bar.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<ProgressBarOrientation> Gtk::ProgressBar::property_orientation | ( |  | ) |

Orientation and growth direction of the progress bar.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<double> Gtk::ProgressBar::property_pulse_step | ( |  | ) | const

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

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<double> Gtk::ProgressBar::property_pulse_step | ( |  | ) |

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

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<Glib::ustring> Gtk::ProgressBar::property_text | ( |  | ) | const

Text to be displayed in the progress bar.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<Glib::ustring> Gtk::ProgressBar::property_text | ( |  | ) |

Text to be displayed in the progress bar.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

void Gtk::ProgressBar::pulse | ( |  | ) |

| 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 pulse() causes the block to move by a little bit (the amount of movement per pulse is determined by set_pulse_step()).

void Gtk::ProgressBar::set_ellipsize | ( | Pango::EllipsizeMode | mode | ) |

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

Since: 2.6

Parameters:

  | mode | A Pango::EllipsizeMode.

void Gtk::ProgressBar::set_fraction | ( | double | 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:

  | fraction | Fraction of the task that's been completed.

void Gtk::ProgressBar::set_orientation | ( | ProgressBarOrientation | orientation = `PROGRESS_LEFT_TO_RIGHT` | ) |

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

Parameters:

  | orientation | Orientation of the progress bar.

void Gtk::ProgressBar::set_pulse_step | ( | double | fraction | ) |

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

Parameters:

  | fraction | Fraction between 0.0 and 1.0.

void Gtk::ProgressBar::set_text | ( | const Glib::ustring& | text | ) |

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

Parameters:

  | text | A UTF-8 string.

## Friends And Related Function Documentation

Gtk::ProgressBar* wrap | ( | GtkProgressBar* | object,
|  | bool | take_copy = `false`
| ) | `[related]`

Parameters:

  | object | The C instance
  | take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns:
  A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file:

- progressbar.h