Oh my jod
This commit is contained in:
@@ -4,7 +4,6 @@ import "fmt"
|
||||
import "time"
|
||||
import "image"
|
||||
import "image/color"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/theme"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/artist"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/defaultfont"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/elements/core"
|
||||
@@ -20,8 +19,7 @@ type Artist struct {
|
||||
// NewArtist creates a new artist test element.
|
||||
func NewArtist () (element *Artist) {
|
||||
element = &Artist { }
|
||||
element.Core, element.core = core.NewCore (
|
||||
element.draw, nil, nil, theme.C("testing", "artist"))
|
||||
element.Core, element.core = core.NewCore(element.draw)
|
||||
element.core.SetMinimumSize(480, 600)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package testing
|
||||
import "image"
|
||||
import "image/color"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/input"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/config"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/theme"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/artist"
|
||||
import "git.tebibyte.media/sashakoshka/tomo/elements/core"
|
||||
@@ -15,21 +16,33 @@ type Mouse struct {
|
||||
drawing bool
|
||||
color artist.Pattern
|
||||
lastMousePos image.Point
|
||||
|
||||
config config.Config
|
||||
theme theme.Theme
|
||||
c theme.Case
|
||||
}
|
||||
|
||||
// NewMouse creates a new mouse test element.
|
||||
func NewMouse () (element *Mouse) {
|
||||
element = &Mouse { }
|
||||
element.Core, element.core = core.NewCore (
|
||||
element.draw,
|
||||
element.redo,
|
||||
element.redo,
|
||||
theme.C("testing", "mouse"))
|
||||
element = &Mouse { c: theme.C("testing", "mouse") }
|
||||
element.Core, element.core = core.NewCore(element.draw)
|
||||
element.core.SetMinimumSize(32, 32)
|
||||
element.color = artist.NewUniform(color.Black)
|
||||
return
|
||||
}
|
||||
|
||||
// SetTheme sets the element's theme.
|
||||
func (element *Mouse) SetTheme (new theme.Theme) {
|
||||
element.theme = new
|
||||
element.redo()
|
||||
}
|
||||
|
||||
// SetConfig sets the element's configuration.
|
||||
func (element *Mouse) SetConfig (new config.Config) {
|
||||
element.config = new
|
||||
element.redo()
|
||||
}
|
||||
|
||||
func (element *Mouse) redo () {
|
||||
if !element.core.HasImage() { return }
|
||||
element.draw()
|
||||
@@ -38,7 +51,10 @@ func (element *Mouse) redo () {
|
||||
|
||||
func (element *Mouse) draw () {
|
||||
bounds := element.Bounds()
|
||||
pattern := element.core.Pattern(theme.PatternAccent, theme.PatternState { })
|
||||
pattern := element.theme.Pattern (
|
||||
theme.PatternAccent,
|
||||
element.c,
|
||||
theme.PatternState { })
|
||||
artist.FillRectangle(element, pattern, bounds)
|
||||
artist.StrokeRectangle (
|
||||
element,
|
||||
|
||||
Reference in New Issue
Block a user