From 2b42a072a08e63d6c998ade1481aad7e9e50d93b Mon Sep 17 00:00:00 2001 From: Noah Petherbridge Date: Tue, 9 Apr 2019 17:35:44 -0700 Subject: [PATCH] Code Layout Refactor * All private Doodle source code into the pkg/ folder. * Potentially public code into the lib/ folder. * Centralize the logger into a subpackage. --- Makefile | 2 +- cmd/doodad/commands/convert.go | 9 ++--- cmd/doodad/commands/log.go | 14 -------- cmd/doodad/main.go | 2 +- cmd/doodle/main.go | 8 ++--- level/log.go | 9 ----- {draw => lib/draw}/line.go | 2 +- {draw => lib/draw}/line_test.go | 4 +-- {events => lib/events}/debug.go | 0 {events => lib/events}/events.go | 0 {events => lib/events}/log.go | 0 {events => lib/events}/types.go | 0 {render => lib/render}/color.go | 0 {render => lib/render}/functions.go | 0 {render => lib/render}/interface.go | 2 +- {render => lib/render}/log.go | 0 {render => lib/render}/point.go | 0 {render => lib/render}/point_test.go | 2 +- {render => lib/render}/rect_test.go | 2 +- {render => lib/render}/sdl/canvas.go | 2 +- {render => lib/render}/sdl/events.go | 2 +- {render => lib/render}/sdl/fps.go | 4 +-- {render => lib/render}/sdl/log.go | 0 {render => lib/render}/sdl/sdl.go | 4 +-- {render => lib/render}/sdl/text.go | 4 +-- {render => lib/render}/sdl/texture.go | 2 +- {render => lib/render}/sdl/utils.go | 2 +- {ui => lib/ui}/button.go | 4 +-- {ui => lib/ui}/check_button.go | 4 +-- {ui => lib/ui}/checkbox.go | 2 +- {ui => lib/ui}/debug.go | 0 {ui => lib/ui}/dragdrop.go | 0 {ui => lib/ui}/frame.go | 2 +- {ui => lib/ui}/frame_pack.go | 6 ++-- {ui => lib/ui}/functions.go | 2 +- {ui => lib/ui}/image.go | 2 +- {ui => lib/ui}/label.go | 4 +-- {ui => lib/ui}/log.go | 0 {ui => lib/ui}/supervisor.go | 5 ++- {ui => lib/ui}/theme/theme.go | 2 +- {ui => lib/ui}/widget.go | 4 +-- {ui => lib/ui}/window.go | 2 +- log.go | 15 -------- {balance => pkg/balance}/README.md | 0 {balance => pkg/balance}/debug.go | 2 +- {balance => pkg/balance}/numbers.go | 0 {balance => pkg/balance}/shell.go | 4 +-- {balance => pkg/balance}/theme.go | 4 +-- commands.go => pkg/commands.go | 2 +- config.go => pkg/config.go | 1 + {doodads => pkg/doodads}/actor.go | 4 +-- {doodads => pkg/doodads}/collision.go | 4 +-- {doodads => pkg/doodads}/doodad.go | 6 ++-- {doodads => pkg/doodads}/json.go | 0 {doodads => pkg/doodads}/player.go | 4 +-- doodle.go => pkg/doodle.go | 13 +++---- editor_scene.go => pkg/editor_scene.go | 11 +++--- .../editor_scene_debug.go | 2 +- editor_ui.go => pkg/editor_ui.go | 17 ++++----- .../editor_ui_doodad.go | 11 +++--- .../editor_ui_palette.go | 7 ++-- {enum => pkg/enum}/enum.go | 0 fps.go => pkg/fps.go | 8 ++--- guitest_scene.go => pkg/guitest_scene.go | 9 ++--- {level => pkg/level}/actors.go | 2 +- {level => pkg/level}/base_test.go | 0 {level => pkg/level}/chunk.go | 5 +-- {level => pkg/level}/chunk_map.go | 2 +- {level => pkg/level}/chunk_test.go | 4 +-- {level => pkg/level}/chunker.go | 3 +- {level => pkg/level}/chunker_test.go | 4 +-- {level => pkg/level}/filesystem.go | 0 {level => pkg/level}/json.go | 0 {level => pkg/level}/page_type.go | 0 {level => pkg/level}/palette.go | 4 +-- {level => pkg/level}/swatch.go | 2 +- {level => pkg/level}/types.go | 4 +-- pkg/log/log.go | 36 +++++++++++++++++++ main_scene.go => pkg/main_scene.go | 8 ++--- play_scene.go => pkg/play_scene.go | 13 +++---- scene.go => pkg/scene.go | 5 ++- shell.go => pkg/shell.go | 11 +++--- {uix => pkg/uix}/canvas.go | 13 +++---- {uix => pkg/uix}/canvas_editable.go | 8 ++--- {uix => pkg/uix}/canvas_wallpaper.go | 4 +-- {uix => pkg/uix}/draw_modes.go | 0 pkg/wallpaper/texture.go | 2 +- pkg/wallpaper/wallpaper.go | 2 +- uix/log.go | 14 -------- 89 files changed, 189 insertions(+), 196 deletions(-) delete mode 100644 cmd/doodad/commands/log.go delete mode 100644 level/log.go rename {draw => lib/draw}/line.go (94%) rename {draw => lib/draw}/line_test.go (94%) rename {events => lib/events}/debug.go (100%) rename {events => lib/events}/events.go (100%) rename {events => lib/events}/log.go (100%) rename {events => lib/events}/types.go (100%) rename {render => lib/render}/color.go (100%) rename {render => lib/render}/functions.go (100%) rename {render => lib/render}/interface.go (99%) rename {render => lib/render}/log.go (100%) rename {render => lib/render}/point.go (100%) rename {render => lib/render}/point_test.go (95%) rename {render => lib/render}/rect_test.go (96%) rename {render => lib/render}/sdl/canvas.go (97%) rename {render => lib/render}/sdl/events.go (98%) rename {render => lib/render}/sdl/fps.go (88%) rename {render => lib/render}/sdl/log.go (100%) rename {render => lib/render}/sdl/sdl.go (96%) rename {render => lib/render}/sdl/text.go (97%) rename {render => lib/render}/sdl/texture.go (96%) rename {render => lib/render}/sdl/utils.go (90%) rename {ui => lib/ui}/button.go (96%) rename {ui => lib/ui}/check_button.go (96%) rename {ui => lib/ui}/checkbox.go (97%) rename {ui => lib/ui}/debug.go (100%) rename {ui => lib/ui}/dragdrop.go (100%) rename {ui => lib/ui}/frame.go (97%) rename {ui => lib/ui}/frame_pack.go (98%) rename {ui => lib/ui}/functions.go (93%) rename {ui => lib/ui}/image.go (97%) rename {ui => lib/ui}/label.go (94%) rename {ui => lib/ui}/log.go (100%) rename {ui => lib/ui}/supervisor.go (97%) rename {ui => lib/ui}/theme/theme.go (82%) rename {ui => lib/ui}/widget.go (99%) rename {ui => lib/ui}/window.go (98%) delete mode 100644 log.go rename {balance => pkg/balance}/README.md (100%) rename {balance => pkg/balance}/debug.go (98%) rename {balance => pkg/balance}/numbers.go (100%) rename {balance => pkg/balance}/shell.go (91%) rename {balance => pkg/balance}/theme.go (91%) rename commands.go => pkg/commands.go (99%) rename config.go => pkg/config.go (97%) rename {doodads => pkg/doodads}/actor.go (96%) rename {doodads => pkg/doodads}/collision.go (98%) rename {doodads => pkg/doodads}/doodad.go (91%) rename {doodads => pkg/doodads}/json.go (100%) rename {doodads => pkg/doodads}/player.go (96%) rename doodle.go => pkg/doodle.go (94%) rename editor_scene.go => pkg/editor_scene.go (96%) rename editor_scene_debug.go => pkg/editor_scene_debug.go (85%) rename editor_ui.go => pkg/editor_ui.go (97%) rename editor_ui_doodad.go => pkg/editor_ui_doodad.go (92%) rename editor_ui_palette.go => pkg/editor_ui_palette.go (88%) rename {enum => pkg/enum}/enum.go (100%) rename fps.go => pkg/fps.go (95%) rename guitest_scene.go => pkg/guitest_scene.go (96%) rename {level => pkg/level}/actors.go (96%) rename {level => pkg/level}/base_test.go (100%) rename {level => pkg/level}/chunk.go (98%) rename {level => pkg/level}/chunk_map.go (98%) rename {level => pkg/level}/chunk_test.go (98%) rename {level => pkg/level}/chunker.go (98%) rename {level => pkg/level}/chunker_test.go (98%) rename {level => pkg/level}/filesystem.go (100%) rename {level => pkg/level}/json.go (100%) rename {level => pkg/level}/page_type.go (100%) rename {level => pkg/level}/palette.go (97%) rename {level => pkg/level}/swatch.go (96%) rename {level => pkg/level}/types.go (96%) create mode 100644 pkg/log/log.go rename main_scene.go => pkg/main_scene.go (91%) rename play_scene.go => pkg/play_scene.go (91%) rename scene.go => pkg/scene.go (89%) rename shell.go => pkg/shell.go (97%) rename {uix => pkg/uix}/canvas.go (98%) rename {uix => pkg/uix}/canvas_editable.go (94%) rename {uix => pkg/uix}/canvas_wallpaper.go (97%) rename {uix => pkg/uix}/draw_modes.go (100%) delete mode 100644 uix/log.go diff --git a/Makefile b/Makefile index 72c3c3d..a1c0d6a 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ SHELL := /bin/bash -VERSION=$(shell grep -e 'Version =' doodle.go | head -n 1 | cut -d '"' -f 2) +VERSION=$(shell grep -e 'Version =' pkg/doodle.go | head -n 1 | cut -d '"' -f 2) BUILD=$(shell git describe --always) CURDIR=$(shell curdir) diff --git a/cmd/doodad/commands/convert.go b/cmd/doodad/commands/convert.go index 2ebfba3..0cd4ef0 100644 --- a/cmd/doodad/commands/convert.go +++ b/cmd/doodad/commands/convert.go @@ -11,10 +11,11 @@ import ( "image/png" - "git.kirsle.net/apps/doodle" - "git.kirsle.net/apps/doodle/doodads" - "git.kirsle.net/apps/doodle/level" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" + doodle "git.kirsle.net/apps/doodle/pkg" + "git.kirsle.net/apps/doodle/pkg/doodads" + "git.kirsle.net/apps/doodle/pkg/level" + "git.kirsle.net/apps/doodle/pkg/log" "github.com/urfave/cli" "golang.org/x/image/bmp" ) diff --git a/cmd/doodad/commands/log.go b/cmd/doodad/commands/log.go deleted file mode 100644 index 2ca717f..0000000 --- a/cmd/doodad/commands/log.go +++ /dev/null @@ -1,14 +0,0 @@ -package commands - -import "github.com/kirsle/golog" - -var log *golog.Logger - -func init() { - log = golog.GetLogger("doodad") - log.Configure(&golog.Config{ - Level: golog.InfoLevel, - Theme: golog.DarkTheme, - Colors: golog.ExtendedColor, - }) -} diff --git a/cmd/doodad/main.go b/cmd/doodad/main.go index b976f43..a8e96b1 100644 --- a/cmd/doodad/main.go +++ b/cmd/doodad/main.go @@ -6,8 +6,8 @@ import ( "os" "sort" - "git.kirsle.net/apps/doodle" "git.kirsle.net/apps/doodle/cmd/doodad/commands" + doodle "git.kirsle.net/apps/doodle/pkg" "github.com/urfave/cli" ) diff --git a/cmd/doodle/main.go b/cmd/doodle/main.go index 531f91f..7054714 100644 --- a/cmd/doodle/main.go +++ b/cmd/doodle/main.go @@ -4,11 +4,11 @@ import ( "flag" "runtime" - "git.kirsle.net/apps/doodle" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/render/sdl" - _ "image/png" + + "git.kirsle.net/apps/doodle/lib/render/sdl" + doodle "git.kirsle.net/apps/doodle/pkg" + "git.kirsle.net/apps/doodle/pkg/balance" ) // Build number is the git commit hash. diff --git a/level/log.go b/level/log.go deleted file mode 100644 index 0fac67a..0000000 --- a/level/log.go +++ /dev/null @@ -1,9 +0,0 @@ -package level - -import "github.com/kirsle/golog" - -var log *golog.Logger - -func init() { - log = golog.GetLogger("doodle") -} diff --git a/draw/line.go b/lib/draw/line.go similarity index 94% rename from draw/line.go rename to lib/draw/line.go index a174164..bc98a87 100644 --- a/draw/line.go +++ b/lib/draw/line.go @@ -3,7 +3,7 @@ package draw import ( "math" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // Line is a generator that returns the X,Y coordinates to draw a line. diff --git a/draw/line_test.go b/lib/draw/line_test.go similarity index 94% rename from draw/line_test.go rename to lib/draw/line_test.go index eb1cabb..7e20f21 100644 --- a/draw/line_test.go +++ b/lib/draw/line_test.go @@ -4,8 +4,8 @@ import ( "fmt" "testing" - "git.kirsle.net/apps/doodle/draw" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/draw" + "git.kirsle.net/apps/doodle/lib/render" ) func TestLine(t *testing.T) { diff --git a/events/debug.go b/lib/events/debug.go similarity index 100% rename from events/debug.go rename to lib/events/debug.go diff --git a/events/events.go b/lib/events/events.go similarity index 100% rename from events/events.go rename to lib/events/events.go diff --git a/events/log.go b/lib/events/log.go similarity index 100% rename from events/log.go rename to lib/events/log.go diff --git a/events/types.go b/lib/events/types.go similarity index 100% rename from events/types.go rename to lib/events/types.go diff --git a/render/color.go b/lib/render/color.go similarity index 100% rename from render/color.go rename to lib/render/color.go diff --git a/render/functions.go b/lib/render/functions.go similarity index 100% rename from render/functions.go rename to lib/render/functions.go diff --git a/render/interface.go b/lib/render/interface.go similarity index 99% rename from render/interface.go rename to lib/render/interface.go index 1a30ad9..7d07503 100644 --- a/render/interface.go +++ b/lib/render/interface.go @@ -4,7 +4,7 @@ import ( "fmt" "math" - "git.kirsle.net/apps/doodle/events" + "git.kirsle.net/apps/doodle/lib/events" ) // Engine is the interface for the rendering engine, keeping SDL-specific stuff diff --git a/render/log.go b/lib/render/log.go similarity index 100% rename from render/log.go rename to lib/render/log.go diff --git a/render/point.go b/lib/render/point.go similarity index 100% rename from render/point.go rename to lib/render/point.go diff --git a/render/point_test.go b/lib/render/point_test.go similarity index 95% rename from render/point_test.go rename to lib/render/point_test.go index dedb355..d40c5da 100644 --- a/render/point_test.go +++ b/lib/render/point_test.go @@ -4,7 +4,7 @@ import ( "strconv" "testing" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) func TestPointInside(t *testing.T) { diff --git a/render/rect_test.go b/lib/render/rect_test.go similarity index 96% rename from render/rect_test.go rename to lib/render/rect_test.go index 882b6fc..c6d8bb4 100644 --- a/render/rect_test.go +++ b/lib/render/rect_test.go @@ -4,7 +4,7 @@ import ( "strconv" "testing" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) func TestIntersection(t *testing.T) { diff --git a/render/sdl/canvas.go b/lib/render/sdl/canvas.go similarity index 97% rename from render/sdl/canvas.go rename to lib/render/sdl/canvas.go index 2272c49..0095585 100644 --- a/render/sdl/canvas.go +++ b/lib/render/sdl/canvas.go @@ -2,7 +2,7 @@ package sdl import ( - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" "github.com/veandco/go-sdl2/sdl" ) diff --git a/render/sdl/events.go b/lib/render/sdl/events.go similarity index 98% rename from render/sdl/events.go rename to lib/render/sdl/events.go index 5a8bad3..f84b3c3 100644 --- a/render/sdl/events.go +++ b/lib/render/sdl/events.go @@ -3,7 +3,7 @@ package sdl import ( "errors" - "git.kirsle.net/apps/doodle/events" + "git.kirsle.net/apps/doodle/lib/events" "github.com/veandco/go-sdl2/sdl" ) diff --git a/render/sdl/fps.go b/lib/render/sdl/fps.go similarity index 88% rename from render/sdl/fps.go rename to lib/render/sdl/fps.go index 4c625c9..31c1c17 100644 --- a/render/sdl/fps.go +++ b/lib/render/sdl/fps.go @@ -1,8 +1,6 @@ package sdl -import ( - "git.kirsle.net/apps/doodle/level" -) +import "git.kirsle.net/apps/doodle/pkg/level" // Frames to cache for FPS calculation. const ( diff --git a/render/sdl/log.go b/lib/render/sdl/log.go similarity index 100% rename from render/sdl/log.go rename to lib/render/sdl/log.go diff --git a/render/sdl/sdl.go b/lib/render/sdl/sdl.go similarity index 96% rename from render/sdl/sdl.go rename to lib/render/sdl/sdl.go index 2b6bb8e..538c3a1 100644 --- a/render/sdl/sdl.go +++ b/lib/render/sdl/sdl.go @@ -4,8 +4,8 @@ package sdl import ( "time" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" "github.com/veandco/go-sdl2/sdl" "github.com/veandco/go-sdl2/ttf" ) diff --git a/render/sdl/text.go b/lib/render/sdl/text.go similarity index 97% rename from render/sdl/text.go rename to lib/render/sdl/text.go index dc00129..caac55d 100644 --- a/render/sdl/text.go +++ b/lib/render/sdl/text.go @@ -4,8 +4,8 @@ import ( "fmt" "strings" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" "github.com/veandco/go-sdl2/sdl" "github.com/veandco/go-sdl2/ttf" ) diff --git a/render/sdl/texture.go b/lib/render/sdl/texture.go similarity index 96% rename from render/sdl/texture.go rename to lib/render/sdl/texture.go index 192da48..b7843cc 100644 --- a/render/sdl/texture.go +++ b/lib/render/sdl/texture.go @@ -3,7 +3,7 @@ package sdl import ( "fmt" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" "github.com/veandco/go-sdl2/sdl" ) diff --git a/render/sdl/utils.go b/lib/render/sdl/utils.go similarity index 90% rename from render/sdl/utils.go rename to lib/render/sdl/utils.go index efcbf9c..3c7f260 100644 --- a/render/sdl/utils.go +++ b/lib/render/sdl/utils.go @@ -1,7 +1,7 @@ package sdl import ( - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" "github.com/veandco/go-sdl2/sdl" ) diff --git a/ui/button.go b/lib/ui/button.go similarity index 96% rename from ui/button.go rename to lib/ui/button.go index e7240ca..708c88a 100644 --- a/ui/button.go +++ b/lib/ui/button.go @@ -4,8 +4,8 @@ import ( "errors" "fmt" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui/theme" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui/theme" ) // Button is a clickable button. diff --git a/ui/check_button.go b/lib/ui/check_button.go similarity index 96% rename from ui/check_button.go rename to lib/ui/check_button.go index dd56f58..838667c 100644 --- a/ui/check_button.go +++ b/lib/ui/check_button.go @@ -4,8 +4,8 @@ import ( "fmt" "strconv" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui/theme" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui/theme" ) // CheckButton implements a checkbox and radiobox widget. It's based on a diff --git a/ui/checkbox.go b/lib/ui/checkbox.go similarity index 97% rename from ui/checkbox.go rename to lib/ui/checkbox.go index 59b26fd..e98d7d2 100644 --- a/ui/checkbox.go +++ b/lib/ui/checkbox.go @@ -1,6 +1,6 @@ package ui -import "git.kirsle.net/apps/doodle/render" +import "git.kirsle.net/apps/doodle/lib/render" // Checkbox combines a CheckButton with a widget like a Label. type Checkbox struct { diff --git a/ui/debug.go b/lib/ui/debug.go similarity index 100% rename from ui/debug.go rename to lib/ui/debug.go diff --git a/ui/dragdrop.go b/lib/ui/dragdrop.go similarity index 100% rename from ui/dragdrop.go rename to lib/ui/dragdrop.go diff --git a/ui/frame.go b/lib/ui/frame.go similarity index 97% rename from ui/frame.go rename to lib/ui/frame.go index ee15af6..fe3be40 100644 --- a/ui/frame.go +++ b/lib/ui/frame.go @@ -3,7 +3,7 @@ package ui import ( "fmt" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // Frame is a widget that contains other widgets. diff --git a/ui/frame_pack.go b/lib/ui/frame_pack.go similarity index 98% rename from ui/frame_pack.go rename to lib/ui/frame_pack.go index 228f8fc..a4fe769 100644 --- a/ui/frame_pack.go +++ b/lib/ui/frame_pack.go @@ -1,6 +1,8 @@ package ui -import "git.kirsle.net/apps/doodle/render" +import ( + "git.kirsle.net/apps/doodle/lib/render" +) // Pack provides configuration fields for Frame.Pack(). type Pack struct { @@ -223,7 +225,7 @@ func (w *Frame) computePacked(e render.Engine) { moved = true } } else { - log.Error("unsupported pack.Anchor") + panic("unsupported pack.Anchor") } if resized && size != resize { diff --git a/ui/functions.go b/lib/ui/functions.go similarity index 93% rename from ui/functions.go rename to lib/ui/functions.go index bceca8b..9780a30 100644 --- a/ui/functions.go +++ b/lib/ui/functions.go @@ -1,6 +1,6 @@ package ui -import "git.kirsle.net/apps/doodle/render" +import "git.kirsle.net/apps/doodle/lib/render" // AbsolutePosition computes a widget's absolute X,Y position on the // window on screen by crawling its parent widget tree. diff --git a/ui/image.go b/lib/ui/image.go similarity index 97% rename from ui/image.go rename to lib/ui/image.go index 94e9993..32d57fd 100644 --- a/ui/image.go +++ b/lib/ui/image.go @@ -5,7 +5,7 @@ import ( "path/filepath" "strings" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // ImageType for supported image formats. diff --git a/ui/label.go b/lib/ui/label.go similarity index 94% rename from ui/label.go rename to lib/ui/label.go index 8f3cfdf..7601562 100644 --- a/ui/label.go +++ b/lib/ui/label.go @@ -4,7 +4,7 @@ import ( "fmt" "strings" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // DefaultFont is the default font settings used for a Label. @@ -71,7 +71,7 @@ func (w *Label) Compute(e render.Engine) { text.Text = line // only this line at this time. rect, err := e.ComputeTextRect(text) if err != nil { - log.Error("%s: failed to compute text rect: %s", w, err) + panic(fmt.Sprintf("%s: failed to compute text rect: %s", w, err)) // TODO return an error return } diff --git a/ui/log.go b/lib/ui/log.go similarity index 100% rename from ui/log.go rename to lib/ui/log.go diff --git a/ui/supervisor.go b/lib/ui/supervisor.go similarity index 97% rename from ui/supervisor.go rename to lib/ui/supervisor.go index 43ae0bd..8c69a73 100644 --- a/ui/supervisor.go +++ b/lib/ui/supervisor.go @@ -4,8 +4,8 @@ import ( "errors" "sync" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" ) // Event is a named event that the supervisor will send. @@ -95,7 +95,6 @@ func (s *Supervisor) Loop(ev *events.State) error { if s.dd.IsDragging() { if !ev.Button1.Now && !ev.Button2.Now { // The mouse has been released. TODO: make mouse button important? - log.Info("Supervisor: STOP DRAGGING") for _, child := range hovering { child.widget.Event(Drop, XY) } diff --git a/ui/theme/theme.go b/lib/ui/theme/theme.go similarity index 82% rename from ui/theme/theme.go rename to lib/ui/theme/theme.go index 23c3186..deaf460 100644 --- a/ui/theme/theme.go +++ b/lib/ui/theme/theme.go @@ -1,6 +1,6 @@ package theme -import "git.kirsle.net/apps/doodle/render" +import "git.kirsle.net/apps/doodle/lib/render" // Color schemes. var ( diff --git a/ui/widget.go b/lib/ui/widget.go similarity index 99% rename from ui/widget.go rename to lib/ui/widget.go index bcc6db8..e7b2328 100644 --- a/ui/widget.go +++ b/lib/ui/widget.go @@ -1,8 +1,8 @@ package ui import ( - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui/theme" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui/theme" ) // BorderStyle options for widget.SetBorderStyle() diff --git a/ui/window.go b/lib/ui/window.go similarity index 98% rename from ui/window.go rename to lib/ui/window.go index 4347c63..a956e7f 100644 --- a/ui/window.go +++ b/lib/ui/window.go @@ -3,7 +3,7 @@ package ui import ( "fmt" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // Window is a frame with a title bar. diff --git a/log.go b/log.go deleted file mode 100644 index c0c87bf..0000000 --- a/log.go +++ /dev/null @@ -1,15 +0,0 @@ -package doodle - -import "github.com/kirsle/golog" - -var log *golog.Logger - -func init() { - log = golog.GetLogger("doodle") - log.Configure(&golog.Config{ - Level: golog.DebugLevel, - Theme: golog.DarkTheme, - Colors: golog.ExtendedColor, - TimeFormat: "2006-01-02 15:04:05.000000", - }) -} diff --git a/balance/README.md b/pkg/balance/README.md similarity index 100% rename from balance/README.md rename to pkg/balance/README.md diff --git a/balance/debug.go b/pkg/balance/debug.go similarity index 98% rename from balance/debug.go rename to pkg/balance/debug.go index 1d630ab..50810f0 100644 --- a/balance/debug.go +++ b/pkg/balance/debug.go @@ -5,7 +5,7 @@ import ( "strconv" "strings" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // Debug related variables that can toggle on or off certain features and diff --git a/balance/numbers.go b/pkg/balance/numbers.go similarity index 100% rename from balance/numbers.go rename to pkg/balance/numbers.go diff --git a/balance/shell.go b/pkg/balance/shell.go similarity index 91% rename from balance/shell.go rename to pkg/balance/shell.go index 12ef517..f0926b9 100644 --- a/balance/shell.go +++ b/pkg/balance/shell.go @@ -1,8 +1,6 @@ package balance -import ( - "git.kirsle.net/apps/doodle/render" -) +import "git.kirsle.net/apps/doodle/lib/render" // Shell related variables. var ( diff --git a/balance/theme.go b/pkg/balance/theme.go similarity index 91% rename from balance/theme.go rename to pkg/balance/theme.go index 192a2ad..7da0987 100644 --- a/balance/theme.go +++ b/pkg/balance/theme.go @@ -1,8 +1,8 @@ package balance import ( - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" ) // Theme and appearance variables. diff --git a/commands.go b/pkg/commands.go similarity index 99% rename from commands.go rename to pkg/commands.go index d3d314a..c4d6f49 100644 --- a/commands.go +++ b/pkg/commands.go @@ -5,7 +5,7 @@ import ( "fmt" "strconv" - "git.kirsle.net/apps/doodle/enum" + "git.kirsle.net/apps/doodle/pkg/enum" ) // Command is a parsed shell command. diff --git a/config.go b/pkg/config.go similarity index 97% rename from config.go rename to pkg/config.go index 3500f5f..8ddd8a8 100644 --- a/config.go +++ b/pkg/config.go @@ -7,6 +7,7 @@ import ( "regexp" "strings" + "git.kirsle.net/apps/doodle/pkg/log" "git.kirsle.net/apps/doodle/pkg/userdir" ) diff --git a/doodads/actor.go b/pkg/doodads/actor.go similarity index 96% rename from doodads/actor.go rename to pkg/doodads/actor.go index 89707d1..1f4f05c 100644 --- a/doodads/actor.go +++ b/pkg/doodads/actor.go @@ -1,8 +1,8 @@ package doodads import ( - "git.kirsle.net/apps/doodle/level" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/level" ) // Actor is a reusable run-time drawing component used in Doodle. Actors are an diff --git a/doodads/collision.go b/pkg/doodads/collision.go similarity index 98% rename from doodads/collision.go rename to pkg/doodads/collision.go index 739a7ad..8981ba5 100644 --- a/doodads/collision.go +++ b/pkg/doodads/collision.go @@ -1,8 +1,8 @@ package doodads import ( - "git.kirsle.net/apps/doodle/level" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/level" ) // Collide describes how a collision occurred. diff --git a/doodads/doodad.go b/pkg/doodads/doodad.go similarity index 91% rename from doodads/doodad.go rename to pkg/doodads/doodad.go index ea2fa33..3b3cfc2 100644 --- a/doodads/doodad.go +++ b/pkg/doodads/doodad.go @@ -1,9 +1,9 @@ package doodads import ( - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/level" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/level" ) // Doodad is a reusable component for Levels that have scripts and graphics. diff --git a/doodads/json.go b/pkg/doodads/json.go similarity index 100% rename from doodads/json.go rename to pkg/doodads/json.go diff --git a/doodads/player.go b/pkg/doodads/player.go similarity index 96% rename from doodads/player.go rename to pkg/doodads/player.go index 0b63c1c..847d2a0 100644 --- a/doodads/player.go +++ b/pkg/doodads/player.go @@ -1,8 +1,6 @@ package doodads -import ( - "git.kirsle.net/apps/doodle/render" -) +import "git.kirsle.net/apps/doodle/lib/render" // PlayerID is the Doodad ID for the player character. const PlayerID = "PLAYER" diff --git a/doodle.go b/pkg/doodle.go similarity index 94% rename from doodle.go rename to pkg/doodle.go index 4f129cf..811af92 100644 --- a/doodle.go +++ b/pkg/doodle.go @@ -5,10 +5,11 @@ import ( "strings" "time" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/enum" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/enum" + "git.kirsle.net/apps/doodle/pkg/log" "github.com/kirsle/golog" ) @@ -58,7 +59,7 @@ func New(debug bool, engine render.Engine) *Doodle { d.shell = NewShell(d) if !debug { - log.Config.Level = golog.InfoLevel + log.Logger.Config.Level = golog.InfoLevel } return d @@ -200,7 +201,7 @@ func (d *Doodle) EditDrawing(filename string) error { switch ext { case "level": case "map": - log.Info("is a LEvel type") + log.Info("is a Level type") scene.DrawingType = enum.LevelDrawing case "doodad": scene.DrawingType = enum.DoodadDrawing diff --git a/editor_scene.go b/pkg/editor_scene.go similarity index 96% rename from editor_scene.go rename to pkg/editor_scene.go index b909686..c972af4 100644 --- a/editor_scene.go +++ b/pkg/editor_scene.go @@ -7,12 +7,13 @@ import ( "os" "strings" - "git.kirsle.net/apps/doodle/doodads" - "git.kirsle.net/apps/doodle/enum" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/level" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/doodads" + "git.kirsle.net/apps/doodle/pkg/enum" + "git.kirsle.net/apps/doodle/pkg/level" + "git.kirsle.net/apps/doodle/pkg/log" "git.kirsle.net/apps/doodle/pkg/userdir" - "git.kirsle.net/apps/doodle/render" ) // EditorScene manages the "Edit Level" game mode. diff --git a/editor_scene_debug.go b/pkg/editor_scene_debug.go similarity index 85% rename from editor_scene_debug.go rename to pkg/editor_scene_debug.go index f2ceea0..4d928fe 100644 --- a/editor_scene_debug.go +++ b/pkg/editor_scene_debug.go @@ -1,6 +1,6 @@ package doodle -import "git.kirsle.net/apps/doodle/uix" +import "git.kirsle.net/apps/doodle/pkg/uix" // TODO: build flags to not include this in production builds. // This adds accessors for private variables from the dev console. diff --git a/editor_ui.go b/pkg/editor_ui.go similarity index 97% rename from editor_ui.go rename to pkg/editor_ui.go index 0e0d6b5..7bfa3e4 100644 --- a/editor_ui.go +++ b/pkg/editor_ui.go @@ -5,15 +5,16 @@ import ( "path/filepath" "strconv" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/doodads" - "git.kirsle.net/apps/doodle/enum" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/level" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/doodads" + "git.kirsle.net/apps/doodle/pkg/enum" + "git.kirsle.net/apps/doodle/pkg/level" + "git.kirsle.net/apps/doodle/pkg/log" + "git.kirsle.net/apps/doodle/pkg/uix" "git.kirsle.net/apps/doodle/pkg/userdir" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" - "git.kirsle.net/apps/doodle/uix" ) // Width of the panel frame. diff --git a/editor_ui_doodad.go b/pkg/editor_ui_doodad.go similarity index 92% rename from editor_ui_doodad.go rename to pkg/editor_ui_doodad.go index 433641c..9f22342 100644 --- a/editor_ui_doodad.go +++ b/pkg/editor_ui_doodad.go @@ -7,12 +7,13 @@ package doodle import ( "fmt" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/doodads" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/doodads" + "git.kirsle.net/apps/doodle/pkg/log" + "git.kirsle.net/apps/doodle/pkg/uix" "git.kirsle.net/apps/doodle/pkg/userdir" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" - "git.kirsle.net/apps/doodle/uix" ) // DraggableActor is a Doodad being dragged from the Doodad palette. diff --git a/editor_ui_palette.go b/pkg/editor_ui_palette.go similarity index 88% rename from editor_ui_palette.go rename to pkg/editor_ui_palette.go index d48c6fc..114ad28 100644 --- a/editor_ui_palette.go +++ b/pkg/editor_ui_palette.go @@ -1,9 +1,10 @@ package doodle import ( - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/log" ) // setupPaletteFrame configures the Color Palette tab for Edit Mode. diff --git a/enum/enum.go b/pkg/enum/enum.go similarity index 100% rename from enum/enum.go rename to pkg/enum/enum.go diff --git a/fps.go b/pkg/fps.go similarity index 95% rename from fps.go rename to pkg/fps.go index f1b6147..8074f91 100644 --- a/fps.go +++ b/pkg/fps.go @@ -4,10 +4,10 @@ import ( "fmt" "strings" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/doodads" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/doodads" ) // Frames to cache for FPS calculation. diff --git a/guitest_scene.go b/pkg/guitest_scene.go similarity index 96% rename from guitest_scene.go rename to pkg/guitest_scene.go index 1b349eb..5ebcf28 100644 --- a/guitest_scene.go +++ b/pkg/guitest_scene.go @@ -3,10 +3,11 @@ package doodle import ( "fmt" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/log" ) // GUITestScene implements the main menu of Doodle. diff --git a/level/actors.go b/pkg/level/actors.go similarity index 96% rename from level/actors.go rename to pkg/level/actors.go index 332c044..caeb08d 100644 --- a/level/actors.go +++ b/pkg/level/actors.go @@ -1,7 +1,7 @@ package level import ( - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" uuid "github.com/satori/go.uuid" ) diff --git a/level/base_test.go b/pkg/level/base_test.go similarity index 100% rename from level/base_test.go rename to pkg/level/base_test.go diff --git a/level/chunk.go b/pkg/level/chunk.go similarity index 98% rename from level/chunk.go rename to pkg/level/chunk.go index a0aa78d..0f70b9d 100644 --- a/level/chunk.go +++ b/pkg/level/chunk.go @@ -7,9 +7,10 @@ import ( "math" "os" - "git.kirsle.net/apps/doodle/balance" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/log" "git.kirsle.net/apps/doodle/pkg/userdir" - "git.kirsle.net/apps/doodle/render" "github.com/satori/go.uuid" "golang.org/x/image/bmp" ) diff --git a/level/chunk_map.go b/pkg/level/chunk_map.go similarity index 98% rename from level/chunk_map.go rename to pkg/level/chunk_map.go index 45a1075..a5b5def 100644 --- a/level/chunk_map.go +++ b/pkg/level/chunk_map.go @@ -5,7 +5,7 @@ import ( "errors" "fmt" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // MapAccessor implements a chunk accessor by using a map of points to their diff --git a/level/chunk_test.go b/pkg/level/chunk_test.go similarity index 98% rename from level/chunk_test.go rename to pkg/level/chunk_test.go index 7ebf3ff..4cd8cd5 100644 --- a/level/chunk_test.go +++ b/pkg/level/chunk_test.go @@ -4,8 +4,8 @@ import ( "fmt" "testing" - "git.kirsle.net/apps/doodle/level" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/level" ) // Test the high level Chunker. diff --git a/level/chunker.go b/pkg/level/chunker.go similarity index 98% rename from level/chunker.go rename to pkg/level/chunker.go index 127c5db..3477363 100644 --- a/level/chunker.go +++ b/pkg/level/chunker.go @@ -5,7 +5,8 @@ import ( "fmt" "math" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/log" ) // Chunker is the data structure that manages the chunks of a level, and diff --git a/level/chunker_test.go b/pkg/level/chunker_test.go similarity index 98% rename from level/chunker_test.go rename to pkg/level/chunker_test.go index d417a3d..cba5d78 100644 --- a/level/chunker_test.go +++ b/pkg/level/chunker_test.go @@ -4,8 +4,8 @@ import ( "fmt" "testing" - "git.kirsle.net/apps/doodle/level" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/level" ) func TestWorldSize(t *testing.T) { diff --git a/level/filesystem.go b/pkg/level/filesystem.go similarity index 100% rename from level/filesystem.go rename to pkg/level/filesystem.go diff --git a/level/json.go b/pkg/level/json.go similarity index 100% rename from level/json.go rename to pkg/level/json.go diff --git a/level/page_type.go b/pkg/level/page_type.go similarity index 100% rename from level/page_type.go rename to pkg/level/page_type.go diff --git a/level/palette.go b/pkg/level/palette.go similarity index 97% rename from level/palette.go rename to pkg/level/palette.go index 3061760..b5991d5 100644 --- a/level/palette.go +++ b/pkg/level/palette.go @@ -1,8 +1,6 @@ package level -import ( - "git.kirsle.net/apps/doodle/render" -) +import "git.kirsle.net/apps/doodle/lib/render" // DefaultPalette returns a sensible default palette. func DefaultPalette() *Palette { diff --git a/level/swatch.go b/pkg/level/swatch.go similarity index 96% rename from level/swatch.go rename to pkg/level/swatch.go index 2dc1c46..a6304e0 100644 --- a/level/swatch.go +++ b/pkg/level/swatch.go @@ -3,7 +3,7 @@ package level import ( "fmt" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // Swatch holds details about a single value in the palette. diff --git a/level/types.go b/pkg/level/types.go similarity index 96% rename from level/types.go rename to pkg/level/types.go index b603734..596d1dd 100644 --- a/level/types.go +++ b/pkg/level/types.go @@ -4,8 +4,8 @@ import ( "encoding/json" "fmt" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/balance" ) // Useful variables. diff --git a/pkg/log/log.go b/pkg/log/log.go new file mode 100644 index 0000000..06f820f --- /dev/null +++ b/pkg/log/log.go @@ -0,0 +1,36 @@ +package log + +import "github.com/kirsle/golog" + +// Logger is the public golog.Logger object. +var Logger *golog.Logger + +func init() { + Logger = golog.GetLogger("doodle") + Logger.Configure(&golog.Config{ + Level: golog.DebugLevel, + Theme: golog.DarkTheme, + Colors: golog.ExtendedColor, + TimeFormat: "2006-01-02 15:04:05.000000", + }) +} + +// Debug logger function. +func Debug(msg string, v ...interface{}) { + Logger.Debug(msg, v...) +} + +// Info logger function. +func Info(msg string, v ...interface{}) { + Logger.Info(msg, v...) +} + +// Warn logger function. +func Warn(msg string, v ...interface{}) { + Logger.Warn(msg, v...) +} + +// Error logger function. +func Error(msg string, v ...interface{}) { + Logger.Error(msg, v...) +} diff --git a/main_scene.go b/pkg/main_scene.go similarity index 91% rename from main_scene.go rename to pkg/main_scene.go index b559382..4b0e78d 100644 --- a/main_scene.go +++ b/pkg/main_scene.go @@ -1,10 +1,10 @@ package doodle import ( - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/balance" ) // MainScene implements the main menu of Doodle. diff --git a/play_scene.go b/pkg/play_scene.go similarity index 91% rename from play_scene.go rename to pkg/play_scene.go index 981e336..73ed517 100644 --- a/play_scene.go +++ b/pkg/play_scene.go @@ -3,12 +3,13 @@ package doodle import ( "fmt" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/doodads" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/level" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/uix" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/doodads" + "git.kirsle.net/apps/doodle/pkg/level" + "git.kirsle.net/apps/doodle/pkg/log" + "git.kirsle.net/apps/doodle/pkg/uix" ) // PlayScene manages the "Edit Level" game mode. diff --git a/scene.go b/pkg/scene.go similarity index 89% rename from scene.go rename to pkg/scene.go index 1c04c43..b96d380 100644 --- a/scene.go +++ b/pkg/scene.go @@ -1,6 +1,9 @@ package doodle -import "git.kirsle.net/apps/doodle/events" +import ( + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/pkg/log" +) // Scene is an abstraction for a game mode in Doodle. The app points to one // scene at a time and that scene has control over the main loop, and its own diff --git a/shell.go b/pkg/shell.go similarity index 97% rename from shell.go rename to pkg/shell.go index 23c828e..5c9a7d8 100644 --- a/shell.go +++ b/pkg/shell.go @@ -5,10 +5,11 @@ import ( "fmt" "strings" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/log" "github.com/robertkrimen/otto" ) @@ -73,7 +74,7 @@ func NewShell(d *Doodle) Shell { // Make the Doodle instance available to the shell. bindings := map[string]interface{}{ "d": d, - "log": log, + "log": log.Logger, "RGBA": render.RGBA, "Point": render.NewPoint, "Rect": render.NewRect, diff --git a/uix/canvas.go b/pkg/uix/canvas.go similarity index 98% rename from uix/canvas.go rename to pkg/uix/canvas.go index b0c11ca..133b83a 100644 --- a/uix/canvas.go +++ b/pkg/uix/canvas.go @@ -5,14 +5,15 @@ import ( "os" "strings" - "git.kirsle.net/apps/doodle/balance" - "git.kirsle.net/apps/doodle/doodads" - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/level" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/balance" + "git.kirsle.net/apps/doodle/pkg/doodads" + "git.kirsle.net/apps/doodle/pkg/level" + "git.kirsle.net/apps/doodle/pkg/log" "git.kirsle.net/apps/doodle/pkg/userdir" "git.kirsle.net/apps/doodle/pkg/wallpaper" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" ) // Canvas is a custom ui.Widget that manages a single drawing. diff --git a/uix/canvas_editable.go b/pkg/uix/canvas_editable.go similarity index 94% rename from uix/canvas_editable.go rename to pkg/uix/canvas_editable.go index 184c5e2..b0656cd 100644 --- a/uix/canvas_editable.go +++ b/pkg/uix/canvas_editable.go @@ -1,10 +1,10 @@ package uix import ( - "git.kirsle.net/apps/doodle/events" - "git.kirsle.net/apps/doodle/level" - "git.kirsle.net/apps/doodle/render" - "git.kirsle.net/apps/doodle/ui" + "git.kirsle.net/apps/doodle/lib/events" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/lib/ui" + "git.kirsle.net/apps/doodle/pkg/level" ) // loopEditable handles the Loop() part for editable canvases. diff --git a/uix/canvas_wallpaper.go b/pkg/uix/canvas_wallpaper.go similarity index 97% rename from uix/canvas_wallpaper.go rename to pkg/uix/canvas_wallpaper.go index 827dadc..179b42e 100644 --- a/uix/canvas_wallpaper.go +++ b/pkg/uix/canvas_wallpaper.go @@ -1,9 +1,9 @@ package uix import ( - "git.kirsle.net/apps/doodle/level" + "git.kirsle.net/apps/doodle/lib/render" + "git.kirsle.net/apps/doodle/pkg/level" "git.kirsle.net/apps/doodle/pkg/wallpaper" - "git.kirsle.net/apps/doodle/render" ) // Wallpaper configures the wallpaper in a Canvas. diff --git a/uix/draw_modes.go b/pkg/uix/draw_modes.go similarity index 100% rename from uix/draw_modes.go rename to pkg/uix/draw_modes.go diff --git a/pkg/wallpaper/texture.go b/pkg/wallpaper/texture.go index 490d696..7f27030 100644 --- a/pkg/wallpaper/texture.go +++ b/pkg/wallpaper/texture.go @@ -7,8 +7,8 @@ import ( "image" "os" + "git.kirsle.net/apps/doodle/lib/render" "git.kirsle.net/apps/doodle/pkg/userdir" - "git.kirsle.net/apps/doodle/render" "golang.org/x/image/bmp" ) diff --git a/pkg/wallpaper/wallpaper.go b/pkg/wallpaper/wallpaper.go index 05885d0..98482a8 100644 --- a/pkg/wallpaper/wallpaper.go +++ b/pkg/wallpaper/wallpaper.go @@ -7,7 +7,7 @@ import ( "path/filepath" "strings" - "git.kirsle.net/apps/doodle/render" + "git.kirsle.net/apps/doodle/lib/render" ) // Wallpaper is a repeatable background image to go behind levels. diff --git a/uix/log.go b/uix/log.go deleted file mode 100644 index 403dc2f..0000000 --- a/uix/log.go +++ /dev/null @@ -1,14 +0,0 @@ -package uix - -import "github.com/kirsle/golog" - -var log *golog.Logger - -func init() { - log = golog.GetLogger("uix") - log.Configure(&golog.Config{ - Level: golog.DebugLevel, - Theme: golog.DarkTheme, - Colors: golog.ExtendedColor, - }) -}