;;;; ;;;; packages.lisp ;;;; ;;;; Copyright (C) 2006, Jack D. Unrue ;;;; All rights reserved. ;;;; ;;;; Redistribution and use in source and binary forms, with or without ;;;; modification, are permitted provided that the following conditions ;;;; are met: ;;;; ;;;; 1. Redistributions of source code must retain the above copyright ;;;; notice, this list of conditions and the following disclaimer. ;;;; ;;;; 2. Redistributions in binary form must reproduce the above copyright ;;;; notice, this list of conditions and the following disclaimer in the ;;;; documentation and/or other materials provided with the distribution. ;;;; ;;;; 3. Neither the names of the authors nor the names of its contributors ;;;; may be used to endorse or promote products derived from this software ;;;; without specific prior written permission. ;;;; ;;;; THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS "AS IS" AND ANY ;;;; EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED ;;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DIS- ;;;; CLAIMED. IN NO EVENT SHALL THE AUTHORS AND CONTRIBUTORS BE LIABLE FOR ANY ;;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES ;;;; (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; ;;;; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ;;;; ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ;;;; (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS ;;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ;;;; (in-package #:graphic-forms-system) ;;; ;;; destination for unique symbols generated by GENTEMP ;;; (defpackage #:graphic-forms.generated (:nicknames #:gfgen) (:use #:common-lisp)) ;;; ;;; package for system-level functionality ;;; (defpackage #:graphic-forms.uitoolkit.system (:nicknames #:gfs) (:shadow #:atom #:boolean) (:use #:common-lisp) (:export ;; classes and structs #:native-object #:point #:rectangle #:size #:span ;; constants ;; methods, functions, macros #:detail #:dispose #:disposed-p #:handle #:location #:make-point #:make-size #:make-span #:null-handle-p #:point-x #:point-y #:point-z #:size #:size-depth #:size-height #:size-width #:span-start #:span-end ;; conditions #:disposed-error #:toolkit-error #:toolkit-warning #:win32-error #:win32-warning)) ;;; ;;; package for graphics functionality ;;; (defpackage #:graphic-forms.uitoolkit.graphics (:nicknames #:gfg) (:shadow #:load #:type) (:use #:common-lisp) (:export ;; classes and structs #:font #:font-metrics #:graphics-context #:image #:image-data #:palette #:pattern #:transform ;; constants #:*color-black* #:*color-blue* #:*color-green* #:*color-red* #:*color-white* ;; methods, functions, macros #:alpha #:anti-alias #:ascent #:average-char-width #:background-color #:background-pattern #:blue-mask #:blue-shift #:clipped-p #:clipping-rectangle #:color-as-rgb #:color-blue #:color-green #:color-red #:color-table #:copy-area #:data-obj #:depth #:descent #:draw-arc #:draw-filled-arc #:draw-filled-oval #:draw-filled-polygon #:draw-filled-rectangle #:draw-filled-rounded-rectangle #:draw-focus #:draw-image #:draw-line #:draw-oval #:draw-point #:draw-polygon #:draw-polyline #:draw-rectangle #:draw-rounded-rectangle #:draw-text #:fill-rule #:font #:foreground-color #:foreground-pattern #:green-mask #:green-shift #:height #:invert #:leading #:line-cap-style #:line-dash-style #:line-join-style #:line-style #:line-width #:load #:make-color #:matrix #:maximum-char-width #:metrics #:multiply #:red-mask #:red-shift #:rotate #:scale #:size #:text-anti-alias #:text-extent #:transform #:transform-coordinates #:translate #:transparency #:transparency-pixel-of #:transparency-mask #:with-transparency #:xor-mode-p ;; conditions )) ;;; ;;; package for UI objects ;;; (defpackage #:graphic-forms.uitoolkit.widgets (:nicknames #:gfw) (:use #:common-lisp) (:export ;; classes and structs #:button #:caret #:control #:event-dispatcher #:event-source #:flow-layout #:item #:layout-manager #:menu #:menu-item #:panel #:timer #:top-level #:widget #:widget-with-items #:window ;; constants #:left-button ;; FIXME: should be a keyword #:maximized ;; FIXME: should be a keyword #:middle-button ;; FIXME: should be a keyword #:minimized ;; FIXME: should be a keyword #:restored ;; FIXME: should be a keyword #:right-button ;; FIXME: should be a keyword #:+vk-break+ #:+vk-backspace+ #:+vk-tab+ #:+vk-clear+ #:+vk-return+ #:+vk-shift+ #:+vk-control+ #:+vk-alt+ #:+vk-pause+ #:+vk-caps-lock+ #:+vk-escape+ #:+vk-page-up+ #:+vk-page-down+ #:+vk-end+ #:+vk-home+ #:+vk-left+ #:+vk-up+ #:+vk-right+ #:+vk-down+ #:+vk-insert+ #:+vk-delete+ #:+vk-help+ #:+vk-left-win+ #:+vk-right-win+ #:+vk-applications+ #:+vk-numpad-0+ #:+vk-numpad-1+ #:+vk-numpad-2+ #:+vk-numpad-3+ #:+vk-numpad-4+ #:+vk-numpad-5+ #:+vk-numpad-6+ #:+vk-numpad-7+ #:+vk-numpad-8+ #:+vk-numpad-9+ #:+vk-numpad-*+ #:+vk-numpad-++ #:+vk-numpad--+ #:+vk-numpad-.+ #:+vk-numpad-/+ #:+vk-numpad-f1+ #:+vk-numpad-f2+ #:+vk-numpad-f3+ #:+vk-numpad-f4+ #:+vk-numpad-f5+ #:+vk-numpad-f6+ #:+vk-numpad-f7+ #:+vk-numpad-f8+ #:+vk-numpad-f9+ #:+vk-numpad-f10+ #:+vk-numpad-f11+ #:+vk-numpad-f12+ #:+vk-num-lock+ #:+vk-scroll-lock+ #:+vk-left-shift+ #:+vk-right-shift+ #:+vk-left-control+ #:+vk-right-control+ #:+vk-left-alt+ #:+vk-right-alt+ ;; methods, functions, macros #:accelerator #:activate #:alignment #:ancestor-p #:append-item #:append-submenu #:background-color #:background-pattern #:border-width #:bottom-margin-of #:caret #:check #:check-all #:checked-p #:clear-all #:clear-item #:clear-selection #:clear-span #:client-size #:close-obj #:code #:column-at #:column-count #:column-index #:column-order #:columns #:compute-outer-size #:copy #:copy-area #:current-font #:cursor #:cut #:default-item #:defmenu #:delay-of #:disabled-image #:dispatcher #:display-to-object #:echo-char #:enable #:enable-layout #:enable-redraw #:enabled-p #:event-activate #:event-arm #:event-close #:event-collapse #:event-deactivate #:event-deiconify #:event-dispose #:event-expand #:event-focus-gain #:event-focus-loss #:event-hide #:event-iconify #:event-key-down #:event-key-traverse #:event-key-up #:event-modify #:event-mouse-double #:event-mouse-down #:event-mouse-enter #:event-mouse-exit #:event-mouse-hover #:event-mouse-move #:event-mouse-up #:event-move #:event-paint #:event-pre-modify #:event-pre-move #:event-pre-resize #:event-resize #:event-select #:event-show #:event-timer #:expand #:expanded-p #:focus-index #:focus-p #:foreground-color #:give-focus #:grid-line-width #:header-height #:header-visible-p #:iconify #:iconified-p #:id-of #:initial-delay-of #:horizontal-scrollbar #:image #:item-at #:item-count #:item-height #:item-id #:item-index #:item-owner #:items #:key-down-p #:key-toggled-p #:label #:layout #:layout-of #:layout-p #:left-margin-of #:lines-visible-p #:location #:lock #:locked-p #:maximize #:maximized-p #:maximum-size #:menu #:menu-bar #:minimum-size #:mouse-over-image #:move-above #:move-below #:moveable-p #:object-to-display #:pack #:page-increment #:parent #:paste #:peer #:preferred-size #:redraw #:redrawing-p #:remove-all #:remove-item #:remove-span #:reparentable-p #:replace-selection #:resizable-p #:retrieve-span #:right-margin-of #:run-default-message-loop #:running-p #:scroll #:select #:select-all #:selected-p #:selection-count #:selection-index #:selection-indices #:selection-span #:show #:show-column #:show-header #:show-item #:show-lines #:show-selection #:shutdown #:size #:spacing-of #:start #:startup #:step-increment #:stop #:style-of #:sub-menu #:text #:text-height #:text-limit #:thumb-size #:tooltip-text #:top-index #:top-margin-of #:traverse #:traverse-order #:trim-sizes #:update #:vertical-scrollbar #:visible-item-count #:visible-p #:with-children ;; conditions ))