Class wibox.widget.progressbar

A progressbar widget.

To add text on top of the progressbar, a wibox.layout.stack can be used:

Usage example

wibox.widget {
    {
        max_value     = 1,
        value         = 0.5,
        forced_height = 20,
        forced_width  = 100,
        paddings      = 1,
        border_width  = 1,
        border_color  = beautiful.border_color,
        widget        = wibox.widget.progressbar,
    },
    {
        text   = '50%',
        widget = wibox.widget.textbox,
    },
    layout = wibox.layout.stack
}

To display the progressbar vertically, use a wibox.container.rotate widget:

Usage example

wibox.widget {
    {
        max_value     = 1,
        value         = 0.33,
        widget        = wibox.widget.progressbar,
    },
    forced_height = 100,
    forced_width  = 20,
    direction     = 'east',
    layout        = wibox.container.rotate,
}

By default, this widget will take all the available size. To prevent this, a wibox.container.constraint widget or the forced_width/forced_height properties have to be used.

Usage example

Usage:

    wibox.widget {
        max_value     = 1,
        value         = 0.33,
        forced_height = 20,
        forced_width  = 100,
        shape         = gears.shape.rounded_bar,
        border_width  = 2,
        border_color  = beautiful.border_color,
        widget        = wibox.widget.progressbar,
    }
    

Info:

  • Copyright: 2009 Julien Danjou
  • Author: Julien Danjou <[email protected]>

Functions

wibox.widget.progressbar (args) Create a progressbar widget.

Object properties

wibox.widget.progressbar.border_color The progressbar border color.
wibox.widget.progressbar.border_width The progressbar border width.
wibox.widget.progressbar.bar_border_color The progressbar inner border color.
wibox.widget.progressbar.bar_border_width The progressbar inner border width.
wibox.widget.progressbar.color The progressbar foreground color.
wibox.widget.progressbar.background_color The progressbar background color.
wibox.widget.progressbar.bar_shape The progressbar inner shape.
wibox.widget.progressbar.shape The progressbar shape.
wibox.widget.progressbar.clip Force the inner part (the bar) to fit in the background shape.
wibox.widget.progressbar.ticks The progressbar to draw ticks.
wibox.widget.progressbar.ticks_gap The progressbar ticks gap.
wibox.widget.progressbar.ticks_size The progressbar ticks size.
wibox.widget.progressbar.max_value The maximum value the progressbar should handle.
wibox.widget.progressbar.margins The progressbar margins.
wibox.widget.progressbar.paddings The progressbar padding.
wibox.widget.progressbar.forced_height Force a widget height.
wibox.widget.progressbar.forced_width Force a widget width.
wibox.widget.progressbar.opacity The widget opacity (transparency).
wibox.widget.progressbar.visible The widget visibility.

Signals

widget::layout_changed When the layout (size) change.
widget::redraw_needed When the widget content changed.
button::press When a mouse button is pressed over the widget.
button::release When a mouse button is released over the widget.
mouse::enter When the mouse enter a widget.
mouse::leave When the mouse leave a widget.

Theme variables

beautiful.progressbar_bg The progressbar background color.
beautiful.progressbar_fg The progressbar foreground color.
beautiful.progressbar_shape The progressbar shape.
beautiful.progressbar_border_color The progressbar border color.
beautiful.progressbar_border_width The progressbar outer border width.
beautiful.progressbar_bar_shape The progressbar inner shape.
beautiful.progressbar_bar_border_width The progressbar bar border width.
beautiful.progressbar_bar_border_color The progressbar bar border color.
beautiful.progressbar_margins The progressbar margins.
beautiful.progressbar_paddings The progressbar padding.

Deprecated functions

wibox.widget.progressbar.set_vertical Set the progressbar to draw vertically.
wibox.widget.progressbar.set_height Set the progressbar height.
wibox.widget.progressbar.set_width Set the progressbar width.

Methods

