event.go 710 B

12345678910111213141516171819202122232425262728293031323334
  1. package aoiGrid
  2. type (
  3. MarkerFunc func(marker *Object, notifyWatchers Objects)
  4. WatcherFunc func(watcher *Object, updateMarkers Objects)
  5. EventBase struct {
  6. MarkerEnterFunc MarkerFunc
  7. MarkerMoveFunc MarkerFunc
  8. MarkerLeaveFunc MarkerFunc
  9. WatcherEnterFunc WatcherFunc
  10. WatcherMoveFunc WatcherFunc
  11. }
  12. )
  13. func (p *EventBase) OnMarkerEnter(fn MarkerFunc) {
  14. p.MarkerEnterFunc = fn
  15. }
  16. func (p *EventBase) OnMarkerMove(fn MarkerFunc) {
  17. p.MarkerMoveFunc = fn
  18. }
  19. func (p *EventBase) OnMarkerLeave(fn MarkerFunc) {
  20. p.MarkerLeaveFunc = fn
  21. }
  22. func (p *EventBase) OnWatcherEnter(fn WatcherFunc) {
  23. p.WatcherEnterFunc = fn
  24. }
  25. func (p *EventBase) OnWatcherMove(fn WatcherFunc) {
  26. p.WatcherMoveFunc = fn
  27. }