# Module: `wibox.widget.slider`

An interactive mouse based slider widget.

### Usage:

    local widget = wibox.widget {
        bar_shape           = gears.shape.rounded_rect,
        bar_height          = 3,
        bar_color           = beautiful.border_color,
        handle_color        = beautiful.bg_normal,
        handle_shape        = gears.shape.circle,
        handle_border_color = beautiful.border_color,
        handle_border_width = 1,
        value               = 25,
        widget              = wibox.widget.slider,
    }

    -- Connect to `property::value` to use the value on change
    widget:connect_signal("property::value", function(_, new_value)
        naughty.notify { title = "Slider changed", message = tostring(new_value) }
    end)

### Class Hierarchy

- gears.object
- - wibox.widget.base
  - - wibox.widget.slider

### Info:

- Copyright: 2015 Grigory Mishchenko, 2016 Emmanuel Lepage Vallee
- Originally authored by: Grigory Mishchenko <grishkokot@gmail.com>,Emmanuel Lepage Vallee <elv1313@gmail.com>
  (Full contributors list available on our github project)

## Constructors

wibox.widget.slider {[args]} | Create a slider widget. |

## Object properties

handle_shape | shape or nil | The slider handle shape. |
handle_color | color or nil | The slider handle color. |
handle_margins | table or number or nil | The slider handle margins. |
handle_width | number or nil | The slider handle width. |
handle_border_color | color or nil | The handle border_color. |
handle_border_width | number or nil | The handle border width. |
handle_cursor | string or nil | The cursor icon while grabbing the handle. |
bar_shape | shape or nil | The bar (background) shape. |
bar_height | number or nil | The bar (background) height. |
bar_color | color or nil | The bar (background) color. |
bar_active_color | color or nil | The bar (active) color. |
bar_margins | table or number or nil | The bar (background) margins. |
bar_border_width | number or nil | The bar (background) border width. |
bar_border_color | color or nil | The bar (background) border_color. |
value | number | The slider value. |
minimum | number | The slider minimum value. |
maximum | number | The slider maximum value. |
children | table | Get or set the children elements. | Inherited from wibox.widget.base
all_children | table | Get all direct and indirect children widgets. | Inherited from wibox.widget.base
forced_height | number or nil | Force a widget height. | Inherited from wibox.widget.base
forced_width | number or nil | Force a widget width. | Inherited from wibox.widget.base
opacity | number | The widget opacity (transparency). | Inherited from wibox.widget.base
visible | boolean | The widget visibility. | Inherited from wibox.widget.base
buttons | table | The widget buttons. | Inherited from wibox.widget.base

## Theme variables

beautiful.slider_bar_border_width | number | The bar (background) border width. |
beautiful.slider_bar_border_color | color | The bar (background) border color. |
beautiful.slider_handle_border_color | color | The handle border_color. |
beautiful.slider_handle_border_width | number | The handle border width. |
beautiful.slider_handle_width | number | The handle width. |
beautiful.slider_handle_color | color | The handle color. |
beautiful.slider_handle_shape | gears.shape | The handle shape. |
beautiful.slider_handle_cursor | string | The cursor icon while grabbing the handle. |
beautiful.slider_bar_shape | gears.shape | The bar (background) shape. |
beautiful.slider_bar_height | number | The bar (background) height. |
beautiful.slider_bar_margins | table | The bar (background) margins. |
beautiful.slider_handle_margins | table | The slider handle margins. |
beautiful.slider_bar_color | color | The bar (background) color. |
beautiful.slider_bar_active_color | color | The bar (active) color. |

## Object methods

:add_button (button) | Add a new awful.button to this widget. | Inherited from wibox.widget.base
:emit_signal_recursive (signal_name, ...) | Emit a signal and ensure all parent widgets in the hierarchies also forward the signal. | Inherited from wibox.widget.base
:index (widget, recursive, ...) -> (number, widget, table) | Get the index of a widget. | Inherited from wibox.widget.base
:connect_signal (name, func) | Connect to a signal. | Inherited from gears.object
:weak_connect_signal (name, func) | Connect to a signal weakly. | Inherited from gears.object
:disconnect_signal (name, func) | Disconnect from a signal. | Inherited from gears.object
:emit_signal (name, ...) | Emit a signal. | Inherited from gears.object

