MCPcopy
hub / github.com/lxn/walk / Create

Method Create

declarative/treeview.go:59–92  ·  view source on GitHub ↗
(builder *Builder)

Source from the content-addressed store, hash-verified

57}
58
59func (tv TreeView) Create(builder *Builder) error {
60 w, err := walk.NewTreeView(builder.Parent())
61 if err != nil {
62 return err
63 }
64
65 if tv.AssignTo != nil {
66 *tv.AssignTo = w
67 }
68
69 return builder.InitWidget(tv, w, func() error {
70 if tv.ItemHeight > 0 {
71 w.SetItemHeight(w.IntFrom96DPI(tv.ItemHeight)) // VERIFY: Item height should resize on DPI change.
72 }
73
74 if err := w.SetModel(tv.Model); err != nil {
75 return err
76 }
77
78 if tv.OnCurrentItemChanged != nil {
79 w.CurrentItemChanged().Attach(tv.OnCurrentItemChanged)
80 }
81
82 if tv.OnExpandedChanged != nil {
83 w.ExpandedChanged().Attach(tv.OnExpandedChanged)
84 }
85
86 if tv.OnItemActivated != nil {
87 w.ItemActivated().Attach(tv.OnItemActivated)
88 }
89
90 return nil
91 })
92}

Callers

nothing calls this directly

Calls 9

SetItemHeightMethod · 0.95
SetModelMethod · 0.95
CurrentItemChangedMethod · 0.95
ExpandedChangedMethod · 0.95
ItemActivatedMethod · 0.95
InitWidgetMethod · 0.80
IntFrom96DPIMethod · 0.80
ParentMethod · 0.65
AttachMethod · 0.45

Tested by

no test coverage detected