window.go
func (w *Window) AddWidget(id string, x, y int) (Widgeter, error) {
	rw, found := registeredWidgets[id]
	if !found {
		return nil, ErrWidgetNotRegistered
	}
	widget, err := rw(w, x, y)
	if err != nil {
		return nil, err
	}
	w.widgets = append(w.widgets, widget)
	return widget, err
}
func (w *Window) AddWidget(id string, x, y int) (Widgeter, error) {
	rw, found := registeredWidgets[id]
	if !found {
		return nil, ErrWidgetNotRegistered
	}
	widget, err := rw(w, x, y)
	if err != nil {
		return nil, err
	}
	w.widgets = append(w.widgets, widget)
	return widget, err
}
func ( w * Window ) AddWidget ( id string , x , y int ) ( Widgeter , error ) { rw , found := registeredWidgets [ id ] if ! found { return nil , ErrWidgetNotRegistered } widget , err := rw ( w , x , y ) if err != nil { return nil , err } w . widgets = append ( w . widgets , widget ) return widget , err }
// AddWidget is the generic function to add a widget to a window.  This
// function should only be called by widgets.  Application code, by convention,
// should call the non-generic type asserted call (i.e. AddLabel).
// AddWidget shall be called from queue context.
AddWidget is the generic function to add a widget to a window . This function should only be called by widgets . Application code by convention should call the non - generic type asserted call ( i . e . AddLabel ) . AddWidget shall be called from queue context .