ref: 3ddf47ad691b8fdae0aa930543107052a6ee2d6d
parent: ba66a58b7772b1d28f90f103ee0f97415e20ef52
author: Philip Silva <philip.silva@protonmail.com>
date: Sat Feb 13 14:34:52 EST 2021
minor optimization
--- a/browser/browser.go
+++ b/browser/browser.go
@@ -57,13 +57,23 @@
log = l
}
-type ColoredLabel struct {
+type Label struct {
*duit.Label
n *nodes.Node
}
-func (ui *ColoredLabel) Draw(dui *duit.DUI, self *duit.Kid, img *draw.Image, orig image.Point, m draw.Mouse, force bool) {
+func NewLabel(t string, n *nodes.Node) *Label {
+ return &Label{
+ Label: &duit.Label{
+ Text: t,
+ Font: n.Font(),
+ },
+ n: n,
+ }
+}
+
+func (ui *Label) Draw(dui *duit.DUI, self *duit.Kid, img *draw.Image, orig image.Point, m draw.Mouse, force bool) {
c := ui.n.Map.Color()
i, ok := colorCache[c]
if !ok {
@@ -932,13 +942,7 @@
t = "• " + t
}
}
- innerContent = &ColoredLabel{
- Label: &duit.Label{
- Text: t,
- Font: n.Font(),
- },
- n: n,
- }
+ innerContent = NewLabel(t, n)
} else {
innerContent = InnerNodesToBox(r+1, b, n)
}
@@ -952,13 +956,10 @@
var innerContent duit.UI
if nodes.IsPureTextContent(*n) {
- innerContent = &ColoredLabel{
- Label: &duit.Label{
- Text: nodes.ContentFrom(*n),
- Font: n.Font(),
- },
- n: n,
- }
+ innerContent = NewLabel(
+ nodes.ContentFrom(*n),
+ n,
+ )
} else {
innerContent = InnerNodesToBox(r+1, b, n)
}
@@ -983,13 +984,7 @@
var innerContent duit.UI
if nodes.IsPureTextContent(*n) {
t := strings.TrimSpace(nodes.ContentFrom(*n))
- innerContent = &ColoredLabel{
- Label: &duit.Label{
- Text: t,
- Font: n.Font(),
- },
- n: n,
- }
+ innerContent = NewLabel(t, n)
} else {
innerContent = InnerNodesToBox(r+1, b, n)
}
@@ -1015,13 +1010,7 @@
}
text = strings.Join(nn, " ")
- ui := &ColoredLabel{
- Label: &duit.Label{
- Text: text,
- Font: n.Font(),
- },
- n: n,
- }
+ ui := NewLabel(text, n)
return NewElement(
ui,
@@ -1084,7 +1073,7 @@
}
case *duit.Image:
case *duit.Label:
- case *ColoredLabel:
+ case *Label:
traverseTree(r+1, v.Label, f)
case *Image:
traverseTree(r+1, v.Image, f)
@@ -1143,12 +1132,12 @@
t = t[:15] + "..."
}
fmt.Printf("Label %v\n", t)
- case *ColoredLabel:
+ case *Label:
t := v.Text
if len(t) > 20 {
t = t[:15] + "..."
}
- fmt.Printf("ColoredLabel %v\n", t)
+ fmt.Printf("Label %v\n", t)
default:
fmt.Printf("%+v\n", v)
}
--- a/browser/experimental.go
+++ b/browser/experimental.go
@@ -72,7 +72,7 @@
return true
case *duit.Label:
return true
- case *ColoredLabel:
+ case *Label:
return false
case *duit.Button:
return true
@@ -109,7 +109,7 @@
case *duit.Grid:
case *duit.Image:
case *duit.Label:
- case *ColoredLabel:
+ case *Label:
case *duit.Button:
case *Image:
case *duit.Field:
--- a/package.rc
+++ b/package.rc
@@ -18,6 +18,7 @@
mv $name.bin ./$name/
cp README.md ./$name/
cp normalize.css ./$name/
+cp possum-655x493.jpg ./$name/
dircp domino-lib ./$name/domino-lib
tarball=`{pwd} ^ '/packages/' ^ $name ^ '-v0.0.1-' ^ `{date -i} ^ '-' ^ `{cat /mnt/git/branch/heads/master/hash | read -c 6} ^ '.tgz'
tar czf $tarball $name