yes_cancel_confirm_page.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package UI
  2. import (
  3. //"fmt"
  4. //"os"
  5. //"path/filepath"
  6. //"strings"
  7. "github.com/cuu/gogame/event"
  8. //"github.com/cuu/gogame/time"
  9. )
  10. type Func func()
  11. type YesCancelConfirmPage struct {
  12. ConfirmPage
  13. StartOrAEvent Func
  14. KeyXEvent Func
  15. KeyYEvent Func
  16. }
  17. func NewYesCancelConfirmPage() *YesCancelConfirmPage {
  18. p := &YesCancelConfirmPage{}
  19. p.FootMsg = [5]string{"Nav","","","Cancel","Yes"}
  20. p.ConfirmText = MyLangManager.Tr("Awaiting Input")
  21. p.StartOrAEvent = nil
  22. p.KeyXEvent = nil
  23. p.KeyYEvent = nil
  24. return p
  25. }
  26. func (self *YesCancelConfirmPage) KeyDown(ev *event.Event) {
  27. if IsKeyMenuOrB(ev.Data["Key"]) {
  28. self.ReturnToUpLevelPage()
  29. self.Screen.Draw()
  30. self.Screen.SwapAndShow()
  31. }
  32. if IsKeyStartOrA(ev.Data["Key"]) {
  33. if self.StartOrAEvent != nil {
  34. self.StartOrAEvent()
  35. self.ReturnToUpLevelPage()
  36. }
  37. }
  38. if ev.Data["Key"] == CurKeys["X"] {
  39. if self.KeyXEvent != nil {
  40. self.KeyXEvent()
  41. self.ReturnToUpLevelPage()
  42. }
  43. }
  44. if ev.Data["Key"] == CurKeys["Y"] {
  45. if self.KeyYEvent != nil {
  46. self.KeyYEvent()
  47. self.ReturnToUpLevelPage()
  48. }
  49. }
  50. }