wui_widget.go 818 B

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