summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorDavid Thompson <dthompson2@worcester.edu>2016-05-27 22:21:45 -0400
committerDavid Thompson <dthompson2@worcester.edu>2016-05-27 22:21:45 -0400
commit677eb07b00f13708b0f94517feb1b2a5ab66d61a (patch)
treef9157150b0873c4b51d9e51cb6ce18da0d7b4f3e /examples
parentb9951013b7b06858b693f4f7ef4a21b4953f5cb3 (diff)
render: Add 9-patch implementation.
* sly/render/nine-patch: New file. * Makefile.am (SOURCES): Add it. * examples/images/dialog.png: New file. * examples/nine-patch.scm: New file.
Diffstat (limited to 'examples')
-rw-r--r--examples/images/dialog.pngbin0 -> 409 bytes
-rw-r--r--examples/nine-patch.scm41
2 files changed, 41 insertions, 0 deletions
diff --git a/examples/images/dialog.png b/examples/images/dialog.png
new file mode 100644
index 0000000..9277ff1
--- /dev/null
+++ b/examples/images/dialog.png
Binary files differ
diff --git a/examples/nine-patch.scm b/examples/nine-patch.scm
new file mode 100644
index 0000000..9f77de6
--- /dev/null
+++ b/examples/nine-patch.scm
@@ -0,0 +1,41 @@
+;;; Sly
+;;; Copyright (C) 2016 David Thompson <davet@gnu.org>
+;;;
+;;; This program is free software: you can redistribute it and/or
+;;; modify it under the terms of the GNU General Public License as
+;;; published by the Free Software Foundation, either version 3 of the
+;;; License, or (at your option) any later version.
+;;;
+;;; This program is distributed in the hope that it will be useful,
+;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;;; General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with this program. If not, see
+;;; <http://www.gnu.org/licenses/>.
+
+(use-modules (sly)
+ (sly render nine-patch))
+
+(load "common.scm")
+
+(define-signal dialog
+ (on-start
+ (render-nine-patch #:texture (load-texture "images/dialog.png")
+ #:width 512
+ #:height 256
+ #:margin 8)
+ render-nothing))
+
+(define-signal scene
+ (signal-let ((dialog dialog))
+ (with-camera (2d-camera #:area (make-rect 0 0 640 480))
+ (move (vector2 320 240) dialog))))
+
+(with-window (make-window #:title "9-patch")
+ (run-game-loop scene))
+
+;;; Local Variables:
+;;; compile-command: "../pre-inst-env guile nine-patch.scm"
+;;; End: