main.go raw

   1  package main
   2  
   3  import (
   4  	l "github.com/p9c/p9/pkg/gel/gio/layout"
   5  	"github.com/p9c/p9/pkg/qu"
   6  
   7  	"github.com/p9c/p9/pkg/gel"
   8  )
   9  
  10  type State struct {
  11  	*gel.Window
  12  }
  13  
  14  func NewState(quit qu.C) *State {
  15  	return &State{
  16  		Window: gel.NewWindowP9(quit),
  17  	}
  18  }
  19  
  20  func main() {
  21  	quit := qu.T()
  22  	state := NewState(quit)
  23  	var e error
  24  	I.Ln("logging")
  25  	rootWidget := state.rootWidget()
  26  	if e = state.Window.
  27  		Size(48, 32).
  28  		Title("hello world").
  29  		Open().
  30  		Run(rootWidget, quit.Q, quit); E.Chk(e) {
  31  	}
  32  }
  33  
  34  func (s *State) rootWidget() l.Widget {
  35  	return s.Direction().Center().Embed(s.H2("hello world!").Fn).Fn
  36  }
  37