btn_monolit.go 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. // package btn_monolit -- обработчик для показа блока монолита.
  2. package btn_monolit
  3. import (
  4. _ "embed"
  5. "gitp78su.ipnodns.ru/svi/kern/v4/d0"
  6. "gitp78su.ipnodns.ru/svi/kern/v4/d2/wui"
  7. mWt "gitp78su.ipnodns.ru/svi/kern/v4/d2/wui/wui_types"
  8. )
  9. type BtnMonolit struct {
  10. btn mWt.IWuiButton
  11. owner *d0.LOwner
  12. }
  13. // NewBtnMonolit -- возвращает новую кнопку монолита.
  14. func NewBtnMonolit(owner *d0.LOwner) *BtnMonolit {
  15. sf := &BtnMonolit{}
  16. sf.btn = wui.NewWuiButton(owner, d0.LetTxt(owner, "Monolit"), sf.clickMonolit)
  17. sf.btn.Hx().Target().Set("#monolit")
  18. return sf
  19. }
  20. // Html -- возвращает HTML-представление кнопки.
  21. func (sf *BtnMonolit) Html() *d0.LTxt {
  22. return sf.btn.Html()
  23. }
  24. //go:embed block_monolit.html
  25. var strBlockMonolit string
  26. // Событие клика по кнопке.
  27. func (sf *BtnMonolit) clickMonolit(dict map[d0.Txt]d0.Txt) *d0.Result[*d0.LTxt] {
  28. txtBlockMonolit := d0.LetTxt(sf.owner, strBlockMonolit)
  29. return d0.ResOk(txtBlockMonolit)
  30. }