wibox.widget.progressbar:set_value (value) Set the progressbar value.
wibox.widget.progressbar:index (widget[, recursive[, ...]]) Get a widex index.
wibox.widget.progressbar:get_all_children () Get all direct and indirect children widgets.
wibox.widget.progressbar:setup (args) Set a declarative widget hierarchy description.
wibox.widget.progressbar:buttons (_buttons) Set/get a widget’s buttons.
wibox.widget.progressbar:emit_signal_recursive (signal_name, ...) Emit a signal and ensure all parent widgets in the hierarchies also forward the signal.
wibox.widget.progressbar:disconnect_signal (name, func) Disconnect to a signal.
wibox.widget.progressbar:emit_signal (name, ...) Emit a signal.
wibox.widget.progressbar:connect_signal (name, func) Connect to a signal.
wibox.widget.progressbar:weak_connect_signal (name, func) Connect to a signal weakly.


Functions

Methods
wibox.widget.progressbar (args)
Create a progressbar widget.
  • args Standard widget() arguments. You should add width and height key to set progressbar geometry.

Returns:

    A progressbar widget.

Object properties

wibox.widget.progressbar.border_color
The progressbar border color. If the value is nil, no border will be drawn.

Type:

  • color gears.color The border color to set.

See also:

wibox.widget.progressbar.border_width
The progressbar border width.
wibox.widget.progressbar.bar_border_color
The progressbar inner border color. If the value is nil, no border will be drawn.

Type:

  • color gears.color The border color to set.

See also:

wibox.widget.progressbar.bar_border_width
The progressbar inner border width.
wibox.widget.progressbar.color
The progressbar foreground color.

Type:

  • color gears.color The progressbar color.

See also:

wibox.widget.progressbar.background_color
The progressbar background color.

Type:

  • color gears.color The progressbar background color.

See also:

wibox.widget.progressbar.bar_shape
The progressbar inner shape.

Usage example

Type:

  • shape gears.shape (default gears.shape.rectangle)

See also:

Usage:

    for _, shape in ipairs {'rounded_bar', 'octogon', 'hexagon', 'powerline' } do
        l:add(wibox.widget {
              value            = 0.33,
              bar_shape        = gears.shape[shape],
              bar_border_color = beautiful.border_color,
              bar_border_width = 1,
              border_width     = 2,
              border_color     = beautiful.border_color,
              paddings         = 1,
              widget           = wibox.widget.progressbar,
          })
    end
wibox.widget.progressbar.shape
The progressbar shape.

Usage example

Type:

  • shape gears.shape (default gears.shape.rectangle)

See also:

Usage:

    for _, shape in ipairs {'rounded_bar', 'octogon', 'hexagon', 'powerline' } do
        l:add(wibox.widget {
              value         = 0.33,
              shape         = gears.shape[shape],
              border_width  = 2,
              border_color  = beautiful.border_color,
              widget        = wibox.widget.progressbar,
          })
    end
wibox.widget.progressbar.clip
Force the inner part (the bar) to fit in the background shape.

Usage example

Type:

  • clip boolean (default true)

Usage:

    wibox.widget {
        value            = 75,
        max_value        = 100,
        border_width     = 2,
        border_color     = beautiful.border_color,
        color            = beautiful.border_color,
        shape            = gears.shape.rounded_bar,
        bar_shape        = gears.shape.rounded_bar,
        clip             = false,
        forced_height    = 30,
        forced_width     = 100,
        paddings         = 5,
        margins          = {
            top    = 12,
            bottom = 12,
        },
        widget = wibox.widget.progressbar,
    }
wibox.widget.progressbar.ticks
The progressbar to draw ticks. Default is false.

Type:

  • boolean
wibox.widget.progressbar.ticks_gap
The progressbar ticks gap.

Type:

  • number
wibox.widget.progressbar.ticks_size
The progressbar ticks size.

Type:

  • number
wibox.widget.progressbar.max_value
The maximum value the progressbar should handle.

Type:

  • number
wibox.widget.progressbar.margins
The progressbar margins. Note that if the clip is disabled, this allows the background to be smaller than the bar.

See the clip example.

Type:

  • margins A table for each side or a number
    • top number (default 0)
    • bottom number (default 0)
    • left number (default 0)
    • right number (default 0)

See also:

wibox.widget.progressbar.paddings
The progressbar padding. Note that if the clip is disabled, this allows the bar to be taller than the background.

See the clip example.

