mirror of
https://github.com/bluszcz/cutego.git
synced 2024-09-28 21:25:16 +03:00
37 lines
641 B
Go
37 lines
641 B
Go
package main
|
|
|
|
import (
|
|
"github.com/therecipe/qt/gui"
|
|
"github.com/therecipe/qt/widgets"
|
|
)
|
|
|
|
type Widget struct {
|
|
widgets.QWidget
|
|
|
|
_ func() `constructor:"init"`
|
|
|
|
_ func() `slot:"animate"`
|
|
|
|
Helper *Helper
|
|
elapsed int
|
|
}
|
|
|
|
func (w *Widget) init() {
|
|
w.SetFixedSize2(200, 200)
|
|
|
|
w.ConnectAnimate(w.animate)
|
|
w.ConnectPaintEvent(w.paintEvent)
|
|
}
|
|
|
|
func (w *Widget) animate() {
|
|
w.elapsed = (w.elapsed + 50) % 1000
|
|
w.Update()
|
|
}
|
|
|
|
func (w *Widget) paintEvent(event *gui.QPaintEvent) {
|
|
painter := gui.NewQPainter2(w)
|
|
painter.SetRenderHint(gui.QPainter__Antialiasing, true)
|
|
w.Helper.Paint(painter, event, w.elapsed)
|
|
painter.DestroyQPainter()
|
|
}
|