## Signals

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

## Constructors

🔗 wibox.widget.slider {[args]}
  Create a slider widget.

  ### Parameters:

  Note: This constructors uses named parameters calling convention. It means you call it with `{}` and omit the parantheses. For example, calling this will all default argument would be `wibox.widget.slider{}`. This is a Lua shortcut syntax equivalent to `wibox.widget.slider({})`. `args` is only a placeholder name for the "lone table argument" used in named parameters calls.

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  args | Optional | table |
  handle_shape | Optional | gears.shape | The slider handle shape.
  handle_color | Optional | color | The slider handle color.
  handle_margins | Optional | table | The slider handle margins.
  handle_width | Optional | number | The slider handle width.
  handle_border_color | Optional | color | The handle border_color.
  handle_border_width | Optional | number | The handle border width.
  handle_cursor | Optional | string | The cursor icon while grabbing the handle. The available cursor names are listed under handle_cursor, in the "Object properties" section.
  bar_shape | Optional | gears.shape | The bar (background) shape.
  bar_height | Optional | number | The bar (background) height.
  bar_color | Optional | color | The bar (background) color.
  bar_active_color | Optional | color | The bar (active) color.
  bar_margins | Optional | table | The bar (background) margins.
  bar_border_width | Optional | number | The bar (background) border width.
  bar_border_color | Optional | color | The bar (background) border_color.
  value | Optional | number | The slider value.
  minimum | Optional | number | The slider minimum value.
  maximum | Optional | number | The slider maximum value.

## Object properties

🔗 handle_shape shape or nil · 1 signal · 1 theme variable
  The slider handle shape.

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_handle_shape`
  Type description:
  gears.shape | : Like gears.shape.circle
  function: | : This can be used for custom shapes or to set parameters of existing shapes.
  Function prototype:
  Parameters:
  cr (cairo.context) | : A [Cairo context](https://cairographics.org/manual/cairo-cairo-t.html)
  width (number) | : The area width.
  height (number) | : The area height.
  Return | : The function returns nothing.
  nil | : Fallback to the current value of `beautiful.slider_handle_shape`.

  ### See also:

  gears.shape | Module dedicated to gather common shape painters. | module

  Click to display more

  ### Emit signals:

  - `property::handle_shape` When the handle_shape value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` handle_shape The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_handle_shape | Fallback when handle_shape isn't set.

🔗 handle_color color or nil · 1 signal · 1 theme variable
  The slider handle color.

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_handle_color`
  Type description:
  string | : An hexadecimal color code, such as `"#ff0000"` for red.
  string | : A color name, such as `"red"`.
  table | : A [gradient table](../theme_related_libraries/gears.color.html).
  cairo.pattern | : Any valid [Cairo pattern](https://cairographics.org/manual/cairo-cairo-pattern-t.html).
  cairo.pattern | : A texture build from an image by [gears.color.create\_png\_pattern](../theme_related_libraries/gears.color.html#create_png_pattern)
  nil | : Fallback to the current value of `beautiful.slider_handle_color`.

  Click to display more

  ### Emit signals:

  - `property::handle_color` When the handle_color value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` handle_color The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_handle_color | Fallback when handle_color isn't set.