Type:

  • padding A table for each side or a number
    • top number (default 0)
    • bottom number (default 0)
    • left number (default 0)
    • right number (default 0)

See also:

wibox.widget.progressbar.forced_height
Force a widget height.

Type:

  • height number or nil The height (nil for automatic)
wibox.widget.progressbar.forced_width
Force a widget width.

Type:

  • width number or nil The width (nil for automatic)
wibox.widget.progressbar.opacity
The widget opacity (transparency).

Type:

  • opacity number The opacity (between 0 and 1) (default 1)
wibox.widget.progressbar.visible
The widget visibility.

Type:

  • boolean

Signals

widget::layout_changed
When the layout (size) change. This signal is emitted when the previous results of :layout() and :fit() are no longer valid. Unless this signal is emitted, :layout() and :fit() must return the same result when called with the same arguments.

See also:

widget::redraw_needed
When the widget content changed. This signal is emitted when the content of the widget changes. The widget will be redrawn, it is not re-layouted. Put differently, it is assumed that :layout() and :fit() would still return the same results as before.

See also:

button::press
When a mouse button is pressed over the widget.

Arguments:

  • lx number The horizontal position relative to the (0,0) position in the widget.
  • ly number The vertical position relative to the (0,0) position in the widget.
  • button number The button number.
  • mods table The modifiers (mod4, mod1 (alt), Control, Shift)
  • find_widgets_result The entry from the result of wibox.drawable:find_widgets for the position that the mouse hit.
    • drawable wibox.drawable The drawable containing the widget.
    • widget widget The widget being displayed.
    • hierarchy wibox.hierarchy The hierarchy managing the widget’s geometry.
    • x number An approximation of the X position that the widget is visible at on the surface.
    • y number An approximation of the Y position that the widget is visible at on the surface.
    • width number An approximation of the width that the widget is visible at on the surface.
    • height number An approximation of the height that the widget is visible at on the surface.
    • widget_width number The exact width of the widget in its local coordinate system.
    • widget_height number The exact height of the widget in its local coordinate system.

See also:

button::release
When a mouse button is released over the widget.

Arguments:

  • lx number The horizontal position relative to the (0,0) position in the widget.
  • ly number The vertical position relative to the (0,0) position in the widget.
  • button number The button number.
  • mods table The modifiers (mod4, mod1 (alt), Control, Shift)
  • find_widgets_result The entry from the result of wibox.drawable:find_widgets for the position that the mouse hit.
    • drawable wibox.drawable The drawable containing the widget.
    • widget widget The widget being displayed.
    • hierarchy wibox.hierarchy The hierarchy managing the widget’s geometry.
    • x number An approximation of the X position that the widget is visible at on the surface.
    • y number An approximation of the Y position that the widget is visible at on the surface.
    • width number An approximation of the width that the widget is visible at on the surface.
    • height number An approximation of the height that the widget is visible at on the surface.
    • widget_width number The exact width of the widget in its local coordinate system.
    • widget_height number The exact height of the widget in its local coordinate system.

See also:

mouse::enter
When the mouse enter a widget.

Arguments:

  • find_widgets_result The entry from the result of wibox.drawable:find_widgets for the position that the mouse hit.
    • drawable wibox.drawable The drawable containing the widget.
    • widget widget The widget being displayed.
    • hierarchy wibox.hierarchy The hierarchy managing the widget’s geometry.
    • x number An approximation of the X position that the widget is visible at on the surface.
    • y number An approximation of the Y position that the widget is visible at on the surface.
    • width number An approximation of the width that the widget is visible at on the surface.
    • height number An approximation of the height that the widget is visible at on the surface.
    • widget_width number The exact width of the widget in its local coordinate system.
    • widget_height number The exact height of the widget in its local coordinate system.

See also:

mouse::leave
When the mouse leave a widget.

Arguments:

  • find_widgets_result The entry from the result of wibox.drawable:find_widgets for the position that the mouse hit.
    • drawable wibox.drawable The drawable containing the widget.
    • widget widget The widget being displayed.
    • hierarchy wibox.hierarchy The hierarchy managing the widget’s geometry.
    • x number An approximation of the X position that the widget is visible at on the surface.
    • y number An approximation of the Y position that the widget is visible at on the surface.
    • width number An approximation of the width that the widget is visible at on the surface.
    • height number An approximation of the height that the widget is visible at on the surface.
    • widget_width number The exact width of the widget in its local coordinate system.
    • widget_height number The exact height of the widget in its local coordinate system.

