basic.go 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package widget
  2. import "fmt"
  3. import . "gitlab.com/beoran/ebsgo/zori/types"
  4. // import _ "gitlab.com/beoran/ebsgo/zori/backend"
  5. import "gitlab.com/beoran/ebsgo/zori/state"
  6. import "gitlab.com/beoran/ebsgo/zori/style"
  7. import "gitlab.com/beoran/ebsgo/zori/event"
  8. type Basic struct {
  9. ID int
  10. Root Widget
  11. Box
  12. Outer Box
  13. Inner Box
  14. Z int
  15. style.BasicThemed
  16. Parent Widget
  17. Children []Widget
  18. state.Flag
  19. Result interface{}
  20. }
  21. func (bw *Basic) Update(ev event.Update) event.Result { fmt.Println("Update"); return event.Result(false); }
  22. func (bw *Basic) Draw(ev event.Draw) event.Result { fmt.Println("Draw"); return event.Result(false); }
  23. func (bw *Basic) Resize(ev event.Resize) event.Result { fmt.Println("Resize"); return event.Result(false); }
  24. func (bw *Basic) Destroy(ev event.Destroy) event.Result { fmt.Println("Destroy"); return event.Result(false); }
  25. func (bw *Basic) Action(ev event.Action) event.Result { fmt.Println("Action"); return event.Result(false); }
  26. func (bw *Basic) Close(ev event.Close) event.Result { fmt.Println("Close"); return event.Result(false); }
  27. func (bw *Basic) NewChild(ev event.NewChild) event.Result { fmt.Println("Child"); return event.Result(false); }
  28. func (bw *Basic) JoyButtonPress(ev event.JoyButtonPress) event.Result { fmt.Println("JBP"); return event.Result(false); }
  29. func (bw *Basic) JoyButtonRelease(ev event.JoyButtonRelease) event.Result { fmt.Println("JBR"); return event.Result(false); }
  30. func (bw *Basic) JoyAxis(ev event.JoyAxis) event.Result { fmt.Println("JAX"); return event.Result(false); }
  31. func (bw *Basic) KeyPress(ev event.KeyPress) event.Result { fmt.Println("KEP"); return event.Result(false); }
  32. func (bw *Basic) KeyRelease(ev event.KeyRelease) event.Result { fmt.Println("KER"); return event.Result(false); }
  33. func (bw *Basic) MouseAxes(ev event.MouseAxes) event.Result { fmt.Println("MAX"); return event.Result(false); }
  34. func (bw *Basic) MouseWarped(ev event.MouseWarped) event.Result { fmt.Println("MWA"); return event.Result(false); }
  35. func (bw *Basic) MouseButtonPress(ev event.MouseButtonPress) event.Result { fmt.Println("MBP"); return event.Result(false); }
  36. func (bw *Basic) MouseButtonRelease(ev event.MouseButtonRelease) event.Result { fmt.Println("MBR"); return event.Result(false); }
  37. func (bw *Basic) MouseEnterDisplay(ev event.MouseEnterDisplay) event.Result { fmt.Println("MED"); return event.Result(false); }
  38. func (bw *Basic) MouseLeaveDisplay(ev event.MouseLeaveDisplay) event.Result { fmt.Println("MLD"); return event.Result(false); }
  39. func (bw *Basic) TouchBegin(ev event.TouchBegin) event.Result { fmt.Println("TB"); return event.Result(false); }
  40. func (bw *Basic) TouchEnd(ev event.TouchEnd) event.Result { fmt.Println("TE"); return event.Result(false); }
  41. func (bw *Basic) TouchMove(ev event.TouchMove) event.Result { fmt.Println("TM"); return event.Result(false); }
  42. func (bw *Basic) TouchCancel(ev event.TouchCancel) event.Result { fmt.Println("TC"); return event.Result(false); }
  43. func (bw *Basic) Default(ev event.Event) event.Result {
  44. fmt.Println("Warning using default event handler!");
  45. return event.Result(false);
  46. }
  47. func (bw *Basic) KeyChar(kc event.KeyChar) event.Result {
  48. fmt.Println("KeyChar of Basic")
  49. return event.Result(true)
  50. }
  51. // Checks if the coordinates are inside the main rectange of the widget.
  52. func (bw *Basic) IsInside(x, y int) bool {
  53. return (x >= bw.X) && (x <= bw.X + bw.W) && (y >= bw.Y) && (y <= (bw.Y + bw.H))
  54. }
  55. func (bw * Basic) Dispatch(ev event.Event) event.Result {
  56. return event.Dispatch(ev, bw)
  57. }