-;; (let ((button (button-new "Remove Selection")))
-;; (box-pack-start hbox button t t 0)
-;; (signal-connect
-;; button 'clicked
-;; #'(lambda ()
-;; (let ((selection (list-selection list)))
-;; (if (eq (list-selection-mode list) :extended)
-;; (let ((item (or
-;; (container-focus-child list)
-;; (first selection))))
-;; (when item
-;; (let* ((children (container-children list))
-;; (sel-row
-;; (or
-;; (find-if
-;; #'(lambda (item)
-;; (eq (widget-state item) :selected))
-;; (member item children))
-;; (find-if
-;; #'(lambda (item)
-;; (eq (widget-state item) :selected))
-;; (member item (reverse children))))))
-;; (list-remove-items list selection)
-;; (when sel-row
-;; (list-select-child list sel-row)))))
-;; (list-remove-items list selection)))))
-;; (box-pack-start hbox button t t 0)))
-
-;; (let ((cbox (hbox-new nil 0)))
-;; (box-pack-start main-box cbox nil t 0)
-
-;; (let ((hbox (hbox-new nil 5))
-;; (option-menu
-;; (create-option-menu
-;; `(("Single"
-;; ,#'(lambda () (setf (list-selection-mode list) :single)))
-;; ("Browse"
-;; ,#'(lambda () (setf (list-selection-mode list) :browse)))
-;; ("Multiple"
-;; ,#'(lambda () (setf (list-selection-mode list) :multiple)))
-;; ("Extended"
-;; ,#'(lambda () (setf (list-selection-mode list) :extended))))
-;; 3)))
-
-;; (setf (container-border-width hbox) 5)
-;; (box-pack-start cbox hbox t nil 0)
-;; (box-pack-start hbox (label-new "Selection Mode :") nil t 0)
-;; (box-pack-start hbox option-menu nil t 0)))))
+ (loop
+ with iter = (make-instance 'tree-iter)
+ for i from 1 to 1000
+ do (list-store-append store (vector "Test" i (zerop (mod i 3))) iter))
+
+ (let ((column (make-instance 'tree-view-column :title "Column 1"))
+ (cell (make-instance 'cell-renderer-text)))
+ (cell-layout-pack column cell :expand t)
+ (cell-layout-add-attribute column cell 'text (column-index store :foo))
+ (tree-view-append-column tree column))
+
+ (let ((column (make-instance 'tree-view-column :title "Column 2"))
+ (cell (make-instance 'cell-renderer-text :background "orange")))
+ (cell-layout-pack column cell :expand t)
+ (cell-layout-add-attribute column cell 'text (column-index store :bar))
+ (tree-view-append-column tree column))
+
+ (let ((column (make-instance 'tree-view-column :title "Column 3"))
+ (cell (make-instance 'cell-renderer-text)))
+ (cell-layout-pack column cell :expand t)
+ (cell-layout-add-attribute column cell 'text (column-index store :baz))
+ (tree-view-append-column tree column))