See also:

Theme variables

beautiful.progressbar_bg
The progressbar background color.
beautiful.progressbar_fg
The progressbar foreground color.
beautiful.progressbar_shape
The progressbar shape.

See also:

beautiful.progressbar_border_color
The progressbar border color.
beautiful.progressbar_border_width
The progressbar outer border width.
beautiful.progressbar_bar_shape
The progressbar inner shape.

See also:

beautiful.progressbar_bar_border_width
The progressbar bar border width.
beautiful.progressbar_bar_border_color
The progressbar bar border color.
beautiful.progressbar_margins
The progressbar margins. Note that if the clip is disabled, this allows the background to be smaller than the bar.

Type:

  • margins A table for each side or a number
    • top number (default 0)
    • bottom number (default 0)
    • left number (default 0)
    • right number (default 0)

See also:

beautiful.progressbar_paddings
The progressbar padding. Note that if the clip is disabled, this allows the bar to be taller than the background.

Type:

  • padding A table for each side or a number
    • top number (default 0)
    • bottom number (default 0)
    • left number (default 0)
    • right number (default 0)

See also:

Deprecated functions

wibox.widget.progressbar.set_vertical
Set the progressbar to draw vertically. This doesn’t do anything anymore, use a wibox.container.rotate widget.

param:

  • vertical boolean
wibox.widget.progressbar.set_height
Set the progressbar height. This method is deprecated. Use a wibox.container.constraint widget or forced_height.

param:

  • height The height to set.
wibox.widget.progressbar.set_width
Set the progressbar width. This method is deprecated. Use a wibox.container.constraint widget or forced_width.

param:

  • width The width to set.

Methods

wibox.widget.progressbar:set_value (value)
Set the progressbar value.
  • value The progress bar value between 0 and 1.
wibox.widget.progressbar:index (widget[, recursive[, ...]])
Get a widex index.
  • widget The widget to look for
  • recursive Also check sub-widgets (optional)
  • ... Aditional widgets to add at the end of the "path" (optional)

Returns:

  1. The index
  2. The parent layout
  3. The path between "self" and "widget"
wibox.widget.progressbar:get_all_children ()
Get all direct and indirect children widgets. This will scan all containers recursively to find widgets Warning: This method it prone to stack overflow id the widget, or any of its children, contain (directly or indirectly) itself.

Returns:

    table The children
wibox.widget.progressbar:setup (args)
Set a declarative widget hierarchy description. See The declarative layout system
  • args An array containing the widgets disposition
wibox.widget.progressbar:buttons (_buttons)
Set/get a widget’s buttons.
  • _buttons The table of buttons that should bind to the widget.
wibox.widget.progressbar:emit_signal_recursive (signal_name, ...)
Emit a signal and ensure all parent widgets in the hierarchies also forward the signal. This is useful to track signals when there is a dynamic set of containers and layouts wrapping the widget.
  • signal_name string
  • ... Other arguments
wibox.widget.progressbar:disconnect_signal (name, func)
Disconnect to a signal.
  • name string The name of the signal
  • func function The callback that should be disconnected
wibox.widget.progressbar:emit_signal (name, ...)
Emit a signal.
  • name string The name of the signal
  • ... Extra arguments for the callback functions. Each connected function receives the object as first argument and then any extra arguments that are given to emit_signal()
wibox.widget.progressbar:connect_signal (name, func)
Connect to a signal.
  • name string The name of the signal
  • func function The callback to call when the signal is emitted
wibox.widget.progressbar:weak_connect_signal (name, func)
Connect to a signal weakly. This allows the callback function to be garbage collected and automatically disconnects the signal when that happens.

Warning: Only use this function if you really, really, really know what you are doing.

  • name string The name of the signal
  • func function The callback to call when the signal is emitted
generated by LDoc 1.4.6 Last updated 2017-04-24 08:13:02