Update of /project/mcclim/cvsroot/mcclim In directory clnet:/tmp/cvs-serv3180
Modified Files: mcclim.asd Log Message:
Added a GDK medium, for more CLX-like output.
Set CLIM-GTKAIRO::*MEDIUM-TYPE* to :GDK or :CAIRO to choose.
* mcclim.asd: Added gdk.lisp. * Backends/gtkairo/gdk.lisp: New file. * Backends/gtkairo/ffi.lisp: Regenerated. * Backends/gtkairo/gtk-ffi.lisp (gdkpoint): New struct definition. * Backends/gtkairo/medium.lisp (CAIRO-MEDIUM): Renamed from gtkairo-medium. (GTKAIRO-MEDIUM): New superclass. (INVOKE-WITH-CAIRO-MEDIUM): Renamed to INVOKE-WITH-MEDIUM, now generic. (METRIK-MEDIUM-FOR): New function. (*MEDIUM-TYPE*): New variable. (MAKE-MEDIUM): Dispatch on *medium-type*. (SYNC-TEXT-STYLE, ASSERT-FONT-STATUS, CAIRO-TEXT-EXTENTS): Removed. (SYNC-SHEET, all MEDIUM-foo-bar functions): s/with-medium/with-medium/ and s/gtkairo-medium/cairo-medium/. (INVOKE-WITH-PANGO-LAYOUT): New. (MEDIUM-DRAW-TEXT*): s/with-pango-cairo/with-pango-layout/. (TEXT-SIZE, TEXT-BOUNDING-RECTANGLE): Use METRIK-MEDIUM-FOR. (TEXT-STYLE-foo): Use METRIK-MEDIUM-FOR. Perform caching in the primary method. Put the class name into the hash key. (DESTROY-SURFACE-MEDIUM): Renamed from destroy-cairo-medium. (DESTROY-MEDIUM): New generic function and method. (...) Etc. pp.
* pango.lisp (METRIK-MEDIUM-MIXIN): Renamed from metrik-medium. (CAIRO-METRIK-MEDIUM, GDK-METRIK-MEDIUM): New classes. (WITH-MEDIUM): Renamed from WITH-CAIRO-MEDIUM. (WITH-PANGO-LAYOUT): Renamed from with-pango-cairo. (CONFIGURE-PANGO-LAYOUT, INVOKE-WITH-PANGO-LAYOUT, INVOKE-WITH-PANGO-CAIRO): Replaced the latter. (TEXT-SIZE, TEXT-BOUNDING-RECTANGLE*): Split up into into methods for cairo and gdk. (TEXT-STYLE-foo): s/metrik-medium/metrik-medium-mixin/. * pixmap.lisp (%medium-copy-area): Factor cairo calls out into combining methods.
* port.lisp (GDK-METRIK-MEDIUM): New slot in the port. (CAIRO-METRIK-MEDIUM): Renamed from metrik-medium. (INITIALIZE-INSTANCE): Install gdk-metrik-medium. (INVOKE-WITH-GDKCOLOR, WITH-GDKCOLOR): New, based on gtk-widget-modify-bg. (DESTROY-MEDIUMS, RESET-MEDIUMS): Call destroy-medium.
--- /project/mcclim/cvsroot/mcclim/mcclim.asd 2006/12/24 14:27:43 1.42 +++ /project/mcclim/cvsroot/mcclim/mcclim.asd 2006/12/25 19:55:05 1.43 @@ -388,6 +388,7 @@ (:file "keys") (:file "pango") (:file "medium") + (:file "gdk") (:file "pixmap") (:file "frame-manager") (:file "gadgets")))))