component_button.go 535 B

12345678910111213141516171819202122232425262728
  1. package ultraviolet
  2. type ButtonComponentModel struct {
  3. Format string
  4. Values []Value
  5. }
  6. type ButtonComponentController struct {
  7. Handler ClickHandler
  8. }
  9. type ButtonComponentOptions struct {
  10. View View
  11. Model ButtonComponentModel
  12. Controller ButtonComponentController
  13. }
  14. type ButtonComponent interface {
  15. SetValue(format string, values []Value)
  16. SetHandler(handler ClickHandler)
  17. }
  18. func ButtonComponentModelLabel(label string) ButtonComponentModel {
  19. return ButtonComponentModel{
  20. Format: label,
  21. Values: []Value{},
  22. }
  23. }