Main Page Widgets Namespaces Book

# Gtk::ProgressBar Class Reference
[Widgets]

A widget which indicates progress visually. More...

Inheritance diagram for Gtk::ProgressBar:

[legend]
List of all members.

## Public Methods
virtual | ~ProgressBar ()
GtkProgressBar* | gobj ()
| Provides access to the underlying C GtkObject.
const GtkProgressBar* | gobj () const
| Provides access to the underlying C GtkObject.
| ProgressBar ()
void | pulse ()
| Indicates that some progress is made, but you don't know how much.
Glib::ustring | get_text () const
| Retrieves the text displayed superimposed on the progress bar, if any, otherwise `0`.
void | set_text (const Glib::ustring& text)
| Causes the given text to appear superimposed on the progress bar.
double | get_fraction () const
| Returns the current fraction of the task that's been completed.
void | set_fraction (double fraction)
| Causes the progress bar to "fill in" the given fraction of the bar.
double | get_pulse_step () const
| Retrieves the pulse step set with set_pulse_step().
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_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).
ProgressBarOrientation | get_orientation () const
| Retrieves the current progress bar orientation.
Glib::PropertyProxy<double> | property_fraction ()
Glib::PropertyProxy<double> | property_pulse_step ()
Glib::PropertyProxy<ProgressBarOrientation> | property_orientation ()
Glib::PropertyProxy<Glib::ustring> | property_text ()
## Related Functions
(Note that these are not member functions.)
Gtk::ProgressBar* | wrap (GtkProgressBar* object, bool take_copy=false)

## 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.

## Constructor & Destructor Documentation

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

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

## Member Function Documentation

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

| 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 | ( |  | ) |

| Retrieves the current progress bar orientation. Returns: Orientation of the progress bar.

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

| Retrieves the pulse step set with set_pulse_step(). Returns: A fraction from 0.0 to 1.0.

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

| 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<double> Gtk::ProgressBar::property_fraction | ( |  | ) |

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

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

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

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_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]`

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

- progressbar.h