跳到正文

SystemPopover

在独立的原生子窗口中显示 QuickGUI 内容,可超出所属窗口边界。

#导入

从 github.com/egoist/quickgui/go/ui 导入 ui。

import (
	"github.com/egoist/quickgui/go/ui"
)

#用法

func SystemPopoverExample() *ui.Element {
	popover := ui.NewSystemPopover()
	return popover.Root().Children(
		popover.Trigger().Child("Account"),
		popover.Content(ui.PopoverContentProps{Width: 240, Height: 120, Placement: "bottom-start"}).Child("Account settings"),
	)
}

#结构

  • systemPopover.Root
  • systemPopover.Trigger
  • systemPopover.Content

#API 参考

展开条目查看说明和完整签名。短横线表示声明中未记录默认值。

NewSystemPopover

查看源码
ui.NewSystemPopover(props ...PopoverRootProps) *SystemPopoverComponent

NewSystemPopover declares a SystemPopover instance. Optional props provide initial settings.

ChildrenComponent—

Content mounted inside the component. Compound child callbacks run after the parent context exists.

Component
查看源码
Openfunc() bool—

Controlled visibility of the panel or overlay. Pair with the open-change callback.

func() bool
查看源码
DefaultOpenbool—

Initial visibility when the component owns its open state.

bool
查看源码
OnOpenChangefunc(bool, PopoverOpenChangeDetails)—

Reports a requested visibility change, including dismissal.

func(bool, PopoverOpenChangeDetails)
查看源码
DismissOnEscape*bool—

Allows Escape to dismiss the surface.

*bool
查看源码
DismissOnPointerOutside*bool—

Allows a pointer press outside the surface to dismiss it.

*bool
查看源码
Modal*bool—

Contains focus and blocks interaction behind the surface.

*bool
查看源码
OpenOnHover*bool—

Opens the surface when its trigger is hovered.

*bool
查看源码
Delayany—

Core-owned delay in milliseconds before opening.

any
查看源码
CloseDelayany—

Core-owned delay in milliseconds before closing.

any
查看源码
OnPlacementChangefunc(AnchorPlacementDetails, *native.Event)—

Callback for placement change. The signature below lists the event payload.

func(AnchorPlacementDetails, *native.Event)
查看源码
SidePopoverSide—

Preferred placement side before collision handling.

PopoverSide
查看源码
AlignPopoverAlign—

Preferred alignment on the placement cross-axis.

PopoverAlign
查看源码
SideOffset*float64—

Distance from the anchor on the chosen side, in logical pixels.

*float64
查看源码
AlignOffset*float64—

Offset along the anchor’s cross axis, in logical pixels.

*float64
查看源码
CollisionPadding*float64—

Space reserved between the positioned surface and the available viewport edges.

*float64
查看源码
Sticky*bool—

Keeps the positioned surface attached to its anchor within available bounds.

*bool
查看源码
Anchor*native.Node—

Element used as the placement anchor for this surface.

*native.Node
查看源码

SystemPopover.Open

查看源码
systemPopover.Open(value any) *SystemPopoverComponent

Controlled visibility of the panel or overlay. Pair with the open-change callback.

SystemPopover.DefaultOpen

查看源码
systemPopover.DefaultOpen(value bool) *SystemPopoverComponent

Initial visibility when the component owns its open state.

SystemPopover.OnOpenChange

查看源码
systemPopover.OnOpenChange(value func(bool, PopoverOpenChangeDetails)) *SystemPopoverComponent

Reports a requested visibility change, including dismissal.

SystemPopover.DismissOnEscape

查看源码
systemPopover.DismissOnEscape(value bool) *SystemPopoverComponent

Allows Escape to dismiss the surface.

SystemPopover.DismissOnPointerOutside

查看源码
systemPopover.DismissOnPointerOutside(value bool) *SystemPopoverComponent

Allows a pointer press outside the surface to dismiss it.

SystemPopover.Modal

查看源码
systemPopover.Modal(value bool) *SystemPopoverComponent

Contains focus and blocks interaction behind the surface.

SystemPopover.OpenOnHover

查看源码
systemPopover.OpenOnHover(value bool) *SystemPopoverComponent

Opens the surface when its trigger is hovered.

SystemPopover.Delay

查看源码
systemPopover.Delay(value any) *SystemPopoverComponent

Core-owned delay in milliseconds before opening.

SystemPopover.CloseDelay

查看源码
systemPopover.CloseDelay(value any) *SystemPopoverComponent

Core-owned delay in milliseconds before closing.

SystemPopover.OnPlacementChange

查看源码
systemPopover.OnPlacementChange(value func(AnchorPlacementDetails, *native.Event)) *SystemPopoverComponent

Callback for placement change. The signature below lists the event payload.

SystemPopover.Side

查看源码
systemPopover.Side(value PopoverSide) *SystemPopoverComponent

Preferred placement side before collision handling.

SystemPopover.Align

查看源码
systemPopover.Align(value PopoverAlign) *SystemPopoverComponent

Preferred alignment on the placement cross-axis.

SystemPopover.SideOffset

查看源码
systemPopover.SideOffset(value float64) *SystemPopoverComponent

