File: progressbar.rst

package info (click to toggle)
pygobject 3.55.3-3
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 6,000 kB
  • sloc: ansic: 39,431; python: 26,883; sh: 114; makefile: 81; xml: 35; cpp: 1
file content (39 lines) | stat: -rw-r--r-- 1,807 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
.. currentmodule:: gi.repository

ProgressBar
===========
The :class:`Gtk.ProgressBar` is typically used to display the progress of a
long running operation. It provides a visual clue that processing is underway.
The :class:`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 :class:`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 set
:attr:`Gtk.ProgressBar.props.fraction` periodically to update the progress bar,
setting a float between 0 and 1 to provide the new percentage value.

When an application has no accurate way of knowing the amount of work to do, it
can use *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
:meth:`Gtk.ProgressBar.pulse` periodically to update the progress bar.
You can also choose the step size, with the
:attr:`Gtk.ProgressBar.props.pulse_step` property.

By default, :class:`Gtk.ProgressBar` is horizontal and left-to-right, but you
can change it to a vertical progress bar by changing the value of
:attr:`Gtk.ProgressBar.props.orientation <Gtk.Orientable.props.orientation>`.
Changing the direction the progress bar grows can be done using
:attr:`Gtk.ProgressBar.props.inverted`. :class:`Gtk.ProgressBar` can also
contain text which can be set with :attr:`Gtk.ProgressBar.props.text` and
:attr:`Gtk.ProgressBar.props.show_text`.

Example
-------

.. image:: images/progressbar.png

.. literalinclude:: examples/progressbar.py
    :linenos: