class HORIZONTAL_LINE

Features exported to LAYOUT

HORIZONTAL_LINE is a widget you can use as separator. As it's a widget, position and size are managed by the layout associated with the container the line is put into.

Direct parents

conformant parents

LINE

Summary

creation features

exported features

Details

default_create

Default creation method. It is used when no creation method is specified if allowed. Note it may be renamed.

min_width: INTEGER

TODO: change with thickness ?

std_width: INTEGER
std_height: INTEGER
min_height: INTEGER
set_thickness (thick: INTEGER)

Set the thickness of the line (drawing' witdh)

require

  • thick > 0

ensure

  • thick = thickness

expose_paint

expose_paint paint with depth limited to the first window Containers have to propagate, with special attention to windows where expose_paint do nothing.

width: INTEGER
height: INTEGER
thickness: INTEGER
style: DRAW_STYLE
set_style (s: DRAW_STYLE)

Change the style used to draw the line. NOTE: The screen is not updated. --TODO: change this ?

ensure

  • style = s

reset_default_style

The renderer will be used to draw the line. NOTE: The screen is not updated. --TODO: change this ?

set_geometry (x: INTEGER, y: INTEGER, w: INTEGER, h: INTEGER)

require

  • x >= 0
  • y >= 0
  • w >= min_width
  • h >= min_height

ensure

  • width = w
  • height = h

parent: CONTAINER
pos_x: INTEGER
pos_y: INTEGER
x_shrink_allowed: BOOLEAN
x_expand_allowed: BOOLEAN
y_shrink_allowed: BOOLEAN
y_expand_allowed: BOOLEAN
valid_width (w: INTEGER): BOOLEAN
valid_height (h: INTEGER): BOOLEAN
area: RECT
root_area: RECT
set_x_shrink (b: BOOLEAN)
set_x_expand (b: BOOLEAN)
set_y_shrink (b: BOOLEAN)
set_y_expand (b: BOOLEAN)
set_shrink (b: BOOLEAN)

change both x and y shrink state

set_expand (b: BOOLEAN)

change both x and y expand state

state: INTEGER

use values from STATE_CONSTANTS

frozen is_state_normal: BOOLEAN
frozen is_state_active: BOOLEAN
frozen is_state_prelight: BOOLEAN
frozen is_state_selected: BOOLEAN
frozen is_state_insensitive: BOOLEAN

Class invariant