Distance from the anchor on the chosen side, in logical pixels.

SystemPopover.AlignOffset

查看源码
systemPopover.AlignOffset(value float64) *SystemPopoverComponent

Offset along the anchor’s cross axis, in logical pixels.

SystemPopover.CollisionPadding

查看源码
systemPopover.CollisionPadding(value float64) *SystemPopoverComponent

Space reserved between the positioned surface and the available viewport edges.

SystemPopover.Sticky

查看源码
systemPopover.Sticky(value bool) *SystemPopoverComponent

Keeps the positioned surface attached to its anchor within available bounds.

SystemPopover.Anchor

查看源码
systemPopover.Anchor(value *native.Node) *SystemPopoverComponent

Element used as the placement anchor for this surface.

SystemPopover.Root

查看源码
systemPopover.Root() *Element

Configures root for this part. The declared type and source define the accepted value.

SystemPopover.Trigger

查看源码
systemPopover.Trigger(options ...PopoverTriggerProps) *Element

Configures trigger for this part. The declared type and source define the accepted value.

Reffunc(*native.Node)—

Receives the retained native node after construction. Keep imperative work in event or lifecycle callbacks.

func(*native.Node)
查看源码
Styleany—

Reusable layout, typography, color, and interaction-state styles. Build with ui.Style() and compose with Merge.

any
查看源码
ChildrenPartChildren—

Content mounted inside the component. Compound child callbacks run after the parent context exists.

PartChildren
查看源码
Disabledany—

Prevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.

any
查看源码
Rolestring—

Accessibility role override. Prefer the component’s built-in semantics.

string
查看源码
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
查看源码
Groupany—

Names this element as a group for descendant interaction-state styling.

any
查看源码
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

any
查看源码
TabIndex*float64—

Controls sequential keyboard focus order. Omit to retain the component’s default focus behavior.

*float64
查看源码
OnClickfunc(*native.Event)—

Called after QuickGUI resolves an activation, including supported keyboard activation.

func(*native.Event)
查看源码
OnDoubleClickfunc(*native.Event)—

Callback for double click. The signature below lists the event payload.

func(*native.Event)
查看源码
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
查看源码
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
查看源码
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
查看源码
OpenOnHover*bool—

Opens the surface when its trigger is hovered.

*bool
查看源码
Delayany—

Core-owned delay in milliseconds before opening.

any
查看源码
CloseDelayany—

Core-owned delay in milliseconds before closing.

any
查看源码

SystemPopover.Content

查看源码
systemPopover.Content(options ...PopoverContentProps) *Element

Configures content for this part. The declared type and source define the accepted value.

Reffunc(*native.Node)—

Receives the retained native node after construction. Keep imperative work in event or lifecycle callbacks.

func(*native.Node)
查看源码
Styleany—

Reusable layout, typography, color, and interaction-state styles. Build with ui.Style() and compose with Merge.

any
查看源码
ChildrenPartChildren—

Content mounted inside the component. Compound child callbacks run after the parent context exists.

PartChildren
查看源码
Disabledany—

Prevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.

any
查看源码
Rolestring—

Accessibility role override. Prefer the component’s built-in semantics.

string
查看源码
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
查看源码
Groupany—

Names this element as a group for descendant interaction-state styling.

any
查看源码
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

any
查看源码
TabIndex*float64—

Controls sequential keyboard focus order. Omit to retain the component’s default focus behavior.

*float64
查看源码
OnClickfunc(*native.Event)—

Called after QuickGUI resolves an activation, including supported keyboard activation.

func(*native.Event)
查看源码
OnDoubleClickfunc(*native.Event)—

Callback for double click. The signature below lists the event payload.

func(*native.Event)
查看源码
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
查看源码
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
查看源码
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
查看源码
Widthfloat64—

Declared logical width.

float64
查看源码
Heightfloat64—

Declared logical height.

float64
查看源码
Placementstring—

Requested native child-window placement.

string
查看源码
Gap*float64—

Space between adjacent children, in logical pixels.

*float64
查看源码
ViewportMargin*float64—

Minimum space reserved around the surface within the viewport.

*float64
查看源码
part.Child(content).Style(style)

Every part returns a fluent element. Strings, numbers, elements, and deferred child factories compose directly.

ChildChild(child any) *Element—

Child appends content and returns this element. Content can be an element, native node, scalar, accessor, or node-returning construction callback.

Child(child any) *Element
查看源码
ChildrenChildren(children ...any) *Element—

Children appends multiple children in order without replacing existing content. It also accepts []any, []*Element, and []*native.Node slices as arguments. Read the retained child nodes through element.Node.Children.

Children(children ...any) *Element
查看源码
StyleStyle(style StyleBuilder) *Element—

Style merges a reusable style. Scalar accessors retain independent native bindings.

Style(style StyleBuilder) *Element
查看源码
OnClickOnClick(handler func()) *Element—

OnClick handles a click without an unused event parameter.

OnClick(handler func()) *Element
查看源码
RefRef(handler func(*native.Node)) *Element—

Ref exposes the native handle once at this point in the declaration chain.

Ref(handler func(*native.Node)) *Element
查看源码