Index of values

active_widgets [Bogue.Radiolist]
adaptive_fps [Bogue.Time]

Create helper functions to help controlling the frame rate of the graphics loop.

add [Bogue.Sdl_area]

add area ~name f adds the arbitrary command f to the render queue.

add [Bogue.Selection]
add [Bogue.Timeout]

add delay action will execute action () (in the main thread) after the delay of delay ms.

add_bar [Bogue.Menu]

Creation of a menu bar in the dst layout, with drop-down submenus.

add_connection [Bogue.Widget]

Registers the connection with the widget.

add_element [Bogue.Sdl_area]

Append the element to the end of the command queue.

add_get [Bogue.Sdl_area]

Similar to Sdl_area.add, but returns the corresponding Sdl_area.draw_element.

add_screen [Bogue.Popup]

Add a screen on top of the layout.

animate_alpha [Bogue.Layout]
animate_angle [Bogue.Layout]
animate_h [Bogue.Layout]
animate_w [Bogue.Layout]
animate_x [Bogue.Layout]

Assign an Avar to the layout x position.

animate_y [Bogue.Layout]
apply [Bogue.Avar]

apply f v creates a new Avar by composing with f; the old Avar v is still active

attach [Bogue.Popup]

Generic modal type popup

auto_scale [Bogue.Layout]

Set the layout to automatically scale its inner rooms when the layout size is modified.

bar [Bogue.Menu]

Return a menu layout that will be installed with Menu.add_bar into the top house at startup.

black [Bogue.Draw]
blue [Bogue.Draw]
bold [Bogue.Text_display]
box [Bogue.Widget]

Create a Box widget, which simply displays a rectangle, optionally with rounded corners and drop shadow.

button [Bogue.Widget]
button_pos [Bogue.Mouse]
buttons_down [Bogue.Trigger]

A list of events containing the mouse_button_down event, and the finger_down event.

buttons_up [Bogue.Trigger]

A list of events containing the mouse_button_up event, and the finger_up event.

cache [Bogue.Sdl_area]

This will insert a special command in the queue that will save the texture obtained at that point, and clear all previous commands in the queue.

cancel [Bogue.Timeout]

Cancel the Timeout.

change_volume [Bogue.Mixer]

Multiply sound intensity by a float factor

check_box [Bogue.Widget]
check_box_with_label [Bogue.Widget]

let b,l = check_box_with_label text creates a check box b, a label l, and connect them so that clicking on the text will also act on the check box.

circle [Bogue.Draw]

circle renderer ~width ~color ~radius ~x ~y draws a circle with given line thickness, centered at (x,y), with given radius.

claim_keyboard_focus [Bogue.Layout]
clear [Bogue.Sdl_area]

Clear the area (this removes all commands from the render queue).

clear_cache [Bogue.Sdl_area]

Clear the graphics cache generated by the Sdl_area.cache command.

close [Bogue.Mixer]
color_bg [Bogue.Layout]

Construct a background from an RGBA color.

color_bg [Bogue.Style]
connect [Bogue.Widget]

