Shiro Kawai
shiro****@lava*****
2006年 12月 23日 (土) 15:12:29 JST
どうもありがとうございます。 Gauche-gtkは私自身に全く手をつける時間が無いのですが、 Michal Maruska氏がかなり精力的に改良を進めていてくれていまして、 リポジトリのtruncにコミットしてもらえるようお願いしているところです。 もしよければ、彼の最新版を見ていただけないでしょうか。 参考: http://sourceforge.net/mailarchive/forum.php?thread_id=31092525&forum_id=2043 --shiro From: Yukihiro Nakadaira <yukih****@gmail*****> Subject: [Gauche-devel-jp] gauche-gtk の gtk2.10 対応 Date: Sat, 23 Dec 2006 14:59:35 +0900 > 初めまして中平です。 > > Gauche-gtk を gtk2.10 向けに少しいじりました。 > Gauche-gtk の開発は止まってるようですが、いちおうその差分を送ります。 > 動作テストはまだまったくしてないので不具合がたくさんあると思います。 > 変更は以下のとおりです。 > > gtk2.10 のヘッダをパースできるように修正。 > g-object-get-property などで GValue を初期化してないのを修正。 > gunichar 型を追加して <char> に対応させる。 > api の追加。 > > * src/h2stub.scm (set-superclass, set-cpl): GInitiallyUnowned への対応。 > スーパークラスとして GObject ではなく GInitiallyUnowned が使われてる。 > typedef struct _GObject GInitiallyUnowned; なので、set-superclass、 > set-cpl 内で GInitiallyUnowned と GObject を同じように扱う。 > > * src/h2stub.scm (parse-struct, parse-enum): GtkObjectFlags の宣言の中 > でマクロが使われているので読み飛ばす。 > > * src/h2stub.scm: > * src/gauche-gtk.h src/gauche-gtk.c > (Scm_GtkGunicharToChar, Scm_GtkCharToGunichar): プリミティブの追加。 > gunichar = gunichar2 = ScmChar。 > > * src/h2stub.scm: > * src/gauche-gtk.h: > * src/gauche-gtk.c: > * src/gauche-glib.stub: 型の追加/変更 > time_t -> <sys-time> > GQuark -> <uint32> > GError* -> <g-error> > <char*> > <gchar*> > <const-char*> > <const-gchar*> > <const-gchar*>-or-null > <gdk-event>-or-null > > * src/gtk-lib.hints: GError を使う関数が <g-error> 例外を投げるように > 変更。 > > * src/gauche-gtk.h src/gauche-gtk.c ( > GCHAR_PTR_BOX_SAFELY, Scm_GtkGcharPtrBoxSafely, > GLIST_STR_BOX, Scm_GtkGListStrBox, > GSLIST_STR_BOX, Scm_GtkGSListStrBox, > GLIST_OBJ_BOX, Scm_GtkGListObjBox, > GSLIST_OBJ_BOX, Scm_GtkGSListObjBox, > ): 追加。 > > * src/h2stub.scm (parse-body): G_CONST_RETURN を const-char* として扱う。 > > * src/h2stub.scm (parse-body): 関数名っぽいもの見つけたらとりあえず登 > 録するようにした。 > > * src/h2stub.scm (define-cproc-fix-valist, define-cproc-fix-valist2): > 可変長引数を取る関数を生成するマクロ。 > > * src/gauche-glib.stub (g-object-get-property): > * src/gdk-lib.hints (gdk-setting-get, gdk-screen-get-setting, > gtk-widget-style-get-property): GValue を初期化するように修正。 > > * src/gtk-lib.hints (<gtktexttag>, <gtktoolbar>): コンパイルエラーにな > るフィールドを ignore-field! する。(FreeBSD の ports と同じ変更) > > * src/gtk-lib.hints (gtk-tree-model-get-column-type): 変数名の typo。 > > * src/gtk-lib.hints src/gdk-lib.hints (gdkproperty.h): 移動。 > > * src/GTKFILES: gtkaboutdialog.h gtkcolorbutton.h gtkexpander.h > gtkfilechooser.h gtkfilechooserbutton.h gtkfilechooserdialog.h > gtkfilechooserwidget.h gtkfilefilter.h gtkfontbutton.h > gtkrecentchooser.h gtkrecentchooserdialog.h gtkrecentchoosermenu.h > gtkrecentchooserwidget.h gtkrecentfilter.h gtkrecentmanager.h > gtkcelllayout.h gtkcellview.h gtkiconview.h gtktreemodelfilter.h > gtkcellrendereraccel.h gtkcellrenderercombo.h gtkcellrendererprogress.h > gtkcellrendererspin.h gtkpagesetup.h gtkpapersize.h gtkprintcontext.h > gtkprintoperation.h gtkprintoperationpreview.h gtkprintsettings.h > gtkassistant.h gtkstatusicon.h gtklinkbutton.h gtkentrycompletion.h > gtkcombobox.h gtkcomboboxentry.h gtktoolitem.h gtkseparatortoolitem.h > gtktoolbutton.h gtkmenutoolbutton.h gtktoggletoolbutton.h > gtkradiotoolbutton.h gtkuimanager.h gtkactiongroup.h gtkaction.h > gtktoggleaction.h gtkradioaction.h gtkicontheme.h > 追加。 > > 保留 (gtkprinter.h gtkprintjob.h gtkprintunixdialog.h > gtkpagesetupunixdialog.h) > > * src/PANGOFILES: pango-tabs.h 追加。 > > * src/gtk-lib.hints (gtkstock): 2.10 の新しい定義を追加。 > * src/gtk-lib.hints ( > gtk-about-dialog-get-authors, > gtk-about-dialog-get-documenters, > gtk-about-dialog-get-artists, > gtk-about-dialog-set-authors, > gtk-about-dialog-set-documenters, > gtk-about-dialog-set-artists, > gtk-about-dialog-set-email-hook, > gtk-about-dialog-set-url-hook, > gtk-action-group-get-action, > gtk-action-group-add-action-with-accel, > gtk-action-group-set-translate-func, > gtk-alignment-get-padding, > gtk-assistant-set-forward-page-func, > gtk-button-get-alignment, > gtk-button-get-image, > gtk-calendar-get-display-options, > gtk-cell-editable-start-editing, > gtk-cell-layout-set-cell-data-func, > gtk-cell-renderer-get-size, > gtk-cell-renderer-start-editing, > gtk-cell-renderer-get-fixed-size, > gtk-cell-view-set-model, > gtk-cell-view-set-displayed-row, > gtk-cell-view-get-displayed-row, > gtk-cell-view-get-size-of-row, > gtk-cell-view-get-cell-renderers, > gtk-clipboard-set-with-data, > gtk-clipboard-set-text, > gtk-clipboard-request-text, > gtk-clipboard-request-image, > gtk-clipboard-request-targets, > gtk-clipboard-request-rich-text, > gtk-clipboard-wait-for-image, > gtk-clipboard-wait-for-rich-text, > gtk-clipboard-wait-for-targets, > gtk-clipboard-set-can-store, > gtk-color-button-get-color, > gtk-color-selection-get-current-color, > gtk-color-selection-get-previous-color, > gtk-color-selection-palette-from-string, > gtk-color-selection-palette-to-string, > gtk-combo-box-get-active-iter, > gtk-combo-box-set-row-separator-func, > gtk-container-foreach, > gtk-container-set-focus-chain, > gtk-container-child-type, > gtk-alternative-dialog-button-order, > gtk-dialog-set-alternative-button-order, > gtk-entry-get-inner-border, > gtk-entry-set-inner-border, > gtk-entry-get-layout-offsets, > gtk-entry-completion-set-model, > gtk-entry-completion-get-model, > gtk_entry_completion_set_match_func, > gtk-file-chooser-get-filenames, > gtk-file-chooser-get-uris, > gtk-file-chooser-dialog-new, > gtk-file-chooser-dialog-new-with-backend, > gtk-file-chooser-list-filters, > gtk-file-chooser-list-shortcut-folders, > gtk-file-filter-add-custom, > gtk-frame-get-label-align, > gtk-icon-factory-lookup-default, > gtk-icon-set-render-icon, > gtk-icon-size-lookup, > gtk-icon-size-lookup-for-settings, > gtk-icon-set-get-sizes, > gtk-icon-theme-set-search-path, > gtk-icon-theme-get-search-path, > gtk-icon-theme-set-custom-theme, > gtk-icon-theme-lookup-icon, > gtk-icon-theme-load-icon, > gtk-icon-theme-get-icon-sizes, > gtk-icon-info-load-icon, > gtk-icon-info-get-embedded-rect, > gtk-icon-info-get-attach-points, > gtk-icon-view-set-model, > gtk-icon-view-get-model, > gtk-icon-view-get-path-at-pos, > gtk-icon-view-get-item-at-pos, > gtk-icon-view-set-cursor, > gtk-icon-view-get-cursor, > gtk-icon-view-selected-foreach, > gtk-icon-view-get-selected-items, > gtk-icon-view-get-visible-range, > gtk-icon-view-set-drag-dest-item, > gtk-icon-view-get-drag-dest-item, > gtk-icon-view-get-dest-item-at-pos, > gtk-image-get-icon-set, > gtk-image-get-icon-name, > gtk-image-get-pixbuf, > gtk-image-get-pixmap, > gtk-image-get-animation, > gtk-image-new-from-pixbuf, > gtk-image-new-from-pixmap, > gtk-image-set-from-file, > gtk-image-set-from-image, > gtk-image-set-from-pixbuf, > gtk-image-set-from-pixmap, > gtk-image-get, > gtk-image-menu-item-new-from-stock, > gtk-im-context-get-preedit-string, > gtk-im-context-set-surrounding, > gtk-im-context-get-surrounding, > gtk-label-get-attributes, > gtk-label-get-mnemonic-widget, > gtk-link-button-set-uri-hook, > gtk-list-store-insert-with-values, > gtk-list-store-reorder, > gtk-list-store-move-before, > gtk-list-store-move-after, > gtk-menu-attach-to-widget, > gtk-menu-get-for-attach-widget, > gtk-menu-item-toggle-size-request, > gtk-menu-tool-button-new, > gtk-menu-tool-button-set-menu, > gtk-message-dialog-format-secondary-text, > gtk-message-dialog-format-secondary-markup, > gtk-paper-size-new, > gtk-paper-size-new-from-ppd, > gtk-paper-size-new-custom, > gtk-print-operation-get-error, > gtk-print-operation-set-default-page-setup, > gtk-print-operation-set-print-settings, > gtk-print-operation-run, > gtk-print-run-page-setup-dialog, > gtk-print-run-page-setup-dialog-async, > gtk-print-settings-set, > gtk-print-settings-foreach, > gtk-print-settings-get-page-ranges, > gtk-progress-bar-set-text, > gtk-recent-chooser-set-sort-func, > gtk-recent-chooser-set-current-uri, > gtk-recent-chooser-select-uri, > gtk-recent-chooser-get-items, > gtk-recent-chooser-get-uris, > gtk-recent-chooser-list-filters, > gtk-recent-chooser-dialog-new, > gtk-recent-chooser-dialog-new-for-manager, > gtk-recent-filter-add-custom, > gtk-recent-manager-remove-item, > gtk-recent-manager-lookup-item, > gtk-recent-manager-move-item, > gtk-recent-manager-get-items, > gtk-recent-manager-purge-items, > gtk-recent-info-get-application-info, > gtk-recent-info-get-applications, > gtk-recent-info-get-groups, > gtk-radio-action-get-group, > gtk-radio-action-set-group, > gtk-radio-tool-button-new, > gtk-radio-tool-button-new-from-stock, > gtk-radio-tool-button-get-group, > gtk-radio-tool-button-set-group, > gtk-ruler-get-range, > gtk-scale-get-layout-offsets, > gtk-scrolled-window-get-policy, > gtk-size-group-get-widgets, > gtk-status-icon-set-from-pixbuf, > gtk-status-icon-get-pixbuf, > gtk-status-icon-get-stock, > gtk-status-icon-get-geometry, > gtk-status-icon-position-menu, > gtk-stock-list-ids, > gtk-stock-lookup, > gtk-stock-set-translate-func, > gtk-text-iter-get-marks, > gtk-text-iter-get-toggled-tags, > gtk-text-iter-get-tags, > gtk-text-iter-forward-find-char, > gtk-text-iter-backward-find-char, > gtk-text-view-get-iter-at-position, > gtk-text-view-set-tabs, > gtk-text-view-get-tabs, > gtk-text-tag-table-foreach, > gtk-toolbar-get-nth-item, > gtk-toolbar-set-drop-highlight-item, > gtk-tooltips-get-info-from-tip-window, > gtk-tree-row-reference-reordered > gtk-tree-get-row-drag-data, > gtk-tree-model-foreach, > gtk-tree-model-rows-reordered, > gtk-tree-model-filter-new, > gtk-tree-model-filter-set-visible-func, > gtk-tree-model-filter-set-modify-func, > gtk-tree-model-sort-convert-child-iter-to-iter, > gtk-tree-model-sort-convert-iter-to-child-iter, > gtk-tree-selection-set-select-func, > gtk-tree-selection-get-selected-rows, > gtk-tree-sortable-get-sort-column-id, > gtk-tree-sortable-set-sort-func, > gtk-tree-sortable-set-default-sort-func, > gtk-tree-store-set-column-types, > gtk-tree-store-insert-with-values, > gtk-tree-store-reorder, > gtk-tree-view-insert-column-with-data-func, > gtk-tree-view-set-column-drag-function, > gtk-tree-view-map-expanded-rows, > gtk-tree-view-get-cell-area, > gtk-tree-view-get-background-area, > gtk-tree-view-get-visible-rect, > gtk-tree-view-get-visible-range, > gtk-tree-view-get-bin-window, > gtk-tree-view-set-drag-dest-row, > gtk-tree-view-get-drag-dest-row, > gtk-tree-view-scroll-to-cell, > gtk-tree-view-set-cursor-on-cell, > gtk-tree-view-get-dest-row-at-pos, > gtk-tree-view-set-search-equal-func, > gtk-tree-view-set-search-position-func, > gtk-tree-view-set-destroy-count-func, > gtk-tree-view-set-row-separator-func, > gtk-tree-view-column-set-cell-data-func, > gtk-tree-view-column-cell-get-size, > gtk-ui-manager-get-action-group, > gtk-ui-manager-get-widget, > gtk-ui-manager-get-toplevels, > gtk-ui-manager-get-action, > gtk-ui-manager-add-ui-from-string, > gtk-ui-manager-add-ui-from-file, > gtk-window-get-focus, > gtk-window-set-focus, > gtk-window-set-default, > gtk-window-get-role, > ): > * src/pango-lib.hints ( > <pango-tab-array>): > * lib/gtk/gtkaux.scm ( > g-object-get, > g-object-set, > gtk-cell-layout-set-attributes, > gtk-show-about-dialog, > gtk-text-buffer-create-tag, > gtk-text-buffer-insert-with-tag, > gtk-tree-path-new-from-indices, > gtk-tree-model-get, > gtk-tree-store-set, > gtk-tree-view-insert-with-attributes, > gtk-tree-view-column-set-attributes, > gtk-text-buffer-insert-with-tags-by-name, > gtk-widget-style-get): 追加。 > > * src/gtk-lib.hints ( > gtk-text-buffer-insert, > gtk-text-buffer-insert-at-cursor, > gtk-text-buffer-insert-interactive, > gtk-text-buffer-insert-interactive-at-cursor, > gtk-text-buffer-set-text): 引数の len を省略。 > > * src/gtk-lib.hints ( > gtk-entry-get-text, > gtk-file-selection-get-filename, > gtk-file-selection-get-selections, > gtk-label-get-text, > gtk-label-get-label, > gtk-progress-bar-get-text): 削除/変更。 > > * src/gauche-gtk.c (Scm_StringArrayToStringList): 追加。 > * src/gauche-gtk.c (Scm_UnboxGValue, Scm_BoxGValue, Scm_ObjToGValue): > GStrv の変換を追加。 > > * src/gtk-lib.hints (gtk-widget-path, gtk-widget-class-path): > GCHAR_PTR_BOX を使うように変更。 > > * src/gtk-lib.hints (gtk-dialog-add-buttons): > * lib/gtk/gtkaux.scm (gtk-dialog-add-buttons): gtkaux.scm に移動。 > > * src/gtk-lib.hints (gtk_set_locale): 戻り値を free しない。 > > > -- > Yukihiro Nakadaira - yukih****@gmail***** > _______________________________________________ > Gauche-devel-jp mailing list > Gauch****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/gauche-devel-jp >