40 lines
1.2 KiB
Go
40 lines
1.2 KiB
Go
|
package tomo
|
||
|
|
||
|
import "image"
|
||
|
|
||
|
// Window represents a top-level container generated by the currently running
|
||
|
// backend. It can contain a single element. It is hidden by default, and must
|
||
|
// be explicitly shown with the Show() method. If it contains no element, it
|
||
|
// displays a black (or transprent) background.
|
||
|
type Window interface {
|
||
|
// Adopt sets the root element of the window. There can only be one of
|
||
|
// these at one time.
|
||
|
Adopt (child Element)
|
||
|
|
||
|
// Child returns the root element of the window.
|
||
|
Child () (child Element)
|
||
|
|
||
|
// SetTitle sets the title that appears on the window's title bar. This
|
||
|
// method might have no effect with some backends.
|
||
|
SetTitle (title string)
|
||
|
|
||
|
// SetIcon taks in a list different sizes of the same icon and selects
|
||
|
// the best one to display on the window title bar, dock, or whatever is
|
||
|
// applicable for the given backend. This method might have no effect
|
||
|
// for some backends.
|
||
|
SetIcon (sizes []image.Image)
|
||
|
|
||
|
// Show shows the window. The window starts off hidden, so this must be
|
||
|
// called after initial setup to make sure it is visible.
|
||
|
Show ()
|
||
|
|
||
|
// Hide hides the window.
|
||
|
Hide ()
|
||
|
|
||
|
// Close closes the window.
|
||
|
Close ()
|
||
|
|
||
|
// OnClose specifies a function to be called when the window is closed.
|
||
|
OnClose (func ())
|
||
|
}
|