connect source target action triggers creates a connection from the source widget to the target widget, but does not register it (this may change in the future...

connect_main [Bogue.Widget]

Alias for connect ~priority:Main.

containing_widget [Bogue.Layout]

Search for the room containing the widget, if any.

create [Bogue.Main]

Create a board from a list of layouts and connections.

create [Bogue.Window]

Create a window from the given layout.

create [Bogue.Table]
create [Bogue.Select]

create string_array i creates a select box with preselected entry i.

create [Bogue.Menu]

Generic menu creation, inserted in the dst layout.

create [Bogue.Tabs]
create [Bogue.Long_list]

Create a long list through the function generate which maps any index i to the ieth element (layout) of the list.

create [Bogue.Snapshot]

Should be called from the main thread only.

create [Bogue.Sdl_area]

Create an empty SDL area.

create [Bogue.Box]
create [Bogue.Check]
create [Bogue.Button]

The action parameter is executed (with the current button state as argument) just after the button state is modified by mouse clicking or keyboard (on button up or key up).

create [Bogue.Label]

Create a new Label.t.

create [Bogue.Style]
create [Bogue.Image]

create "image.jpg" will load the image "image.jpg".

create [Bogue.Avar]

Generic Avar creation.

create [Bogue.Tvar]
create [Bogue.Var]

create v returns a Var with initial value v.

create_from_svg [Bogue.Image]

Load an svg image.

create_mixer [Bogue.Mixer]

create devname creates the mixer an opens the sound device.

cyan [Bogue.Draw]
dark_grey [Bogue.Draw]
darker [Bogue.Draw]
debug [Bogue.Utils]
debug_board [Bogue.Utils]
debug_code [Bogue.Utils]

Logical ored of !debug with debug flags (below) controls the amount of debuging.

debug_custom [Bogue.Utils]
debug_error [Bogue.Utils]
debug_event [Bogue.Utils]
debug_graphics [Bogue.Utils]
debug_io [Bogue.Utils]
debug_memory [Bogue.Utils]
debug_thread [Bogue.Utils]
debug_warning [Bogue.Utils]
default [Bogue.Utils]

default o v  is the same as Option.value o ~default:v.

destroy [Bogue.Window]

Ask Bogue to destroy the window.

destroy_window [Bogue.Layout]

Emit the destroy_window event to ask Bogue to destroy the SDL window containing the layout.

disable [Bogue.Sdl_area]

Mark an element for skipping its execution.

disable_resize [Bogue.Layout]

This makes sure that nothing is executed when someone tries to resize the layout.

do_option [Bogue.Utils]

do_option o f is the same as Option.iter f o.

draw_circle [Bogue.Sdl_area]

draw_circle c ~color ~thick ~radius (x0, y0) draws a circle of the given line thickness and color inside the disc of center coordinates (x0, y0) and given radius.

draw_line [Bogue.Sdl_area]

draw_line c ~color ~thick (x1, y1) (x2, y2) draws a line of given color and thickness from point (x1, y1) to point (x2, y2).

draw_rectangle [Bogue.Sdl_area]

draw_rectangle c ~color ~thick ~w ~h x0 y0 draws a rectangle of the given line thickness inside the box of top-left coordinates (x0,
, width w and height h.

drawing_size [Bogue.Sdl_area]

Size in physical pixels of the target SDL texture on which you can draw.

empty [Bogue.Layout]

An empty layout can reserve some space without stealing focus.

empty [Bogue.Widget]

Create a widget that does not display anything but still gets focus and reacts to events.

empty [Bogue.Style]
enable [Bogue.Sdl_area]
event_kind [Bogue.Trigger]
example [Bogue.Text_display]
exit_on_escape [Bogue.Main]

If the exit_on_escape shortcut is given to the Main.make function, then the Main.Exit exception will be raised upon pressing the Escape key.

fade_in [Bogue.Layout]

Animate the alpha channel of the layout.

fade_out [Bogue.Layout]
fill_circle [Bogue.Sdl_area]
fill_rectangle [Bogue.Sdl_area]
find_color [Bogue.Draw]

Convert a string of the form "grey" or "#FE01BC" to a rgb code (r,g,b).

find_share [Bogue.Theme]

find_share app file returns a guessed location for your application share directory (if it exists), for instance /usr/local/share/my_app.

finger_pos [Bogue.Mouse]
fit_content [Bogue.Layout]

Adapt the size of the layout (and their houses) to the disposition of the contained rooms.

fix_content [Bogue.Layout]

Disable automatic resizing of the rooms inside this layout.

flat [Bogue.Layout]

Create a horizontal arrangement from a list of rooms.

flat_of_w [Bogue.Layout]

Horizontal arrangement of widgets.

follow_mouse [Bogue.Layout]
fromto [Bogue.Avar]

fromto x1 x2 creates a integer Avar.t with initial value x1 and, as time elapses, moves continuously to x2, with a final slowdown.

fromto_unif [Bogue.Avar]

Similar to Avar.fromto but with uniform speed (no slowdown).

full_height [Bogue.Space]
full_width [Bogue.Space]

This will set the width of the room (layout) in order to occupy the whole width of its house.

get [Bogue.Avar]

Start the animation (if necessary) and compute the current value of the variable.

get [Bogue.Tvar]
get [Bogue.Var]
get_box [Bogue.Widget]
get_button [Bogue.Widget]
get_check [Bogue.Widget]
get_content [Bogue.Layout]
get_frame [Bogue.Main]

Number of displayed frames since startup.

get_image [Bogue.Widget]
get_index [Bogue.Radiolist]
get_label [Bogue.Widget]
get_max [Bogue.Slider]
get_oldx [Bogue.Layout]

Return the last computed value for the relative x position of the layout.

get_oldy [Bogue.Layout]
get_physical_size [Bogue.Layout]

multiplies get_size by the Theme scaling factor.

get_rooms [Bogue.Layout]
get_sdl_area [Bogue.Widget]
get_size [Bogue.Layout]

get_size l is equivalent to (width l, height l)

get_slider [Bogue.Widget]
get_state [Bogue.Widget]

Query a boolean state.

get_text [Bogue.Widget]

Return the text of the widget.

get_text_display [Bogue.Widget]
get_text_input [Bogue.Widget]
get_texture [Bogue.Sdl_area]
get_window_pos [Bogue.Layout]

Return the window position within the desktop, in physical pixels.

getx [Bogue.Layout]

Compute the relative x position of the room with respect to its house, using animations if any.

gety [Bogue.Layout]
go [Bogue.Utils]

Transform a result into a standard value, or fail with an error.

gradient [Bogue.Style]
green [Bogue.Draw]
grey [Bogue.Draw]
has_element [Bogue.Sdl_area]

Check whether the element belongs to the command queue.

has_resident [Bogue.Layout]
height [Bogue.Layout]
hfill [Bogue.Space]

When used in a Layout.flat structure, this special empty layout will automatically expand in order to fill the available width in the parent house.

hgradient [Bogue.Style]
hide [Bogue.Layout]
hide_window [Bogue.Layout]

Hide the window containing the layout.

html [Bogue.Widget]

Display basic html text by interpreting the following tags: <em>,</em>, <b>,</b>, <strong>,</strong>, <p>,</p>, <br>

icon [Bogue.Widget]

Create a Label widget with a FontAwesome icon.

icon [Bogue.Label]

Create a Label.t using the name of a FontAwesome symbol.

image [Bogue.Widget]

Load image file.

image_bg [Bogue.Style]
image_copy [Bogue.Widget]

Return a new "Image" widget linked to the same image (same underlying Image.t, hence same texture.)

image_from_svg [Bogue.Widget]

Requires rsvg.

imax [Bogue.Utils]

imax a b returns max(a, b).

imin [Bogue.Utils]

imin a b returns min(a, b).

info [Bogue.Popup]

Add to the layout a modal popup with a text and a close button.

init [Bogue.Mixer]

Initialize SDL audio.

intersect [Bogue.Selection]
is_pressed [Bogue.Button]
italic [Bogue.Text_display]
iter [Bogue.Selection]
keep_bottom [Bogue.Space]
keep_right [Bogue.Space]
key_down [Bogue.Trigger]

Same as Tsdl.Sdl.Event.key_down

key_up [Bogue.Trigger]

Same as Tsdl.Sdl.Event.key_up

label [Bogue.Widget]

Create a Label widget with a one-line text.

label_color [Bogue.Draw]
layout [Bogue.Radiolist]

The layout to display the radiolist.

layout_down [Bogue.Print]

Print a layout with all its rooms and subrooms (children).

layout_error [Bogue.Print]

Print a message to stderr and dump the top_house structure to a temporary file.

layout_up [Bogue.Print]

Print the layout node and all the rooms (houses, or parents) in which it is contained.

let@ [Bogue.Utils]
lighter [Bogue.Draw]
line [Bogue.Draw]
load_chunk [Bogue.Mixer]

Load a WAV file.

lock [Bogue.Layout]
magenta [Bogue.Draw]
make [Bogue.Main]

Similar to Main.of_layouts.

make_clip [Bogue.Layout]

Clip a layout inside a smaller container and make it scrollable, and optionally add a scrollbar widget.

make_hfill [Bogue.Space]
make_sdl_windows [Bogue.Main]

This is only useful if you have your own graphics loop, and do not use

make_vfill [Bogue.Space]

Like Space.hfill, but applies to the specified layout instead of creating an empty one.

map_option [Bogue.Utils]

map_option o f is the same as f o.

map_text [Bogue.Widget]

map_text f is a Widget.action that replaces the text of the second widget by f applied to the text of the first widget.

maximize_width [Bogue.Window]

See remarks in Window.set_size.

mem [Bogue.Selection]
mk_border [Bogue.Style]

Note: currently, a border with positive radius is not compatible with a transparent background.

mk_line [Bogue.Style]
mk_shadow [Bogue.Style]
mouse_at_rest [Bogue.Trigger]

Triggered when the mouse did not move for a while.

mouse_enter [Bogue.Trigger]

The mouse_enter event is triggered when the pointer (mouse motion, or finger touch -- but not finger drag) enters a new layout.

mouse_leave [Bogue.Trigger]

Similar to Trigger.mouse_enter, when the pointer leaves the layout.

mouse_over [Bogue.Widget]
nice_delay [Bogue.Trigger]

nice_delay ev t Wait during a delay (t seconds), but quit anyway when Trigger.should_exit ev is true.

none [Bogue.Draw]

none = (0,0,0,0) is completely transparent black.

normal [Bogue.Text_display]
now [Bogue.Time]

Time elapsed from the initialization of SDL (roughly, since the start of your program).

of_array [Bogue.Table]
of_bg [Bogue.Style]
of_border [Bogue.Style]
of_layout [Bogue.Main]

Similar to Main.of_layout but with only one layout.

of_layouts [Bogue.Main]

Similar to Main.create.

of_list [Bogue.Table]
of_list [Bogue.Selection]
of_shadow [Bogue.Style]
of_widgets [Bogue.Radiolist]
of_windows [Bogue.Main]

Synonym for Main.create.

on_button_release [Bogue.Widget]

Similar to Widget.on_release but specialised to button widgets.

on_click [Bogue.Widget]

Uses priority=Main

on_close [Bogue.Window]

Modify the on_close parameter of Window.create.

on_release [Bogue.Widget]

on_release ~release:f w registers on the widget w the action f, which will be executed when the mouse button is released on this widget.

on_resize [Bogue.Layout]

on_resize room f will execute f () upon resizing the room's house (or the room's window, in case the room is the top house, see Layout.top_house), in addition to the already registered resized functions.

one_button [Bogue.Popup]

Here the optional parameters w and h set the width and height of the button.

one_step [Bogue.Main]

This is only useful if you have your own graphics loop, and do not use

opaque [Bogue.Draw]
opaque_bg [Bogue.Layout]

Construct a background from an RGB (ie non-transparent) color.

opaque_bg [Bogue.Style]
oscillate [Bogue.Layout]
oscillate [Bogue.Avar]

oscillate amplitude x0 will oscillate with the given amplitude around the initial value x0

page [Bogue.Text_display]
pale [Bogue.Draw]
pale_grey [Bogue.Draw]
para [Bogue.Text_display]
paragraphs_of_string [Bogue.Text_display]
pause [Bogue.Mixer]
pi [Bogue.Utils]
play_chunk [Bogue.Mixer]

Play chunk on the desired track number.

pointer_motion [Bogue.Trigger]

A list of events containing the mouse_motion event, and the finger_motion event.

pointer_pos [Bogue.Sdl_area]

Position of the pointer (mouse or touchscreen that has generated the event) in physical pixels, with respect to the top-left corner of the Sdl_area.

pointer_pos [Bogue.Mouse]

Return the pointer current position.

pos [Bogue.Mouse]

Get current mouse position.

printd [Bogue.Utils]

For instance printd debug_warning "The value x=%u is too big" x will print a message in the console only if the Utils.debug variable contains the debug_warning flag.

progress [Bogue.Avar]

progress v is a float in [0,1] giving the percentage of the animation when the last v.value was computed.

protect_fn [Bogue.Var]
push [Bogue.Update]

Register a widget for being updated (at next frame) by the main loop.

push [Bogue.Sync]

push action registers the action to be executed by the mainloop at the start of the next frame, or at a subsequent frame if the queue is already large.

push_close [Bogue.Layout]

Emit the close-window event to the window containing the layout, as if the user clicked on the close button.

push_quit [Bogue.Trigger]

Send the SDL_QUIT event, as if the user clicked on the close button of the last existing window.

quit [Bogue.Main]

Use this to close SDL windows and cleanup memory, after has returned.

quit [Bogue.Draw]

Cleanup and quit SDL.

random_color [Bogue.Draw]
raw [Bogue.Text_display]
rectangle [Bogue.Draw]

rectangle renderer ~color ~thick ~w ~h ~x ~y draws a rectangle with given line thickness.

red [Bogue.Draw]
reflat [Bogue.Layout]

Adjust an existing layout to arrange its rooms in a "flat" fashion, as if they were created by Layout.flat.

refresh_custom_windows [Bogue.Main]

Ask the GUI to refresh (ie.

remove [Bogue.Selection]
remove_element [Bogue.Sdl_area]

Remove the Sdl_area.draw_element from the command queue.

remove_option [Bogue.Utils]

Like Option.get.

replace [Bogue.Text_display]

replace ~by:t2 t1 replaces the text content of t1 by the one of t2.

replace_room [Bogue.Layout]

Replace "room" by "by" inside its "house" in lieu and place of the initial room.

reset [Bogue.Button]
resident [Bogue.Layout]

Create a layout (=room) from a single Widget (=resident).

retower [Bogue.Layout]
rich_text [Bogue.Widget]
room_margin [Bogue.Theme]
rotate [Bogue.Layout]

Rotate all widgets inside the layout around their respective centers.

round [Bogue.Utils]

Round float to nearest integer.

run [Bogue.Main]

This is finally how you run your app! It creates the SDL windows associated with the Window.ts registered with the board, and launches the main loop.

run [Bogue.Utils]

run f is equivalent to f ().

scale_int [Bogue.Theme]

Conversion: Bogue dimension -> hardware pixel dimension.

sdl_area [Bogue.Widget]

See Sdl_area.create regarding the size (w,h).

separator [Bogue.Menu]
set [Bogue.Slider]

Set a new value.

set [Bogue.Label]

Modify the text of the label.

set [Bogue.Tvar]
set [Bogue.Var]

set v value waits until no thread is accessing the Var v and then sets its value to value.

set_alpha [Bogue.Draw]
set_background [Bogue.Layout]
set_background [Bogue.Box]
set_check_state [Bogue.Widget]
set_color [Bogue.Draw]

Equivalent to Sdl.set_render_draw_color.

set_cursor [Bogue.Layout]

Set the current cursor to the default value for this layout.

set_cursor [Bogue.Widget]

Set the cursor that should be displayed for this widget.

set_fg_color [Bogue.Label]

Modify the color of the text.

set_height [Bogue.Layout]
set_index [Bogue.Radiolist]

Set the selected entry to the specified index and directly activate the button's connections with the Trigger.var_changed event.

set_integer_scale [Bogue.Theme]


set_label_font [Bogue.Theme]
set_rooms [Bogue.Layout]

Modify the layout content by replacing the former content by a new list of rooms.

set_scale [Bogue.Theme]
set_shadow [Bogue.Layout]
set_show [Bogue.Layout]
set_size [Bogue.Window]

Set window size in physical pixels.

set_size [Bogue.Layout]
set_state [Bogue.Widget]

Set a boolean state.

set_system_cursor [Bogue.Draw]

Set the mouse cursor to be the standard system cursor.

set_text [Bogue.Widget]

Change the text of a widget.

set_text_color [Bogue.Draw]

Overrides the Theme TEXT_COLOR variable.

set_text_font [Bogue.Theme]
set_texture [Bogue.Sdl_area]
set_width [Bogue.Layout]

set_width and similar functions will not work if there is an animation running acting of the variable we want to set (here, the width).

set_window_pos [Bogue.Layout]

set_window_pos layout x y sets the position of the window containing layout to (x,y), in physical pixels.

setx [Bogue.Layout]
sety [Bogue.Layout]
shortcuts_add [Bogue.Main]
shortcuts_add_ctrl [Bogue.Main]
shortcuts_add_ctrl_shift [Bogue.Main]
shortcuts_empty [Bogue.Main]
shortcuts_of_list [Bogue.Main]

Construct shortcuts from a list of (SDL keycode, SDL keymod, action).

should_exit [Bogue.Trigger]

Tell if the current thread should exit.

show [Bogue.Layout]

Does nothing if the layout is already fully displayed.

show_window [Bogue.Layout]

Make the window containing the layout appear onscreen, using set_show and Sdl.show_window.

sienna [Bogue.Draw]
size [Bogue.Widget]

If the widget is not rendered yet, a default size may be returned instead of the true size.

size [Bogue.Slider]
size [Bogue.Label]

Return the logical size (w,h).

slide_in [Bogue.Layout]
slide_to [Bogue.Layout]

slide_to room (x0,y0) will translate the room to the position (x0,y0).

slider [Bogue.Widget]
slider_with_action [Bogue.Widget]

Create a slider that executes an action each time the local value of the slider is modified by the user.

sprint [Bogue.Selection]
startup [Bogue.Trigger]

The startup event is sent to all Widgets when the Bogue mainloop is started using

state [Bogue.Check]
state [Bogue.Button]
stop_pos [Bogue.Layout]

Stop animations of the variables x and y.

strikethrough [Bogue.Text_display]
style_bg [Bogue.Layout]

Construct a background from the given Style.

superpose [Bogue.Layout]

Create a new layout by superposing a list of layouts without changing their (x,y) position.

test [Bogue.Mixer]
text [Bogue.Text_input]
text_display [Bogue.Widget]
text_input [Bogue.Widget]
text_input [Bogue.Trigger]

Same as Tsdl.Sdl.Event.text_input

theme_bg [Bogue.Layout]

This is the background constructed from the current theme's BG_COLOR.

theme_bg [Bogue.Style]
to_list [Bogue.Selection]
to_pixels [Bogue.Sdl_area]

Convert BOGUE logical coordinates into pixel coordinates usable for the SDL area.

to_pixels [Bogue.Draw]

Convert BOGUE logical coordinates into hardware pixel coordinates.

toggle [Bogue.Selection]
tooltip [Bogue.Popup]

tooltip text ~target widget layout adds a tooltip which will appear on layout, next to target (which should be a sublayout of layout), when the widget gets mouse focus and mouse is idle for some time on it.

top_house [Bogue.Layout]

Return the top of the layout tree (the "house" that contains the given layout and that is not contained in another layout).

tower [Bogue.Layout]

Create a vertical arrangement from a list of rooms.

tower_of_w [Bogue.Layout]

Vertical arrangement of widgets.

transp [Bogue.Draw]
two_buttons [Bogue.Popup]
uint_filter [Bogue.Text_input]
underline [Bogue.Text_display]
union [Bogue.Selection]
unload_background [Bogue.Layout]

Free the texture associated with the background (if any).

unload_textures [Bogue.Layout]

Use this to free the textures stored by the layout (and its children) for reducing memory.

unlock [Bogue.Layout]

In general, modifying a layout should by done by the main Thread or by using a Sync.push.

unpause [Bogue.Mixer]
unscale_size [Bogue.Draw]

Transform a size (W,H) in physical pixels into 'logical' pixels (w,h), which are used for layouts.

update [Bogue.Widget]

update w asks the widget w to refresh at next frame.

update [Bogue.Sdl_area]

Force the area to be re-drawn at the next graphics frame.

update [Bogue.Trigger]

Currently the update event is more or less equivalent to var_changed.

update_verbatim [Bogue.Text_display]
user_event [Bogue.Trigger]

Same as Tsdl.Sdl.Event.user_event.

value [Bogue.Slider]

Get current value.

var [Bogue.Avar]

Create an Avar which behaves like a normal Var (no animation).

var_changed [Bogue.Trigger]

The var_changed event can be sent to notify that some widget made a change to a global variable.

verbatim [Bogue.Widget]
vertical [Bogue.Radiolist]

A radiolist with the usual vertical layout of items.

vfill [Bogue.Space]

When used in a Layout.tower structure, this special empty layout will automatically expand in order to fill the available height in the parent house.

vgradient [Bogue.Style]
video_init [Bogue.Draw]

Manually init the SDL video system, and detect the scaling factor used by Bogue.

wait_for [Bogue.Trigger]

SDL Misc

white [Bogue.Draw]
widget [Bogue.Layout]

Return the resident widget, or

width [Bogue.Layout]
will_exit [Bogue.Trigger]

A nice thread should do this just before terminating.

window_opt [Bogue.Layout]

Return the SDL window containing the layout.

window_pos [Bogue.Mouse]

Return the mouse position with respect to the given window, using window position if necessary.

with_bg [Bogue.Style]
with_border [Bogue.Style]
with_protect [Bogue.Var]

with_protect v f applies f to the value of v, while protecting v from the access of any other thread.

with_shadow [Bogue.Style]
xpos [Bogue.Layout]

get current absolute x position of the layout (relative to the top-left corner of the window).

yellow [Bogue.Draw]
yesno [Bogue.Popup]

Add to the layout a modal popup with two yes/no buttons.

ypos [Bogue.Layout]
zoom [Bogue.Layout]