func (t *PanelTab) Paint(c gxui.Canvas) { s := t.Size() var style Style switch { case t.IsMouseDown(gxui.MouseButtonLeft) && t.IsMouseOver(): style = t.theme.TabPressedStyle case t.IsMouseOver(): style = t.theme.TabOverStyle default: style = t.theme.TabDefaultStyle } if l := t.Label(); l != nil { l.SetColor(style.FontColor) } c.DrawRoundedRect(s.Rect(), 5.0, 5.0, 0.0, 0.0, style.Pen, style.Brush) if t.HasFocus() { style = t.theme.FocusedStyle r := math.CreateRect(1, 1, s.W-1, s.H-1) c.DrawRoundedRect(r, 4.0, 4.0, 0.0, 0.0, style.Pen, style.Brush) } if t.active { style = t.theme.TabActiveHighlightStyle r := math.CreateRect(1, s.H-1, s.W-1, s.H) c.DrawRect(r, style.Brush) } t.Button.Paint(c) }
// mixin.List overrides func (l *DropDownList) Paint(c gxui.Canvas) { l.DropDownList.Paint(c) if l.HasFocus() || l.ListShowing() { r := l.Size().Rect().ContractI(1) c.DrawRoundedRect(r, 3.0, 3.0, 3.0, 3.0, l.theme.FocusedStyle.Pen, l.theme.FocusedStyle.Brush) } }
// mixins.CodeEditor overrides func (e *editor) Paint(c gxui.Canvas) { e.CodeEditor.Paint(c) if e.HasFocus() { r := e.Size().Rect() c.DrawRoundedRect(r, 3, 3, 3, 3, e.theme.FocusedStyle.Pen, e.theme.FocusedStyle.Brush) } }
// mixins.CodeEditor overrides func (t *CodeEditor) Paint(c gxui.Canvas) { t.CodeEditor.Paint(c) if t.HasFocus() { r := t.Size().Rect() c.DrawRoundedRect(r, 3, 3, 3, 3, t.theme.FocusedStyle.Pen, t.theme.FocusedStyle.Brush) } }
func (p *PanelHolder) Paint(c gxui.Canvas) { panel := p.SelectedPanel() if panel != nil { bounds := p.Children().Find(panel).Bounds() c.DrawRoundedRect(bounds, 0.0, 0.0, 3.0, 3.0, p.theme.PanelBackgroundStyle.Pen, p.theme.PanelBackgroundStyle.Brush) } p.PanelHolder.Paint(c) }
func (f *FSLocator) Paint(c gxui.Canvas) { f.LinearLayout.Paint(c) if f.HasFocus() { r := f.Size().Rect() s := f.theme.FocusedStyle c.DrawRoundedRect(r, 3, 3, 3, 3, s.Pen, s.Brush) } }
// mixins.TextBox overrides func (t *TextBox) Paint(c gxui.Canvas) { t.TextBox.Paint(c) if t.HasFocus() { r := t.Size().Rect() s := t.theme.FocusedStyle c.DrawRoundedRect(r, 3, 3, 3, 3, s.Pen, s.Brush) } }
func (l *CodeEditorLine) PaintBorders(c gxui.Canvas, info CodeEditorLinePaintInfo) { start, _ := info.LineSpan.Span() offsets := info.GlyphOffsets for _, layer := range l.ce.layers { if layer != nil && layer.BorderColor() != nil { color := *layer.BorderColor() interval.Visit(layer.Spans(), info.LineSpan, func(vs, ve uint64, _ int) { s, e := vs-start, ve-start r := math.CreateRect(offsets[s].X, 0, offsets[e-1].X+info.GlyphWidth, info.LineHeight) c.DrawRoundedRect(r, 3, 3, 3, 3, gxui.CreatePen(0.5, color), gxui.TransparentBrush) }) } } }
func (l *CodeEditorLine) PaintBackgroundSpans(c gxui.Canvas, info CodeEditorLinePaintInfo) { start, _ := info.LineSpan.Span() offsets := info.GlyphOffsets remaining := interval.IntDataList{info.LineSpan} for _, layer := range l.ce.layers { if layer != nil && layer.BackgroundColor() != nil { color := *layer.BackgroundColor() for _, span := range layer.Spans().Overlaps(info.LineSpan) { interval.Visit(&remaining, span, func(vs, ve uint64, _ int) { s, e := vs-start, ve-start r := math.CreateRect(offsets[s].X, 0, offsets[e-1].X+info.GlyphWidth, info.LineHeight) c.DrawRoundedRect(r, 3, 3, 3, 3, gxui.TransparentPen, gxui.Brush{Color: color}) }) interval.Remove(&remaining, span) } } } }
func (t *Tree) PaintMouseOverBackground(c gxui.Canvas, r math.Rect) { c.DrawRoundedRect(r, 2.0, 2.0, 2.0, 2.0, gxui.TransparentPen, gxui.CreateBrush(gxui.Gray15)) }
func (t *Tree) PaintUnexpandedSelection(c gxui.Canvas, r math.Rect) { c.DrawRoundedRect(r, 2.0, 2.0, 2.0, 2.0, gxui.CreatePen(1, gxui.Gray50), gxui.TransparentBrush) }
func (l *DropDownList) DrawSelection(c gxui.Canvas, r math.Rect) { c.DrawRoundedRect(r, 2.0, 2.0, 2.0, 2.0, l.theme.HighlightStyle.Pen, l.theme.HighlightStyle.Brush) }
func (l *completionLabel) Paint(c gxui.Canvas) { l.Label.Paint(c) r := l.Size().Rect() c.DrawRoundedRect(r, 3, 3, 3, 3, gxui.TransparentPen, gxui.CreateBrush(completionBG)) }
func (t *DefaultTextBoxLine) PaintSelection(c gxui.Canvas, top, bottom math.Point) { r := math.Rect{Min: top, Max: bottom}.ExpandI(t.caretWidth / 2) c.DrawRoundedRect(r, 1, 1, 1, 1, gxui.TransparentPen, gxui.Brush{Color: gxui.Gray40}) }
func (t *DefaultTextBoxLine) PaintCaret(c gxui.Canvas, top, bottom math.Point) { r := math.Rect{Min: top, Max: bottom}.ExpandI(t.caretWidth / 2) c.DrawRoundedRect(r, 1, 1, 1, 1, gxui.CreatePen(0.5, gxui.Gray70), gxui.WhiteBrush) }
func (b *BackgroundBorderPainter) PaintBorder(c gxui.Canvas, r math.Rect) { if b.pen.Color.A != 0 && b.pen.Width != 0 { w := b.pen.Width c.DrawRoundedRect(r, w, w, w, w, b.pen, gxui.TransparentBrush) } }
// mixins.List overrides func (l *Tree) PaintSelection(c gxui.Canvas, r math.Rect) { s := l.theme.HighlightStyle c.DrawRoundedRect(r, 2.0, 2.0, 2.0, 2.0, s.Pen, s.Brush) }
func (l *List) PaintSelection(c gxui.Canvas, r math.Rect) { c.DrawRoundedRect(r, 2.0, 2.0, 2.0, 2.0, gxui.WhitePen, gxui.TransparentBrush) }
func (s *ScrollBar) Paint(c gxui.Canvas) { c.DrawRoundedRect(s.outer.Size().Rect(), 3, 3, 3, 3, s.railPen, s.railBrush) c.DrawRoundedRect(s.barRect, 3, 3, 3, 3, s.barPen, s.barBrush) }