🔗 handle_margins table or number or nil · 1 signal · 1 theme variable
  The slider handle margins.

  ### Constraints:

  Default value | : `{}`
  Type description:
  number | : A single value used for all sides.
  table: | : A different value for each side. The side names are:
  left (number)
  right (number)
  top (number)
  bottom (number)
  nil | : Fallback to the current value of `beautiful.slider_handle_margins`.
  Unit | : pixel
  Negative allowed | : true

  Click to display more

  ### Emit signals:

  - `property::handle_margins` When the handle_margins value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` handle_margins The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_handle_margins | Fallback when handle_margins isn't set.

🔗 handle_width number or nil · 1 signal · 1 theme variable
  The slider handle width.

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_handle_width`
  Type description:
  nil | : Fallback to the current value of `beautiful.slider_handle_width`.
  Unit | : pixel
  Negative allowed | : false

  Click to display more

  ### Emit signals:

  - `property::handle_width` When the handle_width value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` handle_width The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_handle_width | Fallback when handle_width isn't set.

🔗 handle_border_color color or nil · 1 signal · 1 theme variable
  The handle border_color.

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_handle_border_color`
  Type description:
  string | : An hexadecimal color code, such as `"#ff0000"` for red.
  string | : A color name, such as `"red"`.
  table | : A [gradient table](../theme_related_libraries/gears.color.html).
  cairo.pattern | : Any valid [Cairo pattern](https://cairographics.org/manual/cairo-cairo-pattern-t.html).
  cairo.pattern | : A texture build from an image by [gears.color.create\_png\_pattern](../theme_related_libraries/gears.color.html#create_png_pattern)
  nil | : Fallback to the current value of `beautiful.slider_handle_border_color`.

  Click to display more

  ### Emit signals:

  - `property::handle_border_color` When the handle_border_color value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` handle_border_color The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_handle_border_color | Fallback when handle_border_color isn't set.

🔗 handle_border_width number or nil · 1 signal · 1 theme variable
  The handle border width.

  ### Constraints:

  Default value | : `0`
  Type description:
  nil | : Fallback to the current value of `beautiful.slider_handle_border_width`.
  Unit | : pixel
  Negative allowed | : false

  Click to display more

  ### Emit signals:

  - `property::handle_border_width` When the handle_border_width value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` handle_border_width The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_handle_border_width | Fallback when handle_border_width isn't set.

🔗 handle_cursor string or nil · 1 theme variable
  The cursor icon while grabbing the handle. The available cursor names are:

  num\_glyphs
  arrow
  based\_arrow\_down
  based\_arrow\_up
  boat
  bogosity
  bottom\_left\_corner
  bottom\_right\_corner
  bottom\_side
  bottom\_tee
  box\_spiral
  center\_ptr
  circle
  clock
  coffee\_mug
  cross
  crosshair
  cross\_reverse
  cursor
  diamond\_cross
  dotbox
  dot
  double\_arrow
  draft\_large
  draft\_small
  draped\_box
  exchange
  fleur
  gobbler
  gumby
  hand
  hand
  heart
  icon
  iron\_cross
  leftbutton
  left\_ptr
  left\_side
  left\_tee
  ll\_angle
  lr\_angle
  man
  middlebutton
  mouse
  pencil
  pirate
  plus
  question\_arrow
  rightbutton
  right\_ptr
  right\_side
  right\_tee
  rtl\_logo
  sailboat
  sb\_down\_arrow
  sb\_h\_double\_arrow
  sb\_left\_arrow
  sb\_right\_arrow
  sb\_up\_arrow
  sb\_v\_double\_arrow
  shuttle
  sizing
  spider
  spraycan
  star
  target
  tcross
  top\_left\_arrow
  top\_left\_corner
  top\_right\_corner
  top\_side
  top\_tee
  trek
  ul\_angle
  umbrella
  ur\_angle
  watch
  xterm

  ### Constraints:

  Default value | : `"fleur"`
  Type description:
  nil | : Fallback to the current value of `beautiful.slider_handle_cursor`.

  ### See also:

  mousegrabber | Set a callback to process all mouse events. | module

  Click to display more

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_handle_cursor | Fallback when handle_cursor isn't set.

🔗 bar_shape shape or nil · 1 signal · 1 theme variable
  The bar (background) shape.

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_bar_shape`
  Type description:
  gears.shape | : Like gears.shape.circle
  function: | : This can be used for custom shapes or to set parameters of existing shapes.
  Function prototype:
  Parameters:
  cr (cairo.context) | : A [Cairo context](https://cairographics.org/manual/cairo-cairo-t.html)
  width (number) | : The area width.
  height (number) | : The area height.
  Return | : The function returns nothing.
  nil | : Fallback to the current value of `beautiful.slider_bar_shape`.

  ### See also:

  gears.shape | Module dedicated to gather common shape painters. | module

  Click to display more

  ### Emit signals:

  - `property::bar_shape` When the bar_shape value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` bar_shape The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_bar_shape | Fallback when bar_shape isn't set.

🔗 bar_height number or nil · 1 signal · 1 theme variable
  The bar (background) height.

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_bar_height`
  Type description:
  nil | : Fallback to the current value of `beautiful.slider_bar_height`.
  Unit | : pixel
  Negative allowed | : false

  Click to display more

  ### Emit signals:

  - `property::bar_height` When the bar_height value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` bar_height The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_bar_height | Fallback when bar_height isn't set.

🔗 bar_color color or nil · 1 signal · 1 theme variable
  The bar (background) color.

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_bar_color`
  Type description:
  string | : An hexadecimal color code, such as `"#ff0000"` for red.
  string | : A color name, such as `"red"`.
  table | : A [gradient table](../theme_related_libraries/gears.color.html).
  cairo.pattern | : Any valid [Cairo pattern](https://cairographics.org/manual/cairo-cairo-pattern-t.html).
  cairo.pattern | : A texture build from an image by [gears.color.create\_png\_pattern](../theme_related_libraries/gears.color.html#create_png_pattern)
  nil | : Fallback to the current value of `beautiful.slider_bar_color`.

  Click to display more

  ### Emit signals:

  - `property::bar_color` When the bar_color value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` bar_color The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_bar_color | Fallback when bar_color isn't set.

🔗 bar_active_color color or nil · 1 signal · 1 theme variable
  The bar (active) color.

  Only works when both bar_active_color and bar_color are passed as hex color string

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_bar_active_color`
  Type description:
  string | : An hexadecimal color code, such as `"#ff0000"` for red.
  string | : A color name, such as `"red"`.
  table | : A [gradient table](../theme_related_libraries/gears.color.html).
  cairo.pattern | : Any valid [Cairo pattern](https://cairographics.org/manual/cairo-cairo-pattern-t.html).
  cairo.pattern | : A texture build from an image by [gears.color.create\_png\_pattern](../theme_related_libraries/gears.color.html#create_png_pattern)
  nil | : Fallback to the current value of `beautiful.slider_bar_active_color`.

  Click to display more

  ### Emit signals:

  - `property::bar_active_color` When the bar_active_color value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` bar_active_color The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_bar_active_color | Fallback when bar_active_color isn't set.

🔗 bar_margins table or number or nil · 1 signal · 1 theme variable
  The bar (background) margins.

  ### Constraints:

  Default value | : `{}`
  Type description:
  number | : A single value used for all sides.
  table: | : A different value for each side. The side names are:
  left (number)
  right (number)
  top (number)
  bottom (number)
  nil | : Fallback to the current value of `beautiful.slider_bar_margins`.
  Unit | : pixel
  Negative allowed | : true

  Click to display more

  ### Emit signals:

  - `property::bar_margins` When the bar_margins value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` bar_margins The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_bar_margins | Fallback when bar_margins isn't set.

🔗 bar_border_width number or nil · 1 signal · 1 theme variable
  The bar (background) border width.

  ### Constraints:

  Default value | : `0`
  Type description:
  nil | : Fallback to the current value of `beautiful.slider_bar_border_width`.
  Unit | : pixel
  Negative allowed | : false

  Click to display more

  ### Emit signals:

  - `property::bar_border_width` When the bar_border_width value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` bar_border_width The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_bar_border_width | Fallback when bar_border_width isn't set.

🔗 bar_border_color color or nil · 1 signal · 1 theme variable
  The bar (background) border_color.

  ### Constraints:

  Default value | : `beautiful.wibox_widget_slider_bar_border_color`
  Type description:
  string | : An hexadecimal color code, such as `"#ff0000"` for red.
  string | : A color name, such as `"red"`.
  table | : A [gradient table](../theme_related_libraries/gears.color.html).
  cairo.pattern | : Any valid [Cairo pattern](https://cairographics.org/manual/cairo-cairo-pattern-t.html).
  cairo.pattern | : A texture build from an image by [gears.color.create\_png\_pattern](../theme_related_libraries/gears.color.html#create_png_pattern)
  nil | : Fallback to the current value of `beautiful.slider_bar_border_color`.

  Click to display more

  ### Emit signals:

  - `property::bar_border_color` When the bar_border_color value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` bar_border_color The new value affected to the property.

  ### Consumed theme variables:

  Theme variable | Usage
  --- | ---
  beautiful.slider_bar_border_color | Fallback when bar_border_color isn't set.

🔗 value number · 1 signal
  The slider value.

  ### Constraints:

  Default value | : `0`
  Negative allowed | : true

  Click to display more

  ### Emit signals:

  - `property::value` When the value value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` value The new value affected to the property.
🔗 minimum number · 1 signal
  The slider minimum value.

  ### Constraints:

  Default value | : `0`
  Negative allowed | : true

  Click to display more

  ### Emit signals:

  - `property::minimum` When the minimum value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` minimum The new value affected to the property.
🔗 maximum number · 1 signal
  The slider maximum value.

  ### Constraints:

  Default value | : `100`
  Negative allowed | : true

  Click to display more

  ### Emit signals:

  - `property::maximum` When the maximum value changes.
  - `self` wibox.widget.slider The object which changed (useful when connecting many object to the same callback).
  - `new_value` maximum The new value affected to the property.
🔗 children table · Inherited from wibox.widget.base
  Get or set the children elements.

  ### Constraints:

  Default value | : `{}`
  Table content | : A list of wibox.widget.

  ### See also:

  wibox.widget.base.all_children |  |

🔗 all_children table · Inherited from wibox.widget.base
  Get all direct and indirect children widgets. This will scan all containers recursively to find widgets Warning: This method it prone to stack overflow if there is a loop in the widgets hierarchy. A hierarchy loop is when a widget, or any of its children, contain (directly or indirectly) itself.

  ### Constraints:

  Default value | : `{}`
  Table content | : A list of wibox.widget.

  ### See also:

  wibox.widget.base.children |  |

🔗 forced_height number or nil · Inherited from wibox.widget.base
  Force a widget height.

  ### Constraints:

  Default value | : `nil`
  Type description:
  nil | : Let the layout decide the height. Usually using the widget native height.
  number | : Enforce a number of pixels.
  Unit | : pixel
  Negative allowed | : false

  ### See also:

  wibox.widget.base.forced_width |  |

🔗 forced_width number or nil · Inherited from wibox.widget.base
  Force a widget width.

  ### Constraints:

  Default value | : `nil`
  Type description:
  nil | : Let the layout decide the width. Usually using the widget native width.
  number | : Enforce a number of pixels.
  Unit | : pixel
  Negative allowed | : false

  ### See also:

  wibox.widget.base.forced_height |  |

🔗 opacity number · Inherited from wibox.widget.base
  The widget opacity (transparency).

  ### Constraints:

  Default value | : `1.0`
  Unit | : A gradient between transparent (`0.0`) and opaque (`1.0`).
  Minimum value | : 0.0
  Maximum value | : 1.0

  ### See also:

  wibox.widget.base.visible |  |

🔗 visible boolean · Inherited from wibox.widget.base
  The widget visibility.

  ### Constraints:

  Default value | : `true`
  Valid values | : `true` or `false`.

  ### See also:

  wibox.widget.base.opacity |  |

🔗 buttons table · Inherited from wibox.widget.base
  The widget buttons.

  The table contains a list of awful.button objects.

  ### Constraints:

  Default value | : `{}`
  Table content | : A list of awful.button.

  ### See also:

  awful.button | Create easily new buttons objects ignoring certain modifiers. | module

## Theme variables

🔗 beautiful.slider_bar_border_width number
  The bar (background) border width.
  Click to display more

  ### Used by:

  - bar_border_width The bar (background) border width.
🔗 beautiful.slider_bar_border_color color
  The bar (background) border color.
  Click to display more

  ### Used by:

  - bar_border_color The bar (background) border_color.
🔗 beautiful.slider_handle_border_color color
  The handle border_color.
  Click to display more

  ### Used by:

  - handle_border_color The handle border_color.
🔗 beautiful.slider_handle_border_width number
  The handle border width.
  Click to display more

  ### Used by:

  - handle_border_width The handle border width.
🔗 beautiful.slider_handle_width number
  The handle width.
  Click to display more

  ### Used by:

  - handle_width The slider handle width.
🔗 beautiful.slider_handle_color color
  The handle color.
  Click to display more

  ### Used by:

  - handle_color The slider handle color.
🔗 beautiful.slider_handle_shape gears.shape
  The handle shape.

  ### See also:

  gears.shape | Module dedicated to gather common shape painters. | module

  Click to display more

  ### Used by:

  - handle_shape The slider handle shape.
🔗 beautiful.slider_handle_cursor string
  The cursor icon while grabbing the handle. The available cursor names are:

  num\_glyphs
  arrow
  based\_arrow\_down
  based\_arrow\_up
  boat
  bogosity
  bottom\_left\_corner
  bottom\_right\_corner
  bottom\_side
  bottom\_tee
  box\_spiral
  center\_ptr
  circle
  clock
  coffee\_mug
  cross
  crosshair
  cross\_reverse
  cursor
  diamond\_cross
  dotbox
  dot
  double\_arrow
  draft\_large
  draft\_small
  draped\_box
  exchange
  fleur
  gobbler
  gumby
  hand
  hand
  heart
  icon
  iron\_cross
  leftbutton
  left\_ptr
  left\_side
  left\_tee
  ll\_angle
  lr\_angle
  man
  middlebutton
  mouse
  pencil
  pirate
  plus
  question\_arrow
  rightbutton
  right\_ptr
  right\_side
  right\_tee
  rtl\_logo
  sailboat
  sb\_down\_arrow
  sb\_h\_double\_arrow
  sb\_left\_arrow
  sb\_right\_arrow
  sb\_up\_arrow
  sb\_v\_double\_arrow
  shuttle
  sizing
  spider
  spraycan
  star
  target
  tcross
  top\_left\_arrow
  top\_left\_corner
  top\_right\_corner
  top\_side
  top\_tee
  trek
  ul\_angle
  umbrella
  ur\_angle
  watch
  xterm

  ### See also:

  mousegrabber | Set a callback to process all mouse events. | module

  Click to display more

  ### Used by:

  - handle_cursor The cursor icon while grabbing the handle.
🔗 beautiful.slider_bar_shape gears.shape
  The bar (background) shape.

  ### See also:

  gears.shape | Module dedicated to gather common shape painters. | module

  Click to display more

  ### Used by:

  - bar_shape The bar (background) shape.
🔗 beautiful.slider_bar_height number
  The bar (background) height.
  Click to display more

  ### Used by:

  - bar_height The bar (background) height.
🔗 beautiful.slider_bar_margins table
  The bar (background) margins.
  Click to display more

  ### Used by:

  - bar_margins The bar (background) margins.
🔗 beautiful.slider_handle_margins table
  The slider handle margins.
  Click to display more

  ### Used by:

  - handle_margins The slider handle margins.
🔗 beautiful.slider_bar_color color
  The bar (background) color.
  Click to display more

  ### Used by:

  - bar_color The bar (background) color.
🔗 beautiful.slider_bar_active_color color
  The bar (active) color.

  Only works when both beautiful.slider_bar_color and beautiful.slider_bar_active_color are hex color strings

  Click to display more

  ### Used by:

  - bar_active_color The bar (active) color.

## Object methods

🔗 :add_button (button) · Inherited from wibox.widget.base
  Add a new awful.button to this widget.

  ### Parameters:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  button |  | awful.button | The button to add.

🔗 :emit_signal_recursive (signal_name, ...) · Inherited from wibox.widget.base
  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.

  Note that this function has some flaws:

  1. The signal is only forwarded once the widget tree has been built. This happens after all currently scheduled functions have been executed. Therefore, it will not start to work right away. 2. In case the widget is present multiple times in a single widget tree, this function will also forward the signal multiple times (once per upward tree path). 3. If the widget is removed from the widget tree, the signal is still forwarded for some time, similar to the first case.

  ### Parameters:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  signal_name |  | string |
  ... |  |  | Other arguments

🔗 :index (widget, recursive, ...) -> (number, widget, table) · Inherited from wibox.widget.base
  Get the index of a widget.

  ### Parameters:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  widget |  | widget | The widget to look for.
  recursive | Optional | boolean | Recursively check accross the sub-widgets hierarchy.
  ... | Optional | widget | Additional widgets to add at the end of the sub-widgets hierarchy "path".

  ### Returns:

  1. number The widget index.
  2. widget The parent widget.
  3. table The hierarchy path between "self" and "widget".
🔗 :connect_signal (name, func) · Inherited from gears.object
  Connect to a signal.

  **Usage example output**:

  In slot [obj] nil nil nil In slot [obj] foo bar 42

  ### Parameters:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  name |  | string | The name of the signal.
  func |  | function | The callback to call when the signal is emitted.

  ### Usage:

      local o = gears.object{}
      -- Function can be attached to signals
      local function slot(obj, a, b, c)
          print("In slot", obj, a, b, c)
      end
      o:connect_signal("my_signal", slot)
      -- Emitting can be done without arguments. In that case, the object will be
      -- implicitly added as an argument.
      o:emit_signal "my_signal"
      -- It is also possible to add as many random arguments are required.
      o:emit_signal("my_signal", "foo", "bar", 42)
      -- Finally, to allow the object to be garbage collected (the memory freed), it
      -- is necessary to disconnect the signal or use weak_connect_signal
      o:disconnect_signal("my_signal", slot)
      -- This time, the slot wont be called as it is no longer connected.
      o:emit_signal "my_signal"

🔗 :weak_connect_signal (name, func) · Inherited from gears.object
  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.

  ### Parameters:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  name |  | string | The name of the signal.
  func |  | function | The callback to call when the signal is emitted.

🔗 :disconnect_signal (name, func) · Inherited from gears.object
  Disconnect from a signal.

  ### Parameters:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  name |  | string | The name of the signal.
  func |  | function | The callback that should be disconnected.

🔗 :emit_signal (name, ...) · Inherited from gears.object
  Emit a signal.

  ### Parameters:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  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()

## Signals

🔗 widget::layout_changed · Inherited from wibox.widget.base
  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. | signals

🔗 widget::redraw_needed · Inherited from wibox.widget.base
  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:

  widget::layout_changed | When the layout (size) change. | signals

🔗 button::press · Inherited from wibox.widget.base
  When a mouse button is pressed over the widget.

  ### Arguments:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  self |  | table | The current object instance itself.
  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 |  | table | The entry from the result of wibox: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 | Manipulate and inspect the mouse cursor. | module

🔗 button::release · Inherited from wibox.widget.base
  When a mouse button is released over the widget.

  ### Arguments:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  self |  | table | The current object instance itself.
  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 |  | table | The entry from the result of wibox: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 | Manipulate and inspect the mouse cursor. | module

🔗 mouse::enter · Inherited from wibox.widget.base
  When the mouse enter a widget.

  ### Arguments:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  self |  | table | The current object instance itself.
  find_widgets_result |  | table | The entry from the result of wibox: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 | Manipulate and inspect the mouse cursor. | module

🔗 mouse::leave · Inherited from wibox.widget.base
  When the mouse leave a widget.

  ### Arguments:

  Name |  | Type(s) | Description
  --- | --- | --- | ---
  self |  | table | The current object instance itself.
  find_widgets_result |  | table | The entry from the result of wibox: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 | Manipulate and inspect the mouse cursor. | module

generated by LDoc 1.5.0