Skip to main content

components

Generated by scripts/generate-component-reference.mjs β€” do not hand-edit.

Every widget Protota can render, insert, and export. Use it to find what to build with, whether from the palette, the agent API, or a Blueprint import.

  • Exports as β€” the GTK/libadwaita class written by mockupToBlueprint.
  • Slots β€” named child positions (addWidget(type, { slot })).
  • Properties β€” what the inspector and the builder can set.
  • Accepts β€” legal children; generic containers accept any widget.

60 components.

about-dialog​

  • Exports as: Adw.AboutDialog
  • Slots: β€”
  • Properties: title (string), description (string), iconName (icon)
  • Accepts: nothing (leaf)

action-row​

  • Exports as: Adw.ActionRow
  • Slots: prefix, suffix
  • Properties: title (string), subtitle (string), iconName (icon), activatable (boolean)
  • Accepts: box, bin, label, button, menu-button, switch-widget, check-button, avatar, progress-bar, level-bar, spinner, entry, inscription, custom-widget

alert-dialog​

  • Exports as: Adw.AlertDialog
  • Slots: β€”
  • Properties: title (string), description (string)
  • Accepts: label, button

avatar​

  • Exports as: Adw.Avatar
  • Slots: β€”
  • Properties: title (string), value (number)
  • Accepts: nothing (leaf)
  • Exports as: Adw.Banner
  • Slots: β€”
  • Properties: title (string)
  • Accepts: nothing (leaf)

bin​

  • Exports as: Adw.Bin
  • Slots: child
  • Properties: β€”
  • Accepts: any widget (generic container)

box​

  • Exports as: Gtk.Box
  • Slots: β€”
  • Properties: orientation (select), spacing (number)
  • Accepts: any widget (generic container)

button​

  • Exports as: Gtk.Button
  • Slots: β€”
  • Properties: title (string), iconName (icon), suggested (boolean), destructive (boolean), flat (boolean), circular (boolean)
  • Accepts: box, label, avatar, stack, inscription, bin

button-row​

  • Exports as: Adw.ButtonRow
  • Slots: β€”
  • Properties: title (string), iconName (icon), destructive (boolean)
  • Accepts: box, bin, label, button, menu-button, switch-widget, check-button, avatar, progress-bar, level-bar, spinner, entry, inscription, custom-widget

center-box​

  • Exports as: Gtk.CenterBox
  • Slots: β€”
  • Properties: β€”
  • Accepts: any widget (generic container)

check-button​

  • Exports as: Gtk.CheckButton
  • Slots: β€”
  • Properties: title (string), active (boolean)
  • Accepts: nothing (leaf)

clamp​

  • Exports as: Adw.Clamp
  • Slots: child
  • Properties: title (string)
  • Accepts: any widget (generic container)

combo-row​

  • Exports as: Adw.ComboRow
  • Slots: prefix, suffix
  • Properties: title (string), subtitle (string), selectedIndex (number)
  • Accepts: box, bin, label, button, menu-button, switch-widget, check-button, avatar, progress-bar, level-bar, spinner, entry, inscription, custom-widget

custom-widget​

  • Exports as: Protota.CustomWidget (no introspection data)
  • Slots: β€”
  • Properties: title (string), widthRequest (number), heightRequest (number)
  • Accepts: any widget (generic container)

dialog​

  • Exports as: Adw.Dialog
  • Slots: content
  • Properties: title (string)
  • Accepts: any widget (generic container)
  • Exports as: Gtk.DropDown
  • Slots: β€”
  • Properties: options (string), selectedIndex (number)
  • Accepts: nothing (leaf)

entry​

  • Exports as: Gtk.Entry
  • Slots: β€”
  • Properties: value (string), placeholder (string), title (string)
  • Accepts: bin, custom-widget, popover

entry-row​

  • Exports as: Adw.EntryRow
  • Slots: prefix, suffix
  • Properties: title (string), value (string), placeholder (string)
  • Accepts: box, bin, label, button, menu-button, switch-widget, check-button, avatar, progress-bar, level-bar, spinner, entry, inscription, custom-widget

expander-row​

  • Exports as: Adw.ExpanderRow
  • Slots: prefix, suffix
  • Properties: title (string), subtitle (string)
  • Accepts: any widget (generic container)

flow-box​

  • Exports as: Gtk.FlowBox
  • Slots: β€”
  • Properties: β€”
  • Accepts: any widget (generic container)

grid​

  • Exports as: Gtk.Grid
  • Slots: β€”
  • Properties: columns (number), rowSpacing (number), columnSpacing (number)
  • Accepts: any widget (generic container)

header-bar​

  • Exports as: Adw.HeaderBar
  • Slots: start, title, end
  • Properties: title (string), showTitleButtons (boolean)
  • Accepts: any widget (generic container)

inscription​

  • Exports as: Gtk.Inscription
  • Slots: β€”
  • Properties: title (string)
  • Accepts: nothing (leaf)

label​

  • Exports as: Gtk.Label
  • Slots: β€”
  • Properties: title (string), subtitle (select)
  • Accepts: nothing (leaf)

level-bar​

  • Exports as: Gtk.LevelBar
  • Slots: β€”
  • Properties: value (number), min (number), max (number)
  • Accepts: nothing (leaf)

list-box​

  • Exports as: Gtk.ListBox
  • Slots: β€”
  • Properties: β€”
  • Accepts: any widget (generic container)

