diff --git a/tutorial/22-tutorial.lisp b/tutorial/22-tutorial.lisp
index 357e877..6dc8497 100644
--- a/tutorial/22-tutorial.lisp
+++ b/tutorial/22-tutorial.lisp
@@ -7,30 +7,66 @@
(defun on-file-count (body)
(let ((win (create-gui-window body)))
(dotimes (n 100)
+ ;; window-content is the root element for the clog-gui
+ ;; windows
(create-div (window-content win) :content n))))
(defun on-file-browse (body)
(let* ((win (create-gui-window body))
(browser (create-child (window-content win)
"")))))
-
+
+(defun on-file-drawing (body)
+ (let* ((win (create-gui-window body))
+ (canvas (create-canvas (window-content win) :width 600 :height 400))
+ (cx (create-context2d canvas)))
+ (set-border canvas :thin :solid :black)
+ (fill-style cx :green)
+ (fill-rect cx 10 10 150 100)
+ (fill-style cx :blue)
+ (font-style cx "bold 24px serif")
+ (fill-text cx "Hello World" 10 150)
+ (fill-style cx :red)
+ (begin-path cx)
+ (ellipse cx 200 200 50 7 0.78 0 6.29)
+ (path-stroke cx)
+ (path-fill cx)))
+
+(defun on-file-movies (body)
+ (let* ((win (create-gui-window body)))
+ (create-video (window-content win) :source "https://www.w3schools.com/html/mov_bbb.mp4")))
+
+(defun on-help-about (body)
+ (let* ((about (create-gui-window body
+ :title "About"
+ :content "
+

+
CLOG
+
The Common Lisp Omnificent GUI
+ Tutorial 22
+
(c) 2021 - David Botton "
+ :width 200
+ :height 200)))
+ (set-on-window-can-size about (lambda (obj)
+ (declare (ignore obj))()))))
+
(defun on-new-window (body)
(clog-gui-initialize body)
(add-class body "w3-cyan")
(let* ((menu (create-gui-menu-bar body))
- (icon (create-gui-menu-icon menu))
+ (tmp (create-gui-menu-icon menu :on-click #'on-help-about))
(file (create-gui-menu-drop-down menu :content "File"))
- (new (create-gui-menu-item file :content "Count" :on-click #'on-file-count))
- (open (create-gui-menu-item file :content "Browse" :on-click #'on-file-browse))
- (save (create-gui-menu-item file :content "Save"))
+ (tmp (create-gui-menu-item file :content "Count" :on-click #'on-file-count))
+ (tmp (create-gui-menu-item file :content "Browse" :on-click #'on-file-browse))
+ (tmp (create-gui-menu-item file :content "Drawing" :on-click #'on-file-drawing))
+ (tmp (create-gui-menu-item file :content "Movies" :on-click #'on-file-movies))
(help (create-gui-menu-drop-down menu :content "Help"))
- (about (create-gui-menu-item help :content "About"))
- (fs (create-gui-menu-full-screen menu))))
+ (tmp (create-gui-menu-item help :content "About" :on-click #'on-help-about))
+ (tmp (create-gui-menu-full-screen menu))))
(run body))
(defun start-tutorial ()
"Start turtorial."
-
(initialize #'on-new-window)
(open-browser))