25 lines
551 B
Go
25 lines
551 B
Go
|
package naive
|
||
|
|
||
|
import "github.com/progrium/darwinkit/macos/appkit"
|
||
|
|
||
|
func (tv TabView) toNative() appkit.IView {
|
||
|
tabView := appkit.NewTabView()
|
||
|
tabView.SetTranslatesAutoresizingMaskIntoConstraints(true)
|
||
|
|
||
|
for _, tiv := range tv.Children {
|
||
|
tabView.AddTabViewItem(tiv.toNative())
|
||
|
}
|
||
|
|
||
|
return tabView
|
||
|
}
|
||
|
|
||
|
func (tvi TabViewItem) toNative() appkit.TabViewItem {
|
||
|
ti := appkit.NewTabViewItem()
|
||
|
ti.SetLabel(tvi.Title.Value())
|
||
|
if eff, ok := tvi.Title.(*Effect[string]); ok {
|
||
|
eff.OnChange(ti.SetLabel)
|
||
|
}
|
||
|
ti.SetView(tvi.Content.toNative())
|
||
|
return ti
|
||
|
}
|