list-box-row​

  • Exports as: Gtk.ListBoxRow
  • Slots: child
  • Properties: activatable (boolean)
  • Accepts: any widget (generic container)
  • Exports as: Gtk.MenuButton
  • Slots: popover, child
  • Properties: iconName (icon), title (string)
  • Accepts: box, label, popover, list-box, bin, inscription
  • Exports as: Adw.NavigationView
  • Slots: content
  • Properties: β€”
  • Accepts: any widget (generic container)

overlay​

  • Exports as: Gtk.Overlay
  • Slots: child, overlay
  • Properties: β€”
  • Accepts: any widget (generic container)

overlay-split​

  • Exports as: Adw.OverlaySplitView
  • Slots: sidebar, content
  • Properties: β€”
  • Accepts: any widget (generic container)

password-row​

  • Exports as: Adw.PasswordEntryRow
  • Slots: prefix, suffix
  • Properties: title (string), value (string)
  • Accepts: box, bin, label, button, menu-button, switch-widget, check-button, avatar, progress-bar, level-bar, spinner, entry, inscription, custom-widget

popover​

  • Exports as: Gtk.Popover
  • Slots: β€”
  • Properties: title (string)
  • Accepts: any widget (generic container)

preferences-dialog​

  • Exports as: Adw.PreferencesDialog
  • Slots: β€”
  • Properties: title (string)
  • Accepts: preferences-page

preferences-group​

  • Exports as: Adw.PreferencesGroup
  • Slots: β€”
  • Properties: title (string), description (string)
  • Accepts: any widget (generic container)

preferences-page​

  • Exports as: Adw.PreferencesPage
  • Slots: β€”
  • Properties: title (string), iconName (icon)
  • Accepts: preferences-group

progress-bar​

  • Exports as: Gtk.ProgressBar
  • Slots: β€”
  • Properties: value (number), min (number), max (number)
  • Accepts: nothing (leaf)

scale​

  • Exports as: Gtk.Scale
  • Slots: β€”
  • Properties: value (number), min (number), max (number)
  • Accepts: nothing (leaf)

scrolled-window​

  • Exports as: Gtk.ScrolledWindow
  • Slots: child
  • Properties: β€”
  • Accepts: any widget (generic container)

search-entry​

  • Exports as: Gtk.SearchEntry
  • Slots: β€”
  • Properties: placeholder (string)
  • Accepts: bin, custom-widget, popover

spin-row​

  • Exports as: Adw.SpinRow
  • Slots: prefix, suffix
  • Properties: title (string), subtitle (string), min (number), max (number), step (number)
  • Accepts: box, bin, label, button, menu-button, switch-widget, check-button, avatar, progress-bar, level-bar, spinner, entry, inscription, custom-widget

spinner​

  • Exports as: Adw.Spinner
  • Slots: β€”
  • Properties: β€”
  • Accepts: nothing (leaf)

split-button​

  • Exports as: Adw.SplitButton
  • Slots: popover
  • Properties: title (string), iconName (icon)
  • Accepts: box, label, popover, bin

stack​

  • Exports as: Gtk.Stack
  • Slots: β€”
  • Properties: β€”
  • Accepts: any widget (generic container)

stack-page​

  • Exports as: Gtk.StackPage
  • Slots: β€”
  • Properties: title (string)
  • Accepts: any widget (generic container)

status-page​

  • Exports as: Adw.StatusPage
  • Slots: child
  • Properties: title (string), description (string), iconName (icon)
  • Accepts: any widget (generic container)

switch-row​

  • Exports as: Adw.SwitchRow
  • Slots: prefix, suffix
  • Properties: title (string), subtitle (string), active (boolean)
  • Accepts: box, bin, label, button, menu-button, switch-widget, check-button, avatar, progress-bar, level-bar, spinner, entry, inscription, custom-widget

switch-widget​

  • Exports as: Gtk.Switch
  • Slots: β€”
  • Properties: active (boolean)
  • Accepts: nothing (leaf)

tab-bar​

  • Exports as: Adw.TabBar
  • Slots: start-action-widget, end-action-widget
  • Properties: view (string), autohide (boolean)
  • Accepts: button, menu-button, split-button, box

tab-page​

  • Exports as: β€” (no introspection data)
  • Slots: β€”
  • Properties: β€”
  • Accepts: any widget (generic container)

tab-view​

  • Exports as: Adw.TabView
  • Slots: β€”
  • Properties: β€”
  • Accepts: any widget (generic container)

toast-overlay​

  • Exports as: Adw.ToastOverlay
  • Slots: child
  • Properties: β€”
  • Accepts: any widget (generic container)

toggle​

  • Exports as: Adw.Toggle
  • Slots: β€”
  • Properties: title (string), iconName (icon)
  • Accepts: nothing (leaf)

toggle-group​

  • Exports as: Adw.ToggleGroup
  • Slots: β€”
  • Properties: β€”
  • Accepts: toggle

toolbar-view​

  • Exports as: Adw.ToolbarView
  • Slots: top, content, bottom
  • Properties: β€”
  • Accepts: any widget (generic container)

view-stack​

  • Exports as: Adw.ViewStack
  • Slots: β€”
  • Properties: β€”
  • Accepts: any widget (generic container)

view-switcher​

  • Exports as: Adw.ViewSwitcher
  • Slots: β€”
  • Properties: β€”
  • Accepts: nothing (leaf)

window​

  • Exports as: Adw.ApplicationWindow
  • Slots: content
  • Properties: β€”
  • Accepts: any widget (generic container)

window-title​

  • Exports as: Adw.WindowTitle
  • Slots: β€”
  • Properties: title (string), subtitle (string)
  • Accepts: nothing (leaf)

wrap-box​

  • Exports as: Adw.WrapBox
  • Slots: β€”
  • Properties: spacing (number)
  • Accepts: any widget (generic container)