[mcclim-cvs] CVS mcclim/Backends/gtkairo

dlichteblau dlichteblau at common-lisp.net
Sat Mar 3 12:09:55 UTC 2007


Update of /project/mcclim/cvsroot/mcclim/Backends/gtkairo
In directory clnet:/tmp/cvs-serv6536

Modified Files:
	ffi.lisp gadgets.lisp gtk-ffi.lisp 
Log Message:

Use UTF-8 for all foreign strings.
	
	* Backends/gtkairo/gtk-ffi.lisp (utf8-string): New foreign type.
	
	* Backends/gtkairo/ffi.lisp: s/:string/utf8-string/

	* Backends/gtkairo/gadgets.lisp (reset-list-pane-items,
	(realize-native-widget gtk-option-pane)): Specify :encoding.


--- /project/mcclim/cvsroot/mcclim/Backends/gtkairo/ffi.lisp	2007/02/07 12:44:19	1.17
+++ /project/mcclim/cvsroot/mcclim/Backends/gtkairo/ffi.lisp	2007/03/03 12:09:51	1.18
@@ -372,7 +372,7 @@
 
 (defcfun "cairo_image_surface_create_for_data"
     :pointer
-  (arg0 :string)                        ;unsigned char *
+  (arg0 utf8-string)                    ;unsigned char *
   (arg1 cairo_format_t)
   (arg2 :int)                           ;int
   (arg3 :int)                           ;int
@@ -559,7 +559,7 @@
 (defcfun "cairo_select_font_face"
     :void
   (arg0 :pointer)                       ;cairo_t *
-  (arg1 :string)                        ;const char *
+  (arg1 utf8-string)                    ;const char *
   (arg2 cairo_font_slant_t)
   (arg3 cairo_font_weight_t))
 
@@ -664,7 +664,7 @@
 (defcfun "cairo_show_text"
     :void
   (arg0 :pointer)                       ;cairo_t *
-  (arg1 :string)                        ;const char *
+  (arg1 utf8-string)                    ;const char *
   )
 
 (defcfun "cairo_status"
@@ -722,14 +722,14 @@
 (defcfun "cairo_text_extents"
     :void
   (arg0 :pointer)                       ;cairo_t *
-  (arg1 :string)                        ;const char *
+  (arg1 utf8-string)                    ;const char *
   (arg2 :pointer)                       ;cairo_text_extents_t *
   )
 
 (defcfun "cairo_text_path"
     :void
   (arg0 :pointer)                       ;cairo_t *
-  (arg1 :string)                        ;const char *
+  (arg1 utf8-string)                    ;const char *
   )
 
 (defcfun "cairo_translate"
@@ -758,7 +758,7 @@
 (defcfun "g_signal_connect_data"
     :unsigned-long
   (instance :pointer)                   ;gpointer
-  (detailed_signal :string)             ;const gchar *
+  (detailed_signal utf8-string)         ;const gchar *
   (c_handler :pointer)                  ;GCallback
   (data :pointer)                       ;gpointer
   (destroy_data :pointer)               ;GClosureNotify
@@ -778,7 +778,7 @@
 (defcfun "g_value_set_string"
     :void
   (value :pointer)                      ;GValue *
-  (v_string :string)                    ;const gchar *
+  (v_string utf8-string)                ;const gchar *
   )
 
 (defcfun "gdk_cairo_create"
@@ -1122,20 +1122,20 @@
 
 (defcfun "gtk_button_new_with_label"
     :pointer
-  (label :string)                       ;const gchar *
+  (label utf8-string)                   ;const gchar *
   )
 
 (defcfun "gtk_cell_renderer_text_new" :pointer)
 
 (defcfun "gtk_check_button_new_with_label"
     :pointer
-  (label :string)                       ;const gchar *
+  (label utf8-string)                   ;const gchar *
   )
 
 (defcfun "gtk_combo_box_append_text"
     :void
   (combo_box :pointer)                  ;GtkComboBox *
-  (text :string)                        ;const gchar *
+  (text utf8-string)                    ;const gchar *
   )
 
 (defcfun "gtk_combo_box_get_active"
@@ -1199,7 +1199,7 @@
 
 (defcfun "gtk_frame_new"
     :pointer
-  (label :string)                       ;const gchar *
+  (label utf8-string)                   ;const gchar *
   )
 
 (defcfun "gtk_get_current_event_time" :uint32)
@@ -1224,13 +1224,13 @@
 
 (defcfun "gtk_label_new"
     :pointer
-  (str :string)                         ;const gchar *
+  (str utf8-string)                     ;const gchar *
   )
 
 (defcfun "gtk_label_set_text"
     :void
   (label :pointer)                      ;GtkLabel *
-  (str :string)                         ;const gchar *
+  (str utf8-string)                     ;const gchar *
   )
 
 (defcfun "gtk_list_store_append"
@@ -1267,7 +1267,7 @@
 
 (defcfun "gtk_menu_item_new_with_label"
     :pointer
-  (label :string)                       ;const gchar *
+  (label utf8-string)                   ;const gchar *
   )
 
 (defcfun "gtk_menu_item_set_submenu"
@@ -1350,7 +1350,7 @@
 (defcfun "gtk_radio_button_new_with_label"
     :pointer
   (group :pointer)                      ;GSList *
-  (label :string)                       ;const gchar *
+  (label utf8-string)                   ;const gchar *
   )
 
 (defcfun "gtk_range_get_adjustment"
@@ -1446,7 +1446,7 @@
     :void
   (tree_column :pointer)                ;GtkTreeViewColumn *
   (cell_renderer :pointer)              ;GtkCellRenderer *
-  (attribute :string)                   ;const gchar *
+  (attribute utf8-string)               ;const gchar *
   (column :int)                         ;gint
   )
 
@@ -1462,7 +1462,7 @@
 (defcfun "gtk_tree_view_column_set_title"
     :void
   (tree_column :pointer)                ;GtkTreeViewColumn *
-  (title :string)                       ;const gchar *
+  (title utf8-string)                   ;const gchar *
   )
 
 (defcfun "gtk_tree_view_get_hadjustment"
@@ -1664,7 +1664,7 @@
 (defcfun "gtk_window_set_title"
     :void
   (window :pointer)                     ;GtkWindow *
-  (title :string)                       ;const gchar *
+  (title utf8-string)                   ;const gchar *
   )
 
 (defcfun "pango_cairo_create_layout"
@@ -1715,11 +1715,11 @@
 
 (defcfun "pango_font_description_from_string"
     :pointer
-  (str :string)                         ;const char *
+  (str utf8-string)                     ;const char *
   )
 
 (defcfun "pango_font_description_get_family"
-    :string
+    utf8-string
   (desc :pointer)                       ;const PangoFontDescription *
   )
 
@@ -1734,7 +1734,7 @@
 (defcfun "pango_font_description_set_family"
     :void
   (desc :pointer)                       ;PangoFontDescription *
-  (family :string)                      ;const char *
+  (family utf8-string)                  ;const char *
   )
 
 (defcfun "pango_font_description_set_size"
@@ -1754,12 +1754,12 @@
   (weight PangoWeight))
 
 (defcfun "pango_font_description_to_string"
-    :string
+    utf8-string
   (desc :pointer)                       ;const PangoFontDescription *
   )
 
 (defcfun "pango_font_face_get_face_name"
-    :string
+    utf8-string
   (face :pointer)                       ;PangoFontFace *
   )
 
@@ -1771,7 +1771,7 @@
   )
 
 (defcfun "pango_font_family_get_name"
-    :string
+    utf8-string
   (family :pointer)                     ;PangoFontFamily *
   )
 
@@ -1884,6 +1884,6 @@
 (defcfun "pango_layout_set_text"
     :void
   (layout :pointer)                     ;PangoLayout *
-  (text :string)                        ;const char *
+  (text utf8-string)                    ;const char *
   (length :int)                         ;int
   )
--- /project/mcclim/cvsroot/mcclim/Backends/gtkairo/gadgets.lisp	2007/02/04 12:55:44	1.21
+++ /project/mcclim/cvsroot/mcclim/Backends/gtkairo/gadgets.lisp	2007/03/03 12:09:51	1.22
@@ -207,7 +207,7 @@
     (cffi:with-foreign-object (&iter 'gtktreeiter)
       (dolist (i (climi::list-pane-items sheet))
 	(gtk_list_store_append model &iter)
-	(cffi:with-foreign-string (n (funcall name-key i))
+	(cffi:with-foreign-string (n (funcall name-key i) :encoding :utf-8)
 	  (cffi:with-foreign-object (&value 'gvalue)
 	    (setf (cffi:foreign-slot-value &value 'gvalue 'type) 0)
 	    (g_value_init &value +g-type-string+)
@@ -218,7 +218,7 @@
   (let* ((widget (gtk_combo_box_new_text))
 	 (name-key (climi::list-pane-name-key sheet)))
     (dolist (i (climi::list-pane-items sheet))
-      (cffi:with-foreign-string (n (funcall name-key i))
+      (cffi:with-foreign-string (n (funcall name-key i) :encoding :utf-8)
 	(gtk_combo_box_append_text widget n)))
     (option-pane-set-active sheet widget)
     widget))
--- /project/mcclim/cvsroot/mcclim/Backends/gtkairo/gtk-ffi.lisp	2006/12/26 12:11:04	1.25
+++ /project/mcclim/cvsroot/mcclim/Backends/gtkairo/gtk-ffi.lisp	2007/03/03 12:09:51	1.26
@@ -19,6 +19,8 @@
 
 (in-package :clim-gtkairo)
 
+(cffi:defctype utf8-string (:string :encoding :utf-8))
+
 #-(or win32 mswindows windows darwin)
 (eval-when (:compile-toplevel :load-toplevel :execute)
   (cffi:load-foreign-library "libcairo.so")
@@ -238,7 +240,7 @@
   (state :uint)
   (keyval :uint)
   (length :int)
-  (string :string))
+  (string utf8-string))
 
 (cffi:defcstruct gdkeventcrossing
   (type :int)




More information about the Mcclim-cvs mailing list