本文整理匯總了Golang中github.com/google/gxui.Canvas.DrawRoundedRect方法的典型用法代碼示例。如果您正苦於以下問題:Golang Canvas.DrawRoundedRect方法的具體用法?Golang Canvas.DrawRoundedRect怎麽用?Golang Canvas.DrawRoundedRect使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/google/gxui.Canvas
的用法示例。
在下文中一共展示了Canvas.DrawRoundedRect方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Paint
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)
}
示例2: Paint
// mixin.List overrides
func (l *List) Paint(c gxui.Canvas) {
l.List.Paint(c)
if l.HasFocus() {
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)
}
}
示例3: Paint
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)
}
示例4: Paint
// 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)
}
}
示例5: Paint
// 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)
}
}
示例6: draw
func draw(p Pendulum, canvas gxui.Canvas, x, y int) {
attachment := math.Point{X: ANIMATION_WIDTH/2 + x, Y: y}
phi := p.GetPhi()
ball := math.Point{X: x + ANIMATION_WIDTH/2 + math.Round(float32(l*omath.Sin(phi))), Y: y + math.Round(float32(l*omath.Cos(phi)))}
line := gxui.Polygon{gxui.PolygonVertex{attachment, 0}, gxui.PolygonVertex{ball, 0}}
canvas.DrawLines(line, gxui.DefaultPen)
m := math.Point{int(BALL_RADIUS), int(BALL_RADIUS)}
rect := math.Rect{ball.Sub(m), ball.Add(m)}
canvas.DrawRoundedRect(rect, BALL_RADIUS, BALL_RADIUS, BALL_RADIUS, BALL_RADIUS, gxui.TransparentPen, gxui.CreateBrush(gxui.Yellow))
}
示例7: PaintBorders
func (t *CodeEditorLine) PaintBorders(c gxui.Canvas, info CodeEditorLinePaintInfo) {
start, _ := info.LineSpan.Span()
offsets := info.GlyphOffsets
for _, l := range t.ce.layers {
if l != nil && l.BorderColor() != nil {
color := *l.BorderColor()
interval.Visit(l.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)
})
}
}
}
示例8: PaintBackgroundSpans
func (t *CodeEditorLine) PaintBackgroundSpans(c gxui.Canvas, info CodeEditorLinePaintInfo) {
start, _ := info.LineSpan.Span()
offsets := info.GlyphOffsets
remaining := interval.IntDataList{info.LineSpan}
for _, l := range t.ce.layers {
if l != nil && l.BackgroundColor() != nil {
color := *l.BackgroundColor()
for _, span := range l.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)
}
}
}
}
示例9: Paint
// Button internal overrides
func (b *Button) Paint(c gxui.Canvas) {
pen := b.Button.BorderPen()
brush := b.Button.BackgroundBrush()
fontColor := b.theme.ButtonDefaultStyle.FontColor
switch {
case b.IsMouseDown(gxui.MouseButtonLeft) && b.IsMouseOver():
pen = b.theme.ButtonPressedStyle.Pen
brush = b.theme.ButtonPressedStyle.Brush
fontColor = b.theme.ButtonPressedStyle.FontColor
case b.IsMouseOver():
pen = b.theme.ButtonOverStyle.Pen
brush = b.theme.ButtonOverStyle.Brush
fontColor = b.theme.ButtonOverStyle.FontColor
}
if l := b.Label(); l != nil {
l.SetColor(fontColor)
}
r := b.Size().Rect()
c.DrawRoundedRect(r, 2, 2, 2, 2, gxui.TransparentPen, brush)
b.PaintChildren.Paint(c)
c.DrawRoundedRect(r, 2, 2, 2, 2, pen, gxui.TransparentBrush)
if b.IsChecked() {
pen = b.theme.HighlightStyle.Pen
brush = b.theme.HighlightStyle.Brush
c.DrawRoundedRect(r, 2.0, 2.0, 2.0, 2.0, pen, brush)
}
if b.HasFocus() {
pen = b.theme.FocusedStyle.Pen
brush = b.theme.FocusedStyle.Brush
c.DrawRoundedRect(r.ContractI(int(pen.Width)), 3.0, 3.0, 3.0, 3.0, pen, brush)
}
}
示例10: PaintSelection
// 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)
}
示例11: PaintMouseOverBackground
func (l *List) PaintMouseOverBackground(c gxui.Canvas, r math.Rect) {
c.DrawRoundedRect(r, 2.0, 2.0, 2.0, 2.0, gxui.TransparentPen, gxui.CreateBrush(gxui.Gray90))
}
示例12: PaintSelection
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)
}
示例13: PaintSelection
func (l *List) PaintSelection(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)
}
示例14: PaintSelection
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})
}
示例15: PaintUnexpandedSelection
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)
}