;;;;
;;;;
;;;; gtklos.stk         -- GTklos extension
;;;;
;;;; Copyright © 2021-2022 Erick Gallesio - I3S-CNRS/Polytech Nice-Sophia <eg@unice.fr>
;;;;
;;;;
;;;; 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 2 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, write to the Free Software
;;;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
;;;; USA.
;;;;
;;;;           Author: Erick Gallesio [eg@unice.fr]
;;;;    Creation date: 10-Jun-2021 11:58
;;;;


(select-module stklos/gtklos)

(%compile-time-define %gtk-get-property %gtk-set-property!
                      %readline-idle-hook get-gtk-event
                      %gtk-get-child-property
                      %string->color %color->string
                      %file-chooser-files
                      rl-input-timeout rl-event-hook
                      event-x event-y)

(export timeout when-idle kill-idle)

;;;; ---- Library
(include "lib/libs.stk")
(include "lib/events.stk")
(include "lib/utils.stk")


;;;; ----  Base classes
(include "classes/meta.stk")
(include "classes/widget.stk")
(include "classes/container.stk")


;;;; ---- Widgets
;; containers
(include "widgets/box.stk")
(include "widgets/window.stk")
(include "widgets/frame.stk")
(include "widgets/grid.stk")
(include "widgets/header.stk")
(include "widgets/toolbar.stk")

;; display
(include "widgets/image.stk")
(include "widgets/label.stk")
(include "widgets/progress.stk")
(include "widgets/scale.stk")
(include "widgets/scroll.stk")
(include "widgets/separator.stk")

;; buttons
(include "widgets/button.stk")
(include "widgets/checkbutton.stk")
(include "widgets/radiobutton.stk")
(include "widgets/combobox.stk")
(include "widgets/menu.stk")

;;entries & text
(include "widgets/entry.stk")
(include "widgets/text.stk")


;;;; ---- Dialogs and specialized choosers
(include "widgets/dialog.stk")
(include "widgets/color-dialog.stk")
(include "widgets/file-dialog.stk")
(include "widgets/font-dialog.stk")

;;;; ---- Canvases
(when-load-and-compile
   (define %goo-canvas-lib "lib@GOOVERS@"))

(include "canvas/goo-@GOOCANV@.stk")


(provide "stklos/gtklos")
