rui_orig/absoluteLayout.go

42 lines
1.1 KiB
Go

package rui
import "strings"
// AbsoluteLayout represent an AbsoluteLayout view where child views can be arbitrary positioned
type AbsoluteLayout interface {
ViewsContainer
}
type absoluteLayoutData struct {
viewsContainerData
}
// NewAbsoluteLayout create new AbsoluteLayout object and return it
func NewAbsoluteLayout(session Session, params Params) AbsoluteLayout {
view := new(absoluteLayoutData)
view.init(session)
setInitParams(view, params)
return view
}
func newAbsoluteLayout(session Session) View {
//return NewAbsoluteLayout(session, nil)
return new(absoluteLayoutData)
}
// Init initialize fields of ViewsContainer by default values
func (layout *absoluteLayoutData) init(session Session) {
layout.viewsContainerData.init(session)
layout.tag = "AbsoluteLayout"
layout.systemClass = "ruiAbsoluteLayout"
}
func (layout *absoluteLayoutData) htmlSubviews(self View, buffer *strings.Builder) {
if layout.views != nil {
for _, view := range layout.views {
view.addToCSSStyle(map[string]string{`position`: `absolute`})
viewHTML(view, buffer)
}
}
}