(defpackage :gtk-demo
- (:use :cl :gtk :gdk :gobject :anaphora :iter)
+ (:use :cl :gtk :gdk :gobject :iter)
(:export #:test
#:test-entry
#:table-packing
#:demo-code-editor
#:test-treeview-list
#:test-combo-box
- #:test-toolbar
#:test-ui-manager
#:test-color-button
#:test-color-selection
(in-package :gtk-demo)
-(defparameter *src-location* (asdf:component-pathname (asdf:find-system :gtk)))
+(defparameter *src-location* (asdf:component-pathname (asdf:find-system :clgtk2-gtk)))
(defun test ()
(within-main-loop
(for action = (make-instance 'action :name name :stock-id stock-id))
(g-signal-connect action "activate" fn)
(action-group-add-action action-group action))
- (awhen (ui-manager-widget ui-manager "/toolbar1")
- (container-add window it))
+ (let ((widget (ui-manager-widget ui-manager "/toolbar1")))
+ (when widget
+ (container-add window widget)))
(widget-show window))))
(defun test-color-button ()
(iter (for i from 0 to 5)
(for page = (make-instance 'label :label (format nil "Label for page ~A" i)))
(for tab-label = (make-instance 'label :label (format nil "Tab ~A" i)))
- (for tab-button = (make-instance 'button :use-stock t :label "gtk-close" :relief :none))
+ (for tab-button = (make-instance 'button
+ :image (make-instance 'image :stock "gtk-close" :icon-size 1)
+ :relief :none))
+ (g-signal-connect tab-button "clicked"
+ (let ((page page))
+ (lambda (button)
+ (declare (ignore button))
+ (format t "Removing page ~A~%" page)
+ (notebook-remove-page notebook page))))
(for tab-hbox = (make-instance 'h-box))
(box-pack-start tab-hbox tab-label)
(box-pack-start tab-hbox tab-button)
(defun demo-text-editor ()
(within-main-loop
- (let* ((builder (aprog1 (make-instance 'builder)
- (builder-add-from-file it (namestring (merge-pathnames "demo/text-editor.ui" *src-location*)))))
+ (let* ((builder (let ((builder (make-instance 'builder)))
+ (builder-add-from-file builder (namestring (merge-pathnames "demo/text-editor.ui" *src-location*)))
+ builder))
(window (builder-get-object builder "window1"))
(text-view (builder-get-object builder "textview1"))
(status-bar (builder-get-object builder "statusbar1"))