wui_widget.go 942 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. // package wui_widget -- базовый виджет WUI.
  2. package wui_widget
  3. import (
  4. "crypto/rand"
  5. "strings"
  6. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs"
  7. mWt "gitp78su.ipnodns.ru/svi/kern/v4/lev2/wui/wui_types"
  8. )
  9. // WuiWidget -- базовый виджет WUI.
  10. type WuiWidget struct {
  11. defs.ITxtFix
  12. }
  13. // NewWuiWidget -- возвращает новый базовый виджет WUI.
  14. func NewWuiWidget() *WuiWidget {
  15. sf := &WuiWidget{
  16. ITxtFix: defs.Txt("wui_" + rand.Text()),
  17. }
  18. _ = mWt.IWuiWidget(sf)
  19. return sf
  20. }
  21. // Id - возвращает ID виджета.
  22. func (sf *WuiWidget) Id() defs.ITxtFix {
  23. return sf.ITxtFix
  24. }
  25. const (
  26. strBeg = `<div id="{.id}"> WuiWidget.Html(): id={.id}, not implemented </div>`
  27. )
  28. // Html -- возвращает HTML представление виджета.
  29. func (sf *WuiWidget) Html() defs.ITxtFix {
  30. strRes := strings.ReplaceAll(strBeg, "{.id}", sf.String())
  31. return defs.Txt(strRes)
  32. }