From 06b16890ba832472f758c4cd8a42968c72b9e632 Mon Sep 17 00:00:00 2001 From: Michael Natterer Date: Tue, 24 Jul 2001 21:27:11 +0000 Subject: [PATCH] Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning) 2001-07-24 Michael Natterer Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning) * configure.in: require glib/gtk+ >= 1.3.7, commented out the gtkxmhtml stuff. From now on, you will need glib, pango, atk and gtk+ HEAD from CVS to hack or use GIMP HEAD. Beware, it crashes randomly :) * app/core/Makefile.am * app/core/gimpmarshal.list: new file plus rules to generate gimpmarshal.[ch] from it. * app/core/* * app/tools/* * app/widgets/* * libgimpwidgets/*: started to use the glib object system. All core/ objects are still gtk objects however. All signals are created using g_signal_new(). There are many gtk+ artefacts left. Finally, we will _not_ use the gtk_signal_foo() wrappers and friends any more. * app/colormaps.c * app/devices.[ch] * app/disp_callbacks.c * app/errorconsole.c * app/file-save.[ch] * app/interface.c * app/module_db.c * app/nav_window.c * app/ops_buttons.c * app/scroll.c * app/user_install.c * app/gui/about-dialog.c * app/gui/brush-editor.c * app/gui/brushes-commands.c * app/gui/color-notebook.c * app/gui/colormap-dialog.c * app/gui/dialogs-commands.c * app/gui/dialogs-constructors.c * app/gui/file-commands.c * app/gui/file-dialog-utils.c * app/gui/file-new-dialog.c * app/gui/file-open-dialog.[ch] * app/gui/file-save-dialog.c * app/gui/gradient-editor.c * app/gui/gradients-commands.c * app/gui/image-commands.c * app/gui/info-dialog.[ch] * app/gui/layer-select.c * app/gui/layers-commands.c * app/gui/menus.c * app/gui/offset-dialog.c * app/gui/palette-editor.c * app/gui/palettes-commands.c * app/gui/patterns-commands.c * app/gui/preferences-dialog.c * app/gui/resize-dialog.[ch] * app/gui/splash.c * app/gui/tips-dialog.c * app/gui/tool-options-dialog.c * app/gui/toolbox.c * app/gui/tools-commands.c * libgimp/gimpbrushmenu.c * libgimp/gimpmenu.c * libgimp/gimppatternmenu.c * libgimp/gimpui.c * libgimpbase/gimpenv.c: tons and tons of changes like "const gchar*", switch from GdkDeviceInfo to GdkDevice (very incomplete and currently disables), lots of s/gtk_signal/g_signal/, removal/replacement of deprecated stuff, s/GtkSignalFunc/GCallback/ and lots of small changes and fixes while I was on it, zillions of warnings left... * modules/Makefile.am: disabled the water color selector temporarily (XInput issues). * plug-ins/Makefile.am * plug-ins/common/.cvsignore * plug-ins/common/Makefile.am * plug-ins/common/plugin-defs.pl: simply excluded all plug-ins which did not build (including Script-Fu). They are trivial to fix. --- ChangeLog | 87 ++ app/actions/dialogs-commands.c | 8 +- app/actions/file-commands.c | 4 +- app/actions/gradients-commands.c | 4 +- app/actions/image-commands.c | 8 +- app/actions/layers-commands.c | 2 - app/actions/palettes-commands.c | 2 +- app/actions/tools-commands.c | 2 +- app/base/color-balance.h | 8 +- app/base/curves.c | 84 +- app/base/curves.h | 8 +- app/base/hue-saturation.h | 8 +- app/base/threshold.h | 8 +- app/colormaps.c | 1 - app/core/.cvsignore | 1 + app/core/Makefile.am | 64 +- app/core/gimp-transform-region.c | 37 +- app/core/gimp.c | 7 +- app/core/gimp.h | 8 +- app/core/gimpbrush-load.c | 31 +- app/core/gimpbrush.c | 31 +- app/core/gimpbrush.h | 11 +- app/core/gimpbrushgenerated-load.c | 2 +- app/core/gimpbrushgenerated-save.c | 2 +- app/core/gimpbrushgenerated.c | 2 +- app/core/gimpbrushgenerated.h | 8 +- app/core/gimpbrushpipe-load.c | 2 +- app/core/gimpbrushpipe.c | 2 +- app/core/gimpbrushpipe.h | 8 +- app/core/gimpbuffer.c | 2 +- app/core/gimpbuffer.h | 8 +- app/core/gimpchannel-combine.c | 4 +- app/core/gimpchannel-combine.h | 8 +- app/core/gimpchannel.c | 4 +- app/core/gimpchannel.h | 8 +- app/core/gimpcontainer.c | 315 +++--- app/core/gimpcontainer.h | 18 +- app/core/gimpcontext.c | 788 +++++++------ app/core/gimpcontext.h | 22 +- app/core/gimpdata.c | 94 +- app/core/gimpdata.h | 11 +- app/core/gimpdatafactory.c | 2 +- app/core/gimpdatafactory.h | 8 +- app/core/gimpdatalist.c | 8 +- app/core/gimpdatalist.h | 8 +- app/core/gimpdrawable-blend.c | 57 +- app/core/gimpdrawable-transform.c | 37 +- app/core/gimpdrawable.c | 49 +- app/core/gimpdrawable.h | 8 +- app/core/gimpgradient.c | 8 +- app/core/gimpgradient.h | 10 +- app/core/gimpimage-guides.c | 313 +++--- app/core/gimpimage-guides.h | 8 +- app/core/gimpimage-merge.c | 313 +++--- app/core/gimpimage-merge.h | 8 +- app/core/gimpimage-projection.c | 313 +++--- app/core/gimpimage-projection.h | 8 +- app/core/gimpimage-resize.c | 313 +++--- app/core/gimpimage-resize.h | 8 +- app/core/gimpimage-scale.c | 313 +++--- app/core/gimpimage-scale.h | 8 +- app/core/gimpimage.c | 313 +++--- app/core/gimpimage.h | 8 +- app/core/gimplayer.c | 120 +- app/core/gimplayer.h | 8 +- app/core/gimplayermask.c | 67 +- app/core/gimplayermask.h | 8 +- app/core/gimplist.c | 8 +- app/core/gimplist.h | 8 +- app/core/gimpmarshal.c | 1120 +++++++++++++++---- app/core/gimpmarshal.h | 256 +++-- app/core/gimpmarshal.list | 53 + app/core/gimpobject.c | 36 +- app/core/gimpobject.h | 10 +- app/core/gimppalette-load.c | 26 +- app/core/gimppalette-save.c | 26 +- app/core/gimppalette.c | 26 +- app/core/gimppalette.h | 10 +- app/core/gimpparasitelist.c | 39 +- app/core/gimpparasitelist.h | 4 +- app/core/gimppattern-load.c | 14 +- app/core/gimppattern.c | 14 +- app/core/gimppattern.h | 10 +- app/core/gimpprojection-construct.c | 313 +++--- app/core/gimpprojection-construct.h | 8 +- app/core/gimptoolinfo.c | 4 +- app/core/gimptoolinfo.h | 8 +- app/core/gimpundo.c | 40 +- app/core/gimpundo.h | 8 +- app/core/gimpundostack.c | 2 +- app/core/gimpundostack.h | 8 +- app/core/gimpviewable.c | 113 +- app/core/gimpviewable.h | 10 +- app/devices.c | 280 ++--- app/devices.h | 6 +- app/dialogs/about-dialog.c | 13 +- app/dialogs/color-dialog.c | 5 +- app/dialogs/dialogs-constructors.c | 148 +-- app/dialogs/file-dialog-utils.c | 6 +- app/dialogs/file-open-dialog.c | 50 +- app/dialogs/file-open-dialog.h | 2 +- app/dialogs/file-save-dialog.c | 7 +- app/dialogs/image-new-dialog.c | 10 - app/dialogs/info-dialog.c | 102 +- app/dialogs/info-dialog.h | 18 +- app/dialogs/module-dialog.c | 20 +- app/dialogs/offset-dialog.c | 2 - app/dialogs/preferences-dialog.c | 5 + app/dialogs/resize-dialog.c | 116 +- app/dialogs/resize-dialog.h | 8 +- app/dialogs/tips-dialog.c | 4 +- app/dialogs/user-install-dialog.c | 21 +- app/disp_callbacks.c | 17 +- app/display/gimpdisplay-callbacks.c | 17 +- app/display/gimpdisplay-scroll.c | 5 + app/display/gimpdisplayshell-callbacks.c | 17 +- app/display/gimpdisplayshell-draw.c | 4 +- app/display/gimpdisplayshell-layer-select.c | 2 - app/display/gimpdisplayshell-scroll.c | 5 + app/display/gimpdisplayshell.c | 4 +- app/display/gimpnavigationeditor.c | 4 +- app/display/gimpnavigationview.c | 4 +- app/errorconsole.c | 26 +- app/file-save.c | 8 +- app/file-save.h | 8 +- app/file/file-save.c | 8 +- app/file/file-save.h | 8 +- app/gui/about-dialog.c | 13 +- app/gui/brush-editor.c | 2 +- app/gui/brushes-commands.c | 2 +- app/gui/color-notebook.c | 5 +- app/gui/colormap-dialog.c | 27 +- app/gui/device-status-dialog.c | 280 ++--- app/gui/dialogs-commands.c | 8 +- app/gui/dialogs-constructors.c | 148 +-- app/gui/file-commands.c | 4 +- app/gui/file-dialog-utils.c | 6 +- app/gui/file-new-dialog.c | 10 - app/gui/file-open-dialog.c | 50 +- app/gui/file-open-dialog.h | 2 +- app/gui/file-save-dialog.c | 7 +- app/gui/gradient-editor.c | 62 +- app/gui/gradients-commands.c | 4 +- app/gui/image-commands.c | 8 +- app/gui/info-dialog.c | 102 +- app/gui/info-dialog.h | 18 +- app/gui/input-dialog.c | 280 ++--- app/gui/layer-select.c | 2 - app/gui/layers-commands.c | 2 - app/gui/menus.c | 4 +- app/gui/module-browser.c | 20 +- app/gui/offset-dialog.c | 2 - app/gui/palette-editor.c | 8 +- app/gui/palettes-commands.c | 2 +- app/gui/patterns-commands.c | 2 +- app/gui/preferences-dialog.c | 5 + app/gui/resize-dialog.c | 116 +- app/gui/resize-dialog.h | 8 +- app/gui/splash.c | 4 +- app/gui/tips-dialog.c | 4 +- app/gui/tool-options-dialog.c | 2 +- app/gui/toolbox.c | 19 +- app/gui/tools-commands.c | 2 +- app/gui/user-install-dialog.c | 21 +- app/interface.c | 4 +- app/menus/menus.c | 4 +- app/module_db.c | 20 +- app/nav_window.c | 4 +- app/ops_buttons.c | 5 + app/paint/gimpairbrush.h | 8 +- app/paint/gimpclone.c | 4 +- app/paint/gimpclone.h | 8 +- app/paint/gimpconvolve.c | 2 +- app/paint/gimpconvolve.h | 8 +- app/paint/gimpdodgeburn.c | 10 +- app/paint/gimpdodgeburn.h | 8 +- app/paint/gimperaser.h | 8 +- app/paint/gimpink.c | 112 +- app/paint/gimpink.h | 8 +- app/paint/gimppaintbrush.h | 8 +- app/paint/gimppaintcore.c | 59 +- app/paint/gimppaintcore.h | 8 +- app/paint/gimppencil.h | 8 +- app/paint/gimpsmudge.h | 8 +- app/paint/gimpsourcecore.c | 4 +- app/paint/gimpsourcecore.h | 8 +- app/scroll.c | 5 + app/tools/gimpairbrushtool.h | 8 +- app/tools/gimpbezierselecttool.c | 26 +- app/tools/gimpbezierselecttool.h | 8 +- app/tools/gimpblendtool.c | 57 +- app/tools/gimpblendtool.h | 8 +- app/tools/gimpbrightnesscontrasttool.h | 8 +- app/tools/gimpbrushtool.c | 59 +- app/tools/gimpbrushtool.h | 8 +- app/tools/gimpbucketfilltool.c | 11 +- app/tools/gimpbucketfilltool.h | 8 +- app/tools/gimpbycolorselecttool.c | 71 +- app/tools/gimpbycolorselecttool.h | 8 +- app/tools/gimpclonetool.c | 4 +- app/tools/gimpclonetool.h | 8 +- app/tools/gimpcolorbalancetool.h | 8 +- app/tools/gimpcolorpickertool.h | 8 +- app/tools/gimpconvolvetool.c | 2 +- app/tools/gimpconvolvetool.h | 8 +- app/tools/gimpcroptool.c | 8 +- app/tools/gimpcroptool.h | 6 +- app/tools/gimpcurvestool.c | 84 +- app/tools/gimpcurvestool.h | 8 +- app/tools/gimpdodgeburntool.c | 10 +- app/tools/gimpdodgeburntool.h | 8 +- app/tools/gimpdrawtool.c | 19 +- app/tools/gimpdrawtool.h | 8 +- app/tools/gimpellipseselecttool.h | 8 +- app/tools/gimperasertool.h | 8 +- app/tools/gimpfliptool.c | 5 +- app/tools/gimpfliptool.h | 8 +- app/tools/gimpfreeselecttool.h | 8 +- app/tools/gimpfuzzyselecttool.h | 8 +- app/tools/gimphistogramtool.c | 19 +- app/tools/gimphistogramtool.h | 8 +- app/tools/gimphuesaturationtool.h | 8 +- app/tools/gimpimagemaptool.h | 8 +- app/tools/gimpinktool.c | 112 +- app/tools/gimpinktool.h | 8 +- app/tools/gimpiscissorstool.h | 8 +- app/tools/gimplevelstool.c | 30 +- app/tools/gimplevelstool.h | 8 +- app/tools/gimpmagnifytool.c | 7 +- app/tools/gimpmagnifytool.h | 8 +- app/tools/gimpmeasuretool.c | 11 +- app/tools/gimpmeasuretool.h | 8 +- app/tools/gimpmovetool.h | 8 +- app/tools/gimppaintbrushtool.h | 8 +- app/tools/gimppaintoptions-gui.c | 31 +- app/tools/gimppainttool.c | 59 +- app/tools/gimppainttool.h | 8 +- app/tools/gimppathtool.h | 8 +- app/tools/gimppenciltool.h | 8 +- app/tools/gimpperspectivetool.h | 8 +- app/tools/gimpposterizetool.h | 8 +- app/tools/gimprectselecttool.c | 26 +- app/tools/gimprectselecttool.h | 8 +- app/tools/gimpregionselecttool.h | 8 +- app/tools/gimprotatetool.c | 3 +- app/tools/gimprotatetool.h | 8 +- app/tools/gimpscaletool.c | 8 +- app/tools/gimpscaletool.h | 6 +- app/tools/gimpselectionoptions.c | 4 - app/tools/gimpselectiontool.h | 8 +- app/tools/gimpsheartool.c | 6 +- app/tools/gimpsheartool.h | 8 +- app/tools/gimpsmudgetool.h | 8 +- app/tools/gimpsourcetool.c | 4 +- app/tools/gimpsourcetool.h | 8 +- app/tools/gimptexttool.c | 2 - app/tools/gimptexttool.h | 8 +- app/tools/gimpthresholdtool.h | 8 +- app/tools/gimptool.c | 167 ++- app/tools/gimptool.h | 9 +- app/tools/gimptransformtool.c | 37 +- app/tools/gimptransformtool.h | 8 +- app/tools/paint_options.c | 31 +- app/tools/selection_options.c | 4 - app/tools/tool_manager.c | 30 +- app/user_install.c | 21 +- app/widgets/gimpbrusheditor.c | 2 +- app/widgets/gimpbrushfactoryview.c | 60 +- app/widgets/gimpbrushfactoryview.h | 8 +- app/widgets/gimpbrushpreview.h | 8 +- app/widgets/gimpbufferpreview.h | 8 +- app/widgets/gimpbufferview.c | 10 +- app/widgets/gimpbufferview.h | 8 +- app/widgets/gimpchannellistitem.h | 8 +- app/widgets/gimpchannellistview.c | 62 +- app/widgets/gimpchannellistview.h | 8 +- app/widgets/gimpchanneltreeview.c | 62 +- app/widgets/gimpchanneltreeview.h | 8 +- app/widgets/gimpcolordialog.c | 5 +- app/widgets/gimpcolormapeditor.c | 27 +- app/widgets/gimpcolorpanel.h | 8 +- app/widgets/gimpcomponentlistitem.c | 60 +- app/widgets/gimpcomponentlistitem.h | 8 +- app/widgets/gimpconstrainedhwrapbox.c | 8 +- app/widgets/gimpconstrainedhwrapbox.h | 8 +- app/widgets/gimpcontainereditor.c | 46 +- app/widgets/gimpcontainereditor.h | 13 +- app/widgets/gimpcontainergridview.c | 8 +- app/widgets/gimpcontainergridview.h | 9 +- app/widgets/gimpcontainerlistview.c | 39 +- app/widgets/gimpcontainerlistview.h | 8 +- app/widgets/gimpcontainermenu.c | 275 ++--- app/widgets/gimpcontainermenu.h | 8 +- app/widgets/gimpcontainermenuimpl.c | 10 +- app/widgets/gimpcontainermenuimpl.h | 8 +- app/widgets/gimpcontainerview.c | 301 +++-- app/widgets/gimpcontainerview.h | 8 +- app/widgets/gimpdatafactoryview.c | 19 +- app/widgets/gimpdatafactoryview.h | 8 +- app/widgets/gimpdeviceinfo.c | 280 ++--- app/widgets/gimpdevices.c | 280 ++--- app/widgets/gimpdevices.h | 6 +- app/widgets/gimpdialogfactory.c | 4 +- app/widgets/gimpdialogfactory.h | 9 +- app/widgets/gimpdock.c | 59 +- app/widgets/gimpdock.h | 8 +- app/widgets/gimpdockable.c | 42 +- app/widgets/gimpdockable.h | 16 +- app/widgets/gimpdockbook.c | 113 +- app/widgets/gimpdockbook.h | 8 +- app/widgets/gimpdrawablelistitem.c | 55 +- app/widgets/gimpdrawablelistitem.h | 8 +- app/widgets/gimpdrawablelistview.c | 121 +- app/widgets/gimpdrawablelistview.h | 8 +- app/widgets/gimpdrawablepreview.h | 8 +- app/widgets/gimpdrawabletreeview.c | 121 +- app/widgets/gimpdrawabletreeview.h | 8 +- app/widgets/gimpgradienteditor.c | 62 +- app/widgets/gimpgradientpreview.h | 8 +- app/widgets/gimphistogramview.c | 22 +- app/widgets/gimphistogramview.h | 6 +- app/widgets/gimpimagedock.c | 50 +- app/widgets/gimpimagedock.h | 8 +- app/widgets/gimpimagepreview.h | 8 +- app/widgets/gimpitemfactory.c | 4 +- app/widgets/gimpitemlistview.c | 121 +- app/widgets/gimpitemlistview.h | 8 +- app/widgets/gimpitemtreeview.c | 121 +- app/widgets/gimpitemtreeview.h | 8 +- app/widgets/gimplayerlistitem.c | 102 +- app/widgets/gimplayerlistitem.h | 8 +- app/widgets/gimplayerlistview.c | 44 +- app/widgets/gimplayerlistview.h | 8 +- app/widgets/gimplayertreeview.c | 44 +- app/widgets/gimplayertreeview.h | 8 +- app/widgets/gimplistitem.c | 65 +- app/widgets/gimplistitem.h | 8 +- app/widgets/gimpmenudock.c | 50 +- app/widgets/gimpmenudock.h | 8 +- app/widgets/gimpmenuitem.c | 22 +- app/widgets/gimpmenuitem.h | 8 +- app/widgets/gimpnavigationpreview.c | 23 +- app/widgets/gimpnavigationpreview.h | 8 +- app/widgets/gimpnavigationview.c | 23 +- app/widgets/gimpnavigationview.h | 8 +- app/widgets/gimppaletteeditor.c | 8 +- app/widgets/gimppalettepreview.h | 8 +- app/widgets/gimppatternpreview.h | 8 +- app/widgets/gimppreview.c | 142 ++- app/widgets/gimppreview.h | 8 +- app/widgets/gimppreviewrenderer.c | 142 ++- app/widgets/gimppreviewrenderer.h | 8 +- app/widgets/gimppreviewrendererbrush.h | 8 +- app/widgets/gimppreviewrendererdrawable.h | 8 +- app/widgets/gimppreviewrendererimage.h | 8 +- app/widgets/gimptoolbox.c | 19 +- app/widgets/gimptoolinfopreview.h | 8 +- app/widgets/gimptooloptionseditor.c | 2 +- app/widgets/gimpview.c | 142 ++- app/widgets/gimpview.h | 8 +- app/widgets/gimpviewrenderer.c | 142 ++- app/widgets/gimpviewrenderer.h | 8 +- app/widgets/gimpviewrendererbrush.h | 8 +- app/widgets/gimpviewrendererdrawable.h | 8 +- app/widgets/gimpviewrendererimage.h | 8 +- app/widgets/gtkhwrapbox.h | 8 +- app/widgets/gtkvwrapbox.h | 8 +- app/widgets/gtkwrapbox.c | 242 ++-- app/widgets/gtkwrapbox.h | 10 +- configure.in | 82 +- libgimp/gimpbrushmenu.c | 3 +- libgimp/gimpmenu.c | 18 +- libgimp/gimppatternmenu.c | 3 +- libgimp/gimpui.c | 1 - libgimpbase/gimpenv.c | 36 +- libgimpwidgets/gimpbutton.c | 24 +- libgimpwidgets/gimpbutton.h | 8 +- libgimpwidgets/gimpchainbutton.c | 146 +-- libgimpwidgets/gimpchainbutton.h | 8 +- libgimpwidgets/gimpcolorarea.c | 24 +- libgimpwidgets/gimpcolorarea.h | 8 +- libgimpwidgets/gimpcolorbutton.c | 30 +- libgimpwidgets/gimpcolorbutton.h | 8 +- libgimpwidgets/gimpdialog.c | 32 +- libgimpwidgets/gimpfileentry.c | 73 +- libgimpwidgets/gimpfileentry.h | 8 +- libgimpwidgets/gimpfileselection.c | 73 +- libgimpwidgets/gimpfileselection.h | 8 +- libgimpwidgets/gimphelpui.c | 27 +- libgimpwidgets/gimpoffsetarea.c | 30 +- libgimpwidgets/gimpoffsetarea.h | 8 +- libgimpwidgets/gimppatheditor.c | 107 +- libgimpwidgets/gimppatheditor.h | 12 +- libgimpwidgets/gimppixmap.c | 47 +- libgimpwidgets/gimppixmap.h | 8 +- libgimpwidgets/gimpquerybox.c | 75 +- libgimpwidgets/gimpsizeentry.c | 76 +- libgimpwidgets/gimpsizeentry.h | 8 +- libgimpwidgets/gimpunitmenu.c | 148 +-- libgimpwidgets/gimpunitmenu.h | 8 +- libgimpwidgets/gimpwidgets.c | 194 ++-- libgimpwidgets/gimpwidgets.h | 8 +- modules/Makefile.am | 9 +- plug-ins/Makefile.am | 18 +- plug-ins/common/.cvsignore | 5 - plug-ins/common/Makefile.am | 77 -- plug-ins/common/plugin-defs.pl | 10 +- 407 files changed, 8435 insertions(+), 7268 deletions(-) create mode 100644 app/core/gimpmarshal.list diff --git a/ChangeLog b/ChangeLog index ceaef8b968..0087d8e189 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,90 @@ +2001-07-24 Michael Natterer + + Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning) + + * configure.in: require glib/gtk+ >= 1.3.7, commented out the + gtkxmhtml stuff. + + From now on, you will need glib, pango, atk and gtk+ HEAD from CVS + to hack or use GIMP HEAD. + + Beware, it crashes randomly :) + + * app/core/Makefile.am + * app/core/gimpmarshal.list: new file plus rules to generate + gimpmarshal.[ch] from it. + + * app/core/* + * app/tools/* + * app/widgets/* + * libgimpwidgets/*: started to use the glib object system. All + core/ objects are still gtk objects however. All signals are + created using g_signal_new(). There are many gtk+ artefacts left. + Finally, we will _not_ use the gtk_signal_foo() wrappers and + friends any more. + + * app/colormaps.c + * app/devices.[ch] + * app/disp_callbacks.c + * app/errorconsole.c + * app/file-save.[ch] + * app/interface.c + * app/module_db.c + * app/nav_window.c + * app/ops_buttons.c + * app/scroll.c + * app/user_install.c + * app/gui/about-dialog.c + * app/gui/brush-editor.c + * app/gui/brushes-commands.c + * app/gui/color-notebook.c + * app/gui/colormap-dialog.c + * app/gui/dialogs-commands.c + * app/gui/dialogs-constructors.c + * app/gui/file-commands.c + * app/gui/file-dialog-utils.c + * app/gui/file-new-dialog.c + * app/gui/file-open-dialog.[ch] + * app/gui/file-save-dialog.c + * app/gui/gradient-editor.c + * app/gui/gradients-commands.c + * app/gui/image-commands.c + * app/gui/info-dialog.[ch] + * app/gui/layer-select.c + * app/gui/layers-commands.c + * app/gui/menus.c + * app/gui/offset-dialog.c + * app/gui/palette-editor.c + * app/gui/palettes-commands.c + * app/gui/patterns-commands.c + * app/gui/preferences-dialog.c + * app/gui/resize-dialog.[ch] + * app/gui/splash.c + * app/gui/tips-dialog.c + * app/gui/tool-options-dialog.c + * app/gui/toolbox.c + * app/gui/tools-commands.c + * libgimp/gimpbrushmenu.c + * libgimp/gimpmenu.c + * libgimp/gimppatternmenu.c + * libgimp/gimpui.c + * libgimpbase/gimpenv.c: tons and tons of changes like "const + gchar*", switch from GdkDeviceInfo to GdkDevice (very incomplete + and currently disables), lots of s/gtk_signal/g_signal/, + removal/replacement of deprecated stuff, + s/GtkSignalFunc/GCallback/ and lots of small changes and fixes + while I was on it, zillions of warnings left... + + * modules/Makefile.am: disabled the water color selector + temporarily (XInput issues). + + * plug-ins/Makefile.am + * plug-ins/common/.cvsignore + * plug-ins/common/Makefile.am + * plug-ins/common/plugin-defs.pl: simply excluded all plug-ins + which did not build (including Script-Fu). They are trivial to + fix. + 2001-07-23 Sven Neumann * plug-ins/common/winclipboard.c diff --git a/app/actions/dialogs-commands.c b/app/actions/dialogs-commands.c index 78e1efb8c9..3ceccab816 100644 --- a/app/actions/dialogs-commands.c +++ b/app/actions/dialogs-commands.c @@ -39,7 +39,7 @@ dialogs_create_toplevel_cmd_callback (GtkWidget *widget, { if (action) { - gchar *identifier; + const gchar *identifier; identifier = g_quark_to_string ((GQuark) action); @@ -55,7 +55,7 @@ dialogs_create_dockable_cmd_callback (GtkWidget *widget, { if (action) { - gchar *identifier; + const gchar *identifier; identifier = g_quark_to_string ((GQuark) action); @@ -75,8 +75,8 @@ dialogs_add_tab_cmd_callback (GtkWidget *widget, if (dockbook && action) { - GtkWidget *dockable; - gchar *identifier; + GtkWidget *dockable; + const gchar *identifier; identifier = g_quark_to_string ((GQuark) action); diff --git a/app/actions/file-commands.c b/app/actions/file-commands.c index 752fc053a1..d4902dfbc1 100644 --- a/app/actions/file-commands.c +++ b/app/actions/file-commands.c @@ -152,8 +152,8 @@ file_save_cmd_callback (GtkWidget *widget, } else { - gchar *raw_filename; - gint status; + const gchar *raw_filename; + gint status; raw_filename = g_basename (filename); diff --git a/app/actions/gradients-commands.c b/app/actions/gradients-commands.c index 277ac485e9..2bad9cc9d1 100644 --- a/app/actions/gradients-commands.c +++ b/app/actions/gradients-commands.c @@ -96,7 +96,7 @@ gradients_menu_set_sensitivity (GimpContainerEditor *editor) menus_set_sensitive ("/" menu, (condition) != 0) SET_SENSITIVE ("Duplicate Gradient", - gradient && GIMP_DATA_CLASS (GTK_OBJECT (gradient)->klass)->duplicate); + gradient && GIMP_DATA_GET_CLASS (gradient)->duplicate); SET_SENSITIVE ("Edit Gradient...", gradient && GIMP_DATA_FACTORY_VIEW (editor)->data_edit_func); SET_SENSITIVE ("Delete Gradient...", @@ -162,7 +162,7 @@ gradients_save_as_pov_ok_callback (GtkWidget *widget, GimpGradient *gradient) { GtkFileSelection *filesel; - gchar *filename; + const gchar *filename; FILE *file; GimpGradientSegment *seg; diff --git a/app/actions/image-commands.c b/app/actions/image-commands.c index 4e6d973498..f7c3f8c653 100644 --- a/app/actions/image-commands.c +++ b/app/actions/image-commands.c @@ -196,7 +196,7 @@ image_resize_cmd_callback (GtkWidget *widget, image_resize->gimage = gimage; image_resize->resize = resize_widget_new (ResizeWidget, ResizeImage, - GTK_OBJECT (gimage), + G_OBJECT (gimage), "destroy", gimage->width, gimage->height, @@ -204,7 +204,7 @@ image_resize_cmd_callback (GtkWidget *widget, gimage->yresolution, gimage->unit, gdisp->dot_for_dot, - image_resize_callback, + G_CALLBACK (image_resize_callback), NULL, image_resize); @@ -233,7 +233,7 @@ image_scale_cmd_callback (GtkWidget *widget, image_scale->gimage = gimage; image_scale->resize = resize_widget_new (ScaleWidget, ResizeImage, - GTK_OBJECT (gimage), + G_OBJECT (gimage), "destroy", gimage->width, gimage->height, @@ -241,7 +241,7 @@ image_scale_cmd_callback (GtkWidget *widget, gimage->yresolution, gimage->unit, gdisp->dot_for_dot, - image_scale_callback, + G_CALLBACK (image_scale_callback), NULL, image_scale); diff --git a/app/actions/layers-commands.c b/app/actions/layers-commands.c index 4a985f1475..68a61e2e90 100644 --- a/app/actions/layers-commands.c +++ b/app/actions/layers-commands.c @@ -640,8 +640,6 @@ layers_new_layer_query (GimpImage *gimage) /* The size sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); diff --git a/app/actions/palettes-commands.c b/app/actions/palettes-commands.c index 9ee5408a17..9f754da1e6 100644 --- a/app/actions/palettes-commands.c +++ b/app/actions/palettes-commands.c @@ -113,7 +113,7 @@ palettes_menu_set_sensitivity (GimpContainerEditor *editor) menus_set_sensitive ("/" menu, (condition) != 0) SET_SENSITIVE ("Duplicate Palette", - palette && GIMP_DATA_CLASS (GTK_OBJECT (palette)->klass)->duplicate); + palette && GIMP_DATA_GET_CLASS (palette)->duplicate); SET_SENSITIVE ("Edit Palette...", palette && GIMP_DATA_FACTORY_VIEW (editor)->data_edit_func); SET_SENSITIVE ("Delete Palette...", diff --git a/app/actions/tools-commands.c b/app/actions/tools-commands.c index 2f1a7f7801..d598774384 100644 --- a/app/actions/tools-commands.c +++ b/app/actions/tools-commands.c @@ -109,7 +109,7 @@ tools_select_cmd_callback (GtkWidget *widget, /* Complete the initialisation by doing the same stuff * tools_initialize() does after it did what tools_select() does */ - if (GIMP_TOOL_CLASS (GTK_OBJECT (active_tool)->klass)->initialize) + if (GIMP_TOOL_GET_CLASS (active_tool)->initialize) { gimp_tool_initialize (active_tool, gdisp); diff --git a/app/base/color-balance.h b/app/base/color-balance.h index 3a37ba396c..d3554b6328 100644 --- a/app/base/color-balance.h +++ b/app/base/color-balance.h @@ -32,10 +32,10 @@ typedef enum #define GIMP_TYPE_COLOR_BALANCE_TOOL (gimp_color_balance_tool_get_type ()) -#define GIMP_COLOR_BALANCE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_COLOR_BALANCE_TOOL, GimpColorBalanceTool)) -#define GIMP_IS_COLOR_BALANCE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_COLOR_BALANCE_TOOL)) -#define GIMP_COLOR_BALANCE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_BALANCE_TOOL, GimpColorBalanceToolClass)) -#define GIMP_IS_COLOR_BALANCE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_BALANCE_TOOL)) +#define GIMP_COLOR_BALANCE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_COLOR_BALANCE_TOOL, GimpColorBalanceTool)) +#define GIMP_IS_COLOR_BALANCE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_COLOR_BALANCE_TOOL)) +#define GIMP_COLOR_BALANCE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_BALANCE_TOOL, GimpColorBalanceToolClass)) +#define GIMP_IS_COLOR_BALANCE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_BALANCE_TOOL)) typedef struct _GimpColorBalanceTool GimpColorBalanceTool; diff --git a/app/base/curves.c b/app/base/curves.c index 66a1adbd9c..621ca66ddb 100644 --- a/app/base/curves.c +++ b/app/base/curves.c @@ -695,14 +695,16 @@ curves_dialog_new (void) gtk_box_pack_start (GTK_BOX (channel_hbox), label, FALSE, FALSE, 0); cd->channel_menu = gimp_option_menu_new2 - (FALSE, curves_channel_callback, - cd, (gpointer) cd->channel, + (FALSE, + G_CALLBACK (curves_channel_callback), + cd, + GINT_TO_POINTER (cd->channel), - _("Value"), (gpointer) GIMP_HISTOGRAM_VALUE, &channel_items[0], - _("Red"), (gpointer) GIMP_HISTOGRAM_RED, &channel_items[1], - _("Green"), (gpointer) GIMP_HISTOGRAM_GREEN, &channel_items[2], - _("Blue"), (gpointer) GIMP_HISTOGRAM_BLUE, &channel_items[3], - _("Alpha"), (gpointer) GIMP_HISTOGRAM_ALPHA, &channel_items[4], + _("Value"), GINT_TO_POINTER (GIMP_HISTOGRAM_VALUE), &channel_items[0], + _("Red"), GINT_TO_POINTER (GIMP_HISTOGRAM_RED), &channel_items[1], + _("Green"), GINT_TO_POINTER (GIMP_HISTOGRAM_GREEN), &channel_items[2], + _("Blue"), GINT_TO_POINTER (GIMP_HISTOGRAM_BLUE), &channel_items[3], + _("Alpha"), GINT_TO_POINTER (GIMP_HISTOGRAM_ALPHA), &channel_items[4], NULL); @@ -729,9 +731,9 @@ curves_dialog_new (void) gtk_widget_set_events (cd->yrange, RANGE_MASK); gtk_container_add (GTK_CONTAINER (frame), cd->yrange); - gtk_signal_connect (GTK_OBJECT (cd->yrange), "event", - GTK_SIGNAL_FUNC (curves_yrange_events), - cd); + g_signal_connect (G_OBJECT (cd->yrange), "event", + G_CALLBACK (curves_yrange_events), + cd); gtk_widget_show (cd->yrange); gtk_widget_show (frame); @@ -750,9 +752,9 @@ curves_dialog_new (void) gtk_widget_set_events (cd->graph, GRAPH_MASK); gtk_container_add (GTK_CONTAINER (frame), cd->graph); - gtk_signal_connect (GTK_OBJECT (cd->graph), "event", - GTK_SIGNAL_FUNC (curves_graph_events), - cd); + g_signal_connect (G_OBJECT (cd->graph), "event", + G_CALLBACK (curves_graph_events), + cd); gtk_widget_show (cd->graph); gtk_widget_show (frame); @@ -768,9 +770,9 @@ curves_dialog_new (void) gtk_widget_set_events (cd->xrange, RANGE_MASK); gtk_container_add (GTK_CONTAINER (frame), cd->xrange); - gtk_signal_connect (GTK_OBJECT (cd->xrange), "event", - GTK_SIGNAL_FUNC (curves_xrange_events), - cd); + g_signal_connect (G_OBJECT (cd->xrange), "event", + G_CALLBACK (curves_xrange_events), + cd); gtk_widget_show (cd->xrange); gtk_widget_show (frame); @@ -802,9 +804,9 @@ curves_dialog_new (void) gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), cd->preview); gtk_box_pack_end (GTK_BOX (hbox), toggle, FALSE, FALSE, 0); - gtk_signal_connect (GTK_OBJECT (toggle), "toggled", - GTK_SIGNAL_FUNC (curves_preview_update), - cd); + g_signal_connect (G_OBJECT (toggle), "toggled", + G_CALLBACK (curves_preview_update), + cd); gtk_widget_show (toggle); gtk_widget_show (hbox); @@ -818,19 +820,21 @@ curves_dialog_new (void) button = gtk_button_new_with_label (_("Load")); GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (hbbox), button, FALSE, FALSE, 0); - gtk_signal_connect (GTK_OBJECT (button), "clicked", - GTK_SIGNAL_FUNC (curves_load_callback), - cd->shell); gtk_widget_show (button); + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (curves_load_callback), + cd->shell); + button = gtk_button_new_with_label (_("Save")); GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (hbbox), button, FALSE, FALSE, 0); - gtk_signal_connect (GTK_OBJECT (button), "clicked", - GTK_SIGNAL_FUNC (curves_save_callback), - cd->shell); gtk_widget_show (button); + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (curves_save_callback), + cd->shell); + gtk_widget_show (hbbox); gtk_widget_show (vbox); @@ -1754,19 +1758,21 @@ file_dialog_create (GtkWidget *parent) gtk_container_set_border_width (GTK_CONTAINER (file_dlg), 2); gtk_container_set_border_width (GTK_CONTAINER (GTK_FILE_SELECTION (file_dlg)->button_area), 2); - gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (file_dlg)->cancel_button), - "clicked", GTK_SIGNAL_FUNC (file_dialog_cancel_callback), - NULL); - gtk_signal_connect (GTK_OBJECT (file_dlg), "delete_event", - GTK_SIGNAL_FUNC (file_dialog_cancel_callback), - NULL); - gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (file_dlg)->ok_button), - "clicked", GTK_SIGNAL_FUNC (file_dialog_ok_callback), - NULL); + g_signal_connect (G_OBJECT (GTK_FILE_SELECTION (file_dlg)->cancel_button), + "clicked", + G_CALLBACK (file_dialog_cancel_callback), + NULL); + g_signal_connect (G_OBJECT (file_dlg), "delete_event", + G_CALLBACK (file_dialog_cancel_callback), + NULL); + g_signal_connect (G_OBJECT (GTK_FILE_SELECTION (file_dlg)->ok_button), + "clicked", + G_CALLBACK (file_dialog_ok_callback), + NULL); - gtk_signal_connect (GTK_OBJECT (parent), "unmap", - GTK_SIGNAL_FUNC (file_dialog_cancel_callback), - NULL); + g_signal_connect (G_OBJECT (parent), "unmap", + G_CALLBACK (file_dialog_cancel_callback), + NULL); temp = g_strdup_printf ("%s" G_DIR_SEPARATOR_S "curves" G_DIR_SEPARATOR_S, gimp_directory ()); @@ -1780,8 +1786,8 @@ static void file_dialog_ok_callback (GtkWidget *widget, gpointer data) { - FILE *f; - gchar *filename; + FILE *f; + const gchar *filename; filename = gtk_file_selection_get_filename (GTK_FILE_SELECTION (file_dlg)); diff --git a/app/base/curves.h b/app/base/curves.h index e760141a27..29699970d6 100644 --- a/app/base/curves.h +++ b/app/base/curves.h @@ -28,10 +28,10 @@ #define GIMP_TYPE_CURVES_TOOL (gimp_curves_tool_get_type ()) -#define GIMP_CURVES_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CURVES_TOOL, GimpCurvesTool)) -#define GIMP_IS_CURVES_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CURVES_TOOL)) -#define GIMP_CURVES_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CURVES_TOOL, GimpCurvesToolClass)) -#define GIMP_IS_CURVES_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CURVES_TOOL)) +#define GIMP_CURVES_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CURVES_TOOL, GimpCurvesTool)) +#define GIMP_IS_CURVES_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CURVES_TOOL)) +#define GIMP_CURVES_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CURVES_TOOL, GimpCurvesToolClass)) +#define GIMP_IS_CURVES_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CURVES_TOOL)) typedef struct _GimpCurvesTool GimpCurvesTool; diff --git a/app/base/hue-saturation.h b/app/base/hue-saturation.h index af8aeda2cb..8ff6a2e888 100644 --- a/app/base/hue-saturation.h +++ b/app/base/hue-saturation.h @@ -36,10 +36,10 @@ typedef enum #define GIMP_TYPE_HUE_SATURATION_TOOL (gimp_hue_saturation_tool_get_type ()) -#define GIMP_HUE_SATURATION_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_HUE_SATURATION_TOOL, GimpHueSaturationTool)) -#define GIMP_IS_HUE_SATURATION_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_HUE_SATURATION_TOOL)) -#define GIMP_HUE_SATURATION_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_HUE_SATURATION_TOOL, GimpHueSaturationToolClass)) -#define GIMP_IS_HUE_SATURATION_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_HUE_SATURATION_TOOL)) +#define GIMP_HUE_SATURATION_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_HUE_SATURATION_TOOL, GimpHueSaturationTool)) +#define GIMP_IS_HUE_SATURATION_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_HUE_SATURATION_TOOL)) +#define GIMP_HUE_SATURATION_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_HUE_SATURATION_TOOL, GimpHueSaturationToolClass)) +#define GIMP_IS_HUE_SATURATION_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_HUE_SATURATION_TOOL)) typedef struct _GimpHueSaturationTool GimpHueSaturationTool; diff --git a/app/base/threshold.h b/app/base/threshold.h index 39219ef1ba..104e1554a6 100644 --- a/app/base/threshold.h +++ b/app/base/threshold.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_THRESHOLD_TOOL (gimp_threshold_tool_get_type ()) -#define GIMP_THRESHOLD_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_THRESHOLD_TOOL, GimpThresholdTool)) -#define GIMP_IS_THRESHOLD_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_THRESHOLD_TOOL)) -#define GIMP_THRESHOLD_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_THRESHOLD_TOOL, GimpThresholdToolClass)) -#define GIMP_IS_THRESHOLD_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_THRESHOLD_TOOL)) +#define GIMP_THRESHOLD_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_THRESHOLD_TOOL, GimpThresholdTool)) +#define GIMP_IS_THRESHOLD_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_THRESHOLD_TOOL)) +#define GIMP_THRESHOLD_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_THRESHOLD_TOOL, GimpThresholdToolClass)) +#define GIMP_IS_THRESHOLD_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_THRESHOLD_TOOL)) typedef struct _GimpThresholdTool GimpThresholdTool; diff --git a/app/colormaps.c b/app/colormaps.c index 0107c60771..b8d98c3eb3 100644 --- a/app/colormaps.c +++ b/app/colormaps.c @@ -74,7 +74,6 @@ get_standard_colormaps (void) g_visual = gdk_rgb_get_visual (); g_cmap = gdk_rgb_get_cmap (); - gtk_widget_set_default_visual (g_visual); gtk_widget_set_default_colormap (g_cmap); set_app_colors (); diff --git a/app/core/.cvsignore b/app/core/.cvsignore index 1b1cc87d02..54de0d7d65 100644 --- a/app/core/.cvsignore +++ b/app/core/.cvsignore @@ -4,3 +4,4 @@ Makefile.in .libs *.lo libappcore.la +stamp-gimpmarshal.h diff --git a/app/core/Makefile.am b/app/core/Makefile.am index ddcefb00ca..14516ab87f 100644 --- a/app/core/Makefile.am +++ b/app/core/Makefile.am @@ -1,8 +1,21 @@ ## Process this file with automake to produce Makefile.in +AM_CPPFLAGS = @STRIP_BEGIN@ \ + -DG_LOG_DOMAIN=\"Gimp-Core\" \ + @GIMP_THREAD_FLAGS@ \ + @GIMP_MP_FLAGS@ \ +@STRIP_END@ + +INCLUDES = @STRIP_BEGIN@ \ + -I$(top_srcdir) \ + -I$(top_srcdir)/app \ + $(GTK_CFLAGS) \ + -I$(includedir) \ +@STRIP_END@ + noinst_LIBRARIES = libappcore.a -libappcore_a_SOURCES = @STRIP_BEGIN@ \ +libappcore_a_sources = @STRIP_BEGIN@ \ core-types.h \ gimp.c \ gimp.h \ @@ -72,8 +85,6 @@ libappcore_a_SOURCES = @STRIP_BEGIN@ \ gimplayermask.h \ gimplist.c \ gimplist.h \ - gimpmarshal.c \ - gimpmarshal.h \ gimpobject.c \ gimpobject.h \ gimppattern.c \ @@ -103,21 +114,44 @@ libappcore_a_SOURCES = @STRIP_BEGIN@ \ gimpviewable.h \ @STRIP_END@ +libappcore_a_built_sources = @STRIP_BEGIN@ \ + stamp-gimpmarshal.h \ + gimpmarshal.c \ + gimpmarshal.h \ +@STRIP_END@ + +libappcore_a_extra_sources = @STRIP_BEGIN@ \ + gimpmarshal.list \ +@STRIP_END@ + +libappcore_a_SOURCES = $(libappcore_a_built_sources) $(libappcore_a_sources) + EXTRS_DIST = \ - makefile.msc + makefile.msc \ + $(libappcore_a_extra_sources) -AM_CPPFLAGS = @STRIP_BEGIN@ \ - -DG_LOG_DOMAIN=\"Gimp-Core\" \ - @GIMP_THREAD_FLAGS@ \ - @GIMP_MP_FLAGS@ \ -@STRIP_END@ +# +# rules to generate built sources +# +# setup autogeneration dependancies +gen_sources = xgen-gmh xgen-gmc +CLEANFILES += $(gen_sources) -INCLUDES = @STRIP_BEGIN@ \ - -I$(top_srcdir) \ - -I$(top_srcdir)/app \ - $(GTK_CFLAGS) \ - -I$(includedir) \ -@STRIP_END@ +$(srcdir)/stamp-gimpmarshal.h: gimpmarshal.list gimpmarshal.h + echo "#ifndef __GIMP_MARSHAL_H__" > xgen-gmh \ + && echo "#define __GIMP_MARSHAL_H__" >> xgen-gmh \ + && glib-genmarshal --nostdinc --prefix=gimp_cclosure_marshal $(srcdir)/gimpmarshal.list --header >> xgen-gmh \ + && echo "#endif /* __GIMP_MARSHAL_H__ */" >> xgen-gmh \ + && (cmp -s xgen-gmh $(srcdir)/gimpmarshal.h || cp xgen-gmh $(srcdir)/gimpmarshal.h) \ + && rm -f xgen-gmh xgen-gmh~ \ + && echo timestamp > $@ +$(srcdir)/gimpmarshal.c: $(srcdir)/stamp-gimpmarshal.h + echo "#include " > xgen-gmc \ + && echo "#include " >> xgen-gmc \ + && echo "#include \"gimpmarshal.h\"" >> xgen-gmc \ + && glib-genmarshal --nostdinc --prefix=gimp_cclosure_marshal $(srcdir)/gimpmarshal.list --body >> xgen-gmc \ + && cp xgen-gmc $(srcdir)/gimpmarshal.c \ + && rm -f xgen-gmc xgen-gmc~ .PHONY: files diff --git a/app/core/gimp-transform-region.c b/app/core/gimp-transform-region.c index f491d437bd..e2df8f913a 100644 --- a/app/core/gimp-transform-region.c +++ b/app/core/gimp-transform-region.c @@ -136,14 +136,16 @@ static void gimp_transform_tool_draw (GimpDrawTool *draw_too static TranInfo old_trans_info; InfoDialog *transform_info = NULL; static gboolean transform_info_inited = FALSE; -static GimpDrawToolClass *parent_class = NULL; -static guint gimp_transform_tool_signals[LAST_SIGNAL] = { 0 }; + +static GimpDrawToolClass *parent_class = NULL; + +static guint gimp_transform_tool_signals[LAST_SIGNAL] = { 0 }; -GtkType +GType gimp_transform_tool_get_type (void) { - static GtkType tool_type = 0; + static GType tool_type = 0; if (! tool_type) { @@ -176,21 +178,18 @@ gimp_transform_tool_class_init (GimpTransformToolClass *klass) tool_class = (GimpToolClass *) klass; draw_class = (GimpDrawToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAW_TOOL); + parent_class = g_type_class_peek_parent (klass); gimp_transform_tool_signals[TRANSFORM] = - gtk_signal_new ("transform", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpTransformToolClass, - transform), - gimp_marshal_POINTER__POINTER_INT, - GTK_TYPE_POINTER, 2, - GTK_TYPE_POINTER, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_transform_tool_signals, - LAST_SIGNAL); + g_signal_new ("transform", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpTransformToolClass, transform), + NULL, NULL, + gimp_cclosure_marshal_POINTER__POINTER_INT, + G_TYPE_POINTER, 2, + G_TYPE_POINTER, + G_TYPE_INT); object_class->destroy = gimp_transform_tool_destroy; @@ -452,7 +451,7 @@ gimp_transform_tool_button_press (GimpTool *tool, if (transform_info && !transform_info_inited) { - GtkType tool_type; + GType tool_type; tool_type = gimp_context_get_tool (gimp_get_user_context (gdisp->gimage->gimp))->tool_type; @@ -611,7 +610,7 @@ gimp_transform_tool_doit (GimpTransformTool *gt_tool, /* create and initialize the transform_undo structure */ tu = g_new0 (TransformUndo, 1); tu->tool_ID = tool->ID; - tu->tool_type = GTK_OBJECT (tool)->klass->type; + tu->tool_type = G_TYPE_FROM_INSTANCE (tool); for (i = 0; i < TRAN_INFO_SIZE; i++) tu->trans_info[i] = old_trans_info[i]; diff --git a/app/core/gimp.c b/app/core/gimp.c index 2c9fd5f5da..54f698ef2a 100644 --- a/app/core/gimp.c +++ b/app/core/gimp.c @@ -97,7 +97,7 @@ gimp_class_init (GimpClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_destroy; } @@ -258,6 +258,11 @@ gimp_new (void) { Gimp *gimp; + /* EEK */ + g_type_class_ref (GIMP_TYPE_CONTEXT); + g_type_class_ref (GIMP_TYPE_CONTAINER); + g_type_class_ref (GIMP_TYPE_IMAGE); + gimp = gtk_type_new (GIMP_TYPE_GIMP); return gimp; diff --git a/app/core/gimp.h b/app/core/gimp.h index 60dbe3ef28..242bfacfd9 100644 --- a/app/core/gimp.h +++ b/app/core/gimp.h @@ -30,10 +30,10 @@ typedef void (* GimpUnsetBusyFunc) (Gimp *gimp); #define GIMP_TYPE_GIMP (gimp_get_type ()) -#define GIMP(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_GIMP, Gimp)) -#define GIMP_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_GIMP, GimpClass)) -#define GIMP_IS_GIMP(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_GIMP)) -#define GIMP_IS_GIMP_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_GIMP)) +#define GIMP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_GIMP, Gimp)) +#define GIMP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_GIMP, GimpClass)) +#define GIMP_IS_GIMP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_GIMP)) +#define GIMP_IS_GIMP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_GIMP)) typedef struct _GimpClass GimpClass; diff --git a/app/core/gimpbrush-load.c b/app/core/gimpbrush-load.c index cbeb01b819..d531e33999 100644 --- a/app/core/gimpbrush-load.c +++ b/app/core/gimpbrush-load.c @@ -82,10 +82,10 @@ static guint brush_signals[LAST_SIGNAL] = { 0 }; static GimpDataClass *parent_class = NULL; -GtkType +GType gimp_brush_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (! type) { @@ -117,18 +117,16 @@ gimp_brush_class_init (GimpBrushClass *klass) viewable_class = (GimpViewableClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); brush_signals[SPACING_CHANGED] = - gtk_signal_new ("spacing_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpBrushClass, - spacing_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, brush_signals, LAST_SIGNAL); + g_signal_new ("spacing_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpBrushClass, spacing_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = gimp_brush_destroy; @@ -386,7 +384,6 @@ gimp_brush_get_pixmap (const GimpBrush *brush) gint gimp_brush_get_spacing (const GimpBrush *brush) { - g_return_val_if_fail (brush != NULL, 0); g_return_val_if_fail (GIMP_IS_BRUSH (brush), 0); return brush->spacing; @@ -396,7 +393,6 @@ void gimp_brush_set_spacing (GimpBrush *brush, gint spacing) { - g_return_if_fail (brush != NULL); g_return_if_fail (GIMP_IS_BRUSH (brush)); if (brush->spacing != spacing) @@ -410,10 +406,9 @@ gimp_brush_set_spacing (GimpBrush *brush, void gimp_brush_spacing_changed (GimpBrush *brush) { - g_return_if_fail (brush != NULL); g_return_if_fail (GIMP_IS_BRUSH (brush)); - gtk_signal_emit (GTK_OBJECT (brush), brush_signals[SPACING_CHANGED]); + g_signal_emit (G_OBJECT (brush), brush_signals[SPACING_CHANGED], 0); } GimpBrush * @@ -490,7 +485,7 @@ gimp_brush_load_brush (gint fd, g_message (_("GIMP brush file appears to be truncated: \"%s\"."), filename); g_free (name); - gtk_object_unref (GTK_OBJECT (brush)); + g_object_unref (G_OBJECT (brush)); return NULL; } break; @@ -509,7 +504,7 @@ gimp_brush_load_brush (gint fd, g_message (_("GIMP brush file appears to be truncated: \"%s\"."), filename); g_free (name); - gtk_object_unref (GTK_OBJECT (brush)); + g_object_unref (G_OBJECT (brush)); return NULL; } } diff --git a/app/core/gimpbrush.c b/app/core/gimpbrush.c index cbeb01b819..d531e33999 100644 --- a/app/core/gimpbrush.c +++ b/app/core/gimpbrush.c @@ -82,10 +82,10 @@ static guint brush_signals[LAST_SIGNAL] = { 0 }; static GimpDataClass *parent_class = NULL; -GtkType +GType gimp_brush_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (! type) { @@ -117,18 +117,16 @@ gimp_brush_class_init (GimpBrushClass *klass) viewable_class = (GimpViewableClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); brush_signals[SPACING_CHANGED] = - gtk_signal_new ("spacing_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpBrushClass, - spacing_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, brush_signals, LAST_SIGNAL); + g_signal_new ("spacing_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpBrushClass, spacing_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = gimp_brush_destroy; @@ -386,7 +384,6 @@ gimp_brush_get_pixmap (const GimpBrush *brush) gint gimp_brush_get_spacing (const GimpBrush *brush) { - g_return_val_if_fail (brush != NULL, 0); g_return_val_if_fail (GIMP_IS_BRUSH (brush), 0); return brush->spacing; @@ -396,7 +393,6 @@ void gimp_brush_set_spacing (GimpBrush *brush, gint spacing) { - g_return_if_fail (brush != NULL); g_return_if_fail (GIMP_IS_BRUSH (brush)); if (brush->spacing != spacing) @@ -410,10 +406,9 @@ gimp_brush_set_spacing (GimpBrush *brush, void gimp_brush_spacing_changed (GimpBrush *brush) { - g_return_if_fail (brush != NULL); g_return_if_fail (GIMP_IS_BRUSH (brush)); - gtk_signal_emit (GTK_OBJECT (brush), brush_signals[SPACING_CHANGED]); + g_signal_emit (G_OBJECT (brush), brush_signals[SPACING_CHANGED], 0); } GimpBrush * @@ -490,7 +485,7 @@ gimp_brush_load_brush (gint fd, g_message (_("GIMP brush file appears to be truncated: \"%s\"."), filename); g_free (name); - gtk_object_unref (GTK_OBJECT (brush)); + g_object_unref (G_OBJECT (brush)); return NULL; } break; @@ -509,7 +504,7 @@ gimp_brush_load_brush (gint fd, g_message (_("GIMP brush file appears to be truncated: \"%s\"."), filename); g_free (name); - gtk_object_unref (GTK_OBJECT (brush)); + g_object_unref (G_OBJECT (brush)); return NULL; } } diff --git a/app/core/gimpbrush.h b/app/core/gimpbrush.h index 437faa240e..f163899626 100644 --- a/app/core/gimpbrush.h +++ b/app/core/gimpbrush.h @@ -31,10 +31,11 @@ #define GIMP_TYPE_BRUSH (gimp_brush_get_type ()) -#define GIMP_BRUSH(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BRUSH, GimpBrush)) -#define GIMP_BRUSH_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH, GimpBrushClass)) -#define GIMP_IS_BRUSH(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BRUSH)) -#define GIMP_IS_BRUSH_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH)) +#define GIMP_BRUSH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BRUSH, GimpBrush)) +#define GIMP_BRUSH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH, GimpBrushClass)) +#define GIMP_IS_BRUSH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BRUSH)) +#define GIMP_IS_BRUSH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH)) +#define GIMP_BRUSH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_BRUSH, GimpBrushClass)) typedef struct _GimpBrushClass GimpBrushClass; @@ -63,7 +64,7 @@ struct _GimpBrushClass }; -GtkType gimp_brush_get_type (void); +GType gimp_brush_get_type (void); GimpData * gimp_brush_new (const gchar *name); GimpData * gimp_brush_get_standard (void); diff --git a/app/core/gimpbrushgenerated-load.c b/app/core/gimpbrushgenerated-load.c index 83fc3d8077..e87f2c291b 100644 --- a/app/core/gimpbrushgenerated-load.c +++ b/app/core/gimpbrushgenerated-load.c @@ -94,7 +94,7 @@ gimp_brush_generated_class_init (GimpBrushGeneratedClass *klass) object_class = (GtkObjectClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_BRUSH); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_brush_generated_destroy; diff --git a/app/core/gimpbrushgenerated-save.c b/app/core/gimpbrushgenerated-save.c index 83fc3d8077..e87f2c291b 100644 --- a/app/core/gimpbrushgenerated-save.c +++ b/app/core/gimpbrushgenerated-save.c @@ -94,7 +94,7 @@ gimp_brush_generated_class_init (GimpBrushGeneratedClass *klass) object_class = (GtkObjectClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_BRUSH); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_brush_generated_destroy; diff --git a/app/core/gimpbrushgenerated.c b/app/core/gimpbrushgenerated.c index 83fc3d8077..e87f2c291b 100644 --- a/app/core/gimpbrushgenerated.c +++ b/app/core/gimpbrushgenerated.c @@ -94,7 +94,7 @@ gimp_brush_generated_class_init (GimpBrushGeneratedClass *klass) object_class = (GtkObjectClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_BRUSH); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_brush_generated_destroy; diff --git a/app/core/gimpbrushgenerated.h b/app/core/gimpbrushgenerated.h index e9c112ba18..b1fd55e10f 100644 --- a/app/core/gimpbrushgenerated.h +++ b/app/core/gimpbrushgenerated.h @@ -29,10 +29,10 @@ #define GIMP_TYPE_BRUSH_GENERATED (gimp_brush_generated_get_type ()) -#define GIMP_BRUSH_GENERATED(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BRUSH_GENERATED, GimpBrushGenerated)) -#define GIMP_BRUSH_GENERATED_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_GENERATED, GimpBrushGeneratedClass)) -#define GIMP_IS_BRUSH_GENERATED(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BRUSH_GENERATED)) -#define GIMP_IS_BRUSH_GENERATED_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_GENERATED)) +#define GIMP_BRUSH_GENERATED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BRUSH_GENERATED, GimpBrushGenerated)) +#define GIMP_BRUSH_GENERATED_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_GENERATED, GimpBrushGeneratedClass)) +#define GIMP_IS_BRUSH_GENERATED(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BRUSH_GENERATED)) +#define GIMP_IS_BRUSH_GENERATED_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_GENERATED)) typedef struct _GimpBrushGeneratedClass GimpBrushGeneratedClass; diff --git a/app/core/gimpbrushpipe-load.c b/app/core/gimpbrushpipe-load.c index 1ab927e2c9..975d5b8975 100644 --- a/app/core/gimpbrushpipe-load.c +++ b/app/core/gimpbrushpipe-load.c @@ -189,7 +189,7 @@ gimp_brush_pipe_class_init (GimpBrushPipeClass *klass) object_class = (GtkObjectClass *) klass; brush_class = (GimpBrushClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_BRUSH); + parent_class = g_type_class_peek_parent (klass); brush_class->select_brush = gimp_brush_pipe_select_brush; brush_class->want_null_motion = gimp_brush_pipe_want_null_motion; diff --git a/app/core/gimpbrushpipe.c b/app/core/gimpbrushpipe.c index 1ab927e2c9..975d5b8975 100644 --- a/app/core/gimpbrushpipe.c +++ b/app/core/gimpbrushpipe.c @@ -189,7 +189,7 @@ gimp_brush_pipe_class_init (GimpBrushPipeClass *klass) object_class = (GtkObjectClass *) klass; brush_class = (GimpBrushClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_BRUSH); + parent_class = g_type_class_peek_parent (klass); brush_class->select_brush = gimp_brush_pipe_select_brush; brush_class->want_null_motion = gimp_brush_pipe_want_null_motion; diff --git a/app/core/gimpbrushpipe.h b/app/core/gimpbrushpipe.h index 38d1298655..2e178a6eaa 100644 --- a/app/core/gimpbrushpipe.h +++ b/app/core/gimpbrushpipe.h @@ -28,10 +28,10 @@ #define GIMP_TYPE_BRUSH_PIPE (gimp_brush_pipe_get_type ()) -#define GIMP_BRUSH_PIPE(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BRUSH_PIPE, GimpBrushPipe)) -#define GIMP_BRUSH_PIPE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_PIPE, GimpBrushPipeClass)) -#define GIMP_IS_BRUSH_PIPE(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BRUSH_PIPE)) -#define GIMP_IS_BRUSH_PIPE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_PIPE)) +#define GIMP_BRUSH_PIPE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BRUSH_PIPE, GimpBrushPipe)) +#define GIMP_BRUSH_PIPE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_PIPE, GimpBrushPipeClass)) +#define GIMP_IS_BRUSH_PIPE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BRUSH_PIPE)) +#define GIMP_IS_BRUSH_PIPE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_PIPE)) typedef enum diff --git a/app/core/gimpbuffer.c b/app/core/gimpbuffer.c index b7e1ca96f6..9959164b3f 100644 --- a/app/core/gimpbuffer.c +++ b/app/core/gimpbuffer.c @@ -78,7 +78,7 @@ gimp_buffer_class_init (GimpBufferClass *klass) object_class = (GtkObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_buffer_destroy; diff --git a/app/core/gimpbuffer.h b/app/core/gimpbuffer.h index 6131edbe6a..ad62f1b205 100644 --- a/app/core/gimpbuffer.h +++ b/app/core/gimpbuffer.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_BUFFER (gimp_buffer_get_type ()) -#define GIMP_BUFFER(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BUFFER, GimpBuffer)) -#define GIMP_BUFFER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUFFER, GimpBufferClass)) -#define GIMP_IS_BUFFER(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BUFFER)) -#define GIMP_IS_BUFFER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUFFER)) +#define GIMP_BUFFER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BUFFER, GimpBuffer)) +#define GIMP_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUFFER, GimpBufferClass)) +#define GIMP_IS_BUFFER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BUFFER)) +#define GIMP_IS_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUFFER)) typedef struct _GimpBufferClass GimpBufferClass; diff --git a/app/core/gimpchannel-combine.c b/app/core/gimpchannel-combine.c index a50d79e507..46efdd06c8 100644 --- a/app/core/gimpchannel-combine.c +++ b/app/core/gimpchannel-combine.c @@ -90,7 +90,7 @@ gimp_channel_class_init (GimpChannelClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAWABLE); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_channel_destroy; } @@ -1512,7 +1512,7 @@ gimp_channel_translate (GimpChannel *mask, copy_region (&srcPR, &destPR); /* free the temporary mask */ - gtk_object_unref (GTK_OBJECT (tmp_mask)); + g_object_unref (G_OBJECT (tmp_mask)); } /* calculate new bounds */ diff --git a/app/core/gimpchannel-combine.h b/app/core/gimpchannel-combine.h index 980666e5b0..21392182dd 100644 --- a/app/core/gimpchannel-combine.h +++ b/app/core/gimpchannel-combine.h @@ -28,10 +28,10 @@ #define GIMP_TYPE_CHANNEL (gimp_channel_get_type ()) -#define GIMP_CHANNEL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CHANNEL, GimpChannel)) -#define GIMP_CHANNEL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL, GimpChannelClass)) -#define GIMP_IS_CHANNEL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CHANNEL)) -#define GIMP_IS_CHANNEL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL)) +#define GIMP_CHANNEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CHANNEL, GimpChannel)) +#define GIMP_CHANNEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL, GimpChannelClass)) +#define GIMP_IS_CHANNEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CHANNEL)) +#define GIMP_IS_CHANNEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL)) typedef struct _GimpChannelClass GimpChannelClass; diff --git a/app/core/gimpchannel.c b/app/core/gimpchannel.c index a50d79e507..46efdd06c8 100644 --- a/app/core/gimpchannel.c +++ b/app/core/gimpchannel.c @@ -90,7 +90,7 @@ gimp_channel_class_init (GimpChannelClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAWABLE); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_channel_destroy; } @@ -1512,7 +1512,7 @@ gimp_channel_translate (GimpChannel *mask, copy_region (&srcPR, &destPR); /* free the temporary mask */ - gtk_object_unref (GTK_OBJECT (tmp_mask)); + g_object_unref (G_OBJECT (tmp_mask)); } /* calculate new bounds */ diff --git a/app/core/gimpchannel.h b/app/core/gimpchannel.h index 980666e5b0..21392182dd 100644 --- a/app/core/gimpchannel.h +++ b/app/core/gimpchannel.h @@ -28,10 +28,10 @@ #define GIMP_TYPE_CHANNEL (gimp_channel_get_type ()) -#define GIMP_CHANNEL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CHANNEL, GimpChannel)) -#define GIMP_CHANNEL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL, GimpChannelClass)) -#define GIMP_IS_CHANNEL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CHANNEL)) -#define GIMP_IS_CHANNEL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL)) +#define GIMP_CHANNEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CHANNEL, GimpChannel)) +#define GIMP_CHANNEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL, GimpChannelClass)) +#define GIMP_IS_CHANNEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CHANNEL)) +#define GIMP_IS_CHANNEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL)) typedef struct _GimpChannelClass GimpChannelClass; diff --git a/app/core/gimpcontainer.c b/app/core/gimpcontainer.c index 1a6f004c1f..34dca843f3 100644 --- a/app/core/gimpcontainer.c +++ b/app/core/gimpcontainer.c @@ -31,11 +31,11 @@ typedef struct _GimpContainerHandler { - gchar *signame; - GtkSignalFunc func; - gpointer user_data; + gchar *signame; + GCallback callback; + gpointer callback_data; - GQuark quark; /* used to attach the signal id's of child signals */ + GQuark quark; /* used to attach the signal id's of child signals */ } GimpContainerHandler; @@ -69,10 +69,10 @@ static guint container_signals[LAST_SIGNAL] = { 0 }; static GimpObjectClass *parent_class = NULL; -GtkType +GType gimp_container_get_type (void) { - static GtkType container_type = 0; + static GType container_type = 0; if (! container_type) { @@ -112,111 +112,109 @@ gimp_container_class_init (GimpContainerClass* klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); container_signals[ADD] = - gtk_signal_new ("add", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - add), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_OBJECT); + g_signal_new ("add", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerClass, add), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_OBJECT); container_signals[REMOVE] = - gtk_signal_new ("remove", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - remove), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_OBJECT); + g_signal_new ("remove", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerClass, remove), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_OBJECT); container_signals[REORDER] = - gtk_signal_new ("reorder", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - reorder), - gimp_marshal_NONE__OBJECT_INT, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_INT); + g_signal_new ("reorder", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerClass, reorder), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_INT, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_INT); container_signals[HAVE] = - gtk_signal_new ("have", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - have), - gtk_marshal_BOOL__POINTER, - GTK_TYPE_BOOL, 1, - GIMP_TYPE_OBJECT); + g_signal_new ("have", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerClass, have), + NULL, NULL, + gimp_cclosure_marshal_BOOLEAN__OBJECT, + G_TYPE_BOOLEAN, 1, + GIMP_TYPE_OBJECT); container_signals[FOREACH] = - gtk_signal_new ("foreach", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - foreach), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("foreach", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerClass, foreach), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_POINTER, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_POINTER); container_signals[GET_CHILD_BY_NAME] = - gtk_signal_new ("get_child_by_name", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - get_child_by_name), - gimp_marshal_POINTER__POINTER, - GIMP_TYPE_OBJECT, 1, - GTK_TYPE_POINTER); + g_signal_new ("get_child_by_name", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerClass, get_child_by_name), + NULL, NULL, + gimp_cclosure_marshal_OBJECT__POINTER, + GIMP_TYPE_OBJECT, 1, + G_TYPE_POINTER); container_signals[GET_CHILD_BY_INDEX] = - gtk_signal_new ("get_child_by_index", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - get_child_by_index), - gimp_marshal_POINTER__INT, - GIMP_TYPE_OBJECT, 1, - GTK_TYPE_INT); + g_signal_new ("get_child_by_index", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerClass, get_child_by_index), + NULL, NULL, + gimp_cclosure_marshal_OBJECT__INT, + GIMP_TYPE_OBJECT, 1, + G_TYPE_INT); container_signals[GET_CHILD_INDEX] = - gtk_signal_new ("get_child_index", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - get_child_index), - gtk_marshal_INT__POINTER, - GTK_TYPE_INT, 1, - GIMP_TYPE_OBJECT); + g_signal_new ("get_child_index", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerClass, get_child_index), + NULL, NULL, + gimp_cclosure_marshal_INT__OBJECT, + G_TYPE_INT, 1, + GIMP_TYPE_OBJECT); container_signals[FREEZE] = - gtk_signal_new ("freeze", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - freeze), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("freeze", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerClass, freeze), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); container_signals[THAW] = - gtk_signal_new ("thaw", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerClass, - thaw), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("thaw", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerClass, thaw), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, container_signals, LAST_SIGNAL); - - object_class->destroy = gimp_container_destroy; + object_class->destroy = gimp_container_destroy; klass->add = NULL; klass->remove = NULL; @@ -259,7 +257,7 @@ gimp_container_child_destroy_callback (GtkObject *object, gimp_container_remove (container, GIMP_OBJECT (object)); } -GtkType +GType gimp_container_children_type (const GimpContainer *container) { return container->children_type; @@ -285,12 +283,10 @@ gimp_container_add (GimpContainer *container, GList *list; guint handler_id; - g_return_val_if_fail (container != NULL, FALSE); g_return_val_if_fail (GIMP_IS_CONTAINER (container), FALSE); - g_return_val_if_fail (object != NULL, FALSE); - g_return_val_if_fail (GTK_CHECK_TYPE (object, container->children_type), - FALSE); + g_return_val_if_fail (g_type_instance_is_a ((GTypeInstance *) object, + container->children_type), FALSE); if (gimp_container_have (container, object)) { @@ -303,13 +299,13 @@ gimp_container_add (GimpContainer *container, { handler = (GimpContainerHandler *) list->data; - handler_id = gtk_signal_connect (GTK_OBJECT (object), - handler->signame, - handler->func, - handler->user_data); + handler_id = g_signal_connect (G_OBJECT (object), + handler->signame, + handler->callback, + handler->callback_data); - gtk_object_set_data_by_id (GTK_OBJECT (object), handler->quark, - GUINT_TO_POINTER (handler_id)); + g_object_set_qdata (G_OBJECT (object), handler->quark, + GUINT_TO_POINTER (handler_id)); } switch (container->policy) @@ -320,15 +316,15 @@ gimp_container_add (GimpContainer *container, break; case GIMP_CONTAINER_POLICY_WEAK: - gtk_signal_connect (GTK_OBJECT (object), "destroy", - GTK_SIGNAL_FUNC (gimp_container_child_destroy_callback), - container); + g_signal_connect (G_OBJECT (object), "destroy", + G_CALLBACK (gimp_container_child_destroy_callback), + container); break; } container->num_children++; - gtk_signal_emit (GTK_OBJECT (container), container_signals[ADD], object); + g_signal_emit (GTK_OBJECT (container), container_signals[ADD], 0, object); return TRUE; } @@ -341,12 +337,10 @@ gimp_container_remove (GimpContainer *container, GList *list; guint handler_id; - g_return_val_if_fail (container, FALSE); g_return_val_if_fail (GIMP_IS_CONTAINER (container), FALSE); - g_return_val_if_fail (object != NULL, FALSE); - g_return_val_if_fail (GTK_CHECK_TYPE (object, container->children_type), - FALSE); + g_return_val_if_fail (g_type_instance_is_a ((GTypeInstance *) object, + container->children_type), FALSE); if (! gimp_container_have (container, object)) { @@ -360,13 +354,13 @@ gimp_container_remove (GimpContainer *container, handler = (GimpContainerHandler *) list->data; handler_id = GPOINTER_TO_UINT - (gtk_object_get_data_by_id (GTK_OBJECT (object), handler->quark)); + (g_object_get_qdata (G_OBJECT (object), handler->quark)); if (handler_id) { - gtk_signal_disconnect (GTK_OBJECT (object), handler_id); + g_signal_handler_disconnect (G_OBJECT (object), handler_id); - gtk_object_set_data_by_id (GTK_OBJECT (object), handler->quark, NULL); + g_object_set_qdata (G_OBJECT (object), handler->quark, NULL); } } @@ -379,17 +373,17 @@ gimp_container_remove (GimpContainer *container, break; case GIMP_CONTAINER_POLICY_WEAK: - gtk_signal_disconnect_by_func - (GTK_OBJECT (object), - GTK_SIGNAL_FUNC (gimp_container_child_destroy_callback), + g_signal_handlers_disconnect_by_func + (G_OBJECT (object), + G_CALLBACK (gimp_container_child_destroy_callback), container); break; } container->num_children--; - gtk_signal_emit (GTK_OBJECT (container), container_signals[REMOVE], - object); + g_signal_emit (GTK_OBJECT (container), container_signals[REMOVE], 0, + object); gtk_object_unref (GTK_OBJECT (object)); @@ -401,12 +395,10 @@ gimp_container_insert (GimpContainer *container, GimpObject *object, gint index) { - g_return_val_if_fail (container != NULL, FALSE); g_return_val_if_fail (GIMP_IS_CONTAINER (container), FALSE); - g_return_val_if_fail (object != NULL, FALSE); - g_return_val_if_fail (GTK_CHECK_TYPE (object, container->children_type), - FALSE); + g_return_val_if_fail (g_type_instance_is_a ((GTypeInstance *) object, + container->children_type), FALSE); g_return_val_if_fail (index >= -1 && index <= container->num_children, FALSE); @@ -431,12 +423,10 @@ gimp_container_reorder (GimpContainer *container, GimpObject *object, gint new_index) { - g_return_val_if_fail (container, FALSE); g_return_val_if_fail (GIMP_IS_CONTAINER (container), FALSE); - g_return_val_if_fail (object != NULL, FALSE); - g_return_val_if_fail (GTK_CHECK_TYPE (object, container->children_type), - FALSE); + g_return_val_if_fail (g_type_instance_is_a ((GTypeInstance *) object, + container->children_type), FALSE); g_return_val_if_fail (new_index >= -1 && new_index < container->num_children, FALSE); @@ -448,8 +438,8 @@ gimp_container_reorder (GimpContainer *container, return FALSE; } - gtk_signal_emit (GTK_OBJECT (container), container_signals[REORDER], - object, new_index); + g_signal_emit (G_OBJECT (container), container_signals[REORDER], 0, + object, new_index); return TRUE; } @@ -460,14 +450,13 @@ gimp_container_have (GimpContainer *container, { gboolean have = FALSE; - g_return_val_if_fail (container != NULL, FALSE); g_return_val_if_fail (GIMP_IS_CONTAINER (container), FALSE); if (container->num_children < 1) return FALSE; - gtk_signal_emit (GTK_OBJECT (container), container_signals[HAVE], - object, &have); + g_signal_emit (G_OBJECT (container), container_signals[HAVE], 0, + object, &have); return have; } @@ -477,13 +466,12 @@ gimp_container_foreach (GimpContainer *container, GFunc func, gpointer user_data) { - g_return_if_fail (container != NULL); g_return_if_fail (GIMP_IS_CONTAINER (container)); g_return_if_fail (func != NULL); if (container->num_children > 0) - gtk_signal_emit (GTK_OBJECT (container), container_signals[FOREACH], - func, user_data); + g_signal_emit (G_OBJECT (container), container_signals[FOREACH], 0, + func, user_data); } GimpObject * @@ -492,12 +480,11 @@ gimp_container_get_child_by_name (const GimpContainer *container, { GimpObject *object = NULL; - g_return_val_if_fail (container != NULL, NULL); g_return_val_if_fail (GIMP_IS_CONTAINER (container), NULL); g_return_val_if_fail (name != NULL, NULL); - gtk_signal_emit (GTK_OBJECT (container), container_signals[GET_CHILD_BY_NAME], - name, &object); + g_signal_emit (G_OBJECT (container), container_signals[GET_CHILD_BY_NAME], 0, + name, &object); return object; } @@ -508,12 +495,11 @@ gimp_container_get_child_by_index (const GimpContainer *container, { GimpObject *object = NULL; - g_return_val_if_fail (container != NULL, NULL); g_return_val_if_fail (GIMP_IS_CONTAINER (container), NULL); g_return_val_if_fail (index >= 0 && index < container->num_children, NULL); - gtk_signal_emit (GTK_OBJECT (container), container_signals[GET_CHILD_BY_INDEX], - index, &object); + g_signal_emit (G_OBJECT (container), container_signals[GET_CHILD_BY_INDEX], 0, + index, &object); return object; } @@ -524,13 +510,13 @@ gimp_container_get_child_index (const GimpContainer *container, { gint index = -1; - g_return_val_if_fail (container != NULL, -1); g_return_val_if_fail (GIMP_IS_CONTAINER (container), -1); g_return_val_if_fail (object != NULL, -1); - g_return_val_if_fail (GTK_CHECK_TYPE (object, container->children_type), -1); + g_return_val_if_fail (g_type_instance_is_a ((GTypeInstance *) object, + container->children_type), -1); - gtk_signal_emit (GTK_OBJECT (container), container_signals[GET_CHILD_INDEX], - object, &index); + g_signal_emit (G_OBJECT (container), container_signals[GET_CHILD_INDEX], 0, + object, &index); return index; } @@ -538,32 +524,29 @@ gimp_container_get_child_index (const GimpContainer *container, void gimp_container_freeze (GimpContainer *container) { - g_return_if_fail (container != NULL); g_return_if_fail (GIMP_IS_CONTAINER (container)); container->freeze_count++; if (container->freeze_count == 1) - gtk_signal_emit (GTK_OBJECT (container), container_signals[FREEZE]); + g_signal_emit (G_OBJECT (container), container_signals[FREEZE], 0); } void gimp_container_thaw (GimpContainer *container) { - g_return_if_fail (container != NULL); g_return_if_fail (GIMP_IS_CONTAINER (container)); if (container->freeze_count > 0) container->freeze_count--; if (container->freeze_count == 0) - gtk_signal_emit (GTK_OBJECT (container), container_signals[THAW]); + g_signal_emit (G_OBJECT (container), container_signals[THAW], 0); } gboolean gimp_container_frozen (GimpContainer *container) { - g_return_val_if_fail (container != NULL, FALSE); g_return_val_if_fail (GIMP_IS_CONTAINER (container), FALSE); return (container->freeze_count > 0) ? TRUE : FALSE; @@ -575,41 +558,39 @@ gimp_container_add_handler_foreach_func (GimpObject *object, { guint handler_id; - handler_id = gtk_signal_connect (GTK_OBJECT (object), - handler->signame, - handler->func, - handler->user_data); + handler_id = g_signal_connect (G_OBJECT (object), + handler->signame, + handler->callback, + handler->callback_data); - gtk_object_set_data_by_id (GTK_OBJECT (object), handler->quark, - GUINT_TO_POINTER (handler_id)); + g_object_set_qdata (G_OBJECT (object), handler->quark, + GUINT_TO_POINTER (handler_id)); } GQuark gimp_container_add_handler (GimpContainer *container, const gchar *signame, - GtkSignalFunc callback, + GCallback callback, gpointer callback_data) { GimpContainerHandler *handler; gchar *key; - g_return_val_if_fail (container != NULL, 0); g_return_val_if_fail (GIMP_IS_CONTAINER (container), 0); g_return_val_if_fail (signame != NULL, 0); - g_return_val_if_fail (gtk_signal_lookup (signame, - container->children_type), 0); + g_return_val_if_fail (g_signal_lookup (signame, container->children_type), 0); g_return_val_if_fail (callback != NULL, 0); - handler = g_new (GimpContainerHandler, 1); + handler = g_new0 (GimpContainerHandler, 1); /* create a unique key for this handler */ key = g_strdup_printf ("%s-%p", signame, handler); - handler->signame = g_strdup (signame); - handler->func = callback; - handler->user_data = callback_data; - handler->quark = g_quark_from_string (key); + handler->signame = g_strdup (signame); + handler->callback = callback; + handler->callback_data = callback_data; + handler->quark = g_quark_from_string (key); g_free (key); @@ -629,14 +610,14 @@ gimp_container_remove_handler_foreach_func (GimpObject *object, guint handler_id; handler_id = - GPOINTER_TO_UINT (gtk_object_get_data_by_id (GTK_OBJECT (object), - handler->quark)); + GPOINTER_TO_UINT (g_object_get_qdata (G_OBJECT (object), + handler->quark)); if (handler_id) { - gtk_signal_disconnect (GTK_OBJECT (object), handler_id); + g_signal_handler_disconnect (G_OBJECT (object), handler_id); - gtk_object_set_data_by_id (GTK_OBJECT (object), handler->quark, NULL); + g_object_set_qdata (G_OBJECT (object), handler->quark, NULL); } } diff --git a/app/core/gimpcontainer.h b/app/core/gimpcontainer.h index 1338bbff81..7acd495771 100644 --- a/app/core/gimpcontainer.h +++ b/app/core/gimpcontainer.h @@ -34,10 +34,10 @@ typedef enum #define GIMP_TYPE_CONTAINER (gimp_container_get_type ()) -#define GIMP_CONTAINER(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONTAINER, GimpContainer)) -#define GIMP_CONTAINER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER, GimpContainerClass)) -#define GIMP_IS_CONTAINER(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONTAINER)) -#define GIMP_IS_CONTAINER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER)) +#define GIMP_CONTAINER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTAINER, GimpContainer)) +#define GIMP_CONTAINER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER, GimpContainerClass)) +#define GIMP_IS_CONTAINER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONTAINER)) +#define GIMP_IS_CONTAINER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER)) typedef struct _GimpContainerClass GimpContainerClass; @@ -47,7 +47,7 @@ struct _GimpContainer GimpObject parent_instance; /* public, read-only */ - GtkType children_type; + GType children_type; GimpContainerPolicy policy; gint num_children; @@ -83,9 +83,9 @@ struct _GimpContainerClass }; -GtkType gimp_container_get_type (void); +GType gimp_container_get_type (void); -GtkType gimp_container_children_type (const GimpContainer *container); +GType gimp_container_children_type (const GimpContainer *container); GimpContainerPolicy gimp_container_policy (const GimpContainer *container); gint gimp_container_num_children (const GimpContainer *container); @@ -119,8 +119,8 @@ gboolean gimp_container_frozen (GimpContainer *container); GQuark gimp_container_add_handler (GimpContainer *container, const gchar *signame, - GtkSignalFunc handler, - gpointer user_data); + GCallback callback, + gpointer callback_data); void gimp_container_remove_handler (GimpContainer *container, GQuark id); diff --git a/app/core/gimpcontext.c b/app/core/gimpcontext.c index a8023fbfb5..790e317fb3 100644 --- a/app/core/gimpcontext.c +++ b/app/core/gimpcontext.c @@ -51,14 +51,6 @@ typedef void (* GimpContextCopyArgFunc) (GimpContext *src, GimpContext *dest); -#define context_return_if_fail(context) \ - g_return_if_fail ((context) != NULL); \ - g_return_if_fail (GIMP_IS_CONTEXT (context)) - -#define context_return_val_if_fail(context,val) \ - g_return_val_if_fail ((context) != NULL, (val)); \ - g_return_val_if_fail (GIMP_IS_CONTEXT (context), (val)) - #define context_find_defined(context,arg_mask) \ while (!(((context)->defined_args) & arg_mask) && (context)->parent) \ (context) = (context)->parent @@ -262,15 +254,15 @@ static GimpContextCopyArgFunc gimp_context_copy_arg_funcs[] = gimp_context_copy_buffer }; -static GtkType gimp_context_arg_types[] = +static GType gimp_context_arg_types[] = { 0, - GTK_TYPE_NONE, + G_TYPE_NONE, 0, - GTK_TYPE_NONE, - GTK_TYPE_NONE, - GTK_TYPE_NONE, - GTK_TYPE_NONE, + G_TYPE_NONE, + G_TYPE_NONE, + G_TYPE_NONE, + G_TYPE_NONE, 0, 0, 0, @@ -294,20 +286,20 @@ static gchar *gimp_context_signal_names[] = "buffer_changed" }; -static GtkSignalFunc gimp_context_signal_handlers[] = +static GCallback gimp_context_signal_handlers[] = { - gimp_context_real_set_image, - gimp_context_real_set_display, - gimp_context_real_set_tool, - gimp_context_real_set_foreground, - gimp_context_real_set_background, - gimp_context_real_set_opacity, - gimp_context_real_set_paint_mode, - gimp_context_real_set_brush, - gimp_context_real_set_pattern, - gimp_context_real_set_gradient, - gimp_context_real_set_palette, - gimp_context_real_set_buffer + G_CALLBACK (gimp_context_real_set_image), + G_CALLBACK (gimp_context_real_set_display), + G_CALLBACK (gimp_context_real_set_tool), + G_CALLBACK (gimp_context_real_set_foreground), + G_CALLBACK (gimp_context_real_set_background), + G_CALLBACK (gimp_context_real_set_opacity), + G_CALLBACK (gimp_context_real_set_paint_mode), + G_CALLBACK (gimp_context_real_set_brush), + G_CALLBACK (gimp_context_real_set_pattern), + G_CALLBACK (gimp_context_real_set_gradient), + G_CALLBACK (gimp_context_real_set_palette), + G_CALLBACK (gimp_context_real_set_buffer) }; @@ -326,7 +318,7 @@ gimp_context_class_init (GimpContextClass *klass) object_class = GTK_OBJECT_CLASS (klass); - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); gimp_context_arg_types[GIMP_CONTEXT_ARG_IMAGE] = GIMP_TYPE_IMAGE; gimp_context_arg_types[GIMP_CONTEXT_ARG_TOOL] = GIMP_TYPE_TOOL_INFO; @@ -374,131 +366,128 @@ gimp_context_class_init (GimpContextClass *klass) ARG_BUFFER); gimp_context_signals[IMAGE_CHANGED] = - gtk_signal_new (gimp_context_signal_names[IMAGE_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - image_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[IMAGE_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, image_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[DISPLAY_CHANGED] = - gtk_signal_new (gimp_context_signal_names[DISPLAY_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - display_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[DISPLAY_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, display_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[TOOL_CHANGED] = - gtk_signal_new (gimp_context_signal_names[TOOL_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - tool_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[TOOL_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, tool_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[FOREGROUND_CHANGED] = - gtk_signal_new (gimp_context_signal_names[FOREGROUND_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - foreground_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[FOREGROUND_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, foreground_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[BACKGROUND_CHANGED] = - gtk_signal_new (gimp_context_signal_names[BACKGROUND_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - background_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[BACKGROUND_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, background_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[OPACITY_CHANGED] = - gtk_signal_new (gimp_context_signal_names[OPACITY_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - opacity_changed), - gimp_marshal_NONE__DOUBLE, - GTK_TYPE_NONE, 1, - GTK_TYPE_DOUBLE); + g_signal_new (gimp_context_signal_names[OPACITY_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, opacity_changed), + NULL, NULL, + g_cclosure_marshal_VOID__DOUBLE, + G_TYPE_NONE, 1, + G_TYPE_DOUBLE); gimp_context_signals[PAINT_MODE_CHANGED] = - gtk_signal_new (gimp_context_signal_names[PAINT_MODE_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - paint_mode_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new (gimp_context_signal_names[PAINT_MODE_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, paint_mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_context_signals[BRUSH_CHANGED] = - gtk_signal_new (gimp_context_signal_names[BRUSH_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - brush_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[BRUSH_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, brush_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[PATTERN_CHANGED] = - gtk_signal_new (gimp_context_signal_names[PATTERN_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - pattern_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[PATTERN_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, pattern_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[GRADIENT_CHANGED] = - gtk_signal_new (gimp_context_signal_names[GRADIENT_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - gradient_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[GRADIENT_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, gradient_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[PALETTE_CHANGED] = - gtk_signal_new (gimp_context_signal_names[PALETTE_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - palette_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[PALETTE_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, palette_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_context_signals[BUFFER_CHANGED] = - gtk_signal_new (gimp_context_signal_names[BUFFER_CHANGED], - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContextClass, - buffer_changed), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new (gimp_context_signal_names[BUFFER_CHANGED], + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContextClass, buffer_changed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); - gtk_object_class_add_signals (object_class, gimp_context_signals, - LAST_SIGNAL); - - object_class->set_arg = gimp_context_set_arg; - object_class->get_arg = gimp_context_get_arg; - object_class->destroy = gimp_context_destroy; + object_class->set_arg = gimp_context_set_arg; + object_class->get_arg = gimp_context_get_arg; + object_class->destroy = gimp_context_destroy; klass->image_changed = NULL; klass->display_changed = NULL; @@ -741,10 +730,10 @@ gimp_context_get_arg (GtkObject *object, /*****************************************************************************/ /* public functions ********************************************************/ -GtkType +GType gimp_context_get_type (void) { - static GtkType context_type = 0; + static GType context_type = 0; if (! context_type) { @@ -784,76 +773,64 @@ gimp_context_new (Gimp *gimp, gimp_object_set_name (GIMP_OBJECT (context), name); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->images), "remove", - GTK_SIGNAL_FUNC (gimp_context_image_removed), - context, - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (gimp->images), "remove", + G_CALLBACK (gimp_context_image_removed), + G_OBJECT (context), + 0); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->tool_info_list), - "remove", - GTK_SIGNAL_FUNC (gimp_context_tool_removed), - context, - GTK_OBJECT (context)); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->tool_info_list), - "thaw", - GTK_SIGNAL_FUNC (gimp_context_tool_list_thaw), - context, - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (gimp->tool_info_list), "remove", + G_CALLBACK (gimp_context_tool_removed), + G_OBJECT (context), + 0); + g_signal_connect_object (G_OBJECT (gimp->tool_info_list), "thaw", + G_CALLBACK (gimp_context_tool_list_thaw), + G_OBJECT (context), + 0); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->brush_factory->container), - "remove", - GTK_SIGNAL_FUNC (gimp_context_brush_removed), - context, - GTK_OBJECT (context)); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->brush_factory->container), - "thaw", - GTK_SIGNAL_FUNC (gimp_context_brush_list_thaw), - context, - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (gimp->brush_factory->container), "remove", + G_CALLBACK (gimp_context_brush_removed), + G_OBJECT (context), + 0); + g_signal_connect_object (G_OBJECT (gimp->brush_factory->container), "thaw", + G_CALLBACK (gimp_context_brush_list_thaw), + G_OBJECT (context), + 0); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->pattern_factory->container), - "remove", - GTK_SIGNAL_FUNC (gimp_context_pattern_removed), - context, - GTK_OBJECT (context)); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->pattern_factory->container), - "thaw", - GTK_SIGNAL_FUNC (gimp_context_pattern_list_thaw), - context, - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (gimp->pattern_factory->container), "remove", + G_CALLBACK (gimp_context_pattern_removed), + G_OBJECT (context), + 0); + g_signal_connect_object (G_OBJECT (gimp->pattern_factory->container), "thaw", + G_CALLBACK (gimp_context_pattern_list_thaw), + G_OBJECT (context), + 0); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->gradient_factory->container), - "remove", - GTK_SIGNAL_FUNC (gimp_context_gradient_removed), - context, - GTK_OBJECT (context)); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->gradient_factory->container), - "thaw", - GTK_SIGNAL_FUNC (gimp_context_gradient_list_thaw), - context, - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (gimp->gradient_factory->container), "remove", + G_CALLBACK (gimp_context_gradient_removed), + G_OBJECT (context), + 0); + g_signal_connect_object (G_OBJECT (gimp->gradient_factory->container), "thaw", + G_CALLBACK (gimp_context_gradient_list_thaw), + G_OBJECT (context), + 0); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->palette_factory->container), - "remove", - GTK_SIGNAL_FUNC (gimp_context_palette_removed), - context, - GTK_OBJECT (context)); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->palette_factory->container), - "thaw", - GTK_SIGNAL_FUNC (gimp_context_palette_list_thaw), - context, - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (gimp->palette_factory->container), "remove", + G_CALLBACK (gimp_context_palette_removed), + G_OBJECT (context), + 0); + g_signal_connect_object (G_OBJECT (gimp->palette_factory->container), "thaw", + G_CALLBACK (gimp_context_palette_list_thaw), + G_OBJECT (context), + 0); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->named_buffers), - "remove", - GTK_SIGNAL_FUNC (gimp_context_buffer_removed), - context, - GTK_OBJECT (context)); - gtk_signal_connect_while_alive (GTK_OBJECT (gimp->named_buffers), - "thaw", - GTK_SIGNAL_FUNC (gimp_context_buffer_list_thaw), - context, - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (gimp->named_buffers), "remove", + G_CALLBACK (gimp_context_buffer_removed), + G_OBJECT (context), + 0); + g_signal_connect_object (G_OBJECT (gimp->named_buffers), "thaw", + G_CALLBACK (gimp_context_buffer_list_thaw), + G_OBJECT (context), + 0); if (template) { @@ -868,7 +845,7 @@ gimp_context_new (Gimp *gimp, const gchar * gimp_context_get_name (const GimpContext *context) { - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return gimp_object_get_name (GIMP_OBJECT (context)); } @@ -877,7 +854,7 @@ void gimp_context_set_name (GimpContext *context, const gchar *name) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); if (! name) name = "Unnamed"; @@ -888,7 +865,7 @@ gimp_context_set_name (GimpContext *context, GimpContext * gimp_context_get_parent (const GimpContext *context) { - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->parent; } @@ -899,7 +876,7 @@ gimp_context_set_parent (GimpContext *context, { GimpContextArgType arg; - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); g_return_if_fail (!parent || GIMP_IS_CONTEXT (parent)); if (context == parent || context->parent == parent) @@ -909,10 +886,11 @@ gimp_context_set_parent (GimpContext *context, if (! ((1 << arg) & context->defined_args)) { gimp_context_copy_arg (parent, context, arg); - gtk_signal_connect_object (GTK_OBJECT (parent), - gimp_context_signal_names[arg], - gimp_context_signal_handlers[arg], - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (parent), + gimp_context_signal_names[arg], + gimp_context_signal_handlers[arg], + G_OBJECT (context), + G_CONNECT_SWAPPED); } context->parent = parent; @@ -921,7 +899,7 @@ gimp_context_set_parent (GimpContext *context, void gimp_context_unset_parent (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); if (context->parent) { @@ -941,7 +919,7 @@ gimp_context_define_arg (GimpContext *context, { GimpContextArgMask mask; - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); g_return_if_fail ((arg >= 0) && (arg < GIMP_CONTEXT_NUM_ARGS)); mask = (1 << arg); @@ -952,9 +930,9 @@ gimp_context_define_arg (GimpContext *context, { context->defined_args |= mask; if (context->parent) - gtk_signal_disconnect_by_func (GTK_OBJECT (context->parent), - gimp_context_signal_handlers[arg], - context); + g_signal_handlers_disconnect_by_func (G_OBJECT (context->parent), + gimp_context_signal_handlers[arg], + context); } } else @@ -965,10 +943,11 @@ gimp_context_define_arg (GimpContext *context, if (context->parent) { gimp_context_copy_arg (context->parent, context, arg); - gtk_signal_connect_object (GTK_OBJECT (context->parent), - gimp_context_signal_names[arg], - gimp_context_signal_handlers[arg], - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (context->parent), + gimp_context_signal_names[arg], + gimp_context_signal_handlers[arg], + G_OBJECT (context), + G_CONNECT_SWAPPED); } } } @@ -978,7 +957,7 @@ gboolean gimp_context_arg_defined (GimpContext *context, GimpContextArgType arg) { - context_return_val_if_fail (context, FALSE); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), FALSE); return (context->defined_args & (1 << arg)) ? TRUE : FALSE; } @@ -990,7 +969,7 @@ gimp_context_define_args (GimpContext *context, { GimpContextArgType arg; - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); for (arg = 0; arg < GIMP_CONTEXT_NUM_ARGS; arg++) if ((1 << arg) & args_mask) @@ -1004,8 +983,8 @@ gimp_context_copy_arg (GimpContext *src, GimpContext *dest, GimpContextArgType arg) { - context_return_if_fail (src); - context_return_if_fail (dest); + g_return_if_fail (GIMP_IS_CONTEXT (src)); + g_return_if_fail (GIMP_IS_CONTEXT (dest)); g_return_if_fail ((arg >= 0) && (arg < GIMP_CONTEXT_NUM_ARGS)); gimp_context_copy_arg_funcs[arg] (src, dest); @@ -1018,8 +997,8 @@ gimp_context_copy_args (GimpContext *src, { GimpContextArgType arg; - context_return_if_fail (src); - context_return_if_fail (dest); + g_return_if_fail (GIMP_IS_CONTEXT (src)); + g_return_if_fail (GIMP_IS_CONTEXT (dest)); for (arg = 0; arg < GIMP_CONTEXT_NUM_ARGS; arg++) if ((1 << arg) & args_mask) @@ -1031,16 +1010,16 @@ gimp_context_copy_args (GimpContext *src, /* attribute access functions */ /*****************************************************************************/ -/* manipulate by GtkType ***************************************************/ +/* manipulate by GType *****************************************************/ GimpContextArgType -gimp_context_type_to_arg (GtkType type) +gimp_context_type_to_arg (GType type) { gint i; for (i = 0; i < GIMP_CONTEXT_NUM_ARGS; i++) { - if (gtk_type_is_a (type, gimp_context_arg_types[i])) + if (g_type_is_a (type, gimp_context_arg_types[i])) return i; } @@ -1048,13 +1027,13 @@ gimp_context_type_to_arg (GtkType type) } const gchar * -gimp_context_type_to_signal_name (GtkType type) +gimp_context_type_to_signal_name (GType type) { gint i; for (i = 0; i < GIMP_CONTEXT_NUM_ARGS; i++) { - if (gtk_type_is_a (type, gimp_context_arg_types[i])) + if (g_type_is_a (type, gimp_context_arg_types[i])) return gimp_context_signal_names[i]; } @@ -1063,12 +1042,12 @@ gimp_context_type_to_signal_name (GtkType type) GimpObject * gimp_context_get_by_type (GimpContext *context, - GtkType type) + GType type) { GimpContextArgType arg; GimpObject *object = NULL; - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); g_return_val_if_fail ((arg = gimp_context_type_to_arg (type)) != -1, NULL); gtk_object_get (GTK_OBJECT (context), @@ -1085,7 +1064,7 @@ gimp_context_set_by_type (GimpContext *context, { GimpContextArgType arg; - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); g_return_if_fail ((arg = gimp_context_type_to_arg (type)) != -1); gtk_object_set (GTK_OBJECT (context), @@ -1095,19 +1074,19 @@ gimp_context_set_by_type (GimpContext *context, void gimp_context_changed_by_type (GimpContext *context, - GtkType type) + GType type) { GimpContextArgType arg; GimpObject *object; - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); g_return_if_fail ((arg = gimp_context_type_to_arg (type)) != -1); object = gimp_context_get_by_type (context, type); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[arg], - object); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[arg], 0, + object); } /*****************************************************************************/ @@ -1116,7 +1095,7 @@ gimp_context_changed_by_type (GimpContext *context, GimpImage * gimp_context_get_image (GimpContext *context) { - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->image; } @@ -1125,7 +1104,7 @@ void gimp_context_set_image (GimpContext *context, GimpImage *image) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_IMAGE_MASK); gimp_context_real_set_image (context, image); @@ -1134,11 +1113,11 @@ gimp_context_set_image (GimpContext *context, void gimp_context_image_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[IMAGE_CHANGED], - context->image); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[IMAGE_CHANGED], 0, + context->image); } /* handle disappearing images */ @@ -1176,7 +1155,7 @@ gimp_context_copy_image (GimpContext *src, GDisplay * gimp_context_get_display (GimpContext *context) { - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->display; } @@ -1185,7 +1164,7 @@ void gimp_context_set_display (GimpContext *context, GDisplay *display) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_DISPLAY_MASK); gimp_context_real_set_display (context, display); @@ -1194,11 +1173,11 @@ gimp_context_set_display (GimpContext *context, void gimp_context_display_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[DISPLAY_CHANGED], - context->display); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[DISPLAY_CHANGED], 0, + context->display); } /* handle dissapearing displays */ @@ -1222,11 +1201,10 @@ gimp_context_real_set_display (GimpContext *context, context); if (display) - gtk_signal_connect_while_alive - (GTK_OBJECT (display->shell), "destroy", - GTK_SIGNAL_FUNC (gimp_context_display_destroy), - context, - GTK_OBJECT (context)); + g_signal_connect_object (G_OBJECT (display->shell), "destroy", + G_CALLBACK (gimp_context_display_destroy), + G_OBJECT (context), + 0); context->display = display; @@ -1252,9 +1230,7 @@ static GimpToolInfo *standard_tool_info = NULL; GimpToolInfo * gimp_context_get_tool (GimpContext *context) { - g_return_val_if_fail (! context || GIMP_IS_CONTEXT (context), NULL); - - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->tool_info; } @@ -1266,7 +1242,7 @@ gimp_context_set_tool (GimpContext *context, g_return_if_fail (! context || GIMP_IS_CONTEXT (context)); g_return_if_fail (! tool_info || GIMP_IS_TOOL_INFO (tool_info)); - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_TOOL_MASK); gimp_context_real_set_tool (context, tool_info); @@ -1277,11 +1253,11 @@ gimp_context_tool_changed (GimpContext *context) { g_return_if_fail (! context || GIMP_IS_CONTEXT (context)); - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[TOOL_CHANGED], - context->tool_info); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[TOOL_CHANGED], 0, + context->tool_info); } /* the active tool was modified */ @@ -1331,10 +1307,10 @@ gimp_context_tool_removed (GimpContainer *container, { context->tool_info = NULL; - gtk_signal_disconnect_by_func (GTK_OBJECT (tool_info), - gimp_context_tool_dirty, - context); - gtk_object_unref (GTK_OBJECT (tool_info)); + g_signal_handlers_disconnect_by_func (G_OBJECT (tool_info), + gimp_context_tool_dirty, + context); + g_object_unref (G_OBJECT (tool_info)); if (! gimp_container_frozen (container)) gimp_context_tool_list_thaw (container, context); @@ -1360,23 +1336,26 @@ gimp_context_real_set_tool (GimpContext *context, /* disconnect from the old tool's signals */ if (context->tool_info) { - gtk_signal_disconnect_by_func (GTK_OBJECT (context->tool_info), - gimp_context_tool_dirty, - context); - gtk_object_unref (GTK_OBJECT (context->tool_info)); + g_signal_handlers_disconnect_by_func (G_OBJECT (context->tool_info), + gimp_context_tool_dirty, + context); + g_object_unref (G_OBJECT (context->tool_info)); } context->tool_info = tool_info; if (tool_info) { - gtk_object_ref (GTK_OBJECT (tool_info)); - gtk_signal_connect (GTK_OBJECT (tool_info), "invalidate_preview", - GTK_SIGNAL_FUNC (gimp_context_tool_dirty), - context); - gtk_signal_connect (GTK_OBJECT (tool_info), "name_changed", - GTK_SIGNAL_FUNC (gimp_context_tool_dirty), - context); + g_object_ref (G_OBJECT (tool_info)); + + g_signal_connect_object (G_OBJECT (tool_info), "invalidate_preview", + G_CALLBACK (gimp_context_tool_dirty), + G_OBJECT (context), + 0); + g_signal_connect_object (G_OBJECT (tool_info), "name_changed", + G_CALLBACK (gimp_context_tool_dirty), + G_OBJECT (context), + 0); if (tool_info != standard_tool_info) context->tool_name = g_strdup (GIMP_OBJECT (tool_info)->name); @@ -1407,7 +1386,7 @@ void gimp_context_get_foreground (GimpContext *context, GimpRGB *color) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); g_return_if_fail (color != NULL); @@ -1418,7 +1397,7 @@ void gimp_context_set_foreground (GimpContext *context, const GimpRGB *color) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_FOREGROUND_MASK); g_return_if_fail (color != NULL); @@ -1429,11 +1408,11 @@ gimp_context_set_foreground (GimpContext *context, void gimp_context_foreground_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[FOREGROUND_CHANGED], - &context->foreground); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[FOREGROUND_CHANGED], 0, + &context->foreground); } static void @@ -1462,7 +1441,7 @@ void gimp_context_get_background (GimpContext *context, GimpRGB *color) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); g_return_if_fail (color != NULL); @@ -1473,7 +1452,7 @@ void gimp_context_set_background (GimpContext *context, const GimpRGB *color) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_BACKGROUND_MASK); g_return_if_fail (color != NULL); @@ -1484,11 +1463,11 @@ gimp_context_set_background (GimpContext *context, void gimp_context_background_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[BACKGROUND_CHANGED], - &context->background); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[BACKGROUND_CHANGED], 0, + &context->background); } static void @@ -1522,7 +1501,7 @@ gimp_context_set_default_colors (GimpContext *context) bg_context = context; - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_FOREGROUND_MASK); context_find_defined (bg_context, GIMP_CONTEXT_BACKGROUND_MASK); @@ -1542,7 +1521,7 @@ gimp_context_swap_colors (GimpContext *context) bg_context = context; - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_FOREGROUND_MASK); context_find_defined (bg_context, GIMP_CONTEXT_BACKGROUND_MASK); @@ -1559,7 +1538,7 @@ gimp_context_swap_colors (GimpContext *context) gdouble gimp_context_get_opacity (GimpContext *context) { - context_return_val_if_fail (context, 1.0); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), 1.0); return context->opacity; } @@ -1568,7 +1547,7 @@ void gimp_context_set_opacity (GimpContext *context, gdouble opacity) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_OPACITY_MASK); gimp_context_real_set_opacity (context, opacity); @@ -1577,11 +1556,11 @@ gimp_context_set_opacity (GimpContext *context, void gimp_context_opacity_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[OPACITY_CHANGED], - context->opacity); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[OPACITY_CHANGED], 0, + context->opacity); } static void @@ -1608,9 +1587,7 @@ gimp_context_copy_opacity (GimpContext *src, LayerModeEffects gimp_context_get_paint_mode (GimpContext *context) { - g_return_val_if_fail (! context || GIMP_IS_CONTEXT (context), NORMAL_MODE); - - context_return_val_if_fail (context, 0); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NORMAL_MODE); return context->paint_mode; } @@ -1619,9 +1596,7 @@ void gimp_context_set_paint_mode (GimpContext *context, LayerModeEffects paint_mode) { - g_return_if_fail (! context || GIMP_IS_CONTEXT (context)); - - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_PAINT_MODE_MASK); gimp_context_real_set_paint_mode (context, paint_mode); @@ -1630,13 +1605,11 @@ gimp_context_set_paint_mode (GimpContext *context, void gimp_context_paint_mode_changed (GimpContext *context) { - g_return_if_fail (! context || GIMP_IS_CONTEXT (context)); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - context_return_if_fail (context); - - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[PAINT_MODE_CHANGED], - context->paint_mode); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[PAINT_MODE_CHANGED], 0, + context->paint_mode); } static void @@ -1665,9 +1638,7 @@ static GimpBrush *standard_brush = NULL; GimpBrush * gimp_context_get_brush (GimpContext *context) { - g_return_val_if_fail (! context || GIMP_IS_CONTEXT (context), NULL); - - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->brush; } @@ -1679,7 +1650,7 @@ gimp_context_set_brush (GimpContext *context, g_return_if_fail (! context || GIMP_IS_CONTEXT (context)); g_return_if_fail (! brush || GIMP_IS_BRUSH (brush)); - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_BRUSH_MASK); gimp_context_real_set_brush (context, brush); @@ -1690,11 +1661,11 @@ gimp_context_brush_changed (GimpContext *context) { g_return_if_fail (! context || GIMP_IS_CONTEXT (context)); - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[BRUSH_CHANGED], - context->brush); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[BRUSH_CHANGED], 0, + context->brush); } /* the active brush was modified */ @@ -1744,10 +1715,10 @@ gimp_context_brush_removed (GimpContainer *container, { context->brush = NULL; - gtk_signal_disconnect_by_func (GTK_OBJECT (brush), - gimp_context_brush_dirty, - context); - gtk_object_unref (GTK_OBJECT (brush)); + g_signal_handlers_disconnect_by_func (G_OBJECT (brush), + gimp_context_brush_dirty, + context); + g_object_unref (G_OBJECT (brush)); if (! gimp_container_frozen (container)) gimp_context_brush_list_thaw (container, context); @@ -1773,7 +1744,7 @@ gimp_context_real_set_brush (GimpContext *context, /* make sure the active brush is swapped before we get a new one... */ if (base_config->stingy_memory_use && context->brush && context->brush->mask && - GTK_OBJECT (context->brush)->ref_count == 2) + G_OBJECT (context->brush)->ref_count == 2) { temp_buf_swap (brush->mask); } @@ -1781,28 +1752,31 @@ gimp_context_real_set_brush (GimpContext *context, /* disconnect from the old brush's signals */ if (context->brush) { - gtk_signal_disconnect_by_func (GTK_OBJECT (context->brush), - gimp_context_brush_dirty, - context); - gtk_object_unref (GTK_OBJECT (context->brush)); + g_signal_handlers_disconnect_by_func (G_OBJECT (context->brush), + gimp_context_brush_dirty, + context); + g_object_unref (G_OBJECT (context->brush)); } context->brush = brush; if (brush) { - gtk_object_ref (GTK_OBJECT (brush)); - gtk_signal_connect (GTK_OBJECT (brush), "invalidate_preview", - GTK_SIGNAL_FUNC (gimp_context_brush_dirty), - context); - gtk_signal_connect (GTK_OBJECT (brush), "name_changed", - GTK_SIGNAL_FUNC (gimp_context_brush_dirty), - context); + g_object_ref (G_OBJECT (brush)); + + g_signal_connect_object (G_OBJECT (brush), "invalidate_preview", + G_CALLBACK (gimp_context_brush_dirty), + G_OBJECT (context), + 0); + g_signal_connect_object (G_OBJECT (brush), "name_changed", + G_CALLBACK (gimp_context_brush_dirty), + G_OBJECT (context), + 0); /* Make sure the active brush is unswapped... */ if (base_config->stingy_memory_use && brush->mask && - GTK_OBJECT (brush)->ref_count < 2) + G_OBJECT (brush)->ref_count < 2) { temp_buf_unswap (brush->mask); } @@ -1836,7 +1810,7 @@ static GimpPattern *standard_pattern = NULL; GimpPattern * gimp_context_get_pattern (GimpContext *context) { - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->pattern; } @@ -1845,7 +1819,7 @@ void gimp_context_set_pattern (GimpContext *context, GimpPattern *pattern) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_PATTERN_MASK); gimp_context_real_set_pattern (context, pattern); @@ -1854,11 +1828,11 @@ gimp_context_set_pattern (GimpContext *context, void gimp_context_pattern_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[PATTERN_CHANGED], - context->pattern); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[PATTERN_CHANGED], 0, + context->pattern); } /* the active pattern was modified */ @@ -1909,10 +1883,10 @@ gimp_context_pattern_removed (GimpContainer *container, { context->pattern = NULL; - gtk_signal_disconnect_by_func (GTK_OBJECT (pattern), - gimp_context_pattern_dirty, - context); - gtk_object_unref (GTK_OBJECT (pattern)); + g_signal_handlers_disconnect_by_func (G_OBJECT (pattern), + gimp_context_pattern_dirty, + context); + g_object_unref (G_OBJECT (pattern)); if (! gimp_container_frozen (container)) gimp_context_pattern_list_thaw (container, context); @@ -1938,7 +1912,7 @@ gimp_context_real_set_pattern (GimpContext *context, /* make sure the active pattern is swapped before we get a new one... */ if (base_config->stingy_memory_use && context->pattern && context->pattern->mask && - GTK_OBJECT (context->pattern)->ref_count == 2) + G_OBJECT (context->pattern)->ref_count == 2) { temp_buf_swap (pattern->mask); } @@ -1946,25 +1920,27 @@ gimp_context_real_set_pattern (GimpContext *context, /* disconnect from the old pattern's signals */ if (context->pattern) { - gtk_signal_disconnect_by_func (GTK_OBJECT (context->pattern), - gimp_context_pattern_dirty, - context); - gtk_object_unref (GTK_OBJECT (context->pattern)); + g_signal_handlers_disconnect_by_func (G_OBJECT (context->pattern), + gimp_context_pattern_dirty, + context); + g_object_unref (G_OBJECT (context->pattern)); } context->pattern = pattern; if (pattern) { - gtk_object_ref (GTK_OBJECT (pattern)); - gtk_signal_connect (GTK_OBJECT (pattern), "name_changed", - GTK_SIGNAL_FUNC (gimp_context_pattern_dirty), - context); + g_object_ref (G_OBJECT (pattern)); + + g_signal_connect_object (G_OBJECT (pattern), "name_changed", + G_CALLBACK (gimp_context_pattern_dirty), + G_OBJECT (context), + 0); /* Make sure the active pattern is unswapped... */ if (base_config->stingy_memory_use && pattern->mask && - GTK_OBJECT (pattern)->ref_count < 2) + G_OBJECT (pattern)->ref_count < 2) { temp_buf_unswap (pattern->mask); } @@ -1998,7 +1974,7 @@ static GimpGradient *standard_gradient = NULL; GimpGradient * gimp_context_get_gradient (GimpContext *context) { - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->gradient; } @@ -2007,7 +1983,7 @@ void gimp_context_set_gradient (GimpContext *context, GimpGradient *gradient) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_GRADIENT_MASK); gimp_context_real_set_gradient (context, gradient); @@ -2016,11 +1992,11 @@ gimp_context_set_gradient (GimpContext *context, void gimp_context_gradient_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[GRADIENT_CHANGED], - context->gradient); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[GRADIENT_CHANGED], 0, + context->gradient); } /* the active gradient was modified */ @@ -2071,10 +2047,10 @@ gimp_context_gradient_removed (GimpContainer *container, { context->gradient = NULL; - gtk_signal_disconnect_by_func (GTK_OBJECT (gradient), - gimp_context_gradient_dirty, - context); - gtk_object_unref (GTK_OBJECT (gradient)); + g_signal_handlers_disconnect_by_func (G_OBJECT (gradient), + gimp_context_gradient_dirty, + context); + g_object_unref (G_OBJECT (gradient)); if (! gimp_container_frozen (container)) gimp_context_gradient_list_thaw (container, context); @@ -2100,20 +2076,22 @@ gimp_context_real_set_gradient (GimpContext *context, /* disconnect from the old gradient's signals */ if (context->gradient) { - gtk_signal_disconnect_by_func (GTK_OBJECT (context->gradient), - gimp_context_gradient_dirty, - context); - gtk_object_unref (GTK_OBJECT (context->gradient)); + g_signal_handlers_disconnect_by_func (G_OBJECT (context->gradient), + gimp_context_gradient_dirty, + context); + g_object_unref (G_OBJECT (context->gradient)); } context->gradient = gradient; if (gradient) { - gtk_object_ref (GTK_OBJECT (gradient)); - gtk_signal_connect (GTK_OBJECT (gradient), "name_changed", - GTK_SIGNAL_FUNC (gimp_context_gradient_dirty), - context); + g_object_ref (G_OBJECT (gradient)); + + g_signal_connect_object (G_OBJECT (gradient), "name_changed", + G_CALLBACK (gimp_context_gradient_dirty), + G_OBJECT (context), + 0); if (gradient != standard_gradient) context->gradient_name = g_strdup (GIMP_OBJECT (gradient)->name); @@ -2145,7 +2123,7 @@ static GimpPalette *standard_palette = NULL; GimpPalette * gimp_context_get_palette (GimpContext *context) { - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->palette; } @@ -2154,7 +2132,7 @@ void gimp_context_set_palette (GimpContext *context, GimpPalette *palette) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_PALETTE_MASK); gimp_context_real_set_palette (context, palette); @@ -2163,11 +2141,11 @@ gimp_context_set_palette (GimpContext *context, void gimp_context_palette_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[PALETTE_CHANGED], - context->palette); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[PALETTE_CHANGED], 0, + context->palette); } /* the active palette was modified */ @@ -2218,10 +2196,10 @@ gimp_context_palette_removed (GimpContainer *container, { context->palette = NULL; - gtk_signal_disconnect_by_func (GTK_OBJECT (palette), - gimp_context_palette_dirty, - context); - gtk_object_unref (GTK_OBJECT (palette)); + g_signal_handlers_disconnect_by_func (G_OBJECT (palette), + gimp_context_palette_dirty, + context); + g_object_unref (G_OBJECT (palette)); if (! gimp_container_frozen (container)) gimp_context_palette_list_thaw (container, context); @@ -2247,20 +2225,22 @@ gimp_context_real_set_palette (GimpContext *context, /* disconnect from the old palette's signals */ if (context->palette) { - gtk_signal_disconnect_by_func (GTK_OBJECT (context->palette), - gimp_context_palette_dirty, - context); - gtk_object_unref (GTK_OBJECT (context->palette)); + g_signal_handlers_disconnect_by_func (G_OBJECT (context->palette), + gimp_context_palette_dirty, + context); + g_object_unref (G_OBJECT (context->palette)); } context->palette = palette; if (palette) { - gtk_object_ref (GTK_OBJECT (palette)); - gtk_signal_connect (GTK_OBJECT (palette), "name_changed", - GTK_SIGNAL_FUNC (gimp_context_palette_dirty), - context); + g_object_ref (G_OBJECT (palette)); + + g_signal_connect_object (G_OBJECT (palette), "name_changed", + G_CALLBACK (gimp_context_palette_dirty), + G_OBJECT (context), + 0); if (palette != standard_palette) context->palette_name = g_strdup (GIMP_OBJECT (palette)->name); @@ -2293,7 +2273,7 @@ static GimpBuffer *standard_buffer = NULL; GimpBuffer * gimp_context_get_buffer (GimpContext *context) { - context_return_val_if_fail (context, NULL); + g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL); return context->buffer; } @@ -2302,7 +2282,7 @@ void gimp_context_set_buffer (GimpContext *context, GimpBuffer *buffer) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); context_find_defined (context, GIMP_CONTEXT_BUFFER_MASK); gimp_context_real_set_buffer (context, buffer); @@ -2311,11 +2291,11 @@ gimp_context_set_buffer (GimpContext *context, void gimp_context_buffer_changed (GimpContext *context) { - context_return_if_fail (context); + g_return_if_fail (GIMP_IS_CONTEXT (context)); - gtk_signal_emit (GTK_OBJECT (context), - gimp_context_signals[BUFFER_CHANGED], - context->buffer); + g_signal_emit (G_OBJECT (context), + gimp_context_signals[BUFFER_CHANGED], 0, + context->buffer); } /* the active buffer was modified */ @@ -2375,10 +2355,10 @@ gimp_context_buffer_removed (GimpContainer *container, { context->buffer = NULL; - gtk_signal_disconnect_by_func (GTK_OBJECT (buffer), - gimp_context_buffer_dirty, - context); - gtk_object_unref (GTK_OBJECT (buffer)); + g_signal_handlers_disconnect_by_func (G_OBJECT (buffer), + gimp_context_buffer_dirty, + context); + g_object_unref (G_OBJECT (buffer)); if (! gimp_container_frozen (container)) gimp_context_buffer_list_thaw (container, context); @@ -2408,20 +2388,22 @@ gimp_context_real_set_buffer (GimpContext *context, /* disconnect from the old buffer's signals */ if (context->buffer) { - gtk_signal_disconnect_by_func (GTK_OBJECT (context->buffer), - gimp_context_buffer_dirty, - context); - gtk_object_unref (GTK_OBJECT (context->buffer)); + g_signal_handlers_disconnect_by_func (G_OBJECT (context->buffer), + gimp_context_buffer_dirty, + context); + g_object_unref (G_OBJECT (context->buffer)); } context->buffer = buffer; if (buffer) { - gtk_object_ref (GTK_OBJECT (buffer)); - gtk_signal_connect (GTK_OBJECT (buffer), "name_changed", - GTK_SIGNAL_FUNC (gimp_context_buffer_dirty), - context); + g_object_ref (G_OBJECT (buffer)); + + g_signal_connect_object (G_OBJECT (buffer), "name_changed", + G_CALLBACK (gimp_context_buffer_dirty), + G_OBJECT (context), + 0); /* if (buffer != standard_buffer) diff --git a/app/core/gimpcontext.h b/app/core/gimpcontext.h index c1dd4a15df..1ceac2b217 100644 --- a/app/core/gimpcontext.h +++ b/app/core/gimpcontext.h @@ -76,10 +76,10 @@ typedef enum #define GIMP_TYPE_CONTEXT (gimp_context_get_type ()) -#define GIMP_CONTEXT(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONTEXT, GimpContext)) -#define GIMP_CONTEXT_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_CONTEXT, GimpContextClass)) -#define GIMP_IS_CONTEXT(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONTEXT)) -#define GIMP_IS_CONTEXT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTEXT)) +#define GIMP_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTEXT, GimpContext)) +#define GIMP_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_CONTEXT, GimpContextClass)) +#define GIMP_IS_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONTEXT)) +#define GIMP_IS_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTEXT)) typedef struct _GimpContextClass GimpContextClass; @@ -154,7 +154,7 @@ struct _GimpContextClass }; -GtkType gimp_context_get_type (void); +GType gimp_context_get_type (void); GimpContext * gimp_context_new (Gimp *gimp, const gchar *name, @@ -195,17 +195,17 @@ void gimp_context_copy_args (GimpContext *src, GimpContextArgMask args_mask); -/* manipulate by GtkType */ -GimpContextArgType gimp_context_type_to_arg (GtkType type); -const gchar * gimp_context_type_to_signal_name (GtkType type); +/* manipulate by GType */ +GimpContextArgType gimp_context_type_to_arg (GType type); +const gchar * gimp_context_type_to_signal_name (GType type); GimpObject * gimp_context_get_by_type (GimpContext *context, - GtkType type); + GType type); void gimp_context_set_by_type (GimpContext *context, - GtkType type, + GType type, GimpObject *object); void gimp_context_changed_by_type (GimpContext *context, - GtkType type); + GType type); /* image */ diff --git a/app/core/gimpdata.c b/app/core/gimpdata.c index b5dbb1f599..e4f16cd836 100644 --- a/app/core/gimpdata.c +++ b/app/core/gimpdata.c @@ -61,10 +61,10 @@ static guint data_signals[LAST_SIGNAL] = { 0 }; static GimpViewableClass *parent_class = NULL; -GtkType +GType gimp_data_get_type (void) { - static GtkType data_type = 0; + static GType data_type = 0; if (! data_type) { @@ -95,54 +95,52 @@ gimp_data_class_init (GimpDataClass *klass) object_class = (GtkObjectClass *) klass; gimp_object_class = (GimpObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); data_signals[DIRTY] = - gtk_signal_new ("dirty", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDataClass, - dirty), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("dirty", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpDataClass, dirty), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); data_signals[SAVE] = - gtk_signal_new ("save", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDataClass, - save), - gtk_marshal_BOOL__NONE, - GTK_TYPE_BOOL, 0); + g_signal_new ("save", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpDataClass, save), + NULL, NULL, + gimp_cclosure_marshal_BOOLEAN__VOID, + G_TYPE_BOOLEAN, 0); data_signals[GET_EXTENSION] = - gtk_signal_new ("get_extension", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDataClass, - get_extension), - gimp_marshal_POINTER__NONE, - GTK_TYPE_POINTER, 0); + g_signal_new ("get_extension", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpDataClass, get_extension), + NULL, NULL, + gimp_cclosure_marshal_POINTER__VOID, + G_TYPE_POINTER, 0); data_signals[DUPLICATE] = - gtk_signal_new ("duplicate", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDataClass, - duplicate), - gimp_marshal_POINTER__NONE, - GTK_TYPE_POINTER, 0); + g_signal_new ("duplicate", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpDataClass, duplicate), + NULL, NULL, + gimp_cclosure_marshal_POINTER__VOID, + G_TYPE_POINTER, 0); - gtk_object_class_add_signals (object_class, data_signals, LAST_SIGNAL); - - object_class->destroy = gimp_data_destroy; + object_class->destroy = gimp_data_destroy; gimp_object_class->name_changed = gimp_data_name_changed; - klass->dirty = gimp_data_real_dirty; - klass->save = NULL; - klass->get_extension = NULL; - klass->duplicate = NULL; + klass->dirty = gimp_data_real_dirty; + klass->save = NULL; + klass->get_extension = NULL; + klass->duplicate = NULL; } static void @@ -179,7 +177,6 @@ gimp_data_save (GimpData *data) { gboolean success = FALSE; - g_return_val_if_fail (data != NULL, FALSE); g_return_val_if_fail (GIMP_IS_DATA (data), FALSE); if (! data->filename) @@ -189,8 +186,8 @@ gimp_data_save (GimpData *data) return FALSE; } - gtk_signal_emit (GTK_OBJECT (data), data_signals[SAVE], - &success); + g_signal_emit (G_OBJECT (data), data_signals[SAVE], 0, + &success); if (success) data->dirty = FALSE; @@ -201,10 +198,9 @@ gimp_data_save (GimpData *data) void gimp_data_dirty (GimpData *data) { - g_return_if_fail (data != NULL); g_return_if_fail (GIMP_IS_DATA (data)); - gtk_signal_emit (GTK_OBJECT (data), data_signals[DIRTY]); + g_signal_emit (G_OBJECT (data), data_signals[DIRTY], 0); } static void @@ -218,7 +214,6 @@ gimp_data_real_dirty (GimpData *data) gboolean gimp_data_delete_from_disk (GimpData *data) { - g_return_val_if_fail (data != NULL, FALSE); g_return_val_if_fail (GIMP_IS_DATA (data), FALSE); g_return_val_if_fail (data->filename != NULL, FALSE); @@ -237,11 +232,10 @@ gimp_data_get_extension (GimpData *data) { const gchar *extension = NULL; - g_return_val_if_fail (data != NULL, NULL); g_return_val_if_fail (GIMP_IS_DATA (data), NULL); - gtk_signal_emit (GTK_OBJECT (data), data_signals[GET_EXTENSION], - &extension); + g_signal_emit (G_OBJECT (data), data_signals[GET_EXTENSION], 0, + &extension); return extension; } @@ -250,7 +244,6 @@ void gimp_data_set_filename (GimpData *data, const gchar *filename) { - g_return_if_fail (data != NULL); g_return_if_fail (GIMP_IS_DATA (data)); g_free (data->filename); @@ -271,7 +264,6 @@ gimp_data_create_filename (GimpData *data, gint unum = 1; FILE *file; - g_return_if_fail (data != NULL); g_return_if_fail (GIMP_IS_DATA (data)); g_return_if_fail (basename != NULL); g_return_if_fail (data_path != NULL); @@ -318,8 +310,8 @@ gimp_data_duplicate (GimpData *data) { GimpData *new_data = NULL; - gtk_signal_emit (GTK_OBJECT (data), data_signals[DUPLICATE], - &new_data); + g_signal_emit (G_OBJECT (data), data_signals[DUPLICATE], 0, + &new_data); return new_data; } diff --git a/app/core/gimpdata.h b/app/core/gimpdata.h index 63edd62ff6..833c15031c 100644 --- a/app/core/gimpdata.h +++ b/app/core/gimpdata.h @@ -27,10 +27,11 @@ #define GIMP_TYPE_DATA (gimp_data_get_type ()) -#define GIMP_DATA(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DATA, GimpData)) -#define GIMP_DATA_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DATA, GimpDataClass)) -#define GIMP_IS_DATA(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DATA)) -#define GIMP_IS_DATA_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DATA)) +#define GIMP_DATA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DATA, GimpData)) +#define GIMP_DATA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DATA, GimpDataClass)) +#define GIMP_IS_DATA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DATA)) +#define GIMP_IS_DATA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DATA)) +#define GIMP_DATA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_DATA, GimpDataClass)) typedef struct _GimpDataClass GimpDataClass; @@ -54,7 +55,7 @@ struct _GimpDataClass }; -GtkType gimp_data_get_type (void); +GType gimp_data_get_type (void); gboolean gimp_data_save (GimpData *data); diff --git a/app/core/gimpdatafactory.c b/app/core/gimpdatafactory.c index 0efc57624b..0f7d68dc11 100644 --- a/app/core/gimpdatafactory.c +++ b/app/core/gimpdatafactory.c @@ -78,7 +78,7 @@ gimp_data_factory_class_init (GimpDataFactoryClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_data_factory_destroy; } diff --git a/app/core/gimpdatafactory.h b/app/core/gimpdatafactory.h index 6b8d9a477e..c1b5a8ee92 100644 --- a/app/core/gimpdatafactory.h +++ b/app/core/gimpdatafactory.h @@ -41,10 +41,10 @@ struct _GimpDataFactoryLoaderEntry #define GIMP_TYPE_DATA_FACTORY (gimp_data_factory_get_type ()) -#define GIMP_DATA_FACTORY(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DATA_FACTORY, GimpDataFactory)) -#define GIMP_DATA_FACTORY_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DATA_FACTORY, GimpDataFactoryClass)) -#define GIMP_IS_DATA_FACTORY(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DATA_FACTORY)) -#define GIMP_IS_DATA_FACTORY_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DATA_FACTORY)) +#define GIMP_DATA_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DATA_FACTORY, GimpDataFactory)) +#define GIMP_DATA_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DATA_FACTORY, GimpDataFactoryClass)) +#define GIMP_IS_DATA_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DATA_FACTORY)) +#define GIMP_IS_DATA_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DATA_FACTORY)) typedef struct _GimpDataFactoryClass GimpDataFactoryClass; diff --git a/app/core/gimpdatalist.c b/app/core/gimpdatalist.c index 7b90e8023c..6f34098385 100644 --- a/app/core/gimpdatalist.c +++ b/app/core/gimpdatalist.c @@ -86,7 +86,7 @@ gimp_data_list_class_init (GimpDataListClass *klass) container_class = (GimpContainerClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_LIST); + parent_class = g_type_class_peek_parent (klass); container_class->add = gimp_data_list_add; container_class->remove = gimp_data_list_remove; @@ -124,7 +124,7 @@ gimp_data_list_remove (GimpContainer *container, list = GIMP_LIST (container); gtk_signal_disconnect_by_func (GTK_OBJECT (object), - gimp_data_list_object_renamed_callback, + G_CALLBACK (gimp_data_list_object_renamed_callback), container); list->list = g_list_remove (list->list, object); @@ -225,7 +225,7 @@ gimp_data_list_uniquefy_data_name (GimpDataList *data_list, if (have) gtk_signal_handler_block_by_func (GTK_OBJECT (object), - gimp_data_list_object_renamed_callback, + G_CALLBACK (gimp_data_list_object_renamed_callback), data_list); gimp_object_set_name (object, new_name); @@ -233,7 +233,7 @@ gimp_data_list_uniquefy_data_name (GimpDataList *data_list, if (have) gtk_signal_handler_unblock_by_func (GTK_OBJECT (object), - gimp_data_list_object_renamed_callback, + G_CALLBACK (gimp_data_list_object_renamed_callback), data_list); g_free (new_name); diff --git a/app/core/gimpdatalist.h b/app/core/gimpdatalist.h index 2241f8b4d8..e36f1fafa3 100644 --- a/app/core/gimpdatalist.h +++ b/app/core/gimpdatalist.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_DATA_LIST (gimp_data_list_get_type ()) -#define GIMP_DATA_LIST(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DATA_LIST, GimpDataList)) -#define GIMP_DATA_LIST_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_DATA_LIST, GimpDataListClass)) -#define GIMP_IS_DATA_LIST(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DATA_LIST)) -#define GIMP_IS_DATA_LIST_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DATA_LIST)) +#define GIMP_DATA_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DATA_LIST, GimpDataList)) +#define GIMP_DATA_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_DATA_LIST, GimpDataListClass)) +#define GIMP_IS_DATA_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DATA_LIST)) +#define GIMP_IS_DATA_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DATA_LIST)) typedef struct _GimpDataListClass GimpDataListClass; diff --git a/app/core/gimpdrawable-blend.c b/app/core/gimpdrawable-blend.c index 2dbdad46c3..0b2b6d8942 100644 --- a/app/core/gimpdrawable-blend.c +++ b/app/core/gimpdrawable-blend.c @@ -709,51 +709,60 @@ blend_options_new (void) /* the blend mode menu */ options->blend_mode_w = gimp_option_menu_new2 - (FALSE, gimp_menu_item_update, - &options->blend_mode, (gpointer) options->blend_mode_d, + (FALSE, + G_CALLBACK (gimp_menu_item_update), + &options->blend_mode, + GINT_TO_POINTER (options->blend_mode_d), - _("FG to BG (RGB)"), (gpointer) FG_BG_RGB_MODE, NULL, - _("FG to BG (HSV)"), (gpointer) FG_BG_HSV_MODE, NULL, - _("FG to Transparent"), (gpointer) FG_TRANS_MODE, NULL, - _("Custom Gradient"), (gpointer) CUSTOM_MODE, NULL, + _("FG to BG (RGB)"), GINT_TO_POINTER (FG_BG_RGB_MODE), NULL, + _("FG to BG (HSV)"), GINT_TO_POINTER (FG_BG_HSV_MODE), NULL, + _("FG to Transparent"), GINT_TO_POINTER (FG_TRANS_MODE), NULL, + _("Custom Gradient"), GINT_TO_POINTER (CUSTOM_MODE), NULL, NULL); + gimp_table_attach_aligned (GTK_TABLE (table), 0, 1, _("Blend:"), 1.0, 0.5, options->blend_mode_w, 1, TRUE); /* the gradient type menu */ options->gradient_type_w = gimp_option_menu_new2 - (FALSE, gradient_type_callback, - &options->gradient_type, (gpointer) options->gradient_type_d, + (FALSE, + G_CALLBACK (gradient_type_callback), + &options->gradient_type, + GINT_TO_POINTER (options->gradient_type_d), - _("Linear"), (gpointer) LINEAR, NULL, - _("Bi-Linear"), (gpointer) BILINEAR, NULL, - _("Radial"), (gpointer) RADIAL, NULL, - _("Square"), (gpointer) SQUARE, NULL, - _("Conical (symmetric)"), (gpointer) CONICAL_SYMMETRIC, NULL, - _("Conical (asymmetric)"), (gpointer) CONICAL_ASYMMETRIC, NULL, - _("Shapeburst (angular)"), (gpointer) SHAPEBURST_ANGULAR, NULL, - _("Shapeburst (spherical)"), (gpointer) SHAPEBURST_SPHERICAL, NULL, - _("Shapeburst (dimpled)"), (gpointer) SHAPEBURST_DIMPLED, NULL, - _("Spiral (clockwise)"), (gpointer) SPIRAL_CLOCKWISE, NULL, - _("Spiral (anticlockwise)"), (gpointer) SPIRAL_ANTICLOCKWISE, NULL, + _("Linear"), GINT_TO_POINTER (LINEAR), NULL, + _("Bi-Linear"), GINT_TO_POINTER (BILINEAR), NULL, + _("Radial"), GINT_TO_POINTER (RADIAL), NULL, + _("Square"), GINT_TO_POINTER (SQUARE), NULL, + _("Conical (symmetric)"), GINT_TO_POINTER (CONICAL_SYMMETRIC), NULL, + _("Conical (asymmetric)"), GINT_TO_POINTER (CONICAL_ASYMMETRIC), NULL, + _("Shapeburst (angular)"), GINT_TO_POINTER (SHAPEBURST_ANGULAR), NULL, + _("Shapeburst (spherical)"), GINT_TO_POINTER (SHAPEBURST_SPHERICAL), NULL, + _("Shapeburst (dimpled)"), GINT_TO_POINTER (SHAPEBURST_DIMPLED), NULL, + _("Spiral (clockwise)"), GINT_TO_POINTER (SPIRAL_CLOCKWISE), NULL, + _("Spiral (anticlockwise)"), GINT_TO_POINTER (SPIRAL_ANTICLOCKWISE), NULL, NULL); + gimp_table_attach_aligned (GTK_TABLE (table), 0, 2, _("Gradient:"), 1.0, 0.5, options->gradient_type_w, 1, TRUE); /* the repeat option */ options->repeat_w = gimp_option_menu_new2 - (FALSE, gimp_menu_item_update, - &options->repeat, (gpointer) options->repeat_d, + (FALSE, + G_CALLBACK (gimp_menu_item_update), + &options->repeat, + GINT_TO_POINTER (options->repeat_d), - _("None"), (gpointer) REPEAT_NONE, NULL, - _("Sawtooth Wave"), (gpointer) REPEAT_SAWTOOTH, NULL, - _("Triangular Wave"), (gpointer) REPEAT_TRIANGULAR, NULL, + _("None"), GINT_TO_POINTER (REPEAT_NONE), NULL, + _("Sawtooth Wave"), GINT_TO_POINTER (REPEAT_SAWTOOTH), NULL, + _("Triangular Wave"), GINT_TO_POINTER (REPEAT_TRIANGULAR), NULL, NULL); + gimp_table_attach_aligned (GTK_TABLE (table), 0, 3, _("Repeat:"), 1.0, 0.5, options->repeat_w, 1, TRUE); diff --git a/app/core/gimpdrawable-transform.c b/app/core/gimpdrawable-transform.c index f491d437bd..e2df8f913a 100644 --- a/app/core/gimpdrawable-transform.c +++ b/app/core/gimpdrawable-transform.c @@ -136,14 +136,16 @@ static void gimp_transform_tool_draw (GimpDrawTool *draw_too static TranInfo old_trans_info; InfoDialog *transform_info = NULL; static gboolean transform_info_inited = FALSE; -static GimpDrawToolClass *parent_class = NULL; -static guint gimp_transform_tool_signals[LAST_SIGNAL] = { 0 }; + +static GimpDrawToolClass *parent_class = NULL; + +static guint gimp_transform_tool_signals[LAST_SIGNAL] = { 0 }; -GtkType +GType gimp_transform_tool_get_type (void) { - static GtkType tool_type = 0; + static GType tool_type = 0; if (! tool_type) { @@ -176,21 +178,18 @@ gimp_transform_tool_class_init (GimpTransformToolClass *klass) tool_class = (GimpToolClass *) klass; draw_class = (GimpDrawToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAW_TOOL); + parent_class = g_type_class_peek_parent (klass); gimp_transform_tool_signals[TRANSFORM] = - gtk_signal_new ("transform", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpTransformToolClass, - transform), - gimp_marshal_POINTER__POINTER_INT, - GTK_TYPE_POINTER, 2, - GTK_TYPE_POINTER, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_transform_tool_signals, - LAST_SIGNAL); + g_signal_new ("transform", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpTransformToolClass, transform), + NULL, NULL, + gimp_cclosure_marshal_POINTER__POINTER_INT, + G_TYPE_POINTER, 2, + G_TYPE_POINTER, + G_TYPE_INT); object_class->destroy = gimp_transform_tool_destroy; @@ -452,7 +451,7 @@ gimp_transform_tool_button_press (GimpTool *tool, if (transform_info && !transform_info_inited) { - GtkType tool_type; + GType tool_type; tool_type = gimp_context_get_tool (gimp_get_user_context (gdisp->gimage->gimp))->tool_type; @@ -611,7 +610,7 @@ gimp_transform_tool_doit (GimpTransformTool *gt_tool, /* create and initialize the transform_undo structure */ tu = g_new0 (TransformUndo, 1); tu->tool_ID = tool->ID; - tu->tool_type = GTK_OBJECT (tool)->klass->type; + tu->tool_type = G_TYPE_FROM_INSTANCE (tool); for (i = 0; i < TRAN_INFO_SIZE; i++) tu->trans_info[i] = old_trans_info[i]; diff --git a/app/core/gimpdrawable.c b/app/core/gimpdrawable.c index 7ad33a4190..129aceee6b 100644 --- a/app/core/gimpdrawable.c +++ b/app/core/gimpdrawable.c @@ -114,28 +114,25 @@ gimp_drawable_class_init (GimpDrawableClass *klass) gimp_object_class = (GimpObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); gimp_drawable_signals[VISIBILITY_CHANGED] = - gtk_signal_new ("visibility_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDrawableClass, - visibility_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("visibility_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpDrawableClass, visibility_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_drawable_signals[REMOVED] = - gtk_signal_new ("removed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDrawableClass, - removed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, gimp_drawable_signals, - LAST_SIGNAL); + g_signal_new ("removed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpDrawableClass, removed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = gimp_drawable_destroy; @@ -183,13 +180,19 @@ gimp_drawable_destroy (GtkObject *object) GINT_TO_POINTER (drawable->ID)); if (drawable->tiles) - tile_manager_destroy (drawable->tiles); + { + tile_manager_destroy (drawable->tiles); + drawable->tiles = NULL; + } if (drawable->preview_cache) gimp_preview_cache_invalidate (&drawable->preview_cache); if (drawable->parasites) - gtk_object_unref (GTK_OBJECT (drawable->parasites)); + { + g_object_unref (G_OBJECT (drawable->parasites)); + drawable->parasites = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -656,7 +659,7 @@ gimp_drawable_removed (GimpDrawable *drawable) g_return_if_fail (drawable != NULL); g_return_if_fail (GIMP_IS_DRAWABLE (drawable)); - gtk_signal_emit (GTK_OBJECT (drawable), gimp_drawable_signals[REMOVED]); + g_signal_emit (G_OBJECT (drawable), gimp_drawable_signals[REMOVED], 0); } gboolean @@ -732,8 +735,8 @@ gimp_drawable_set_visible (GimpDrawable *drawable, { drawable->visible = visible; - gtk_signal_emit (GTK_OBJECT (drawable), - gimp_drawable_signals[VISIBILITY_CHANGED]); + g_signal_emit (G_OBJECT (drawable), + gimp_drawable_signals[VISIBILITY_CHANGED], 0); gimp_drawable_update (drawable, 0, 0, diff --git a/app/core/gimpdrawable.h b/app/core/gimpdrawable.h index 89404dbf24..e643cca319 100644 --- a/app/core/gimpdrawable.h +++ b/app/core/gimpdrawable.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_DRAWABLE (gimp_drawable_get_type ()) -#define GIMP_DRAWABLE(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE, GimpDrawable)) -#define GIMP_IS_DRAWABLE(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE)) -#define GIMP_DRAWABLE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE, GimpDrawableClass)) -#define GIMP_IS_DRAWABLE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE)) +#define GIMP_DRAWABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE, GimpDrawable)) +#define GIMP_IS_DRAWABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DRAWABLE)) +#define GIMP_DRAWABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE, GimpDrawableClass)) +#define GIMP_IS_DRAWABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE)) typedef struct _GimpDrawableClass GimpDrawableClass; diff --git a/app/core/gimpgradient.c b/app/core/gimpgradient.c index b2b45327f9..f9bb9f58d5 100644 --- a/app/core/gimpgradient.c +++ b/app/core/gimpgradient.c @@ -69,10 +69,10 @@ static gdouble gimp_gradient_calc_sphere_decreasing_factor (gdouble middle, static GimpDataClass *parent_class = NULL; -GtkType +GType gimp_gradient_get_type (void) { - static GtkType gradient_type = 0; + static GType gradient_type = 0; if (! gradient_type) { @@ -105,7 +105,7 @@ gimp_gradient_class_init (GimpGradientClass *klass) viewable_class = (GimpViewableClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_gradient_destroy; @@ -478,7 +478,6 @@ gimp_gradient_get_color_at (GimpGradient *gradient, gdouble middle; GimpRGB rgb; - g_return_if_fail (gradient != NULL); g_return_if_fail (GIMP_IS_GRADIENT (gradient)); g_return_if_fail (color != NULL); @@ -611,7 +610,6 @@ gimp_gradient_get_segment_at (GimpGradient *gradient, { GimpGradientSegment *seg; - g_return_val_if_fail (gradient != NULL, NULL); g_return_val_if_fail (GIMP_IS_GRADIENT (gradient), NULL); /* handle FP imprecision at the edges of the gradient */ diff --git a/app/core/gimpgradient.h b/app/core/gimpgradient.h index 60ab8a076d..b65a7bf81e 100644 --- a/app/core/gimpgradient.h +++ b/app/core/gimpgradient.h @@ -59,10 +59,10 @@ struct _GimpGradientSegment #define GIMP_TYPE_GRADIENT (gimp_gradient_get_type ()) -#define GIMP_GRADIENT(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_GRADIENT, GimpGradient)) -#define GIMP_GRADIENT_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_GRADIENT, GimpGradientClass)) -#define GIMP_IS_GRADIENT(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_GRADIENT)) -#define GIMP_IS_GRADIENT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_GRADIENT)) +#define GIMP_GRADIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_GRADIENT, GimpGradient)) +#define GIMP_GRADIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_GRADIENT, GimpGradientClass)) +#define GIMP_IS_GRADIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_GRADIENT)) +#define GIMP_IS_GRADIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_GRADIENT)) typedef struct _GimpGradientClass GimpGradientClass; @@ -83,7 +83,7 @@ struct _GimpGradientClass }; -GtkType gimp_gradient_get_type (void); +GType gimp_gradient_get_type (void); GimpData * gimp_gradient_new (const gchar *name); GimpData * gimp_gradient_get_standard (void); diff --git a/app/core/gimpimage-guides.c b/app/core/gimpimage-guides.c index 4007ec2d63..411947d053 100644 --- a/app/core/gimpimage-guides.c +++ b/app/core/gimpimage-guides.c @@ -184,26 +184,29 @@ static guint gimp_image_signals[LAST_SIGNAL] = { 0 }; static GimpViewableClass *parent_class = NULL; -GtkType +GType gimp_image_get_type (void) { - static GtkType image_type = 0; + static GType image_type = 0; if (! image_type) { - GtkTypeInfo image_info = + static const GTypeInfo image_info = { - "GimpImage", - sizeof (GimpImage), sizeof (GimpImageClass), - (GtkClassInitFunc) gimp_image_class_init, - (GtkObjectInitFunc) gimp_image_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, + NULL, /* base_init */ + NULL, /* base_finalize */ + (GClassInitFunc) gimp_image_class_init, + NULL, /* class_finalize */ + NULL, /* class_data */ + sizeof (GimpImage), + 0, /* n_preallocs */ + (GInstanceInitFunc) gimp_image_init, }; - image_type = gtk_type_unique (GIMP_TYPE_VIEWABLE, &image_info); + image_type = g_type_register_static (GIMP_TYPE_VIEWABLE, + "GimpImage", + &image_info, 0); } return image_type; @@ -220,134 +223,132 @@ gimp_image_class_init (GimpImageClass *klass) gimp_object_class = (GimpObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); gimp_image_signals[MODE_CHANGED] = - gtk_signal_new ("mode_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mode_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mode_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ALPHA_CHANGED] = - gtk_signal_new ("alpha_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - alpha_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("alpha_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, alpha_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[FLOATING_SELECTION_CHANGED] = - gtk_signal_new ("floating_selection_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - floating_selection_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("floating_selection_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, floating_selection_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_LAYER_CHANGED] = - gtk_signal_new ("active_layer_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_layer_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_layer_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_layer_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_CHANNEL_CHANGED] = - gtk_signal_new ("active_channel_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_channel_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_channel_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_channel_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[COMPONENT_VISIBILITY_CHANGED] = - gtk_signal_new ("component_visibility_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_visibility_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_visibility_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_visibility_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[COMPONENT_ACTIVE_CHANGED] = - gtk_signal_new ("component_active_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_active_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_active_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_active_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[MASK_CHANGED] = - gtk_signal_new ("mask_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mask_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mask_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mask_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[CLEAN] = - gtk_signal_new ("clean", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - clean), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clean", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, clean), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[DIRTY] = - gtk_signal_new ("dirty", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - dirty), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("dirty", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, dirty), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[UPDATE] = - gtk_signal_new ("update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - update), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); + g_signal_new ("update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, update), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); gimp_image_signals[COLORMAP_CHANGED] = - gtk_signal_new ("colormap_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - colormap_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("colormap_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, colormap_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[UNDO_EVENT] = - gtk_signal_new ("undo_event", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - undo_event), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_image_signals, LAST_SIGNAL); + g_signal_new ("undo_event", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, undo_event), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); object_class->destroy = gimp_image_destroy; @@ -466,25 +467,25 @@ gimp_image_destroy (GtkObject *object) if (gimage->cmap) g_free (gimage->cmap); - gtk_object_unref (GTK_OBJECT (gimage->layers)); - gtk_object_unref (GTK_OBJECT (gimage->channels)); + g_object_unref (G_OBJECT (gimage->layers)); + g_object_unref (G_OBJECT (gimage->channels)); g_slist_free (gimage->layer_stack); - gtk_object_unref (GTK_OBJECT (gimage->selection_mask)); + g_object_unref (G_OBJECT (gimage->selection_mask)); if (gimage->comp_preview) temp_buf_free (gimage->comp_preview); if (gimage->parasites) - gtk_object_unref (GTK_OBJECT (gimage->parasites)); + g_object_unref (G_OBJECT (gimage->parasites)); g_list_foreach (gimage->guides, (GFunc) g_free, NULL); g_list_free (gimage->guides); undo_free (gimage); - gtk_object_unref (GTK_OBJECT (gimage->new_undo_stack)); - gtk_object_unref (GTK_OBJECT (gimage->new_redo_stack)); + g_object_unref (G_OBJECT (gimage->new_undo_stack)); + g_object_unref (G_OBJECT (gimage->new_redo_stack)); } static void @@ -1712,9 +1713,8 @@ gimp_image_colormap_changed (GimpImage *gimage, g_return_if_fail (GIMP_IS_IMAGE (gimage)); g_return_if_fail (col < gimage->num_cols); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COLORMAP_CHANGED], - col); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[COLORMAP_CHANGED], 0, + col); } void @@ -1722,7 +1722,7 @@ gimp_image_mode_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MODE_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MODE_CHANGED], 0); } void @@ -1730,7 +1730,7 @@ gimp_image_mask_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MASK_CHANGED], 0); } void @@ -1738,7 +1738,7 @@ gimp_image_alpha_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED], 0); } void @@ -1746,8 +1746,8 @@ gimp_image_floating_selection_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[FLOATING_SELECTION_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[FLOATING_SELECTION_CHANGED], 0); } void @@ -1759,8 +1759,8 @@ gimp_image_update (GimpImage *gimage, { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UPDATE], - x, y, width, height); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UPDATE], 0, + x, y, width, height); } @@ -2556,9 +2556,9 @@ gimp_image_set_component_active (GimpImage *gimage, */ gimp_image_unset_active_channel (gimage); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_ACTIVE_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_ACTIVE_CHANGED], 0, + type); } } @@ -2624,9 +2624,9 @@ gimp_image_set_component_visible (GimpImage *gimage, { gimage->visible[pixel] = visible ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], 0, + type); } } @@ -2714,15 +2714,15 @@ gimp_image_set_active_layer (GimpImage *gimage, { gimage->active_layer = layer; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); if (gimage->active_channel) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); } } @@ -2750,15 +2750,15 @@ gimp_image_set_active_channel (GimpImage *gimage, { gimage->active_channel = channel; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->active_layer) { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } @@ -2779,8 +2779,8 @@ gimp_image_unset_active_channel (GimpImage *gimage) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->layer_stack) { @@ -3555,7 +3555,7 @@ gimp_image_remove_layer (GimpImage *gimage, undo_push_layer (gimage, LAYER_REMOVE_UNDO, lu); - gtk_object_ref (GTK_OBJECT (layer)); + g_object_ref (G_OBJECT (layer)); gimp_container_remove (gimage->layers, GIMP_OBJECT (layer)); gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer); @@ -3578,15 +3578,15 @@ gimp_image_remove_layer (GimpImage *gimage, { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } /* Send out REMOVED signal from layer */ gimp_drawable_removed (GIMP_DRAWABLE (layer)); - gtk_object_unref (GTK_OBJECT (layer)); + g_object_unref (G_OBJECT (layer)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3751,7 +3751,7 @@ gimp_image_remove_channel (GimpImage *gimage, cu->prev_channel = gimp_image_get_active_channel (gimage); undo_push_channel (gimage, CHANNEL_REMOVE_UNDO, cu); - gtk_object_ref (GTK_OBJECT (channel)); + g_object_ref (G_OBJECT (channel)); gimp_container_remove (gimage->channels, GIMP_OBJECT (channel)); @@ -3773,7 +3773,7 @@ gimp_image_remove_channel (GimpImage *gimage, } } - gtk_object_unref (GTK_OBJECT (channel)); + g_object_unref (G_OBJECT (channel)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3912,7 +3912,8 @@ void gimp_image_undo_event (GimpImage *gimage, gint event) { - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], event); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], 0, + event); } @@ -3952,7 +3953,8 @@ gimp_image_dirty (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty++; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[DIRTY]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[DIRTY], 0); TRC (("dirty %d -> %d\n", gimage->dirty-1, gimage->dirty)); @@ -3965,7 +3967,8 @@ gimp_image_clean (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty--; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); TRC (("clean %d -> %d\n", gimage->dirty+1, gimage->dirty)); @@ -3979,7 +3982,7 @@ gimp_image_clean_all (GimpImage *gimage) gimage->dirty = 0; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); } GimpLayer * diff --git a/app/core/gimpimage-guides.h b/app/core/gimpimage-guides.h index d2ffb3a2b0..574d6b2b7b 100644 --- a/app/core/gimpimage-guides.h +++ b/app/core/gimpimage-guides.h @@ -49,10 +49,10 @@ struct _GimpGuide #define GIMP_TYPE_IMAGE (gimp_image_get_type ()) -#define GIMP_IMAGE(obj) (GTK_CHECK_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) -#define GIMP_IS_IMAGE(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE)) -#define GIMP_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) -#define GIMP_IS_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) +#define GIMP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) +#define GIMP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) typedef struct _GimpImageClass GimpImageClass; diff --git a/app/core/gimpimage-merge.c b/app/core/gimpimage-merge.c index 4007ec2d63..411947d053 100644 --- a/app/core/gimpimage-merge.c +++ b/app/core/gimpimage-merge.c @@ -184,26 +184,29 @@ static guint gimp_image_signals[LAST_SIGNAL] = { 0 }; static GimpViewableClass *parent_class = NULL; -GtkType +GType gimp_image_get_type (void) { - static GtkType image_type = 0; + static GType image_type = 0; if (! image_type) { - GtkTypeInfo image_info = + static const GTypeInfo image_info = { - "GimpImage", - sizeof (GimpImage), sizeof (GimpImageClass), - (GtkClassInitFunc) gimp_image_class_init, - (GtkObjectInitFunc) gimp_image_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, + NULL, /* base_init */ + NULL, /* base_finalize */ + (GClassInitFunc) gimp_image_class_init, + NULL, /* class_finalize */ + NULL, /* class_data */ + sizeof (GimpImage), + 0, /* n_preallocs */ + (GInstanceInitFunc) gimp_image_init, }; - image_type = gtk_type_unique (GIMP_TYPE_VIEWABLE, &image_info); + image_type = g_type_register_static (GIMP_TYPE_VIEWABLE, + "GimpImage", + &image_info, 0); } return image_type; @@ -220,134 +223,132 @@ gimp_image_class_init (GimpImageClass *klass) gimp_object_class = (GimpObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); gimp_image_signals[MODE_CHANGED] = - gtk_signal_new ("mode_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mode_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mode_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ALPHA_CHANGED] = - gtk_signal_new ("alpha_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - alpha_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("alpha_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, alpha_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[FLOATING_SELECTION_CHANGED] = - gtk_signal_new ("floating_selection_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - floating_selection_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("floating_selection_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, floating_selection_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_LAYER_CHANGED] = - gtk_signal_new ("active_layer_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_layer_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_layer_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_layer_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_CHANNEL_CHANGED] = - gtk_signal_new ("active_channel_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_channel_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_channel_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_channel_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[COMPONENT_VISIBILITY_CHANGED] = - gtk_signal_new ("component_visibility_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_visibility_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_visibility_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_visibility_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[COMPONENT_ACTIVE_CHANGED] = - gtk_signal_new ("component_active_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_active_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_active_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_active_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[MASK_CHANGED] = - gtk_signal_new ("mask_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mask_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mask_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mask_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[CLEAN] = - gtk_signal_new ("clean", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - clean), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clean", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, clean), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[DIRTY] = - gtk_signal_new ("dirty", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - dirty), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("dirty", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, dirty), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[UPDATE] = - gtk_signal_new ("update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - update), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); + g_signal_new ("update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, update), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); gimp_image_signals[COLORMAP_CHANGED] = - gtk_signal_new ("colormap_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - colormap_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("colormap_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, colormap_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[UNDO_EVENT] = - gtk_signal_new ("undo_event", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - undo_event), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_image_signals, LAST_SIGNAL); + g_signal_new ("undo_event", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, undo_event), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); object_class->destroy = gimp_image_destroy; @@ -466,25 +467,25 @@ gimp_image_destroy (GtkObject *object) if (gimage->cmap) g_free (gimage->cmap); - gtk_object_unref (GTK_OBJECT (gimage->layers)); - gtk_object_unref (GTK_OBJECT (gimage->channels)); + g_object_unref (G_OBJECT (gimage->layers)); + g_object_unref (G_OBJECT (gimage->channels)); g_slist_free (gimage->layer_stack); - gtk_object_unref (GTK_OBJECT (gimage->selection_mask)); + g_object_unref (G_OBJECT (gimage->selection_mask)); if (gimage->comp_preview) temp_buf_free (gimage->comp_preview); if (gimage->parasites) - gtk_object_unref (GTK_OBJECT (gimage->parasites)); + g_object_unref (G_OBJECT (gimage->parasites)); g_list_foreach (gimage->guides, (GFunc) g_free, NULL); g_list_free (gimage->guides); undo_free (gimage); - gtk_object_unref (GTK_OBJECT (gimage->new_undo_stack)); - gtk_object_unref (GTK_OBJECT (gimage->new_redo_stack)); + g_object_unref (G_OBJECT (gimage->new_undo_stack)); + g_object_unref (G_OBJECT (gimage->new_redo_stack)); } static void @@ -1712,9 +1713,8 @@ gimp_image_colormap_changed (GimpImage *gimage, g_return_if_fail (GIMP_IS_IMAGE (gimage)); g_return_if_fail (col < gimage->num_cols); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COLORMAP_CHANGED], - col); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[COLORMAP_CHANGED], 0, + col); } void @@ -1722,7 +1722,7 @@ gimp_image_mode_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MODE_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MODE_CHANGED], 0); } void @@ -1730,7 +1730,7 @@ gimp_image_mask_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MASK_CHANGED], 0); } void @@ -1738,7 +1738,7 @@ gimp_image_alpha_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED], 0); } void @@ -1746,8 +1746,8 @@ gimp_image_floating_selection_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[FLOATING_SELECTION_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[FLOATING_SELECTION_CHANGED], 0); } void @@ -1759,8 +1759,8 @@ gimp_image_update (GimpImage *gimage, { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UPDATE], - x, y, width, height); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UPDATE], 0, + x, y, width, height); } @@ -2556,9 +2556,9 @@ gimp_image_set_component_active (GimpImage *gimage, */ gimp_image_unset_active_channel (gimage); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_ACTIVE_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_ACTIVE_CHANGED], 0, + type); } } @@ -2624,9 +2624,9 @@ gimp_image_set_component_visible (GimpImage *gimage, { gimage->visible[pixel] = visible ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], 0, + type); } } @@ -2714,15 +2714,15 @@ gimp_image_set_active_layer (GimpImage *gimage, { gimage->active_layer = layer; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); if (gimage->active_channel) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); } } @@ -2750,15 +2750,15 @@ gimp_image_set_active_channel (GimpImage *gimage, { gimage->active_channel = channel; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->active_layer) { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } @@ -2779,8 +2779,8 @@ gimp_image_unset_active_channel (GimpImage *gimage) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->layer_stack) { @@ -3555,7 +3555,7 @@ gimp_image_remove_layer (GimpImage *gimage, undo_push_layer (gimage, LAYER_REMOVE_UNDO, lu); - gtk_object_ref (GTK_OBJECT (layer)); + g_object_ref (G_OBJECT (layer)); gimp_container_remove (gimage->layers, GIMP_OBJECT (layer)); gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer); @@ -3578,15 +3578,15 @@ gimp_image_remove_layer (GimpImage *gimage, { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } /* Send out REMOVED signal from layer */ gimp_drawable_removed (GIMP_DRAWABLE (layer)); - gtk_object_unref (GTK_OBJECT (layer)); + g_object_unref (G_OBJECT (layer)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3751,7 +3751,7 @@ gimp_image_remove_channel (GimpImage *gimage, cu->prev_channel = gimp_image_get_active_channel (gimage); undo_push_channel (gimage, CHANNEL_REMOVE_UNDO, cu); - gtk_object_ref (GTK_OBJECT (channel)); + g_object_ref (G_OBJECT (channel)); gimp_container_remove (gimage->channels, GIMP_OBJECT (channel)); @@ -3773,7 +3773,7 @@ gimp_image_remove_channel (GimpImage *gimage, } } - gtk_object_unref (GTK_OBJECT (channel)); + g_object_unref (G_OBJECT (channel)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3912,7 +3912,8 @@ void gimp_image_undo_event (GimpImage *gimage, gint event) { - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], event); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], 0, + event); } @@ -3952,7 +3953,8 @@ gimp_image_dirty (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty++; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[DIRTY]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[DIRTY], 0); TRC (("dirty %d -> %d\n", gimage->dirty-1, gimage->dirty)); @@ -3965,7 +3967,8 @@ gimp_image_clean (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty--; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); TRC (("clean %d -> %d\n", gimage->dirty+1, gimage->dirty)); @@ -3979,7 +3982,7 @@ gimp_image_clean_all (GimpImage *gimage) gimage->dirty = 0; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); } GimpLayer * diff --git a/app/core/gimpimage-merge.h b/app/core/gimpimage-merge.h index d2ffb3a2b0..574d6b2b7b 100644 --- a/app/core/gimpimage-merge.h +++ b/app/core/gimpimage-merge.h @@ -49,10 +49,10 @@ struct _GimpGuide #define GIMP_TYPE_IMAGE (gimp_image_get_type ()) -#define GIMP_IMAGE(obj) (GTK_CHECK_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) -#define GIMP_IS_IMAGE(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE)) -#define GIMP_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) -#define GIMP_IS_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) +#define GIMP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) +#define GIMP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) typedef struct _GimpImageClass GimpImageClass; diff --git a/app/core/gimpimage-projection.c b/app/core/gimpimage-projection.c index 4007ec2d63..411947d053 100644 --- a/app/core/gimpimage-projection.c +++ b/app/core/gimpimage-projection.c @@ -184,26 +184,29 @@ static guint gimp_image_signals[LAST_SIGNAL] = { 0 }; static GimpViewableClass *parent_class = NULL; -GtkType +GType gimp_image_get_type (void) { - static GtkType image_type = 0; + static GType image_type = 0; if (! image_type) { - GtkTypeInfo image_info = + static const GTypeInfo image_info = { - "GimpImage", - sizeof (GimpImage), sizeof (GimpImageClass), - (GtkClassInitFunc) gimp_image_class_init, - (GtkObjectInitFunc) gimp_image_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, + NULL, /* base_init */ + NULL, /* base_finalize */ + (GClassInitFunc) gimp_image_class_init, + NULL, /* class_finalize */ + NULL, /* class_data */ + sizeof (GimpImage), + 0, /* n_preallocs */ + (GInstanceInitFunc) gimp_image_init, }; - image_type = gtk_type_unique (GIMP_TYPE_VIEWABLE, &image_info); + image_type = g_type_register_static (GIMP_TYPE_VIEWABLE, + "GimpImage", + &image_info, 0); } return image_type; @@ -220,134 +223,132 @@ gimp_image_class_init (GimpImageClass *klass) gimp_object_class = (GimpObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); gimp_image_signals[MODE_CHANGED] = - gtk_signal_new ("mode_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mode_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mode_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ALPHA_CHANGED] = - gtk_signal_new ("alpha_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - alpha_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("alpha_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, alpha_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[FLOATING_SELECTION_CHANGED] = - gtk_signal_new ("floating_selection_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - floating_selection_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("floating_selection_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, floating_selection_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_LAYER_CHANGED] = - gtk_signal_new ("active_layer_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_layer_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_layer_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_layer_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_CHANNEL_CHANGED] = - gtk_signal_new ("active_channel_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_channel_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_channel_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_channel_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[COMPONENT_VISIBILITY_CHANGED] = - gtk_signal_new ("component_visibility_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_visibility_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_visibility_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_visibility_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[COMPONENT_ACTIVE_CHANGED] = - gtk_signal_new ("component_active_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_active_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_active_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_active_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[MASK_CHANGED] = - gtk_signal_new ("mask_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mask_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mask_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mask_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[CLEAN] = - gtk_signal_new ("clean", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - clean), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clean", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, clean), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[DIRTY] = - gtk_signal_new ("dirty", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - dirty), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("dirty", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, dirty), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[UPDATE] = - gtk_signal_new ("update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - update), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); + g_signal_new ("update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, update), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); gimp_image_signals[COLORMAP_CHANGED] = - gtk_signal_new ("colormap_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - colormap_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("colormap_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, colormap_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[UNDO_EVENT] = - gtk_signal_new ("undo_event", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - undo_event), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_image_signals, LAST_SIGNAL); + g_signal_new ("undo_event", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, undo_event), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); object_class->destroy = gimp_image_destroy; @@ -466,25 +467,25 @@ gimp_image_destroy (GtkObject *object) if (gimage->cmap) g_free (gimage->cmap); - gtk_object_unref (GTK_OBJECT (gimage->layers)); - gtk_object_unref (GTK_OBJECT (gimage->channels)); + g_object_unref (G_OBJECT (gimage->layers)); + g_object_unref (G_OBJECT (gimage->channels)); g_slist_free (gimage->layer_stack); - gtk_object_unref (GTK_OBJECT (gimage->selection_mask)); + g_object_unref (G_OBJECT (gimage->selection_mask)); if (gimage->comp_preview) temp_buf_free (gimage->comp_preview); if (gimage->parasites) - gtk_object_unref (GTK_OBJECT (gimage->parasites)); + g_object_unref (G_OBJECT (gimage->parasites)); g_list_foreach (gimage->guides, (GFunc) g_free, NULL); g_list_free (gimage->guides); undo_free (gimage); - gtk_object_unref (GTK_OBJECT (gimage->new_undo_stack)); - gtk_object_unref (GTK_OBJECT (gimage->new_redo_stack)); + g_object_unref (G_OBJECT (gimage->new_undo_stack)); + g_object_unref (G_OBJECT (gimage->new_redo_stack)); } static void @@ -1712,9 +1713,8 @@ gimp_image_colormap_changed (GimpImage *gimage, g_return_if_fail (GIMP_IS_IMAGE (gimage)); g_return_if_fail (col < gimage->num_cols); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COLORMAP_CHANGED], - col); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[COLORMAP_CHANGED], 0, + col); } void @@ -1722,7 +1722,7 @@ gimp_image_mode_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MODE_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MODE_CHANGED], 0); } void @@ -1730,7 +1730,7 @@ gimp_image_mask_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MASK_CHANGED], 0); } void @@ -1738,7 +1738,7 @@ gimp_image_alpha_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED], 0); } void @@ -1746,8 +1746,8 @@ gimp_image_floating_selection_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[FLOATING_SELECTION_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[FLOATING_SELECTION_CHANGED], 0); } void @@ -1759,8 +1759,8 @@ gimp_image_update (GimpImage *gimage, { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UPDATE], - x, y, width, height); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UPDATE], 0, + x, y, width, height); } @@ -2556,9 +2556,9 @@ gimp_image_set_component_active (GimpImage *gimage, */ gimp_image_unset_active_channel (gimage); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_ACTIVE_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_ACTIVE_CHANGED], 0, + type); } } @@ -2624,9 +2624,9 @@ gimp_image_set_component_visible (GimpImage *gimage, { gimage->visible[pixel] = visible ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], 0, + type); } } @@ -2714,15 +2714,15 @@ gimp_image_set_active_layer (GimpImage *gimage, { gimage->active_layer = layer; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); if (gimage->active_channel) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); } } @@ -2750,15 +2750,15 @@ gimp_image_set_active_channel (GimpImage *gimage, { gimage->active_channel = channel; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->active_layer) { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } @@ -2779,8 +2779,8 @@ gimp_image_unset_active_channel (GimpImage *gimage) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->layer_stack) { @@ -3555,7 +3555,7 @@ gimp_image_remove_layer (GimpImage *gimage, undo_push_layer (gimage, LAYER_REMOVE_UNDO, lu); - gtk_object_ref (GTK_OBJECT (layer)); + g_object_ref (G_OBJECT (layer)); gimp_container_remove (gimage->layers, GIMP_OBJECT (layer)); gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer); @@ -3578,15 +3578,15 @@ gimp_image_remove_layer (GimpImage *gimage, { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } /* Send out REMOVED signal from layer */ gimp_drawable_removed (GIMP_DRAWABLE (layer)); - gtk_object_unref (GTK_OBJECT (layer)); + g_object_unref (G_OBJECT (layer)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3751,7 +3751,7 @@ gimp_image_remove_channel (GimpImage *gimage, cu->prev_channel = gimp_image_get_active_channel (gimage); undo_push_channel (gimage, CHANNEL_REMOVE_UNDO, cu); - gtk_object_ref (GTK_OBJECT (channel)); + g_object_ref (G_OBJECT (channel)); gimp_container_remove (gimage->channels, GIMP_OBJECT (channel)); @@ -3773,7 +3773,7 @@ gimp_image_remove_channel (GimpImage *gimage, } } - gtk_object_unref (GTK_OBJECT (channel)); + g_object_unref (G_OBJECT (channel)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3912,7 +3912,8 @@ void gimp_image_undo_event (GimpImage *gimage, gint event) { - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], event); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], 0, + event); } @@ -3952,7 +3953,8 @@ gimp_image_dirty (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty++; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[DIRTY]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[DIRTY], 0); TRC (("dirty %d -> %d\n", gimage->dirty-1, gimage->dirty)); @@ -3965,7 +3967,8 @@ gimp_image_clean (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty--; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); TRC (("clean %d -> %d\n", gimage->dirty+1, gimage->dirty)); @@ -3979,7 +3982,7 @@ gimp_image_clean_all (GimpImage *gimage) gimage->dirty = 0; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); } GimpLayer * diff --git a/app/core/gimpimage-projection.h b/app/core/gimpimage-projection.h index d2ffb3a2b0..574d6b2b7b 100644 --- a/app/core/gimpimage-projection.h +++ b/app/core/gimpimage-projection.h @@ -49,10 +49,10 @@ struct _GimpGuide #define GIMP_TYPE_IMAGE (gimp_image_get_type ()) -#define GIMP_IMAGE(obj) (GTK_CHECK_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) -#define GIMP_IS_IMAGE(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE)) -#define GIMP_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) -#define GIMP_IS_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) +#define GIMP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) +#define GIMP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) typedef struct _GimpImageClass GimpImageClass; diff --git a/app/core/gimpimage-resize.c b/app/core/gimpimage-resize.c index 4007ec2d63..411947d053 100644 --- a/app/core/gimpimage-resize.c +++ b/app/core/gimpimage-resize.c @@ -184,26 +184,29 @@ static guint gimp_image_signals[LAST_SIGNAL] = { 0 }; static GimpViewableClass *parent_class = NULL; -GtkType +GType gimp_image_get_type (void) { - static GtkType image_type = 0; + static GType image_type = 0; if (! image_type) { - GtkTypeInfo image_info = + static const GTypeInfo image_info = { - "GimpImage", - sizeof (GimpImage), sizeof (GimpImageClass), - (GtkClassInitFunc) gimp_image_class_init, - (GtkObjectInitFunc) gimp_image_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, + NULL, /* base_init */ + NULL, /* base_finalize */ + (GClassInitFunc) gimp_image_class_init, + NULL, /* class_finalize */ + NULL, /* class_data */ + sizeof (GimpImage), + 0, /* n_preallocs */ + (GInstanceInitFunc) gimp_image_init, }; - image_type = gtk_type_unique (GIMP_TYPE_VIEWABLE, &image_info); + image_type = g_type_register_static (GIMP_TYPE_VIEWABLE, + "GimpImage", + &image_info, 0); } return image_type; @@ -220,134 +223,132 @@ gimp_image_class_init (GimpImageClass *klass) gimp_object_class = (GimpObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); gimp_image_signals[MODE_CHANGED] = - gtk_signal_new ("mode_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mode_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mode_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ALPHA_CHANGED] = - gtk_signal_new ("alpha_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - alpha_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("alpha_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, alpha_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[FLOATING_SELECTION_CHANGED] = - gtk_signal_new ("floating_selection_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - floating_selection_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("floating_selection_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, floating_selection_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_LAYER_CHANGED] = - gtk_signal_new ("active_layer_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_layer_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_layer_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_layer_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_CHANNEL_CHANGED] = - gtk_signal_new ("active_channel_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_channel_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_channel_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_channel_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[COMPONENT_VISIBILITY_CHANGED] = - gtk_signal_new ("component_visibility_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_visibility_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_visibility_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_visibility_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[COMPONENT_ACTIVE_CHANGED] = - gtk_signal_new ("component_active_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_active_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_active_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_active_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[MASK_CHANGED] = - gtk_signal_new ("mask_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mask_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mask_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mask_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[CLEAN] = - gtk_signal_new ("clean", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - clean), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clean", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, clean), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[DIRTY] = - gtk_signal_new ("dirty", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - dirty), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("dirty", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, dirty), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[UPDATE] = - gtk_signal_new ("update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - update), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); + g_signal_new ("update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, update), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); gimp_image_signals[COLORMAP_CHANGED] = - gtk_signal_new ("colormap_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - colormap_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("colormap_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, colormap_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[UNDO_EVENT] = - gtk_signal_new ("undo_event", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - undo_event), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_image_signals, LAST_SIGNAL); + g_signal_new ("undo_event", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, undo_event), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); object_class->destroy = gimp_image_destroy; @@ -466,25 +467,25 @@ gimp_image_destroy (GtkObject *object) if (gimage->cmap) g_free (gimage->cmap); - gtk_object_unref (GTK_OBJECT (gimage->layers)); - gtk_object_unref (GTK_OBJECT (gimage->channels)); + g_object_unref (G_OBJECT (gimage->layers)); + g_object_unref (G_OBJECT (gimage->channels)); g_slist_free (gimage->layer_stack); - gtk_object_unref (GTK_OBJECT (gimage->selection_mask)); + g_object_unref (G_OBJECT (gimage->selection_mask)); if (gimage->comp_preview) temp_buf_free (gimage->comp_preview); if (gimage->parasites) - gtk_object_unref (GTK_OBJECT (gimage->parasites)); + g_object_unref (G_OBJECT (gimage->parasites)); g_list_foreach (gimage->guides, (GFunc) g_free, NULL); g_list_free (gimage->guides); undo_free (gimage); - gtk_object_unref (GTK_OBJECT (gimage->new_undo_stack)); - gtk_object_unref (GTK_OBJECT (gimage->new_redo_stack)); + g_object_unref (G_OBJECT (gimage->new_undo_stack)); + g_object_unref (G_OBJECT (gimage->new_redo_stack)); } static void @@ -1712,9 +1713,8 @@ gimp_image_colormap_changed (GimpImage *gimage, g_return_if_fail (GIMP_IS_IMAGE (gimage)); g_return_if_fail (col < gimage->num_cols); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COLORMAP_CHANGED], - col); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[COLORMAP_CHANGED], 0, + col); } void @@ -1722,7 +1722,7 @@ gimp_image_mode_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MODE_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MODE_CHANGED], 0); } void @@ -1730,7 +1730,7 @@ gimp_image_mask_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MASK_CHANGED], 0); } void @@ -1738,7 +1738,7 @@ gimp_image_alpha_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED], 0); } void @@ -1746,8 +1746,8 @@ gimp_image_floating_selection_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[FLOATING_SELECTION_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[FLOATING_SELECTION_CHANGED], 0); } void @@ -1759,8 +1759,8 @@ gimp_image_update (GimpImage *gimage, { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UPDATE], - x, y, width, height); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UPDATE], 0, + x, y, width, height); } @@ -2556,9 +2556,9 @@ gimp_image_set_component_active (GimpImage *gimage, */ gimp_image_unset_active_channel (gimage); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_ACTIVE_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_ACTIVE_CHANGED], 0, + type); } } @@ -2624,9 +2624,9 @@ gimp_image_set_component_visible (GimpImage *gimage, { gimage->visible[pixel] = visible ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], 0, + type); } } @@ -2714,15 +2714,15 @@ gimp_image_set_active_layer (GimpImage *gimage, { gimage->active_layer = layer; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); if (gimage->active_channel) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); } } @@ -2750,15 +2750,15 @@ gimp_image_set_active_channel (GimpImage *gimage, { gimage->active_channel = channel; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->active_layer) { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } @@ -2779,8 +2779,8 @@ gimp_image_unset_active_channel (GimpImage *gimage) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->layer_stack) { @@ -3555,7 +3555,7 @@ gimp_image_remove_layer (GimpImage *gimage, undo_push_layer (gimage, LAYER_REMOVE_UNDO, lu); - gtk_object_ref (GTK_OBJECT (layer)); + g_object_ref (G_OBJECT (layer)); gimp_container_remove (gimage->layers, GIMP_OBJECT (layer)); gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer); @@ -3578,15 +3578,15 @@ gimp_image_remove_layer (GimpImage *gimage, { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } /* Send out REMOVED signal from layer */ gimp_drawable_removed (GIMP_DRAWABLE (layer)); - gtk_object_unref (GTK_OBJECT (layer)); + g_object_unref (G_OBJECT (layer)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3751,7 +3751,7 @@ gimp_image_remove_channel (GimpImage *gimage, cu->prev_channel = gimp_image_get_active_channel (gimage); undo_push_channel (gimage, CHANNEL_REMOVE_UNDO, cu); - gtk_object_ref (GTK_OBJECT (channel)); + g_object_ref (G_OBJECT (channel)); gimp_container_remove (gimage->channels, GIMP_OBJECT (channel)); @@ -3773,7 +3773,7 @@ gimp_image_remove_channel (GimpImage *gimage, } } - gtk_object_unref (GTK_OBJECT (channel)); + g_object_unref (G_OBJECT (channel)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3912,7 +3912,8 @@ void gimp_image_undo_event (GimpImage *gimage, gint event) { - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], event); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], 0, + event); } @@ -3952,7 +3953,8 @@ gimp_image_dirty (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty++; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[DIRTY]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[DIRTY], 0); TRC (("dirty %d -> %d\n", gimage->dirty-1, gimage->dirty)); @@ -3965,7 +3967,8 @@ gimp_image_clean (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty--; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); TRC (("clean %d -> %d\n", gimage->dirty+1, gimage->dirty)); @@ -3979,7 +3982,7 @@ gimp_image_clean_all (GimpImage *gimage) gimage->dirty = 0; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); } GimpLayer * diff --git a/app/core/gimpimage-resize.h b/app/core/gimpimage-resize.h index d2ffb3a2b0..574d6b2b7b 100644 --- a/app/core/gimpimage-resize.h +++ b/app/core/gimpimage-resize.h @@ -49,10 +49,10 @@ struct _GimpGuide #define GIMP_TYPE_IMAGE (gimp_image_get_type ()) -#define GIMP_IMAGE(obj) (GTK_CHECK_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) -#define GIMP_IS_IMAGE(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE)) -#define GIMP_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) -#define GIMP_IS_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) +#define GIMP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) +#define GIMP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) typedef struct _GimpImageClass GimpImageClass; diff --git a/app/core/gimpimage-scale.c b/app/core/gimpimage-scale.c index 4007ec2d63..411947d053 100644 --- a/app/core/gimpimage-scale.c +++ b/app/core/gimpimage-scale.c @@ -184,26 +184,29 @@ static guint gimp_image_signals[LAST_SIGNAL] = { 0 }; static GimpViewableClass *parent_class = NULL; -GtkType +GType gimp_image_get_type (void) { - static GtkType image_type = 0; + static GType image_type = 0; if (! image_type) { - GtkTypeInfo image_info = + static const GTypeInfo image_info = { - "GimpImage", - sizeof (GimpImage), sizeof (GimpImageClass), - (GtkClassInitFunc) gimp_image_class_init, - (GtkObjectInitFunc) gimp_image_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, + NULL, /* base_init */ + NULL, /* base_finalize */ + (GClassInitFunc) gimp_image_class_init, + NULL, /* class_finalize */ + NULL, /* class_data */ + sizeof (GimpImage), + 0, /* n_preallocs */ + (GInstanceInitFunc) gimp_image_init, }; - image_type = gtk_type_unique (GIMP_TYPE_VIEWABLE, &image_info); + image_type = g_type_register_static (GIMP_TYPE_VIEWABLE, + "GimpImage", + &image_info, 0); } return image_type; @@ -220,134 +223,132 @@ gimp_image_class_init (GimpImageClass *klass) gimp_object_class = (GimpObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); gimp_image_signals[MODE_CHANGED] = - gtk_signal_new ("mode_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mode_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mode_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ALPHA_CHANGED] = - gtk_signal_new ("alpha_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - alpha_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("alpha_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, alpha_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[FLOATING_SELECTION_CHANGED] = - gtk_signal_new ("floating_selection_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - floating_selection_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("floating_selection_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, floating_selection_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_LAYER_CHANGED] = - gtk_signal_new ("active_layer_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_layer_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_layer_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_layer_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_CHANNEL_CHANGED] = - gtk_signal_new ("active_channel_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_channel_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_channel_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_channel_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[COMPONENT_VISIBILITY_CHANGED] = - gtk_signal_new ("component_visibility_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_visibility_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_visibility_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_visibility_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[COMPONENT_ACTIVE_CHANGED] = - gtk_signal_new ("component_active_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_active_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_active_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_active_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[MASK_CHANGED] = - gtk_signal_new ("mask_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mask_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mask_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mask_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[CLEAN] = - gtk_signal_new ("clean", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - clean), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clean", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, clean), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[DIRTY] = - gtk_signal_new ("dirty", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - dirty), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("dirty", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, dirty), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[UPDATE] = - gtk_signal_new ("update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - update), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); + g_signal_new ("update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, update), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); gimp_image_signals[COLORMAP_CHANGED] = - gtk_signal_new ("colormap_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - colormap_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("colormap_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, colormap_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[UNDO_EVENT] = - gtk_signal_new ("undo_event", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - undo_event), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_image_signals, LAST_SIGNAL); + g_signal_new ("undo_event", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, undo_event), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); object_class->destroy = gimp_image_destroy; @@ -466,25 +467,25 @@ gimp_image_destroy (GtkObject *object) if (gimage->cmap) g_free (gimage->cmap); - gtk_object_unref (GTK_OBJECT (gimage->layers)); - gtk_object_unref (GTK_OBJECT (gimage->channels)); + g_object_unref (G_OBJECT (gimage->layers)); + g_object_unref (G_OBJECT (gimage->channels)); g_slist_free (gimage->layer_stack); - gtk_object_unref (GTK_OBJECT (gimage->selection_mask)); + g_object_unref (G_OBJECT (gimage->selection_mask)); if (gimage->comp_preview) temp_buf_free (gimage->comp_preview); if (gimage->parasites) - gtk_object_unref (GTK_OBJECT (gimage->parasites)); + g_object_unref (G_OBJECT (gimage->parasites)); g_list_foreach (gimage->guides, (GFunc) g_free, NULL); g_list_free (gimage->guides); undo_free (gimage); - gtk_object_unref (GTK_OBJECT (gimage->new_undo_stack)); - gtk_object_unref (GTK_OBJECT (gimage->new_redo_stack)); + g_object_unref (G_OBJECT (gimage->new_undo_stack)); + g_object_unref (G_OBJECT (gimage->new_redo_stack)); } static void @@ -1712,9 +1713,8 @@ gimp_image_colormap_changed (GimpImage *gimage, g_return_if_fail (GIMP_IS_IMAGE (gimage)); g_return_if_fail (col < gimage->num_cols); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COLORMAP_CHANGED], - col); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[COLORMAP_CHANGED], 0, + col); } void @@ -1722,7 +1722,7 @@ gimp_image_mode_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MODE_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MODE_CHANGED], 0); } void @@ -1730,7 +1730,7 @@ gimp_image_mask_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MASK_CHANGED], 0); } void @@ -1738,7 +1738,7 @@ gimp_image_alpha_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED], 0); } void @@ -1746,8 +1746,8 @@ gimp_image_floating_selection_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[FLOATING_SELECTION_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[FLOATING_SELECTION_CHANGED], 0); } void @@ -1759,8 +1759,8 @@ gimp_image_update (GimpImage *gimage, { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UPDATE], - x, y, width, height); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UPDATE], 0, + x, y, width, height); } @@ -2556,9 +2556,9 @@ gimp_image_set_component_active (GimpImage *gimage, */ gimp_image_unset_active_channel (gimage); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_ACTIVE_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_ACTIVE_CHANGED], 0, + type); } } @@ -2624,9 +2624,9 @@ gimp_image_set_component_visible (GimpImage *gimage, { gimage->visible[pixel] = visible ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], 0, + type); } } @@ -2714,15 +2714,15 @@ gimp_image_set_active_layer (GimpImage *gimage, { gimage->active_layer = layer; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); if (gimage->active_channel) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); } } @@ -2750,15 +2750,15 @@ gimp_image_set_active_channel (GimpImage *gimage, { gimage->active_channel = channel; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->active_layer) { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } @@ -2779,8 +2779,8 @@ gimp_image_unset_active_channel (GimpImage *gimage) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->layer_stack) { @@ -3555,7 +3555,7 @@ gimp_image_remove_layer (GimpImage *gimage, undo_push_layer (gimage, LAYER_REMOVE_UNDO, lu); - gtk_object_ref (GTK_OBJECT (layer)); + g_object_ref (G_OBJECT (layer)); gimp_container_remove (gimage->layers, GIMP_OBJECT (layer)); gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer); @@ -3578,15 +3578,15 @@ gimp_image_remove_layer (GimpImage *gimage, { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } /* Send out REMOVED signal from layer */ gimp_drawable_removed (GIMP_DRAWABLE (layer)); - gtk_object_unref (GTK_OBJECT (layer)); + g_object_unref (G_OBJECT (layer)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3751,7 +3751,7 @@ gimp_image_remove_channel (GimpImage *gimage, cu->prev_channel = gimp_image_get_active_channel (gimage); undo_push_channel (gimage, CHANNEL_REMOVE_UNDO, cu); - gtk_object_ref (GTK_OBJECT (channel)); + g_object_ref (G_OBJECT (channel)); gimp_container_remove (gimage->channels, GIMP_OBJECT (channel)); @@ -3773,7 +3773,7 @@ gimp_image_remove_channel (GimpImage *gimage, } } - gtk_object_unref (GTK_OBJECT (channel)); + g_object_unref (G_OBJECT (channel)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3912,7 +3912,8 @@ void gimp_image_undo_event (GimpImage *gimage, gint event) { - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], event); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], 0, + event); } @@ -3952,7 +3953,8 @@ gimp_image_dirty (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty++; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[DIRTY]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[DIRTY], 0); TRC (("dirty %d -> %d\n", gimage->dirty-1, gimage->dirty)); @@ -3965,7 +3967,8 @@ gimp_image_clean (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty--; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); TRC (("clean %d -> %d\n", gimage->dirty+1, gimage->dirty)); @@ -3979,7 +3982,7 @@ gimp_image_clean_all (GimpImage *gimage) gimage->dirty = 0; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); } GimpLayer * diff --git a/app/core/gimpimage-scale.h b/app/core/gimpimage-scale.h index d2ffb3a2b0..574d6b2b7b 100644 --- a/app/core/gimpimage-scale.h +++ b/app/core/gimpimage-scale.h @@ -49,10 +49,10 @@ struct _GimpGuide #define GIMP_TYPE_IMAGE (gimp_image_get_type ()) -#define GIMP_IMAGE(obj) (GTK_CHECK_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) -#define GIMP_IS_IMAGE(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE)) -#define GIMP_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) -#define GIMP_IS_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) +#define GIMP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) +#define GIMP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) typedef struct _GimpImageClass GimpImageClass; diff --git a/app/core/gimpimage.c b/app/core/gimpimage.c index 4007ec2d63..411947d053 100644 --- a/app/core/gimpimage.c +++ b/app/core/gimpimage.c @@ -184,26 +184,29 @@ static guint gimp_image_signals[LAST_SIGNAL] = { 0 }; static GimpViewableClass *parent_class = NULL; -GtkType +GType gimp_image_get_type (void) { - static GtkType image_type = 0; + static GType image_type = 0; if (! image_type) { - GtkTypeInfo image_info = + static const GTypeInfo image_info = { - "GimpImage", - sizeof (GimpImage), sizeof (GimpImageClass), - (GtkClassInitFunc) gimp_image_class_init, - (GtkObjectInitFunc) gimp_image_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, + NULL, /* base_init */ + NULL, /* base_finalize */ + (GClassInitFunc) gimp_image_class_init, + NULL, /* class_finalize */ + NULL, /* class_data */ + sizeof (GimpImage), + 0, /* n_preallocs */ + (GInstanceInitFunc) gimp_image_init, }; - image_type = gtk_type_unique (GIMP_TYPE_VIEWABLE, &image_info); + image_type = g_type_register_static (GIMP_TYPE_VIEWABLE, + "GimpImage", + &image_info, 0); } return image_type; @@ -220,134 +223,132 @@ gimp_image_class_init (GimpImageClass *klass) gimp_object_class = (GimpObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); gimp_image_signals[MODE_CHANGED] = - gtk_signal_new ("mode_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mode_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mode_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ALPHA_CHANGED] = - gtk_signal_new ("alpha_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - alpha_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("alpha_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, alpha_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[FLOATING_SELECTION_CHANGED] = - gtk_signal_new ("floating_selection_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - floating_selection_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("floating_selection_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, floating_selection_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_LAYER_CHANGED] = - gtk_signal_new ("active_layer_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_layer_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_layer_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_layer_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_CHANNEL_CHANGED] = - gtk_signal_new ("active_channel_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_channel_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_channel_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_channel_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[COMPONENT_VISIBILITY_CHANGED] = - gtk_signal_new ("component_visibility_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_visibility_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_visibility_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_visibility_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[COMPONENT_ACTIVE_CHANGED] = - gtk_signal_new ("component_active_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_active_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_active_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_active_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[MASK_CHANGED] = - gtk_signal_new ("mask_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mask_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mask_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mask_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[CLEAN] = - gtk_signal_new ("clean", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - clean), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clean", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, clean), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[DIRTY] = - gtk_signal_new ("dirty", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - dirty), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("dirty", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, dirty), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[UPDATE] = - gtk_signal_new ("update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - update), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); + g_signal_new ("update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, update), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); gimp_image_signals[COLORMAP_CHANGED] = - gtk_signal_new ("colormap_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - colormap_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("colormap_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, colormap_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[UNDO_EVENT] = - gtk_signal_new ("undo_event", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - undo_event), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_image_signals, LAST_SIGNAL); + g_signal_new ("undo_event", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, undo_event), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); object_class->destroy = gimp_image_destroy; @@ -466,25 +467,25 @@ gimp_image_destroy (GtkObject *object) if (gimage->cmap) g_free (gimage->cmap); - gtk_object_unref (GTK_OBJECT (gimage->layers)); - gtk_object_unref (GTK_OBJECT (gimage->channels)); + g_object_unref (G_OBJECT (gimage->layers)); + g_object_unref (G_OBJECT (gimage->channels)); g_slist_free (gimage->layer_stack); - gtk_object_unref (GTK_OBJECT (gimage->selection_mask)); + g_object_unref (G_OBJECT (gimage->selection_mask)); if (gimage->comp_preview) temp_buf_free (gimage->comp_preview); if (gimage->parasites) - gtk_object_unref (GTK_OBJECT (gimage->parasites)); + g_object_unref (G_OBJECT (gimage->parasites)); g_list_foreach (gimage->guides, (GFunc) g_free, NULL); g_list_free (gimage->guides); undo_free (gimage); - gtk_object_unref (GTK_OBJECT (gimage->new_undo_stack)); - gtk_object_unref (GTK_OBJECT (gimage->new_redo_stack)); + g_object_unref (G_OBJECT (gimage->new_undo_stack)); + g_object_unref (G_OBJECT (gimage->new_redo_stack)); } static void @@ -1712,9 +1713,8 @@ gimp_image_colormap_changed (GimpImage *gimage, g_return_if_fail (GIMP_IS_IMAGE (gimage)); g_return_if_fail (col < gimage->num_cols); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COLORMAP_CHANGED], - col); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[COLORMAP_CHANGED], 0, + col); } void @@ -1722,7 +1722,7 @@ gimp_image_mode_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MODE_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MODE_CHANGED], 0); } void @@ -1730,7 +1730,7 @@ gimp_image_mask_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MASK_CHANGED], 0); } void @@ -1738,7 +1738,7 @@ gimp_image_alpha_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED], 0); } void @@ -1746,8 +1746,8 @@ gimp_image_floating_selection_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[FLOATING_SELECTION_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[FLOATING_SELECTION_CHANGED], 0); } void @@ -1759,8 +1759,8 @@ gimp_image_update (GimpImage *gimage, { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UPDATE], - x, y, width, height); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UPDATE], 0, + x, y, width, height); } @@ -2556,9 +2556,9 @@ gimp_image_set_component_active (GimpImage *gimage, */ gimp_image_unset_active_channel (gimage); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_ACTIVE_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_ACTIVE_CHANGED], 0, + type); } } @@ -2624,9 +2624,9 @@ gimp_image_set_component_visible (GimpImage *gimage, { gimage->visible[pixel] = visible ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], 0, + type); } } @@ -2714,15 +2714,15 @@ gimp_image_set_active_layer (GimpImage *gimage, { gimage->active_layer = layer; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); if (gimage->active_channel) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); } } @@ -2750,15 +2750,15 @@ gimp_image_set_active_channel (GimpImage *gimage, { gimage->active_channel = channel; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->active_layer) { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } @@ -2779,8 +2779,8 @@ gimp_image_unset_active_channel (GimpImage *gimage) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->layer_stack) { @@ -3555,7 +3555,7 @@ gimp_image_remove_layer (GimpImage *gimage, undo_push_layer (gimage, LAYER_REMOVE_UNDO, lu); - gtk_object_ref (GTK_OBJECT (layer)); + g_object_ref (G_OBJECT (layer)); gimp_container_remove (gimage->layers, GIMP_OBJECT (layer)); gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer); @@ -3578,15 +3578,15 @@ gimp_image_remove_layer (GimpImage *gimage, { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } /* Send out REMOVED signal from layer */ gimp_drawable_removed (GIMP_DRAWABLE (layer)); - gtk_object_unref (GTK_OBJECT (layer)); + g_object_unref (G_OBJECT (layer)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3751,7 +3751,7 @@ gimp_image_remove_channel (GimpImage *gimage, cu->prev_channel = gimp_image_get_active_channel (gimage); undo_push_channel (gimage, CHANNEL_REMOVE_UNDO, cu); - gtk_object_ref (GTK_OBJECT (channel)); + g_object_ref (G_OBJECT (channel)); gimp_container_remove (gimage->channels, GIMP_OBJECT (channel)); @@ -3773,7 +3773,7 @@ gimp_image_remove_channel (GimpImage *gimage, } } - gtk_object_unref (GTK_OBJECT (channel)); + g_object_unref (G_OBJECT (channel)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3912,7 +3912,8 @@ void gimp_image_undo_event (GimpImage *gimage, gint event) { - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], event); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], 0, + event); } @@ -3952,7 +3953,8 @@ gimp_image_dirty (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty++; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[DIRTY]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[DIRTY], 0); TRC (("dirty %d -> %d\n", gimage->dirty-1, gimage->dirty)); @@ -3965,7 +3967,8 @@ gimp_image_clean (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty--; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); TRC (("clean %d -> %d\n", gimage->dirty+1, gimage->dirty)); @@ -3979,7 +3982,7 @@ gimp_image_clean_all (GimpImage *gimage) gimage->dirty = 0; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); } GimpLayer * diff --git a/app/core/gimpimage.h b/app/core/gimpimage.h index d2ffb3a2b0..574d6b2b7b 100644 --- a/app/core/gimpimage.h +++ b/app/core/gimpimage.h @@ -49,10 +49,10 @@ struct _GimpGuide #define GIMP_TYPE_IMAGE (gimp_image_get_type ()) -#define GIMP_IMAGE(obj) (GTK_CHECK_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) -#define GIMP_IS_IMAGE(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE)) -#define GIMP_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) -#define GIMP_IS_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) +#define GIMP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) +#define GIMP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) typedef struct _GimpImageClass GimpImageClass; diff --git a/app/core/gimplayer.c b/app/core/gimplayer.c index 98b1efdd8a..5dc4025bf5 100644 --- a/app/core/gimplayer.c +++ b/app/core/gimplayer.c @@ -113,60 +113,58 @@ gimp_layer_class_init (GimpLayerClass *klass) drawable_class = (GimpDrawableClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAWABLE); + parent_class = g_type_class_peek_parent (klass); layer_signals[OPACITY_CHANGED] = - gtk_signal_new ("opacity_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpLayerClass, - opacity_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("opacity_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpLayerClass, opacity_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); layer_signals[MODE_CHANGED] = - gtk_signal_new ("mode_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpLayerClass, - mode_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mode_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpLayerClass, mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); layer_signals[PRESERVE_TRANS_CHANGED] = - gtk_signal_new ("preserve_trans_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpLayerClass, - preserve_trans_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("preserve_trans_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpLayerClass, preserve_trans_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); layer_signals[LINKED_CHANGED] = - gtk_signal_new ("linked_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpLayerClass, - linked_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("linked_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpLayerClass, linked_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); layer_signals[MASK_CHANGED] = - gtk_signal_new ("mask_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpLayerClass, - mask_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mask_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpLayerClass, mask_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, layer_signals, LAST_SIGNAL); - - object_class->destroy = gimp_layer_destroy; + object_class->destroy = gimp_layer_destroy; viewable_class->invalidate_preview = gimp_layer_invalidate_preview; - klass->mask_changed = NULL; + klass->mask_changed = NULL; } static void @@ -390,7 +388,7 @@ gimp_layer_copy (GimpLayer *layer, } /* copy the parasites */ - gtk_object_unref (GTK_OBJECT (GIMP_DRAWABLE (new_layer)->parasites)); + g_object_unref (G_OBJECT (GIMP_DRAWABLE (new_layer)->parasites)); GIMP_DRAWABLE (new_layer)->parasites = gimp_parasite_list_copy (GIMP_DRAWABLE (layer)->parasites); @@ -475,10 +473,7 @@ gimp_layer_add_mask (GimpLayer *layer, GimpImage *gimage; LayerMaskUndo *lmu; - g_return_val_if_fail (layer != NULL, NULL); g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL); - - g_return_val_if_fail (mask != NULL, NULL); g_return_val_if_fail (GIMP_IS_LAYER_MASK (mask), NULL); gimage = gimp_drawable_gimage (GIMP_DRAWABLE (layer)); @@ -542,7 +537,7 @@ gimp_layer_add_mask (GimpLayer *layer, undo_push_layer_mask (gimage, LAYER_MASK_ADD_UNDO, lmu); } - gtk_signal_emit (GTK_OBJECT (layer), layer_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (layer), layer_signals[MASK_CHANGED], 0); return layer->mask; } @@ -638,18 +633,23 @@ gimp_layer_destroy (GtkObject *object) layer = GIMP_LAYER (object); - /* if a layer mask exists, free it */ if (layer->mask) - gtk_object_unref (GTK_OBJECT (layer->mask)); + { + g_object_unref (G_OBJECT (layer->mask)); + layer->mask = NULL; + } - /* free the layer boundary if it exists */ if (layer->fs.segs) - g_free (layer->fs.segs); + { + g_free (layer->fs.segs); + layer->fs.segs = NULL; + } /* free the floating selection if it exists */ if (gimp_layer_is_floating_sel (layer)) { tile_manager_destroy (layer->fs.backing_store); + layer->fs.backing_store = NULL; } if (GTK_OBJECT_CLASS (parent_class)->destroy) @@ -757,7 +757,7 @@ gimp_layer_apply_mask (GimpLayer *layer, gimp_drawable_height (GIMP_DRAWABLE (layer))); } - gtk_signal_emit (GTK_OBJECT (layer), layer_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (layer), layer_signals[MASK_CHANGED], 0); } void @@ -1383,7 +1383,6 @@ gimp_layer_get_mask (GimpLayer *layer) gboolean gimp_layer_has_alpha (GimpLayer *layer) { - g_return_val_if_fail (layer != NULL, FALSE); g_return_val_if_fail (GIMP_IS_LAYER (layer), FALSE); return GIMP_IMAGE_TYPE_HAS_ALPHA (GIMP_DRAWABLE (layer)->type); @@ -1392,7 +1391,6 @@ gimp_layer_has_alpha (GimpLayer *layer) gboolean gimp_layer_is_floating_sel (GimpLayer *layer) { - g_return_val_if_fail (layer != NULL, FALSE); g_return_val_if_fail (GIMP_IS_LAYER (layer), FALSE); return (layer->fs.drawable != NULL); @@ -1404,7 +1402,6 @@ gimp_layer_set_opacity (GimpLayer *layer, { gint layer_opacity; - g_return_if_fail (layer != NULL); g_return_if_fail (GIMP_IS_LAYER (layer)); layer_opacity = (gint) (opacity * 255.999); @@ -1413,7 +1410,7 @@ gimp_layer_set_opacity (GimpLayer *layer, { layer->opacity = layer_opacity; - gtk_signal_emit (GTK_OBJECT (layer), layer_signals[OPACITY_CHANGED]); + g_signal_emit (G_OBJECT (layer), layer_signals[OPACITY_CHANGED], 0); gimp_drawable_update (GIMP_DRAWABLE (layer), 0, 0, @@ -1425,7 +1422,6 @@ gimp_layer_set_opacity (GimpLayer *layer, gdouble gimp_layer_get_opacity (GimpLayer *layer) { - g_return_val_if_fail (layer != NULL, 1.0); g_return_val_if_fail (GIMP_IS_LAYER (layer), 1.0); return (gdouble) layer->opacity / 255.0; @@ -1435,14 +1431,13 @@ void gimp_layer_set_mode (GimpLayer *layer, LayerModeEffects mode) { - g_return_if_fail (layer != NULL); g_return_if_fail (GIMP_IS_LAYER (layer)); if (layer->mode != mode) { layer->mode = mode; - gtk_signal_emit (GTK_OBJECT (layer), layer_signals[MODE_CHANGED]); + g_signal_emit (G_OBJECT (layer), layer_signals[MODE_CHANGED], 0); gimp_drawable_update (GIMP_DRAWABLE (layer), 0, 0, @@ -1454,7 +1449,6 @@ gimp_layer_set_mode (GimpLayer *layer, LayerModeEffects gimp_layer_get_mode (GimpLayer *layer) { - g_return_val_if_fail (layer != NULL, NORMAL_MODE); g_return_val_if_fail (GIMP_IS_LAYER (layer), NORMAL_MODE); return layer->mode; @@ -1464,22 +1458,20 @@ void gimp_layer_set_preserve_trans (GimpLayer *layer, gboolean preserve) { - g_return_if_fail (layer != NULL); g_return_if_fail (GIMP_IS_LAYER (layer)); if (layer->preserve_trans != preserve) { layer->preserve_trans = preserve ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (layer), - layer_signals[PRESERVE_TRANS_CHANGED]); + g_signal_emit (G_OBJECT (layer), + layer_signals[PRESERVE_TRANS_CHANGED], 0); } } gboolean gimp_layer_get_preserve_trans (GimpLayer *layer) { - g_return_val_if_fail (layer != NULL, FALSE); g_return_val_if_fail (GIMP_IS_LAYER (layer), FALSE); return layer->preserve_trans; @@ -1489,21 +1481,19 @@ void gimp_layer_set_linked (GimpLayer *layer, gboolean linked) { - g_return_if_fail (layer != NULL); g_return_if_fail (GIMP_IS_LAYER (layer)); if (layer->linked != linked) { layer->linked = linked ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (layer), layer_signals[LINKED_CHANGED]); + g_signal_emit (G_OBJECT (layer), layer_signals[LINKED_CHANGED], 0); } } gboolean gimp_layer_get_linked (GimpLayer *layer) { - g_return_val_if_fail (layer != NULL, FALSE); g_return_val_if_fail (GIMP_IS_LAYER (layer), FALSE); return layer->linked; diff --git a/app/core/gimplayer.h b/app/core/gimplayer.h index 9f8f82f9ce..0dcce7789a 100644 --- a/app/core/gimplayer.h +++ b/app/core/gimplayer.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_LAYER (gimp_layer_get_type ()) -#define GIMP_LAYER(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LAYER, GimpLayer)) -#define GIMP_LAYER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER, GimpLayerClass)) -#define GIMP_IS_LAYER(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_LAYER)) -#define GIMP_IS_LAYER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER)) +#define GIMP_LAYER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LAYER, GimpLayer)) +#define GIMP_LAYER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER, GimpLayerClass)) +#define GIMP_IS_LAYER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LAYER)) +#define GIMP_IS_LAYER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER)) typedef struct _GimpLayerClass GimpLayerClass; diff --git a/app/core/gimplayermask.c b/app/core/gimplayermask.c index 4045a4dae5..ff11955936 100644 --- a/app/core/gimplayermask.c +++ b/app/core/gimplayermask.c @@ -89,36 +89,34 @@ gimp_layer_mask_class_init (GimpLayerMaskClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CHANNEL); + parent_class = g_type_class_peek_parent (klass); layer_mask_signals[APPLY_CHANGED] = - gtk_signal_new ("apply_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpLayerMaskClass, - apply_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("apply_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpLayerMaskClass, apply_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); layer_mask_signals[EDIT_CHANGED] = - gtk_signal_new ("edit_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpLayerMaskClass, - edit_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("edit_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpLayerMaskClass, edit_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); layer_mask_signals[SHOW_CHANGED] = - gtk_signal_new ("show_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpLayerMaskClass, - show_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, layer_mask_signals, LAST_SIGNAL); + g_signal_new ("show_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpLayerMaskClass, show_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = gimp_layer_mask_destroy; } @@ -137,8 +135,7 @@ static void gimp_layer_mask_destroy (GtkObject *object) { GimpLayerMask *layer_mask; - - g_return_if_fail (object != NULL); + g_return_if_fail (GIMP_IS_LAYER_MASK (object)); layer_mask = GIMP_LAYER_MASK (object); @@ -246,7 +243,6 @@ void gimp_layer_mask_set_apply (GimpLayerMask *layer_mask, gboolean apply) { - g_return_if_fail (layer_mask != NULL); g_return_if_fail (GIMP_IS_LAYER_MASK (layer_mask)); if (layer_mask->apply_mask != apply) @@ -265,15 +261,14 @@ gimp_layer_mask_set_apply (GimpLayerMask *layer_mask, gimp_drawable_height (drawable)); } - gtk_signal_emit (GTK_OBJECT (layer_mask), - layer_mask_signals[APPLY_CHANGED]); + g_signal_emit (G_OBJECT (layer_mask), + layer_mask_signals[APPLY_CHANGED], 0); } } gboolean gimp_layer_mask_get_apply (GimpLayerMask *layer_mask) { - g_return_val_if_fail (layer_mask != NULL, FALSE); g_return_val_if_fail (GIMP_IS_LAYER_MASK (layer_mask), FALSE); return layer_mask->apply_mask; @@ -283,22 +278,20 @@ void gimp_layer_mask_set_edit (GimpLayerMask *layer_mask, gboolean edit) { - g_return_if_fail (layer_mask != NULL); g_return_if_fail (GIMP_IS_LAYER_MASK (layer_mask)); if (layer_mask->edit_mask != edit) { layer_mask->edit_mask = edit; - gtk_signal_emit (GTK_OBJECT (layer_mask), - layer_mask_signals[EDIT_CHANGED]); + g_signal_emit (G_OBJECT (layer_mask), + layer_mask_signals[EDIT_CHANGED], 0); } } gboolean gimp_layer_mask_get_edit (GimpLayerMask *layer_mask) { - g_return_val_if_fail (layer_mask != NULL, FALSE); g_return_val_if_fail (GIMP_IS_LAYER_MASK (layer_mask), FALSE); return layer_mask->edit_mask; @@ -308,7 +301,6 @@ void gimp_layer_mask_set_show (GimpLayerMask *layer_mask, gboolean show) { - g_return_if_fail (layer_mask != NULL); g_return_if_fail (GIMP_IS_LAYER_MASK (layer_mask)); if (layer_mask->show_mask != show) @@ -327,15 +319,14 @@ gimp_layer_mask_set_show (GimpLayerMask *layer_mask, gimp_drawable_height (drawable)); } - gtk_signal_emit (GTK_OBJECT (layer_mask), - layer_mask_signals[SHOW_CHANGED]); + g_signal_emit (G_OBJECT (layer_mask), + layer_mask_signals[SHOW_CHANGED], 0); } } gboolean gimp_layer_mask_get_show (GimpLayerMask *layer_mask) { - g_return_val_if_fail (layer_mask != NULL, FALSE); g_return_val_if_fail (GIMP_IS_LAYER_MASK (layer_mask), FALSE); return layer_mask->show_mask; diff --git a/app/core/gimplayermask.h b/app/core/gimplayermask.h index bf770858c8..7b0e9d9d22 100644 --- a/app/core/gimplayermask.h +++ b/app/core/gimplayermask.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_LAYER_MASK (gimp_layer_mask_get_type ()) -#define GIMP_LAYER_MASK(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LAYER_MASK, GimpLayerMask)) -#define GIMP_LAYER_MASK_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_MASK, GimpLayerMaskClass)) -#define GIMP_IS_LAYER_MASK(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_LAYER_MASK)) -#define GIMP_IS_LAYER_MASK_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER_MASK)) +#define GIMP_LAYER_MASK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LAYER_MASK, GimpLayerMask)) +#define GIMP_LAYER_MASK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_MASK, GimpLayerMaskClass)) +#define GIMP_IS_LAYER_MASK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LAYER_MASK)) +#define GIMP_IS_LAYER_MASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER_MASK)) typedef struct _GimpLayerMaskClass GimpLayerMaskClass; diff --git a/app/core/gimplist.c b/app/core/gimplist.c index 63e7b7fdd8..7038e96d6f 100644 --- a/app/core/gimplist.c +++ b/app/core/gimplist.c @@ -56,10 +56,10 @@ static gint gimp_list_get_child_index (GimpContainer *container, static GimpContainerClass *parent_class = NULL; -GtkType +GType gimp_list_get_type (void) { - static GtkType list_type = 0; + static GType list_type = 0; if (! list_type) { @@ -90,9 +90,9 @@ gimp_list_class_init (GimpListClass *klass) object_class = (GtkObjectClass *) klass; container_class = (GimpContainerClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CONTAINER); + parent_class = g_type_class_peek_parent (klass); - object_class->destroy = gimp_list_destroy; + object_class->destroy = gimp_list_destroy; container_class->add = gimp_list_add; container_class->remove = gimp_list_remove; diff --git a/app/core/gimplist.h b/app/core/gimplist.h index 91db7e7832..629e2b441d 100644 --- a/app/core/gimplist.h +++ b/app/core/gimplist.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_LIST (gimp_list_get_type ()) -#define GIMP_LIST(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LIST, GimpList)) -#define GIMP_LIST_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LIST, GimpListClass)) -#define GIMP_IS_LIST(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_LIST)) -#define GIMP_IS_LIST_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LIST)) +#define GIMP_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LIST, GimpList)) +#define GIMP_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LIST, GimpListClass)) +#define GIMP_IS_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LIST)) +#define GIMP_IS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LIST)) typedef struct _GimpListClass GimpListClass; diff --git a/app/core/gimpmarshal.c b/app/core/gimpmarshal.c index 500e0a1e2d..50b2929a77 100644 --- a/app/core/gimpmarshal.c +++ b/app/core/gimpmarshal.c @@ -1,244 +1,976 @@ -/* The GIMP -- an image manipulation program - * Copyright (C) 1995 Spencer Kimball and Peter Mattis - * - * 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. - */ - -#include "config.h" - -#include - +#include +#include #include "gimpmarshal.h" -typedef void (* GimpSignal_NONE__INT_INT_INT_INT) (GtkObject *object, - gint arg1, - gint arg2, - gint arg3, - gint arg4, - gpointer user_data); - +/* BOOLEAN:OBJECT (./gimpmarshal.list:25) */ void -gimp_marshal_NONE__INT_INT_INT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_BOOLEAN__OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - (* (GimpSignal_NONE__INT_INT_INT_INT) func) (object, - GTK_VALUE_INT (args[0]), - GTK_VALUE_INT (args[1]), - GTK_VALUE_INT (args[2]), - GTK_VALUE_INT (args[3]), - func_data); + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_BOOLEAN__OBJECT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_object (param_values + 1), + data2); + + g_value_set_boolean (return_value, v_return); } - -typedef void (* GimpSignal_NONE__INT_INT_INT) (GtkObject *object, - gint arg1, - gint arg2, - gint arg3, - gpointer user_data); - +/* BOOLEAN:POINTER (./gimpmarshal.list:26) */ void -gimp_marshal_NONE__INT_INT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_BOOLEAN__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - (* (GimpSignal_NONE__INT_INT_INT) func) (object, - GTK_VALUE_INT (args[0]), - GTK_VALUE_INT (args[1]), - GTK_VALUE_INT (args[2]), - func_data); + typedef gboolean (*GMarshalFunc_BOOLEAN__POINTER) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_BOOLEAN__POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_pointer (param_values + 1), + data2); + + g_value_set_boolean (return_value, v_return); } - -typedef void (* GimpSignal_NONE__INT_POINTER_POINTER) (GtkObject *object, - gint arg1, - gpointer arg2, - gpointer arg3, - gpointer user_data); - +/* BOOLEAN:VOID (./gimpmarshal.list:27) */ void -gimp_marshal_NONE__INT_POINTER_POINTER (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_BOOLEAN__VOID (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - (* (GimpSignal_NONE__INT_POINTER_POINTER) func) (object, - GTK_VALUE_INT (args[0]), - GTK_VALUE_POINTER (args[1]), - GTK_VALUE_POINTER (args[2]), - func_data); + typedef gboolean (*GMarshalFunc_BOOLEAN__VOID) (gpointer data1, + gpointer data2); + register GMarshalFunc_BOOLEAN__VOID callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 1); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__VOID) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + data2); + + g_value_set_boolean (return_value, v_return); } - -typedef void (* GimpSignal_NONE__OBJECT_INT) (GtkObject *object, - GtkObject *arg1, - gint arg2, - gpointer user_data); - +/* INT:OBJECT (./gimpmarshal.list:29) */ void -gimp_marshal_NONE__OBJECT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_INT__OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - (* (GimpSignal_NONE__OBJECT_INT) func) (object, - GTK_VALUE_OBJECT (args[0]), - GTK_VALUE_INT (args[1]), - func_data); + typedef gint (*GMarshalFunc_INT__OBJECT) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_INT__OBJECT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gint v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_INT__OBJECT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_object (param_values + 1), + data2); + + g_value_set_int (return_value, v_return); } - -typedef void (* GimpSignal_NONE__DOUBLE) (GtkObject *object, - gdouble arg1, - gpointer user_data); - +/* INT:POINTER (./gimpmarshal.list:30) */ void -gimp_marshal_NONE__DOUBLE (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_INT__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - (* (GimpSignal_NONE__DOUBLE) func) (object, - GTK_VALUE_DOUBLE (args[0]), - func_data); + typedef gint (*GMarshalFunc_INT__POINTER) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_INT__POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gint v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_INT__POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_pointer (param_values + 1), + data2); + + g_value_set_int (return_value, v_return); } - -typedef gint (* GimpSignal_INT__POINTER) (GtkObject *object, - gpointer arg1, - gpointer user_data); - +/* OBJECT:INT (./gimpmarshal.list:32) */ void -gimp_marshal_INT__POINTER (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_OBJECT__INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - *GTK_RETLOC_INT (args[1]) = - (* (GimpSignal_INT__POINTER) func) (object, - GTK_VALUE_POINTER (args[0]), - func_data); + typedef GObject* (*GMarshalFunc_OBJECT__INT) (gpointer data1, + gint arg_1, + gpointer data2); + register GMarshalFunc_OBJECT__INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + GObject* v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_OBJECT__INT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_int (param_values + 1), + data2); + + g_value_set_object (return_value, v_return); + if (NULL != (v_return)) + g_object_unref (v_return); } - -typedef gpointer (* GimpSignal_POINTER__NONE) (GtkObject *object, - gpointer user_data); - +/* OBJECT:POINTER (./gimpmarshal.list:33) */ void -gimp_marshal_POINTER__NONE (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_OBJECT__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - *GTK_RETLOC_POINTER (args[0]) = - (* (GimpSignal_POINTER__NONE) func) (object, - func_data); + typedef GObject* (*GMarshalFunc_OBJECT__POINTER) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_OBJECT__POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + GObject* v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_OBJECT__POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_pointer (param_values + 1), + data2); + + g_value_set_object (return_value, v_return); + if (NULL != (v_return)) + g_object_unref (v_return); } - -typedef gpointer (* GimpSignal_POINTER__INT) (GtkObject *object, - gint arg1, - gpointer user_data); - +/* POINTER:INT (./gimpmarshal.list:35) */ void -gimp_marshal_POINTER__INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_POINTER__INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - *GTK_RETLOC_POINTER (args[1]) = - (* (GimpSignal_POINTER__INT) func) (object, - GTK_VALUE_INT (args[0]), - func_data); + typedef gpointer (*GMarshalFunc_POINTER__INT) (gpointer data1, + gint arg_1, + gpointer data2); + register GMarshalFunc_POINTER__INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gpointer v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_POINTER__INT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_int (param_values + 1), + data2); + + g_value_set_pointer (return_value, v_return); } - -typedef gpointer (* GimpSignal_POINTER__INT_INT) (GtkObject *object, - gint arg1, - gint arg2, - gpointer user_data); - +/* POINTER:INT,INT (./gimpmarshal.list:36) */ void -gimp_marshal_POINTER__INT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_POINTER__INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - *GTK_RETLOC_POINTER (args[2]) = - (* (GimpSignal_POINTER__INT_INT) func) (object, - GTK_VALUE_INT (args[0]), - GTK_VALUE_INT (args[1]), - func_data); + typedef gpointer (*GMarshalFunc_POINTER__INT_INT) (gpointer data1, + gint arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_POINTER__INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gpointer v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_POINTER__INT_INT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_int (param_values + 1), + g_value_get_int (param_values + 2), + data2); + + g_value_set_pointer (return_value, v_return); } - -typedef gpointer (* GimpSignal_POINTER__POINTER) (GtkObject *object, - gpointer arg1, - gpointer user_data); - +/* POINTER:OBJECT,INT (./gimpmarshal.list:37) */ void -gimp_marshal_POINTER__POINTER (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_POINTER__OBJECT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - *GTK_RETLOC_POINTER (args[1]) = - (* (GimpSignal_POINTER__POINTER) func) (object, - GTK_VALUE_POINTER (args[0]), - func_data); + typedef gpointer (*GMarshalFunc_POINTER__OBJECT_INT) (gpointer data1, + gpointer arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_POINTER__OBJECT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gpointer v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_POINTER__OBJECT_INT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_object (param_values + 1), + g_value_get_int (param_values + 2), + data2); + + g_value_set_pointer (return_value, v_return); } - -typedef gpointer (* GimpSignal_POINTER__POINTER_INT) (GtkObject *object, - gpointer arg1, - gint arg2, - gpointer user_data); - +/* POINTER:POINTER (./gimpmarshal.list:38) */ void -gimp_marshal_POINTER__POINTER_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_POINTER__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - *GTK_RETLOC_POINTER (args[2]) = - (* (GimpSignal_POINTER__POINTER_INT) func) (object, - GTK_VALUE_POINTER (args[0]), - GTK_VALUE_INT (args[1]), - func_data); + typedef gpointer (*GMarshalFunc_POINTER__POINTER) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_POINTER__POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gpointer v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_POINTER__POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_pointer (param_values + 1), + data2); + + g_value_set_pointer (return_value, v_return); } - -typedef gpointer (* GimpSignal_POINTER__POINTER_INT_INT) (GtkObject *object, - gpointer arg1, - gint arg2, - gint arg3, - gpointer user_data); - +/* POINTER:POINTER,INT (./gimpmarshal.list:39) */ void -gimp_marshal_POINTER__POINTER_INT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) +gimp_cclosure_marshal_POINTER__POINTER_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - *GTK_RETLOC_POINTER (args[3]) = - (* (GimpSignal_POINTER__POINTER_INT_INT) func) (object, - GTK_VALUE_POINTER (args[0]), - GTK_VALUE_INT (args[1]), - GTK_VALUE_INT (args[2]), - func_data); + typedef gpointer (*GMarshalFunc_POINTER__POINTER_INT) (gpointer data1, + gpointer arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_POINTER__POINTER_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gpointer v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_POINTER__POINTER_INT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_pointer (param_values + 1), + g_value_get_int (param_values + 2), + data2); + + g_value_set_pointer (return_value, v_return); } + +/* POINTER:POINTER,INT,INT (./gimpmarshal.list:40) */ +void +gimp_cclosure_marshal_POINTER__POINTER_INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef gpointer (*GMarshalFunc_POINTER__POINTER_INT_INT) (gpointer data1, + gpointer arg_1, + gint arg_2, + gint arg_3, + gpointer data2); + register GMarshalFunc_POINTER__POINTER_INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gpointer v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_POINTER__POINTER_INT_INT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_value_get_pointer (param_values + 1), + g_value_get_int (param_values + 2), + g_value_get_int (param_values + 3), + data2); + + g_value_set_pointer (return_value, v_return); +} + +/* POINTER:VOID (./gimpmarshal.list:41) */ +void +gimp_cclosure_marshal_POINTER__VOID (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef gpointer (*GMarshalFunc_POINTER__VOID) (gpointer data1, + gpointer data2); + register GMarshalFunc_POINTER__VOID callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gpointer v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 1); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_POINTER__VOID) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + data2); + + g_value_set_pointer (return_value, v_return); +} + +/* VOID:DOUBLE (./gimpmarshal.list:43) */ +void +gimp_cclosure_marshal_VOID__DOUBLE (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__DOUBLE) (gpointer data1, + gdouble arg_1, + gpointer data2); + register GMarshalFunc_VOID__DOUBLE callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__DOUBLE) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_double (param_values + 1), + data2); +} + +/* VOID:INT,INT (./gimpmarshal.list:44) */ +void +gimp_cclosure_marshal_VOID__INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_INT) (gpointer data1, + gint arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_VOID__INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_int (param_values + 1), + g_value_get_int (param_values + 2), + data2); +} + +/* VOID:INT,INT,INT (./gimpmarshal.list:45) */ +void +gimp_cclosure_marshal_VOID__INT_INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_INT_INT) (gpointer data1, + gint arg_1, + gint arg_2, + gint arg_3, + gpointer data2); + register GMarshalFunc_VOID__INT_INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_int (param_values + 1), + g_value_get_int (param_values + 2), + g_value_get_int (param_values + 3), + data2); +} + +/* VOID:INT,INT,INT,INT (./gimpmarshal.list:46) */ +void +gimp_cclosure_marshal_VOID__INT_INT_INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_INT_INT_INT) (gpointer data1, + gint arg_1, + gint arg_2, + gint arg_3, + gint arg_4, + gpointer data2); + register GMarshalFunc_VOID__INT_INT_INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 5); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT_INT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_int (param_values + 1), + g_value_get_int (param_values + 2), + g_value_get_int (param_values + 3), + g_value_get_int (param_values + 4), + data2); +} + +/* VOID:INT,POINTER (./gimpmarshal.list:47) */ +void +gimp_cclosure_marshal_VOID__INT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_POINTER) (gpointer data1, + gint arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_VOID__INT_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_int (param_values + 1), + g_value_get_pointer (param_values + 2), + data2); +} + +/* VOID:INT,POINTER,POINTER (./gimpmarshal.list:48) */ +void +gimp_cclosure_marshal_VOID__INT_POINTER_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_POINTER_POINTER) (gpointer data1, + gint arg_1, + gpointer arg_2, + gpointer arg_3, + gpointer data2); + register GMarshalFunc_VOID__INT_POINTER_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_POINTER_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_int (param_values + 1), + g_value_get_pointer (param_values + 2), + g_value_get_pointer (param_values + 3), + data2); +} + +/* VOID:OBJECT,INT (./gimpmarshal.list:49) */ +void +gimp_cclosure_marshal_VOID__OBJECT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__OBJECT_INT) (gpointer data1, + gpointer arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_VOID__OBJECT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__OBJECT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_object (param_values + 1), + g_value_get_int (param_values + 2), + data2); +} + +/* VOID:OBJECT,INT,POINTER (./gimpmarshal.list:50) */ +void +gimp_cclosure_marshal_VOID__OBJECT_INT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__OBJECT_INT_POINTER) (gpointer data1, + gpointer arg_1, + gint arg_2, + gpointer arg_3, + gpointer data2); + register GMarshalFunc_VOID__OBJECT_INT_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__OBJECT_INT_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_object (param_values + 1), + g_value_get_int (param_values + 2), + g_value_get_pointer (param_values + 3), + data2); +} + +/* VOID:OBJECT,POINTER (./gimpmarshal.list:51) */ +void +gimp_cclosure_marshal_VOID__OBJECT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__OBJECT_POINTER) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_VOID__OBJECT_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__OBJECT_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_object (param_values + 1), + g_value_get_pointer (param_values + 2), + data2); +} + +/* VOID:POINTER,INT (./gimpmarshal.list:52) */ +void +gimp_cclosure_marshal_VOID__POINTER_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__POINTER_INT) (gpointer data1, + gpointer arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_VOID__POINTER_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__POINTER_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_pointer (param_values + 1), + g_value_get_int (param_values + 2), + data2); +} + +/* VOID:POINTER,POINTER (./gimpmarshal.list:53) */ +void +gimp_cclosure_marshal_VOID__POINTER_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__POINTER_POINTER) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_VOID__POINTER_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__POINTER_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_value_get_pointer (param_values + 1), + g_value_get_pointer (param_values + 2), + data2); +} + diff --git a/app/core/gimpmarshal.h b/app/core/gimpmarshal.h index 4d3e66456f..9df6534fdc 100644 --- a/app/core/gimpmarshal.h +++ b/app/core/gimpmarshal.h @@ -1,84 +1,208 @@ -/* The GIMP -- an image manipulation program - * Copyright (C) 1995 Spencer Kimball and Peter Mattis - * - * 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. - */ - #ifndef __GIMP_MARSHAL_H__ #define __GIMP_MARSHAL_H__ +G_BEGIN_DECLS -void gimp_marshal_NONE__INT_INT_INT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* BOOLEAN:OBJECT (./gimpmarshal.list:25) */ +extern void gimp_cclosure_marshal_BOOLEAN__OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_NONE__INT_INT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* BOOLEAN:POINTER (./gimpmarshal.list:26) */ +extern void gimp_cclosure_marshal_BOOLEAN__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_NONE__INT_POINTER_POINTER (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* BOOLEAN:VOID (./gimpmarshal.list:27) */ +extern void gimp_cclosure_marshal_BOOLEAN__VOID (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_NONE__OBJECT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* INT:OBJECT (./gimpmarshal.list:29) */ +extern void gimp_cclosure_marshal_INT__OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_NONE__DOUBLE (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* INT:POINTER (./gimpmarshal.list:30) */ +extern void gimp_cclosure_marshal_INT__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_INT__POINTER (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* OBJECT:INT (./gimpmarshal.list:32) */ +extern void gimp_cclosure_marshal_OBJECT__INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_POINTER__NONE (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* OBJECT:POINTER (./gimpmarshal.list:33) */ +extern void gimp_cclosure_marshal_OBJECT__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_POINTER__INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* POINTER:INT (./gimpmarshal.list:35) */ +extern void gimp_cclosure_marshal_POINTER__INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_POINTER__INT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* POINTER:INT,INT (./gimpmarshal.list:36) */ +extern void gimp_cclosure_marshal_POINTER__INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_POINTER__POINTER (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* POINTER:OBJECT,INT (./gimpmarshal.list:37) */ +extern void gimp_cclosure_marshal_POINTER__OBJECT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_POINTER__POINTER_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* POINTER:POINTER (./gimpmarshal.list:38) */ +extern void gimp_cclosure_marshal_POINTER__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); -void gimp_marshal_POINTER__POINTER_INT_INT (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); +/* POINTER:POINTER,INT (./gimpmarshal.list:39) */ +extern void gimp_cclosure_marshal_POINTER__POINTER_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +/* POINTER:POINTER,INT,INT (./gimpmarshal.list:40) */ +extern void gimp_cclosure_marshal_POINTER__POINTER_INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* POINTER:VOID (./gimpmarshal.list:41) */ +extern void gimp_cclosure_marshal_POINTER__VOID (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:DOUBLE (./gimpmarshal.list:43) */ +extern void gimp_cclosure_marshal_VOID__DOUBLE (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:INT,INT (./gimpmarshal.list:44) */ +extern void gimp_cclosure_marshal_VOID__INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:INT,INT,INT (./gimpmarshal.list:45) */ +extern void gimp_cclosure_marshal_VOID__INT_INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:INT,INT,INT,INT (./gimpmarshal.list:46) */ +extern void gimp_cclosure_marshal_VOID__INT_INT_INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:INT,POINTER (./gimpmarshal.list:47) */ +extern void gimp_cclosure_marshal_VOID__INT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:INT,POINTER,POINTER (./gimpmarshal.list:48) */ +extern void gimp_cclosure_marshal_VOID__INT_POINTER_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:OBJECT,INT (./gimpmarshal.list:49) */ +extern void gimp_cclosure_marshal_VOID__OBJECT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:OBJECT,INT,POINTER (./gimpmarshal.list:50) */ +extern void gimp_cclosure_marshal_VOID__OBJECT_INT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:OBJECT,POINTER (./gimpmarshal.list:51) */ +extern void gimp_cclosure_marshal_VOID__OBJECT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:POINTER,INT (./gimpmarshal.list:52) */ +extern void gimp_cclosure_marshal_VOID__POINTER_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:POINTER,POINTER (./gimpmarshal.list:53) */ +extern void gimp_cclosure_marshal_VOID__POINTER_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +G_END_DECLS #endif /* __GIMP_MARSHAL_H__ */ diff --git a/app/core/gimpmarshal.list b/app/core/gimpmarshal.list new file mode 100644 index 0000000000..5797f5dc94 --- /dev/null +++ b/app/core/gimpmarshal.list @@ -0,0 +1,53 @@ +# see glib-genmarshal(1) for a detailed description of the file format, +# possible parameter types are: +# VOID indicates no return type, or no extra +# parameters. if VOID is used as the parameter +# list, no additional parameters may be present. +# BOOLEAN for boolean types (gboolean) +# CHAR for signed char types (gchar) +# UCHAR for unsigned char types (guchar) +# INT for signed integer types (gint) +# UINT for unsigned integer types (guint) +# LONG for signed long integer types (glong) +# ULONG for unsigned long integer types (gulong) +# ENUM for enumeration types (gint) +# FLAGS for flag enumeration types (guint) +# FLOAT for single-precision float types (gfloat) +# DOUBLE for double-precision float types (gdouble) +# STRING for string types (gchar*) +# BOXED for boxed (anonymous but reference counted) types (GBoxed*) +# POINTER for anonymous pointer types (gpointer) +# PARAM for GParamSpec or derived types (GParamSpec*) +# OBJECT for GObject or derived types (GObject*) +# NONE deprecated alias for VOID +# BOOL deprecated alias for BOOLEAN + +BOOLEAN: OBJECT +BOOLEAN: POINTER +BOOLEAN: VOID + +INT: OBJECT +INT: POINTER + +OBJECT: INT +OBJECT: POINTER + +POINTER: INT +POINTER: INT, INT +POINTER: OBJECT, INT +POINTER: POINTER +POINTER: POINTER, INT +POINTER: POINTER, INT, INT +POINTER: VOID + +VOID: DOUBLE +VOID: INT, INT +VOID: INT, INT, INT +VOID: INT, INT, INT, INT +VOID: INT, POINTER +VOID: INT, POINTER, POINTER +VOID: OBJECT, INT +VOID: OBJECT, INT, POINTER +VOID: OBJECT, POINTER +VOID: POINTER, INT +VOID: POINTER, POINTER diff --git a/app/core/gimpobject.c b/app/core/gimpobject.c index 0fe4eca433..f61a40bfa9 100644 --- a/app/core/gimpobject.c +++ b/app/core/gimpobject.c @@ -57,10 +57,10 @@ static guint object_signals[LAST_SIGNAL] = { 0 }; static GtkObjectClass *parent_class = NULL; -GtkType +GType gimp_object_get_type (void) { - static GtkType object_type = 0; + static GType object_type = 0; if (! object_type) { @@ -89,27 +89,25 @@ gimp_object_class_init (GimpObjectClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); gtk_object_add_arg_type ("GimpObject::name", GTK_TYPE_STRING, GTK_ARG_READWRITE, ARG_NAME); object_signals[NAME_CHANGED] = - gtk_signal_new ("name_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpObjectClass, - name_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, object_signals, LAST_SIGNAL); + g_signal_new ("name_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpObjectClass, name_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = gimp_object_destroy; object_class->set_arg = gimp_object_set_arg; object_class->get_arg = gimp_object_get_arg; - klass->name_changed = NULL; + klass->name_changed = NULL; } static void @@ -125,8 +123,11 @@ gimp_object_destroy (GtkObject *object) gimp_object = GIMP_OBJECT (object); - g_free (gimp_object->name); - gimp_object->name = NULL; + if (gimp_object->name) + { + g_free (gimp_object->name); + gimp_object->name = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -175,7 +176,6 @@ void gimp_object_set_name (GimpObject *object, const gchar *name) { - g_return_if_fail (object); g_return_if_fail (GIMP_IS_OBJECT (object)); if ((!object->name && !name) || @@ -192,7 +192,6 @@ gimp_object_set_name (GimpObject *object, const gchar * gimp_object_get_name (const GimpObject *object) { - g_return_val_if_fail (object, NULL); g_return_val_if_fail (GIMP_IS_OBJECT (object), NULL); return object->name; @@ -201,8 +200,7 @@ gimp_object_get_name (const GimpObject *object) void gimp_object_name_changed (GimpObject *object) { - g_return_if_fail (object); g_return_if_fail (GIMP_IS_OBJECT (object)); - gtk_signal_emit (GTK_OBJECT (object), object_signals[NAME_CHANGED]); + g_signal_emit (G_OBJECT (object), object_signals[NAME_CHANGED], 0); } diff --git a/app/core/gimpobject.h b/app/core/gimpobject.h index 29165eb20c..c1702cab98 100644 --- a/app/core/gimpobject.h +++ b/app/core/gimpobject.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_OBJECT (gimp_object_get_type ()) -#define GIMP_OBJECT(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_OBJECT, GimpObject)) -#define GIMP_OBJECT_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_OBJECT, GimpObjectClass)) -#define GIMP_IS_OBJECT(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_OBJECT)) -#define GIMP_IS_OBJECT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_OBJECT)) +#define GIMP_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_OBJECT, GimpObject)) +#define GIMP_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_OBJECT, GimpObjectClass)) +#define GIMP_IS_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_OBJECT)) +#define GIMP_IS_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_OBJECT)) typedef struct _GimpObjectClass GimpObjectClass; @@ -47,7 +47,7 @@ struct _GimpObjectClass }; -GtkType gimp_object_get_type (void); +GType gimp_object_get_type (void); void gimp_object_set_name (GimpObject *object, const gchar *name); diff --git a/app/core/gimppalette-load.c b/app/core/gimppalette-load.c index a7b6ba57b9..ebb879afbd 100644 --- a/app/core/gimppalette-load.c +++ b/app/core/gimppalette-load.c @@ -58,10 +58,10 @@ static void gimp_palette_entry_free (GimpPaletteEntry *entry); static GimpDataClass *parent_class = NULL; -GtkType +GType gimp_palette_get_type (void) { - static GtkType palette_type = 0; + static GType palette_type = 0; if (! palette_type) { @@ -94,7 +94,7 @@ gimp_palette_class_init (GimpPaletteClass *klass) viewable_class = (GimpViewableClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_palette_destroy; @@ -118,22 +118,18 @@ static void gimp_palette_destroy (GtkObject *object) { GimpPalette *palette; - GimpPaletteEntry *entry; - GList *list; g_return_if_fail (GIMP_IS_PALETTE (object)); palette = GIMP_PALETTE (object); - for (list = palette->colors; list; list = g_list_next (list)) + if (palette->colors) { - entry = (GimpPaletteEntry *) list->data; - - gimp_palette_entry_free (entry); + g_list_foreach (palette->colors, (GFunc) gimp_palette_entry_free, NULL); + g_list_free (palette->colors); + palette->colors = NULL; } - g_list_free (palette->colors); - if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); } @@ -294,7 +290,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -311,7 +307,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -340,7 +336,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -407,7 +403,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } diff --git a/app/core/gimppalette-save.c b/app/core/gimppalette-save.c index a7b6ba57b9..ebb879afbd 100644 --- a/app/core/gimppalette-save.c +++ b/app/core/gimppalette-save.c @@ -58,10 +58,10 @@ static void gimp_palette_entry_free (GimpPaletteEntry *entry); static GimpDataClass *parent_class = NULL; -GtkType +GType gimp_palette_get_type (void) { - static GtkType palette_type = 0; + static GType palette_type = 0; if (! palette_type) { @@ -94,7 +94,7 @@ gimp_palette_class_init (GimpPaletteClass *klass) viewable_class = (GimpViewableClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_palette_destroy; @@ -118,22 +118,18 @@ static void gimp_palette_destroy (GtkObject *object) { GimpPalette *palette; - GimpPaletteEntry *entry; - GList *list; g_return_if_fail (GIMP_IS_PALETTE (object)); palette = GIMP_PALETTE (object); - for (list = palette->colors; list; list = g_list_next (list)) + if (palette->colors) { - entry = (GimpPaletteEntry *) list->data; - - gimp_palette_entry_free (entry); + g_list_foreach (palette->colors, (GFunc) gimp_palette_entry_free, NULL); + g_list_free (palette->colors); + palette->colors = NULL; } - g_list_free (palette->colors); - if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); } @@ -294,7 +290,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -311,7 +307,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -340,7 +336,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -407,7 +403,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } diff --git a/app/core/gimppalette.c b/app/core/gimppalette.c index a7b6ba57b9..ebb879afbd 100644 --- a/app/core/gimppalette.c +++ b/app/core/gimppalette.c @@ -58,10 +58,10 @@ static void gimp_palette_entry_free (GimpPaletteEntry *entry); static GimpDataClass *parent_class = NULL; -GtkType +GType gimp_palette_get_type (void) { - static GtkType palette_type = 0; + static GType palette_type = 0; if (! palette_type) { @@ -94,7 +94,7 @@ gimp_palette_class_init (GimpPaletteClass *klass) viewable_class = (GimpViewableClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_palette_destroy; @@ -118,22 +118,18 @@ static void gimp_palette_destroy (GtkObject *object) { GimpPalette *palette; - GimpPaletteEntry *entry; - GList *list; g_return_if_fail (GIMP_IS_PALETTE (object)); palette = GIMP_PALETTE (object); - for (list = palette->colors; list; list = g_list_next (list)) + if (palette->colors) { - entry = (GimpPaletteEntry *) list->data; - - gimp_palette_entry_free (entry); + g_list_foreach (palette->colors, (GFunc) gimp_palette_entry_free, NULL); + g_list_free (palette->colors); + palette->colors = NULL; } - g_list_free (palette->colors); - if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); } @@ -294,7 +290,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -311,7 +307,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -340,7 +336,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } @@ -407,7 +403,7 @@ gimp_palette_load (const gchar *filename) filename, linenum); fclose (fp); - gtk_object_sink (GTK_OBJECT (palette)); + g_object_unref (G_OBJECT (palette)); return NULL; } diff --git a/app/core/gimppalette.h b/app/core/gimppalette.h index f2cd4ca584..3720cc01bf 100644 --- a/app/core/gimppalette.h +++ b/app/core/gimppalette.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_PALETTE (gimp_palette_get_type ()) -#define GIMP_PALETTE(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PALETTE, GimpPalette)) -#define GIMP_IS_PALETTE(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PALETTE)) -#define GIMP_PALETTE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PALETTE, GimpPaletteClass)) -#define GIMP_IS_PALETTE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PALETTE)) +#define GIMP_PALETTE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PALETTE, GimpPalette)) +#define GIMP_IS_PALETTE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PALETTE)) +#define GIMP_PALETTE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PALETTE, GimpPaletteClass)) +#define GIMP_IS_PALETTE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PALETTE)) typedef struct _GimpPaletteEntry GimpPaletteEntry; @@ -63,7 +63,7 @@ struct _GimpPaletteClass }; -GtkType gimp_palette_get_type (void); +GType gimp_palette_get_type (void); GimpData * gimp_palette_new (const gchar *name); GimpData * gimp_palette_get_standard (void); diff --git a/app/core/gimpparasitelist.c b/app/core/gimpparasitelist.c index 0c233129c2..8bd9b42ea8 100644 --- a/app/core/gimpparasitelist.c +++ b/app/core/gimpparasitelist.c @@ -56,32 +56,29 @@ gimp_parasite_list_class_init (GimpParasiteListClass *klass) object_class = (GtkObjectClass *) klass; parasite_list_signals[ADD] = - gtk_signal_new ("add", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpParasiteListClass, - add), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new ("add", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpParasiteListClass, add), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); parasite_list_signals[REMOVE] = - gtk_signal_new ("remove", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpParasiteListClass, - remove), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); - - gtk_object_class_add_signals (object_class, parasite_list_signals, - LAST_SIGNAL); + g_signal_new ("remove", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpParasiteListClass, remove), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + GTK_TYPE_POINTER); object_class->destroy = gimp_parasite_list_destroy; - klass->add = NULL; - klass->remove = NULL; + klass->add = NULL; + klass->remove = NULL; } static void diff --git a/app/core/gimpparasitelist.h b/app/core/gimpparasitelist.h index 2f3d2da1b3..95758c89a9 100644 --- a/app/core/gimpparasitelist.h +++ b/app/core/gimpparasitelist.h @@ -23,8 +23,8 @@ #define GIMP_TYPE_PARASITE_LIST (gimp_parasite_list_get_type ()) -#define GIMP_PARASITE_LIST(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PARASITE_LIST, GimpParasiteList)) -#define GIMP_IS_PARASITE_LIST(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PARASITE_LIST)) +#define GIMP_PARASITE_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PARASITE_LIST, GimpParasiteList)) +#define GIMP_IS_PARASITE_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PARASITE_LIST)) #define PARASITE_LIST_CLASS(class) GIMP_CHECK_CLASS_CAST (class, GIMP_TYPE_PARASITE_LIST, GimpParasiteListClass) diff --git a/app/core/gimppattern-load.c b/app/core/gimppattern-load.c index a1d003e4c4..fd8a508b9a 100644 --- a/app/core/gimppattern-load.c +++ b/app/core/gimppattern-load.c @@ -65,10 +65,10 @@ static GimpData * gimp_pattern_duplicate (GimpData *data); static GimpDataClass *parent_class = NULL; -GtkType +GType gimp_pattern_get_type (void) { - static GtkType pattern_type = 0; + static GType pattern_type = 0; if (! pattern_type) { @@ -101,7 +101,7 @@ gimp_pattern_class_init (GimpPatternClass *klass) viewable_class = (GimpViewableClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_pattern_destroy; @@ -125,7 +125,10 @@ gimp_pattern_destroy (GtkObject *object) pattern = GIMP_PATTERN (object); if (pattern->mask) - temp_buf_free (pattern->mask); + { + temp_buf_free (pattern->mask); + pattern->mask = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -341,7 +344,7 @@ gimp_pattern_load (const gchar *filename) error: if (pattern) - gtk_object_unref (GTK_OBJECT (pattern)); + g_object_unref (G_OBJECT (pattern)); else if (name) g_free (name); @@ -353,7 +356,6 @@ gimp_pattern_load (const gchar *filename) TempBuf * gimp_pattern_get_mask (const GimpPattern *pattern) { - g_return_val_if_fail (pattern != NULL, NULL); g_return_val_if_fail (GIMP_IS_PATTERN (pattern), NULL); return pattern->mask; diff --git a/app/core/gimppattern.c b/app/core/gimppattern.c index a1d003e4c4..fd8a508b9a 100644 --- a/app/core/gimppattern.c +++ b/app/core/gimppattern.c @@ -65,10 +65,10 @@ static GimpData * gimp_pattern_duplicate (GimpData *data); static GimpDataClass *parent_class = NULL; -GtkType +GType gimp_pattern_get_type (void) { - static GtkType pattern_type = 0; + static GType pattern_type = 0; if (! pattern_type) { @@ -101,7 +101,7 @@ gimp_pattern_class_init (GimpPatternClass *klass) viewable_class = (GimpViewableClass *) klass; data_class = (GimpDataClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_pattern_destroy; @@ -125,7 +125,10 @@ gimp_pattern_destroy (GtkObject *object) pattern = GIMP_PATTERN (object); if (pattern->mask) - temp_buf_free (pattern->mask); + { + temp_buf_free (pattern->mask); + pattern->mask = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -341,7 +344,7 @@ gimp_pattern_load (const gchar *filename) error: if (pattern) - gtk_object_unref (GTK_OBJECT (pattern)); + g_object_unref (G_OBJECT (pattern)); else if (name) g_free (name); @@ -353,7 +356,6 @@ gimp_pattern_load (const gchar *filename) TempBuf * gimp_pattern_get_mask (const GimpPattern *pattern) { - g_return_val_if_fail (pattern != NULL, NULL); g_return_val_if_fail (GIMP_IS_PATTERN (pattern), NULL); return pattern->mask; diff --git a/app/core/gimppattern.h b/app/core/gimppattern.h index a3cc044d01..e07a6d4bd3 100644 --- a/app/core/gimppattern.h +++ b/app/core/gimppattern.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_PATTERN (gimp_pattern_get_type ()) -#define GIMP_PATTERN(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PATTERN, GimpPattern)) -#define GIMP_PATTERN_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PATTERN, GimpPatternClass)) -#define GIMP_IS_PATTERN(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PATTERN)) -#define GIMP_IS_PATTERN_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PATTERN)) +#define GIMP_PATTERN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PATTERN, GimpPattern)) +#define GIMP_PATTERN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PATTERN, GimpPatternClass)) +#define GIMP_IS_PATTERN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PATTERN)) +#define GIMP_IS_PATTERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PATTERN)) typedef struct _GimpPatternClass GimpPatternClass; @@ -48,7 +48,7 @@ struct _GimpPatternClass }; -GtkType gimp_pattern_get_type (void); +GType gimp_pattern_get_type (void); GimpData * gimp_pattern_new (const gchar *name); GimpData * gimp_pattern_get_standard (void); diff --git a/app/core/gimpprojection-construct.c b/app/core/gimpprojection-construct.c index 4007ec2d63..411947d053 100644 --- a/app/core/gimpprojection-construct.c +++ b/app/core/gimpprojection-construct.c @@ -184,26 +184,29 @@ static guint gimp_image_signals[LAST_SIGNAL] = { 0 }; static GimpViewableClass *parent_class = NULL; -GtkType +GType gimp_image_get_type (void) { - static GtkType image_type = 0; + static GType image_type = 0; if (! image_type) { - GtkTypeInfo image_info = + static const GTypeInfo image_info = { - "GimpImage", - sizeof (GimpImage), sizeof (GimpImageClass), - (GtkClassInitFunc) gimp_image_class_init, - (GtkObjectInitFunc) gimp_image_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, + NULL, /* base_init */ + NULL, /* base_finalize */ + (GClassInitFunc) gimp_image_class_init, + NULL, /* class_finalize */ + NULL, /* class_data */ + sizeof (GimpImage), + 0, /* n_preallocs */ + (GInstanceInitFunc) gimp_image_init, }; - image_type = gtk_type_unique (GIMP_TYPE_VIEWABLE, &image_info); + image_type = g_type_register_static (GIMP_TYPE_VIEWABLE, + "GimpImage", + &image_info, 0); } return image_type; @@ -220,134 +223,132 @@ gimp_image_class_init (GimpImageClass *klass) gimp_object_class = (GimpObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); gimp_image_signals[MODE_CHANGED] = - gtk_signal_new ("mode_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mode_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mode_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mode_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ALPHA_CHANGED] = - gtk_signal_new ("alpha_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - alpha_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("alpha_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, alpha_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[FLOATING_SELECTION_CHANGED] = - gtk_signal_new ("floating_selection_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - floating_selection_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("floating_selection_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, floating_selection_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_LAYER_CHANGED] = - gtk_signal_new ("active_layer_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_layer_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_layer_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_layer_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[ACTIVE_CHANNEL_CHANGED] = - gtk_signal_new ("active_channel_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - active_channel_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("active_channel_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, active_channel_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[COMPONENT_VISIBILITY_CHANGED] = - gtk_signal_new ("component_visibility_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_visibility_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_visibility_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_visibility_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[COMPONENT_ACTIVE_CHANGED] = - gtk_signal_new ("component_active_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - component_active_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("component_active_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, component_active_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[MASK_CHANGED] = - gtk_signal_new ("mask_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - mask_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("mask_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, mask_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[CLEAN] = - gtk_signal_new ("clean", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - clean), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clean", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, clean), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[DIRTY] = - gtk_signal_new ("dirty", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - dirty), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("dirty", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, dirty), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); gimp_image_signals[UPDATE] = - gtk_signal_new ("update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - update), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); + g_signal_new ("update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, update), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); gimp_image_signals[COLORMAP_CHANGED] = - gtk_signal_new ("colormap_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - colormap_changed), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); + g_signal_new ("colormap_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, colormap_changed), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); gimp_image_signals[UNDO_EVENT] = - gtk_signal_new ("undo_event", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpImageClass, - undo_event), - gtk_marshal_NONE__INT, - GTK_TYPE_NONE, 1, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_image_signals, LAST_SIGNAL); + g_signal_new ("undo_event", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpImageClass, undo_event), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); object_class->destroy = gimp_image_destroy; @@ -466,25 +467,25 @@ gimp_image_destroy (GtkObject *object) if (gimage->cmap) g_free (gimage->cmap); - gtk_object_unref (GTK_OBJECT (gimage->layers)); - gtk_object_unref (GTK_OBJECT (gimage->channels)); + g_object_unref (G_OBJECT (gimage->layers)); + g_object_unref (G_OBJECT (gimage->channels)); g_slist_free (gimage->layer_stack); - gtk_object_unref (GTK_OBJECT (gimage->selection_mask)); + g_object_unref (G_OBJECT (gimage->selection_mask)); if (gimage->comp_preview) temp_buf_free (gimage->comp_preview); if (gimage->parasites) - gtk_object_unref (GTK_OBJECT (gimage->parasites)); + g_object_unref (G_OBJECT (gimage->parasites)); g_list_foreach (gimage->guides, (GFunc) g_free, NULL); g_list_free (gimage->guides); undo_free (gimage); - gtk_object_unref (GTK_OBJECT (gimage->new_undo_stack)); - gtk_object_unref (GTK_OBJECT (gimage->new_redo_stack)); + g_object_unref (G_OBJECT (gimage->new_undo_stack)); + g_object_unref (G_OBJECT (gimage->new_redo_stack)); } static void @@ -1712,9 +1713,8 @@ gimp_image_colormap_changed (GimpImage *gimage, g_return_if_fail (GIMP_IS_IMAGE (gimage)); g_return_if_fail (col < gimage->num_cols); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COLORMAP_CHANGED], - col); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[COLORMAP_CHANGED], 0, + col); } void @@ -1722,7 +1722,7 @@ gimp_image_mode_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MODE_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MODE_CHANGED], 0); } void @@ -1730,7 +1730,7 @@ gimp_image_mask_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[MASK_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[MASK_CHANGED], 0); } void @@ -1738,7 +1738,7 @@ gimp_image_alpha_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[ALPHA_CHANGED], 0); } void @@ -1746,8 +1746,8 @@ gimp_image_floating_selection_changed (GimpImage *gimage) { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[FLOATING_SELECTION_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[FLOATING_SELECTION_CHANGED], 0); } void @@ -1759,8 +1759,8 @@ gimp_image_update (GimpImage *gimage, { g_return_if_fail (GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UPDATE], - x, y, width, height); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UPDATE], 0, + x, y, width, height); } @@ -2556,9 +2556,9 @@ gimp_image_set_component_active (GimpImage *gimage, */ gimp_image_unset_active_channel (gimage); - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_ACTIVE_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_ACTIVE_CHANGED], 0, + type); } } @@ -2624,9 +2624,9 @@ gimp_image_set_component_visible (GimpImage *gimage, { gimage->visible[pixel] = visible ? TRUE : FALSE; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], - type); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[COMPONENT_VISIBILITY_CHANGED], 0, + type); } } @@ -2714,15 +2714,15 @@ gimp_image_set_active_layer (GimpImage *gimage, { gimage->active_layer = layer; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); if (gimage->active_channel) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); } } @@ -2750,15 +2750,15 @@ gimp_image_set_active_channel (GimpImage *gimage, { gimage->active_channel = channel; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->active_layer) { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } @@ -2779,8 +2779,8 @@ gimp_image_unset_active_channel (GimpImage *gimage) { gimage->active_channel = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_CHANNEL_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_CHANNEL_CHANGED], 0); if (gimage->layer_stack) { @@ -3555,7 +3555,7 @@ gimp_image_remove_layer (GimpImage *gimage, undo_push_layer (gimage, LAYER_REMOVE_UNDO, lu); - gtk_object_ref (GTK_OBJECT (layer)); + g_object_ref (G_OBJECT (layer)); gimp_container_remove (gimage->layers, GIMP_OBJECT (layer)); gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer); @@ -3578,15 +3578,15 @@ gimp_image_remove_layer (GimpImage *gimage, { gimage->active_layer = NULL; - gtk_signal_emit (GTK_OBJECT (gimage), - gimp_image_signals[ACTIVE_LAYER_CHANGED]); + g_signal_emit (G_OBJECT (gimage), + gimp_image_signals[ACTIVE_LAYER_CHANGED], 0); } } /* Send out REMOVED signal from layer */ gimp_drawable_removed (GIMP_DRAWABLE (layer)); - gtk_object_unref (GTK_OBJECT (layer)); + g_object_unref (G_OBJECT (layer)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3751,7 +3751,7 @@ gimp_image_remove_channel (GimpImage *gimage, cu->prev_channel = gimp_image_get_active_channel (gimage); undo_push_channel (gimage, CHANNEL_REMOVE_UNDO, cu); - gtk_object_ref (GTK_OBJECT (channel)); + g_object_ref (G_OBJECT (channel)); gimp_container_remove (gimage->channels, GIMP_OBJECT (channel)); @@ -3773,7 +3773,7 @@ gimp_image_remove_channel (GimpImage *gimage, } } - gtk_object_unref (GTK_OBJECT (channel)); + g_object_unref (G_OBJECT (channel)); /* invalidate the composite preview */ gimp_viewable_invalidate_preview (GIMP_VIEWABLE (gimage)); @@ -3912,7 +3912,8 @@ void gimp_image_undo_event (GimpImage *gimage, gint event) { - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], event); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[UNDO_EVENT], 0, + event); } @@ -3952,7 +3953,8 @@ gimp_image_dirty (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty++; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[DIRTY]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[DIRTY], 0); TRC (("dirty %d -> %d\n", gimage->dirty-1, gimage->dirty)); @@ -3965,7 +3967,8 @@ gimp_image_clean (GimpImage *gimage) g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE); gimage->dirty--; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); TRC (("clean %d -> %d\n", gimage->dirty+1, gimage->dirty)); @@ -3979,7 +3982,7 @@ gimp_image_clean_all (GimpImage *gimage) gimage->dirty = 0; - gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]); + g_signal_emit (G_OBJECT (gimage), gimp_image_signals[CLEAN], 0); } GimpLayer * diff --git a/app/core/gimpprojection-construct.h b/app/core/gimpprojection-construct.h index d2ffb3a2b0..574d6b2b7b 100644 --- a/app/core/gimpprojection-construct.h +++ b/app/core/gimpprojection-construct.h @@ -49,10 +49,10 @@ struct _GimpGuide #define GIMP_TYPE_IMAGE (gimp_image_get_type ()) -#define GIMP_IMAGE(obj) (GTK_CHECK_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) -#define GIMP_IS_IMAGE(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE)) -#define GIMP_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) -#define GIMP_IS_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GIMP_TYPE_IMAGE, GimpImage)) +#define GIMP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE)) +#define GIMP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, GIMP_TYPE_IMAGE, GimpImageClass)) +#define GIMP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE)) typedef struct _GimpImageClass GimpImageClass; diff --git a/app/core/gimptoolinfo.c b/app/core/gimptoolinfo.c index cb18445f40..9a63819420 100644 --- a/app/core/gimptoolinfo.c +++ b/app/core/gimptoolinfo.c @@ -79,7 +79,7 @@ gimp_tool_info_class_init (GimpToolInfoClass *klass) object_class = (GtkObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DATA); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_tool_info_destroy; @@ -89,7 +89,7 @@ gimp_tool_info_class_init (GimpToolInfoClass *klass) void gimp_tool_info_init (GimpToolInfo *tool_info) { - tool_info->tool_type = GTK_TYPE_NONE; + tool_info->tool_type = G_TYPE_NONE; tool_info->blurb = NULL; tool_info->help = NULL; diff --git a/app/core/gimptoolinfo.h b/app/core/gimptoolinfo.h index 247575720a..33ede9eb97 100644 --- a/app/core/gimptoolinfo.h +++ b/app/core/gimptoolinfo.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_TOOL_INFO (gimp_tool_info_get_type ()) -#define GIMP_TOOL_INFO(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_TOOL_INFO, GimpToolInfo)) -#define GIMP_IS_TOOL_INFO(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_TOOL_INFO)) -#define GIMP_TOOL_INFO_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TOOL_INFO, GimpToolInfoClass)) -#define GIMP_IS_TOOL_INFO_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TOOL_INFO)) +#define GIMP_TOOL_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_TOOL_INFO, GimpToolInfo)) +#define GIMP_IS_TOOL_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_TOOL_INFO)) +#define GIMP_TOOL_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TOOL_INFO, GimpToolInfoClass)) +#define GIMP_IS_TOOL_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TOOL_INFO)) typedef struct _GimpToolInfoClass GimpToolInfoClass; diff --git a/app/core/gimpundo.c b/app/core/gimpundo.c index ad8fb159ec..5ace6861ba 100644 --- a/app/core/gimpundo.c +++ b/app/core/gimpundo.c @@ -87,34 +87,34 @@ gimp_undo_class_init (GimpUndoClass *klass) object_class = (GtkObjectClass *) klass; viewable_class = (GimpViewableClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_VIEWABLE); + parent_class = g_type_class_peek_parent (klass); undo_signals[PUSH] = - gtk_signal_new ("push", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpUndoClass, push), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, - 1, GTK_TYPE_POINTER); + g_signal_new ("push", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpUndoClass, push), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); undo_signals[POP] = - gtk_signal_new ("pop", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpUndoClass, pop), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, - 1, GTK_TYPE_POINTER); + g_signal_new ("pop", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpUndoClass, pop), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); - gtk_object_class_add_signals (object_class, undo_signals, LAST_SIGNAL); - - object_class->destroy = gimp_undo_destroy; + object_class->destroy = gimp_undo_destroy; viewable_class->get_preview = gimp_undo_get_preview; - klass->push = gimp_undo_real_push; - klass->pop = gimp_undo_real_pop; + klass->push = gimp_undo_real_push; + klass->pop = gimp_undo_real_pop; } static void diff --git a/app/core/gimpundo.h b/app/core/gimpundo.h index b7ccc93d75..bb122c3858 100644 --- a/app/core/gimpundo.h +++ b/app/core/gimpundo.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_UNDO (gimp_undo_get_type ()) -#define GIMP_UNDO(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_UNDO, GimpUndo)) -#define GIMP_UNDO_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_UNDO, GimpUndoClass)) -#define GIMP_IS_UNDO(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_UNDO)) -#define GIMP_IS_UNDO_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_UNDO)) +#define GIMP_UNDO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_UNDO, GimpUndo)) +#define GIMP_UNDO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_UNDO, GimpUndoClass)) +#define GIMP_IS_UNDO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_UNDO)) +#define GIMP_IS_UNDO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_UNDO)) typedef gboolean (* GimpUndoPopFunc) (GimpUndo *undo, GimpImage *gimage); diff --git a/app/core/gimpundostack.c b/app/core/gimpundostack.c index be01200fa5..ec018c889e 100644 --- a/app/core/gimpundostack.c +++ b/app/core/gimpundostack.c @@ -75,7 +75,7 @@ gimp_undo_stack_class_init (GimpUndoStackClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_UNDO); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_undo_stack_destroy; } diff --git a/app/core/gimpundostack.h b/app/core/gimpundostack.h index d35a3fedf4..c3570f2980 100644 --- a/app/core/gimpundostack.h +++ b/app/core/gimpundostack.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_UNDO_STACK (gimp_undo_stack_get_type ()) -#define GIMP_UNDO_STACK(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_UNDO_STACK, GimpUndoStack)) -#define GIMP_UNDO_STACK_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_UNDO_STACK, GimpUndoStackClass)) -#define GIMP_IS_UNDO_STACK(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_UNDO_STACK)) -#define GIMP_IS_UNDO_STACK_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_UNDO_STACK)) +#define GIMP_UNDO_STACK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_UNDO_STACK, GimpUndoStack)) +#define GIMP_UNDO_STACK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_UNDO_STACK, GimpUndoStackClass)) +#define GIMP_IS_UNDO_STACK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_UNDO_STACK)) +#define GIMP_IS_UNDO_STACK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_UNDO_STACK)) typedef struct _GimpUndoStackClass GimpUndoStackClass; diff --git a/app/core/gimpviewable.c b/app/core/gimpviewable.c index 193409b8fb..c81be5d892 100644 --- a/app/core/gimpviewable.c +++ b/app/core/gimpviewable.c @@ -52,10 +52,10 @@ static guint viewable_signals[LAST_SIGNAL] = { 0 }; static GimpObjectClass *parent_class = NULL; -GtkType +GType gimp_viewable_get_type (void) { - static GtkType viewable_type = 0; + static GType viewable_type = 0; if (! viewable_type) { @@ -84,51 +84,47 @@ gimp_viewable_class_init (GimpViewableClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); viewable_signals[INVALIDATE_PREVIEW] = - gtk_signal_new ("invalidate_preview", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpViewableClass, - invalidate_preview), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("invalidate_preview", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpViewableClass, invalidate_preview), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); viewable_signals[SIZE_CHANGED] = - gtk_signal_new ("size_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpViewableClass, - size_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("size_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpViewableClass, size_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); viewable_signals[GET_PREVIEW] = - gtk_signal_new ("get_preview", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpViewableClass, - get_preview), - gimp_marshal_POINTER__INT_INT, - GTK_TYPE_POINTER, 3, - GTK_TYPE_POINTER, - GTK_TYPE_INT, - GTK_TYPE_INT); + g_signal_new ("get_preview", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpViewableClass, get_preview), + NULL, NULL, + gimp_cclosure_marshal_POINTER__INT_INT, + G_TYPE_POINTER, 2, + G_TYPE_INT, + G_TYPE_INT); viewable_signals[GET_NEW_PREVIEW] = - gtk_signal_new ("get_new_preview", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpViewableClass, - get_new_preview), - gimp_marshal_POINTER__INT_INT, - GTK_TYPE_POINTER, 3, - GTK_TYPE_POINTER, - GTK_TYPE_INT, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, viewable_signals, LAST_SIGNAL); + g_signal_new ("get_new_preview", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpViewableClass, get_new_preview), + NULL, NULL, + gimp_cclosure_marshal_POINTER__INT_INT, + G_TYPE_POINTER, 2, + G_TYPE_INT, + G_TYPE_INT); klass->invalidate_preview = gimp_viewable_real_invalidate_preview; klass->size_changed = NULL; @@ -144,28 +140,25 @@ gimp_viewable_init (GimpViewable *viewable) void gimp_viewable_invalidate_preview (GimpViewable *viewable) { - g_return_if_fail (viewable); g_return_if_fail (GIMP_IS_VIEWABLE (viewable)); - gtk_signal_emit (GTK_OBJECT (viewable), viewable_signals[INVALIDATE_PREVIEW]); + g_signal_emit (G_OBJECT (viewable), viewable_signals[INVALIDATE_PREVIEW], 0); } void gimp_viewable_size_changed (GimpViewable *viewable) { - g_return_if_fail (viewable); g_return_if_fail (GIMP_IS_VIEWABLE (viewable)); - gtk_signal_emit (GTK_OBJECT (viewable), viewable_signals[SIZE_CHANGED]); + g_signal_emit (G_OBJECT (viewable), viewable_signals[SIZE_CHANGED], 0); } static void gimp_viewable_real_invalidate_preview (GimpViewable *viewable) { - g_return_if_fail (viewable); g_return_if_fail (GIMP_IS_VIEWABLE (viewable)); - gtk_object_set_data (GTK_OBJECT (viewable), "static-viewable-preview", NULL); + g_object_set_data (G_OBJECT (viewable), "static-viewable-preview", NULL); } TempBuf * @@ -175,20 +168,18 @@ gimp_viewable_get_preview (GimpViewable *viewable, { TempBuf *temp_buf = NULL; - g_return_val_if_fail (viewable, NULL); g_return_val_if_fail (GIMP_IS_VIEWABLE (viewable), NULL); - g_return_val_if_fail (width > 0, NULL); g_return_val_if_fail (height > 0, NULL); - gtk_signal_emit (GTK_OBJECT (viewable), viewable_signals[GET_PREVIEW], - width, height, &temp_buf); + g_signal_emit (G_OBJECT (viewable), viewable_signals[GET_PREVIEW], 0, + width, height, &temp_buf); if (temp_buf) return temp_buf; - temp_buf = gtk_object_get_data (GTK_OBJECT (viewable), - "static-viewable-preview"); + temp_buf = g_object_get_data (G_OBJECT (viewable), + "static-viewable-preview"); if (temp_buf && temp_buf->width == width && @@ -197,12 +188,12 @@ gimp_viewable_get_preview (GimpViewable *viewable, temp_buf = NULL; - gtk_signal_emit (GTK_OBJECT (viewable), viewable_signals[GET_NEW_PREVIEW], - width, height, &temp_buf); + g_signal_emit (G_OBJECT (viewable), viewable_signals[GET_NEW_PREVIEW], 0, + width, height, &temp_buf); - gtk_object_set_data_full (GTK_OBJECT (viewable), "static-viewable-preview", - temp_buf, - (GtkDestroyNotify) temp_buf_free); + g_object_set_data_full (G_OBJECT (viewable), "static-viewable-preview", + temp_buf, + (GDestroyNotify) temp_buf_free); return temp_buf; } @@ -214,20 +205,18 @@ gimp_viewable_get_new_preview (GimpViewable *viewable, { TempBuf *temp_buf = NULL; - g_return_val_if_fail (viewable, NULL); g_return_val_if_fail (GIMP_IS_VIEWABLE (viewable), NULL); - g_return_val_if_fail (width > 0, NULL); g_return_val_if_fail (height > 0, NULL); - gtk_signal_emit (GTK_OBJECT (viewable), viewable_signals[GET_NEW_PREVIEW], - width, height, &temp_buf); + g_signal_emit (G_OBJECT (viewable), viewable_signals[GET_NEW_PREVIEW], 0, + width, height, &temp_buf); if (temp_buf) return temp_buf; - gtk_signal_emit (GTK_OBJECT (viewable), viewable_signals[GET_PREVIEW], - width, height, &temp_buf); + g_signal_emit (G_OBJECT (viewable), viewable_signals[GET_PREVIEW], 0, + width, height, &temp_buf); if (temp_buf) return temp_buf_copy (temp_buf, NULL); diff --git a/app/core/gimpviewable.h b/app/core/gimpviewable.h index af7d0b7c5a..dd2bf06544 100644 --- a/app/core/gimpviewable.h +++ b/app/core/gimpviewable.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_VIEWABLE (gimp_viewable_get_type ()) -#define GIMP_VIEWABLE(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_VIEWABLE, GimpViewable)) -#define GIMP_VIEWABLE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_VIEWABLE, GimpViewableClass)) -#define GIMP_IS_VIEWABLE(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_VIEWABLE)) -#define GIMP_IS_VIEWABLE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_VIEWABLE)) +#define GIMP_VIEWABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_VIEWABLE, GimpViewable)) +#define GIMP_VIEWABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_VIEWABLE, GimpViewableClass)) +#define GIMP_IS_VIEWABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_VIEWABLE)) +#define GIMP_IS_VIEWABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_VIEWABLE)) typedef struct _GimpViewableClass GimpViewableClass; @@ -56,7 +56,7 @@ struct _GimpViewableClass }; -GtkType gimp_viewable_get_type (void); +GType gimp_viewable_get_type (void); void gimp_viewable_invalidate_preview (GimpViewable *viewable); void gimp_viewable_size_changed (GimpViewable *viewable); diff --git a/app/devices.c b/app/devices.c index 9eaa27bcbf..eae85ed401 100644 --- a/app/devices.c +++ b/app/devices.c @@ -63,33 +63,33 @@ typedef struct _DeviceInfo DeviceInfo; struct _DeviceInfo { - guint32 device; /* device ID */ - gchar *name; + GdkDevice *device; + gchar *name; - gshort is_present; /* is the device currently present */ + gshort is_present; /* is the device currently present */ /* gdk_input options - for not present devices */ - GdkInputMode mode; - gint num_axes; - GdkAxisUse *axes; - gint num_keys; - GdkDeviceKey *keys; + GdkInputMode mode; + gint num_axes; + GdkAxisUse *axes; + gint num_keys; + GdkDeviceKey *keys; - GimpContext *context; + GimpContext *context; }; typedef struct _DeviceInfoDialog DeviceInfoDialog; struct _DeviceInfoDialog { - gint num_devices; + gint num_devices; - guint32 current; - guint32 *ids; + GdkDevice *current; + GdkDevice **devices; - GtkWidget *shell; - GtkWidget *table; + GtkWidget *shell; + GtkWidget *table; GtkWidget **frames; GtkWidget **tools; @@ -103,7 +103,7 @@ struct _DeviceInfoDialog /* local functions */ static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data); static void devices_write_rc_device (DeviceInfo *device_info, @@ -114,7 +114,7 @@ static void device_status_destroy_callback (void); static void devices_close_callback (GtkWidget *widget, gpointer data); -static void device_status_update (guint32 deviceid); +static void device_status_update (GdkDevice *device); static void device_status_update_current (void); static void device_status_drop_tool (GtkWidget *widget, @@ -139,11 +139,11 @@ static void device_status_data_changed (GimpContext *context, gpointer data); static void device_status_context_connect (GimpContext *context, - guint32 deviceid); + GdkDevice *device); /* global data */ -gint current_device = GDK_CORE_POINTER; +GdkDevice *current_device = NULL; /* local data */ static GList *device_info_list = NULL; @@ -153,36 +153,19 @@ static DeviceInfoDialog *deviceD = NULL; static gboolean suppress_update = FALSE; -/* utility functions for the device lists */ - -static GdkDeviceInfo * -gdk_device_info_get_by_id (guint32 deviceid) -{ - GdkDeviceInfo *info; - GList *list; - - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) - { - info = (GdkDeviceInfo *) list->data; - - if (info->deviceid == deviceid) - return info; - } - - return NULL; -} +/* utility functions for the device_info_list */ static DeviceInfo * -device_info_get_by_id (guint32 deviceid) +device_info_get_by_device (GdkDevice *device) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { info = (DeviceInfo *) list->data; - if (info->device == deviceid) + if (info->device == device) return info; } @@ -193,7 +176,7 @@ static DeviceInfo * device_info_get_by_name (gchar *name) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { @@ -269,34 +252,40 @@ input_dialog_create (void) static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data) { - device_status_update (deviceid); + device_status_update (device); } void devices_init (void) { - GdkDeviceInfo *gdk_info; - DeviceInfo *device_info; - GList *list; + GdkDevice *device; + DeviceInfo *device_info; + GList *list; + + current_device = gdk_core_pointer; /* create device info structures for present devices */ - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - gdk_info = (GdkDeviceInfo *) list->data; + device = (GdkDevice *) list->data; device_info = g_new (DeviceInfo, 1); - device_info->device = gdk_info->deviceid; - device_info->name = g_strdup (gdk_info->name); + device_info->device = device; + device_info->name = g_strdup (device->name); + device_info->mode = device->mode; + device_info->is_present = TRUE; - device_info->mode = gdk_info->mode; - device_info->num_axes = gdk_info->num_axes; + device_info->num_axes = device->num_axes; device_info->axes = NULL; + device_info->num_keys = device->num_axes; + device_info->keys = NULL; + device_info->context = gimp_create_context (the_gimp, device_info->name, NULL); gimp_context_define_args (device_info->context, @@ -305,7 +294,8 @@ devices_init (void) gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } @@ -323,7 +313,7 @@ devices_restore (void) gimprc_parse_file (filename); g_free (filename); - if ((device_info = device_info_get_by_id (current_device)) == NULL) + if ((device_info = device_info_get_by_device (current_device)) == NULL) return; suppress_update = TRUE; @@ -356,10 +346,12 @@ devices_rc_update (gchar *name, /* Find device if we have it */ device_info = device_info_get_by_name (name); - if (!device_info) + if (! device_info) { device_info = g_new (DeviceInfo, 1); - device_info->name = g_strdup (name); + + device_info->device = NULL; + device_info->name = g_strdup (name); device_info->is_present = FALSE; if (values & DEVICE_AXES) @@ -371,7 +363,7 @@ devices_rc_update (gchar *name, else { device_info->num_axes = 0; - device_info->axes = NULL; + device_info->axes = NULL; } if (values & DEVICE_KEYS) @@ -380,6 +372,11 @@ devices_rc_update (gchar *name, device_info->keys = g_new (GdkDeviceKey, num_keys); memcpy (device_info->keys, axes, num_keys * sizeof (GdkDeviceKey)); } + else + { + device_info->num_keys = 0; + device_info->keys = NULL; + } if (values & DEVICE_MODE) device_info->mode = mode; @@ -394,31 +391,44 @@ devices_rc_update (gchar *name, gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } else { - GdkDeviceInfo *gdk_info; + GdkDevice *device; - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; - if (gdk_info != NULL) + if (device) { if (values & DEVICE_MODE) - gdk_input_set_mode (gdk_info->deviceid, mode); + { + gdk_device_set_mode (device, mode); + } - if ((values & DEVICE_AXES) && num_axes >= gdk_info->num_axes) - gdk_input_set_axes (gdk_info->deviceid, axes); - - if ((values & DEVICE_KEYS) && num_keys >= gdk_info->num_keys) + if ((values & DEVICE_AXES) && num_axes >= device->num_axes) { gint i; - - for (i=0; inum_keys); i++) - gdk_input_set_key (gdk_info->deviceid, i, - keys[i].keyval, keys[i].modifiers); + + for (i = 0; i < MIN (num_axes, device->num_axes); i++) + { + gdk_device_set_axis_use (device, i, axes[i]); + } + } + + if ((values & DEVICE_KEYS) && num_keys >= device->num_keys) + { + gint i; + + for (i = 0; i < MIN (num_keys, device->num_keys); i++) + { + gdk_device_set_key (device, i, + keys[i].keyval, + keys[i].modifiers); + } } } else @@ -517,18 +527,18 @@ devices_rc_update (gchar *name, } void -select_device (guint32 new_device) +select_device (GdkDevice *new_device) { - DeviceInfo *device_info; + DeviceInfo *device_info; GimpContext *context; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); gimp_context_unset_parent (device_info->context); suppress_update = TRUE; - device_info = device_info_get_by_id (new_device); + device_info = device_info_get_by_device (new_device); current_device = new_device; @@ -542,22 +552,22 @@ select_device (guint32 new_device) device_status_update_current (); } -gint +gboolean devices_check_change (GdkEvent *event) { - guint32 device; + GdkDevice *device; switch (event->type) { case GDK_MOTION_NOTIFY: - device = ((GdkEventMotion *)event)->deviceid; + device = ((GdkEventMotion *) event)->device; break; case GDK_BUTTON_PRESS: case GDK_BUTTON_RELEASE: - device = ((GdkEventButton *)event)->deviceid; + device = ((GdkEventButton *) event)->device; break; case GDK_PROXIMITY_OUT: - device = ((GdkEventProximity *)event)->deviceid; + device = ((GdkEventProximity *) event)->device; break; default: device = current_device; @@ -568,26 +578,24 @@ devices_check_change (GdkEvent *event) select_device (device); return TRUE; } - else - { - return FALSE; - } + + return FALSE; } static void devices_write_rc_device (DeviceInfo *device_info, FILE *fp) { - GdkDeviceInfo *gdk_info = NULL; - gchar *mode = NULL; - gint i; + GdkDevice *device = NULL; + gchar *mode = NULL; + gint i; if (device_info->is_present) - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; fprintf (fp, "(device \"%s\"", device_info->name); - switch (gdk_info ? gdk_info->mode : device_info->mode) + switch (device ? device->mode : device_info->mode) { case GDK_MODE_DISABLED: mode = "disabled"; @@ -603,13 +611,13 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp, "\n (mode %s)", mode); fprintf (fp, "\n (axes %d", - gdk_info ? gdk_info->num_axes : device_info->num_axes); + device ? device->num_axes : device_info->num_axes); - for (i=0; i< (gdk_info ? gdk_info->num_axes : device_info->num_axes); i++) + for (i = 0; i < (device ? device->num_axes : device_info->num_axes); i++) { gchar *axis_type = NULL; - switch (gdk_info ? gdk_info->axes[i] : device_info->axes[i]) + switch (device ? device->axes[i].use : device_info->axes[i]) { case GDK_AXIS_IGNORE: axis_type = "ignore"; @@ -635,14 +643,14 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp,")"); fprintf (fp, "\n (keys %d", - gdk_info ? gdk_info->num_keys : device_info->num_keys); + device ? device->num_keys : device_info->num_keys); - for (i = 0; i < (gdk_info ? gdk_info->num_keys : device_info->num_keys); i++) + for (i = 0; i < (device ? device->num_keys : device_info->num_keys); i++) { - GdkModifierType modifiers = gdk_info ? gdk_info->keys[i].modifiers : - device_info->keys[i].modifiers; - guint keyval = gdk_info ? gdk_info->keys[i].keyval : - device_info->keys[i].keyval; + GdkModifierType modifiers = (device ? device->keys[i].modifiers : + device_info->keys[i].modifiers); + guint keyval = (device ? device->keys[i].keyval : + device_info->keys[i].keyval); if (keyval) { @@ -716,7 +724,7 @@ devices_write_rc (void) gchar *filename; FILE *fp; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); filename = gimp_personal_rc_file ("devicerc"); fp = fopen (filename, "wb"); @@ -773,7 +781,7 @@ device_status_create (void) gtk_widget_realize (deviceD->table); gtk_widget_show (deviceD->table); - deviceD->ids = g_new (guint32, deviceD->num_devices); + deviceD->devices = g_new (GdkDevice *, deviceD->num_devices); deviceD->frames = g_new (GtkWidget *, deviceD->num_devices); deviceD->tools = g_new (GtkWidget *, deviceD->num_devices); deviceD->foregrounds = g_new (GtkWidget *, deviceD->num_devices); @@ -789,7 +797,7 @@ device_status_create (void) device_info = (DeviceInfo *) list->data; - deviceD->ids[i] = device_info->device; + deviceD->devices[i] = device_info->device; /* the device name */ @@ -811,11 +819,10 @@ device_status_create (void) gimp_preview_new_full (GIMP_VIEWABLE (gimp_context_get_tool (device_info->context)), CELL_SIZE, CELL_SIZE, 0, FALSE, FALSE, TRUE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (device_info->context), - "tool_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (deviceD->tools[i])); + gtk_signal_connect_object_while_alive (GTK_OBJECT (device_info->context), + "tool_changed", + GTK_SIGNAL_FUNC (gimp_preview_set_viewable), + GTK_OBJECT (deviceD->tools[i])); gimp_gtk_drag_dest_set_by_type (deviceD->tools[i], GTK_DEST_DEFAULT_ALL, GIMP_TYPE_TOOL_INFO, @@ -823,7 +830,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->tools[i], GIMP_TYPE_TOOL_INFO, device_status_drop_tool, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->tools[i], 1, 2, i, i+1, 0, 0, 2, 2); @@ -838,7 +845,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->foregrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_foreground_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->foregrounds[i], 2, 3, i, i+1, @@ -854,7 +861,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->backgrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_background_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->backgrounds[i], 3, 4, i, i+1, @@ -878,7 +885,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->brushes[i], GIMP_TYPE_BRUSH, device_status_drop_brush, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->brushes[i], 4, 5, i, i+1, 0, 0, 2, 2); @@ -901,7 +908,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->patterns[i], GIMP_TYPE_PATTERN, device_status_drop_pattern, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->patterns[i], 5, 6, i, i+1, 0, 0, 2, 2); @@ -924,7 +931,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->gradients[i], GIMP_TYPE_GRADIENT, device_status_drop_gradient, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->gradients[i], 6, 7, i, i+1, 0, 0, 2, 2); @@ -932,7 +939,8 @@ device_status_create (void) device_status_update (device_info->device); } - deviceD->current = 0xffffffff; /* random, but doesn't matter */ + deviceD->current = NULL; + device_status_update_current (); gtk_signal_connect (GTK_OBJECT (deviceD->shell), "destroy", @@ -945,7 +953,7 @@ device_status_create (void) static void device_status_destroy_callback (void) { - g_free (deviceD->ids); + g_free (deviceD->devices); g_free (deviceD->frames); g_free (deviceD->tools); g_free (deviceD->foregrounds); @@ -985,10 +993,10 @@ device_status_update_current (void) { for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceD->current) + if (deviceD->devices[i] == deviceD->current) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_OUT); - else if (deviceD->ids[i] == current_device) + else if (deviceD->devices[i] == current_device) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_IN); } @@ -998,9 +1006,8 @@ device_status_update_current (void) } void -device_status_update (guint32 deviceid) +device_status_update (GdkDevice *device) { - GdkDeviceInfo *gdk_info; DeviceInfo *device_info; GimpRGB color; guchar red, green, blue; @@ -1010,21 +1017,18 @@ device_status_update (guint32 deviceid) if (!deviceD || suppress_update) return; - if ((device_info = device_info_get_by_id (deviceid)) == NULL) - return; - - if ((gdk_info = gdk_device_info_get_by_id (deviceid)) == NULL) + if ((device_info = device_info_get_by_device (device)) == NULL) return; for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceid) + if (deviceD->devices[i] == device) break; } g_return_if_fail (i < deviceD->num_devices); - if (gdk_info->mode == GDK_MODE_DISABLED) + if (device->mode == GDK_MODE_DISABLED) { gtk_widget_hide (deviceD->frames[i]); gtk_widget_hide (deviceD->tools[i]); @@ -1097,7 +1101,7 @@ device_status_drop_tool (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1112,7 +1116,7 @@ device_status_foreground_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1128,7 +1132,7 @@ device_status_background_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1144,7 +1148,7 @@ device_status_drop_brush (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1159,7 +1163,7 @@ device_status_drop_pattern (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1174,7 +1178,7 @@ device_status_drop_gradient (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1189,33 +1193,29 @@ device_status_data_changed (GimpContext *context, gpointer dummy, gpointer data) { - DeviceInfo *device_info; - - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); - - device_status_update (device_info->device); + device_status_update ((GdkDevice *) data); } static void device_status_context_connect (GimpContext *context, - guint32 deviceid) + GdkDevice *device) { gtk_signal_connect (GTK_OBJECT (context), "foreground_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "background_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "tool_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "brush_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "pattern_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "gradient_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); } diff --git a/app/devices.h b/app/devices.h index fcd1a52ace..e3fe0b13a9 100644 --- a/app/devices.h +++ b/app/devices.h @@ -51,7 +51,7 @@ GtkWidget * device_status_create (void); gint devices_check_change (GdkEvent *event); /* Loads stored device settings (tool, cursor, ...) */ -void select_device (guint32 device); +void select_device (GdkDevice *device); /* Add information about one tool from rc file */ void devices_rc_update (gchar *name, @@ -72,8 +72,8 @@ void devices_rc_update (gchar *name, void device_status_free (void); -/* Current device id */ -extern gint current_device; +/* Current device */ +extern GdkDevice *current_device; #endif /* __DEVICES_H__ */ diff --git a/app/dialogs/about-dialog.c b/app/dialogs/about-dialog.c index 76edf16c12..54d68b470f 100644 --- a/app/dialogs/about-dialog.c +++ b/app/dialogs/about-dialog.c @@ -120,15 +120,19 @@ about_dialog_create (void) GtkWidget *aboutframe; GtkWidget *label; GtkWidget *alignment; +#if 0 GtkStyle *style; GdkFont *font; +#endif gint max_width; gint i; gchar *label_text; if (! about_dialog) { - about_dialog = gtk_window_new (GTK_WINDOW_DIALOG); + about_dialog = gtk_window_new (GTK_WINDOW_TOPLEVEL); + gtk_window_set_type_hint (GTK_WINDOW (about_dialog), + GDK_WINDOW_TYPE_HINT_DIALOG); gtk_window_set_wmclass (GTK_WINDOW (about_dialog), "about_dialog", "Gimp"); gtk_window_set_title (GTK_WINDOW (about_dialog), _("About the GIMP")); gtk_window_set_policy (GTK_WINDOW (about_dialog), FALSE, FALSE, FALSE); @@ -194,6 +198,10 @@ about_dialog_create (void) gdk_window_set_background (logo_area->window, &logo_area->style->black); /* this is a font, provide only one single font definition */ +#ifdef __GNUC__ +#warning FIXME: font description +#endif +#if 0 font = gdk_font_load (_("-*-helvetica-medium-r-normal--*-140-*-*-*-*-*-*")); if (font) { @@ -204,6 +212,7 @@ about_dialog_create (void) gtk_widget_push_style (style); gtk_style_unref (style); } +#endif label_text = g_strdup_printf (_("Version %s brought to you by"), GIMP_VERSION); label = gtk_label_new (label_text); @@ -216,7 +225,9 @@ about_dialog_create (void) gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, TRUE, 0); gtk_widget_show (label); +#if 0 gtk_widget_pop_style (); +#endif alignment = gtk_alignment_new (0.5, 0.5, 0.0, 0.0); gtk_box_pack_start (GTK_BOX (vbox), alignment, FALSE, TRUE, 0); diff --git a/app/dialogs/color-dialog.c b/app/dialogs/color-dialog.c index 8e5276209f..15189906c3 100644 --- a/app/dialogs/color-dialog.c +++ b/app/dialogs/color-dialog.c @@ -821,13 +821,16 @@ color_notebook_page_switch (GtkWidget *widget, guint page_num, gpointer data) { + GtkWidget *page_widget; ColorNotebook *cnp; ColorSelectorInstance *csel; gint i; cnp = (ColorNotebook *) data; - csel = gtk_object_get_data (GTK_OBJECT (page->child), "gimp_color_notebook"); + page_widget = gtk_notebook_get_nth_page (GTK_NOTEBOOK (widget), page_num); + + csel = g_object_get_data (G_OBJECT (page_widget), "gimp_color_notebook"); g_return_if_fail (cnp != NULL && csel != NULL); diff --git a/app/dialogs/dialogs-constructors.c b/app/dialogs/dialogs-constructors.c index f9cca0f6e6..a517d68eb1 100644 --- a/app/dialogs/dialogs-constructors.c +++ b/app/dialogs/dialogs-constructors.c @@ -705,9 +705,9 @@ dialogs_path_list_view_new (GimpDialogFactory *factory, view = paths_dialog_create (); - gtk_signal_connect (GTK_OBJECT (view), "destroy", - GTK_SIGNAL_FUNC (gtk_widget_destroyed), - &view); + g_signal_connect (G_OBJECT (view), "destroy", + G_CALLBACK (gtk_widget_destroyed), + &view); dockable = dialogs_dockable_new (view, "Path List", "Paths", @@ -738,9 +738,9 @@ dialogs_indexed_palette_new (GimpDialogFactory *factory, dialogs_set_indexed_palette_context_func (GIMP_DOCKABLE (dockable), context); - gtk_signal_connect (GTK_OBJECT (view), "selected", - GTK_SIGNAL_FUNC (dialogs_indexed_palette_selected), - dockable); + g_signal_connect (G_OBJECT (view), "selected", + G_CALLBACK (dialogs_indexed_palette_selected), + dockable); return dockable; } @@ -812,8 +812,8 @@ dialogs_indexed_palette_selected (GimpColormapDialog *dialog, { GimpContext *context; - context = (GimpContext *) gtk_object_get_data (GTK_OBJECT (dialog), - "gimp-dialogs-context"); + context = (GimpContext *) g_object_get_data (G_OBJECT (dialog), + "gimp-dialogs-context"); if (context) { @@ -852,11 +852,10 @@ dialogs_brush_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "brush_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "brush_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -876,11 +875,10 @@ dialogs_pattern_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "pattern_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "pattern_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -900,11 +898,10 @@ dialogs_gradient_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "gradient_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "gradient_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -924,11 +921,10 @@ dialogs_palette_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "palette_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "palette_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -948,11 +944,10 @@ dialogs_tool_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "tool_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "tool_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -963,8 +958,8 @@ dialogs_set_view_context_func (GimpDockable *dockable, { GimpContainerView *view; - view = (GimpContainerView *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + view = (GimpContainerView *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); if (view) gimp_container_view_set_context (view, context); @@ -976,8 +971,10 @@ dialogs_set_editor_context_func (GimpDockable *dockable, { GimpContainerEditor *editor; - editor = (GimpContainerEditor *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + editor = (GimpContainerEditor *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); + + g_print ("dialogs_set_editor_context_func()\n"); if (editor) gimp_container_view_set_context (editor->view, context); @@ -989,28 +986,23 @@ dialogs_set_drawable_context_func (GimpDockable *dockable, { GimpDrawableListView *view; - view = (GimpDrawableListView *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + view = (GimpDrawableListView *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); if (view) { - GimpContext *old_context; - - old_context = (GimpContext *) gtk_object_get_data (GTK_OBJECT (view), - "gimp-dialogs-context"); - - if (old_context) + if (dockable->context) { - gtk_signal_disconnect_by_func (GTK_OBJECT (old_context), - GTK_SIGNAL_FUNC (dialogs_drawable_view_image_changed), - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (dockable->context), + dialogs_drawable_view_image_changed, + view); } if (context) { - gtk_signal_connect (GTK_OBJECT (context), "image_changed", - GTK_SIGNAL_FUNC (dialogs_drawable_view_image_changed), - view); + g_signal_connect (G_OBJECT (context), "image_changed", + G_CALLBACK (dialogs_drawable_view_image_changed), + view); dialogs_drawable_view_image_changed (context, gimp_context_get_image (context), @@ -1020,8 +1012,6 @@ dialogs_set_drawable_context_func (GimpDockable *dockable, { dialogs_drawable_view_image_changed (NULL, NULL, view); } - - gtk_object_set_data (GTK_OBJECT (view), "gimp-dialogs-context", context); } } @@ -1031,28 +1021,23 @@ dialogs_set_path_context_func (GimpDockable *dockable, { GtkWidget *view; - view = (GtkWidget *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + view = (GtkWidget *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); if (view) { - GimpContext *old_context; - - old_context = (GimpContext *) gtk_object_get_data (GTK_OBJECT (view), - "gimp-dialogs-context"); - - if (old_context) + if (dockable->context) { - gtk_signal_disconnect_by_func (GTK_OBJECT (old_context), - GTK_SIGNAL_FUNC (dialogs_path_view_image_changed), - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (dockable->context), + dialogs_path_view_image_changed, + view); } if (context) { - gtk_signal_connect (GTK_OBJECT (context), "image_changed", - GTK_SIGNAL_FUNC (dialogs_path_view_image_changed), - view); + g_signal_connect (G_OBJECT (context), "image_changed", + G_CALLBACK (dialogs_path_view_image_changed), + view); dialogs_path_view_image_changed (context, gimp_context_get_image (context), @@ -1062,8 +1047,6 @@ dialogs_set_path_context_func (GimpDockable *dockable, { dialogs_path_view_image_changed (NULL, NULL, view); } - - gtk_object_set_data (GTK_OBJECT (view), "gimp-dialogs-context", context); } } @@ -1073,28 +1056,23 @@ dialogs_set_indexed_palette_context_func (GimpDockable *dockable, { GimpColormapDialog *view; - view = (GimpColormapDialog *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + view = (GimpColormapDialog *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); if (view) { - GimpContext *old_context; - - old_context = (GimpContext *) gtk_object_get_data (GTK_OBJECT (view), - "gimp-dialogs-context"); - - if (old_context) + if (dockable->context) { - gtk_signal_disconnect_by_func (GTK_OBJECT (old_context), - GTK_SIGNAL_FUNC (dialogs_indexed_palette_image_changed), - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (dockable->context), + dialogs_indexed_palette_image_changed, + view); } if (context) { - gtk_signal_connect (GTK_OBJECT (context), "image_changed", - GTK_SIGNAL_FUNC (dialogs_indexed_palette_image_changed), - view); + g_signal_connect (G_OBJECT (context), "image_changed", + G_CALLBACK (dialogs_indexed_palette_image_changed), + view); dialogs_indexed_palette_image_changed (context, gimp_context_get_image (context), @@ -1104,8 +1082,6 @@ dialogs_set_indexed_palette_context_func (GimpDockable *dockable, { dialogs_indexed_palette_image_changed (NULL, NULL, view); } - - gtk_object_set_data (GTK_OBJECT (view), "gimp-dialogs-context", context); } } @@ -1125,7 +1101,7 @@ dialogs_dockable_new (GtkWidget *widget, gtk_container_add (GTK_CONTAINER (dockable), widget); gtk_widget_show (widget); - gtk_object_set_data (GTK_OBJECT (dockable), "gimp-dialogs-view", widget); + g_object_set_data (G_OBJECT (dockable), "gimp-dialogs-view", widget); return dockable; } diff --git a/app/dialogs/file-dialog-utils.c b/app/dialogs/file-dialog-utils.c index 57d505d755..edd964cf30 100644 --- a/app/dialogs/file-dialog-utils.c +++ b/app/dialogs/file-dialog-utils.c @@ -68,9 +68,9 @@ file_dialog_update_name (PlugInProcDef *proc, { if (proc->extensions_list) { - gchar *text; - gchar *last_dot; - GString *s; + const gchar *text; + gchar *last_dot; + GString *s; text = gtk_entry_get_text (GTK_ENTRY (GTK_FILE_SELECTION (filesel)->selection_entry)); last_dot = strrchr (text, '.'); diff --git a/app/dialogs/file-open-dialog.c b/app/dialogs/file-open-dialog.c index fbe3baaee5..a9c792c583 100644 --- a/app/dialogs/file-open-dialog.c +++ b/app/dialogs/file-open-dialog.c @@ -63,8 +63,8 @@ /* local function prototypes */ -static gint file_open_with_proc_and_display (gchar *filename, - gchar *raw_filename, +static gint file_open_with_proc_and_display (const gchar *filename, + const gchar *raw_filename, PlugInProcDef *file_proc); static void file_open_dialog_create (void); static void file_open_genbutton_callback (GtkWidget *widget, @@ -156,7 +156,7 @@ file_open_dialog_show (void) } gint -file_open_with_display (gchar *filename) +file_open_with_display (const gchar *filename) { return file_open_with_proc_and_display (filename, filename, NULL); } @@ -165,8 +165,8 @@ file_open_with_display (gchar *filename) /* private functions */ static gint -file_open_with_proc_and_display (gchar *filename, - gchar *raw_filename, +file_open_with_proc_and_display (const gchar *filename, + const gchar *raw_filename, PlugInProcDef *file_proc) { GimpImage *gimage; @@ -445,7 +445,7 @@ set_preview (const gchar *fullfname, guchar *raw_thumb; gint tnw,tnh, i; gchar *pname; - gchar *fname; + const gchar *fname; gchar *tname; gchar *imginfo = NULL; struct stat file_stat; @@ -581,7 +581,7 @@ static void file_open_clistrow_callback (GtkWidget *widget, gint row) { - gchar *fullfname = NULL; + const gchar *fullfname; fullfname = gtk_file_selection_get_filename (GTK_FILE_SELECTION (fileload)); @@ -602,7 +602,7 @@ file_open_genbutton_callback (GtkWidget *widget, /* added for multi-file preview generation... */ GtkFileSelection *fs; gchar *full_filename = NULL; - gchar *filedirname; + gchar *filedirname = NULL; struct stat buf; gint err; @@ -629,11 +629,12 @@ file_open_genbutton_callback (GtkWidget *widget, /* Find a real base directory for the multiple selection */ gtk_file_selection_set_filename (fs, ""); - filedirname= gtk_file_selection_get_filename (fs); + filedirname = g_strdup (gtk_file_selection_get_filename (fs)); + if (filedirname[strlen (filedirname) - 1] == G_DIR_SEPARATOR) filedirname[strlen (filedirname) - 1] = '\0'; - while(list) + while (list) { full_filename = g_strconcat (filedirname, G_DIR_SEPARATOR_S, (gchar *) list->data, NULL); @@ -641,7 +642,8 @@ file_open_genbutton_callback (GtkWidget *widget, err = stat (full_filename, &buf); if (! (err == 0 && (buf.st_mode & S_IFDIR))) - { /* Is not directory. */ + { + /* Is not directory. */ gint dummy; gimage_to_be_thumbed = file_open_image (the_gimp, @@ -677,13 +679,13 @@ file_open_genbutton_callback (GtkWidget *widget, } } - g_free(full_filename); - list= g_slist_next(list); + g_free (full_filename); + list = g_slist_next (list); } for (list = toplist; list; list = g_slist_next (list)) { - if (!(g_slist_next (list))) + if (! g_slist_next (list)) { full_filename = g_strconcat (filedirname, G_DIR_SEPARATOR_S, (gchar *) list->data, NULL); @@ -696,6 +698,8 @@ file_open_genbutton_callback (GtkWidget *widget, g_slist_free (toplist); toplist = NULL; + + g_free (filedirname); } gtk_widget_set_sensitive (GTK_WIDGET (fileload), TRUE); @@ -709,14 +713,15 @@ file_open_ok_callback (GtkWidget *widget, GtkFileSelection *fs; gchar *full_filename; gchar *raw_filename; - gchar *filedirname; + const gchar *filedirname; struct stat buf; gint err; gint status; fs = GTK_FILE_SELECTION (data); - full_filename = gtk_file_selection_get_filename (fs); - raw_filename = gtk_entry_get_text (GTK_ENTRY(fs->selection_entry)); + + full_filename = g_strdup (gtk_file_selection_get_filename (fs)); + raw_filename = g_strdup (gtk_entry_get_text (GTK_ENTRY(fs->selection_entry))); g_assert (full_filename && raw_filename); @@ -771,12 +776,15 @@ file_open_ok_callback (GtkWidget *widget, /* Find a real base directory for the multiple selection */ - raw_filename = g_strdup(raw_filename); + raw_filename = g_strdup (raw_filename); + gtk_file_selection_set_filename (fs, ""); filedirname = gtk_file_selection_get_filename (fs); while (list) { + g_free (full_filename); + full_filename = g_strconcat (filedirname, G_DIR_SEPARATOR_S, (gchar *) list->data, NULL); @@ -789,7 +797,7 @@ file_open_ok_callback (GtkWidget *widget, { /* Is not directory. */ status = file_open_with_proc_and_display (full_filename, - (gchar *) list->data, + (const gchar *) list->data, load_file_proc); if (status == GIMP_PDB_SUCCESS) @@ -803,7 +811,6 @@ file_open_ok_callback (GtkWidget *widget, } } - g_free (full_filename); g_free (list->data); list = g_slist_next (list); } @@ -813,9 +820,10 @@ file_open_ok_callback (GtkWidget *widget, } gtk_file_selection_set_filename (fs, raw_filename); - g_free (raw_filename); gtk_widget_set_sensitive (GTK_WIDGET (fs), TRUE); + g_free (full_filename); + g_free (raw_filename); } static GSList * diff --git a/app/dialogs/file-open-dialog.h b/app/dialogs/file-open-dialog.h index 3d3b47ae9c..10f869e4f0 100644 --- a/app/dialogs/file-open-dialog.h +++ b/app/dialogs/file-open-dialog.h @@ -25,7 +25,7 @@ void file_open_dialog_menu_reset (void); void file_open_dialog_show (void); -gint file_open_with_display (gchar *filename); +gint file_open_with_display (const gchar *filename); #endif /* __FILE_OPEN_DIALOG_H__ */ diff --git a/app/dialogs/file-save-dialog.c b/app/dialogs/file-save-dialog.c index 5175d2d0ad..fa74968b1d 100644 --- a/app/dialogs/file-save-dialog.c +++ b/app/dialogs/file-save-dialog.c @@ -320,15 +320,16 @@ file_save_ok_callback (GtkWidget *widget, gpointer data) { GtkFileSelection *fs; - gchar *filename; - gchar *raw_filename; + const gchar *filename; + const gchar *raw_filename; gchar *dot; gint x; struct stat buf; gint err; fs = GTK_FILE_SELECTION (data); - filename = gtk_file_selection_get_filename (fs); + + filename = gtk_file_selection_get_filename (fs); raw_filename = gtk_entry_get_text (GTK_ENTRY (fs->selection_entry)); g_assert (filename && raw_filename); diff --git a/app/dialogs/image-new-dialog.c b/app/dialogs/image-new-dialog.c index 672b81680e..dabb4c703f 100644 --- a/app/dialogs/image-new-dialog.c +++ b/app/dialogs/image-new-dialog.c @@ -423,8 +423,6 @@ file_new_dialog_create (GimpImage *gimage) /* height in units */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); /* add the "height in units" spinbutton to the sizeentry */ @@ -436,8 +434,6 @@ file_new_dialog_create (GimpImage *gimage) hbox = gtk_hbox_new (FALSE, 2); adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton2 = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton2), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton2), TRUE); gtk_widget_set_usize (spinbutton2, 75, 0); gtk_box_pack_start (GTK_BOX (hbox), spinbutton2, FALSE, FALSE, 0); @@ -459,8 +455,6 @@ file_new_dialog_create (GimpImage *gimage) /* width in units */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); /* add the "width in units" spinbutton to the sizeentry */ @@ -473,8 +467,6 @@ file_new_dialog_create (GimpImage *gimage) gtk_table_attach_defaults (GTK_TABLE (table), abox, 1, 2, 0, 1); adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton2 = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton2), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton2), TRUE); gtk_widget_set_usize (spinbutton2, 75, 0); /* add the "width in pixels" spinbutton to the main table */ @@ -531,8 +523,6 @@ file_new_dialog_create (GimpImage *gimage) /* the resolution sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); diff --git a/app/dialogs/info-dialog.c b/app/dialogs/info-dialog.c index 2f8d153378..df06bd1869 100644 --- a/app/dialogs/info-dialog.c +++ b/app/dialogs/info-dialog.c @@ -40,7 +40,7 @@ static void info_field_new (InfoDialog *idialog, GtkWidget *widget, GtkObject *object, gpointer value_ptr, - GtkSignalFunc callback, + GCallback callback, gpointer callback_data); static void update_field (InfoField *info_field); static gint info_dialog_delete_callback (GtkWidget *widget, @@ -55,7 +55,7 @@ info_field_new (InfoDialog *idialog, GtkWidget *widget, GtkObject *obj, gpointer value_ptr, - GtkSignalFunc callback, + GCallback callback, gpointer callback_data) { GtkWidget *label; @@ -99,43 +99,41 @@ info_field_new (InfoDialog *idialog, static void update_field (InfoField *field) { - gchar *old_text; - gint num; - gint i; + const gchar *old_text; + gint num; + gint i; if (field->value_ptr == NULL) return; if (field->field_type != INFO_LABEL) - gtk_signal_handler_block_by_func (GTK_OBJECT (field->obj), - field->callback, - field->callback_data); + g_signal_handlers_block_by_func (G_OBJECT (field->obj), + field->callback, + field->callback_data); switch (field->field_type) { case INFO_LABEL: - gtk_label_get (GTK_LABEL (field->obj), &old_text); - if (strcmp (old_text, (gchar*) field->value_ptr)) - gtk_label_set_text (GTK_LABEL (field->obj), (gchar*) field->value_ptr); + gtk_label_set_text (GTK_LABEL (field->obj), (gchar *) field->value_ptr); break; case INFO_ENTRY: old_text = gtk_entry_get_text (GTK_ENTRY (field->obj)); - if (strcmp (old_text, (gchar*) field->value_ptr)) - gtk_entry_set_text (GTK_ENTRY (field->obj), (gchar*) field->value_ptr); + if (strcmp (old_text, (gchar *) field->value_ptr)) + gtk_entry_set_text (GTK_ENTRY (field->obj), (gchar *) field->value_ptr); break; case INFO_SCALE: case INFO_SPINBUTTON: gtk_adjustment_set_value (GTK_ADJUSTMENT (field->obj), - *((gdouble*) field->value_ptr)); + *((gdouble *) field->value_ptr)); break; case INFO_SIZEENTRY: num = GIMP_SIZE_ENTRY (field->obj)->number_of_fields; for (i = 0; i < num; i++) gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (field->obj), i, - ((gdouble*) field->value_ptr)[i]); + ((gdouble *) field->value_ptr)[i]); break; default: @@ -144,12 +142,12 @@ update_field (InfoField *field) } if (field->field_type != INFO_LABEL) - gtk_signal_handler_unblock_by_func (GTK_OBJECT (field->obj), - field->callback, - field->callback_data); + g_signal_handlers_unblock_by_func (G_OBJECT (field->obj), + field->callback, + field->callback_data); } -static gint +static gboolean info_dialog_delete_callback (GtkWidget *widget, GdkEvent *event, gpointer data) @@ -179,8 +177,8 @@ info_dialog_new_extended (gchar *title, gtk_window_set_wmclass (GTK_WINDOW (shell), "info_dialog", "Gimp"); gtk_window_set_title (GTK_WINDOW (shell), title); - gtk_signal_connect (GTK_OBJECT (shell), "delete_event", - GTK_SIGNAL_FUNC (info_dialog_delete_callback), + g_signal_connect (G_OBJECT (shell), "delete_event", + G_CALLBACK (info_dialog_delete_callback), idialog); vbox = gtk_vbox_new (FALSE, 0); @@ -305,7 +303,8 @@ info_dialog_add_label (InfoDialog *idialog, label = gtk_label_new (text_ptr); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); - info_field_new (idialog, INFO_LABEL, title, label, NULL, (void*) text_ptr, + info_field_new (idialog, INFO_LABEL, title, label, NULL, + text_ptr, NULL, NULL); return label; @@ -313,10 +312,10 @@ info_dialog_add_label (InfoDialog *idialog, GtkWidget * info_dialog_add_entry (InfoDialog *idialog, - char *title, - char *text_ptr, - GtkSignalFunc callback, - gpointer data) + gchar *title, + gchar *text_ptr, + GCallback callback, + gpointer callback_data) { GtkWidget *entry; @@ -327,11 +326,13 @@ info_dialog_add_entry (InfoDialog *idialog, gtk_entry_set_text (GTK_ENTRY (entry), text_ptr ? text_ptr : ""); if (callback) - gtk_signal_connect (GTK_OBJECT (entry), "changed", - GTK_SIGNAL_FUNC (callback), data); + g_signal_connect (G_OBJECT (entry), "changed", + callback, + callback_data); - info_field_new (idialog, INFO_ENTRY, title, entry, NULL, (void*) text_ptr, - callback, data); + info_field_new (idialog, INFO_ENTRY, title, entry, NULL, + text_ptr, + callback, callback_data); return entry; } @@ -346,8 +347,8 @@ info_dialog_add_scale (InfoDialog *idialog, gfloat page_increment, gfloat page_size, gint digits, - GtkSignalFunc callback, - gpointer data) + GCallback callback, + gpointer callback_data) { GtkObject *adjustment; GtkWidget *scale; @@ -364,11 +365,13 @@ info_dialog_add_scale (InfoDialog *idialog, gtk_scale_set_draw_value (GTK_SCALE (scale), FALSE); if (callback) - gtk_signal_connect (GTK_OBJECT (adjustment), "value_changed", - GTK_SIGNAL_FUNC (callback), data); + g_signal_connect (G_OBJECT (adjustment), "value_changed", + callback, + callback_data); info_field_new (idialog, INFO_SCALE, title, scale, adjustment, - (void*) value_ptr, callback, data); + value_ptr, + callback, callback_data); return scale; } @@ -384,8 +387,8 @@ info_dialog_add_spinbutton (InfoDialog *idialog, gfloat page_size, gfloat climb_rate, gint digits, - GtkSignalFunc callback, - gpointer data) + GCallback callback, + gpointer callback_data) { GtkWidget *alignment; GtkObject *adjustment; @@ -399,20 +402,21 @@ info_dialog_add_spinbutton (InfoDialog *idialog, step_increment, page_increment, page_size); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), climb_rate, MAX (MIN (digits, 6), 0)); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); if (callback) - gtk_signal_connect (GTK_OBJECT (adjustment), "value_changed", - GTK_SIGNAL_FUNC (callback), data); + g_signal_connect (G_OBJECT (adjustment), "value_changed", + callback, + callback_data); gtk_container_add (GTK_CONTAINER (alignment), spinbutton); gtk_widget_show (spinbutton); - info_field_new (idialog, INFO_SPINBUTTON, title, alignment, adjustment, - (void*) value_ptr, callback, data); + info_field_new (idialog, INFO_SPINBUTTON, title, alignment, + adjustment, + value_ptr, + callback, callback_data); return spinbutton; } @@ -428,8 +432,8 @@ info_dialog_add_sizeentry (InfoDialog *idialog, gboolean menu_show_percent, gboolean show_refval, GimpSizeEntryUpdatePolicy update_policy, - GtkSignalFunc callback, - gpointer data) + GCallback callback, + gpointer callback_data) { GtkWidget *alignment; GtkWidget *sizeentry; @@ -448,15 +452,17 @@ info_dialog_add_sizeentry (InfoDialog *idialog, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (sizeentry), i, value_ptr[i]); if (callback) - gtk_signal_connect (GTK_OBJECT (sizeentry), "value_changed", - GTK_SIGNAL_FUNC (callback), data); + g_signal_connect (G_OBJECT (sizeentry), "value_changed", + callback, + callback_data); gtk_container_add (GTK_CONTAINER (alignment), sizeentry); gtk_widget_show (sizeentry); info_field_new (idialog, INFO_SIZEENTRY, title, alignment, GTK_OBJECT (sizeentry), - (void*) value_ptr, callback, data); + value_ptr, + callback, callback_data); return sizeentry; } diff --git a/app/dialogs/info-dialog.h b/app/dialogs/info-dialog.h index 54255fc41c..735dbc2b56 100644 --- a/app/dialogs/info-dialog.h +++ b/app/dialogs/info-dialog.h @@ -38,7 +38,7 @@ struct _InfoField GtkObject *obj; gpointer value_ptr; - GtkSignalFunc callback; + GCallback callback; gpointer callback_data; }; @@ -77,8 +77,8 @@ GtkWidget *info_dialog_add_label (InfoDialog *idialog, GtkWidget *info_dialog_add_entry (InfoDialog *idialog, gchar *title, gchar *text_ptr, - GtkSignalFunc callback, - gpointer data); + GCallback callback, + gpointer callback_data); GtkWidget *info_dialog_add_scale (InfoDialog *idialog, gchar *title, @@ -89,8 +89,8 @@ GtkWidget *info_dialog_add_scale (InfoDialog *idialog, gfloat page_increment, gfloat page_size, gint digits, - GtkSignalFunc callback, - gpointer data); + GCallback callback, + gpointer callback_data); GtkWidget *info_dialog_add_spinbutton (InfoDialog *idialog, gchar *title, @@ -102,8 +102,8 @@ GtkWidget *info_dialog_add_spinbutton (InfoDialog *idialog, gfloat page_size, gfloat climb_rate, gint digits, - GtkSignalFunc callback, - gpointer data); + GCallback callback, + gpointer callback_data); GtkWidget *info_dialog_add_sizeentry (InfoDialog *idialog, gchar *title, @@ -115,7 +115,7 @@ GtkWidget *info_dialog_add_sizeentry (InfoDialog *idialog, gboolean menu_show_percent, gboolean show_refval, GimpSizeEntryUpdatePolicy update_policy, - GtkSignalFunc callback, - gpointer data); + GCallback callback, + gpointer callback_data); #endif /* __INFO_DIALOG_H__ */ diff --git a/app/dialogs/module-dialog.c b/app/dialogs/module-dialog.c index c6d73b0821..263515fc64 100644 --- a/app/dialogs/module-dialog.c +++ b/app/dialogs/module-dialog.c @@ -441,22 +441,20 @@ module_info_class_init (ModuleInfoClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); module_info_signals[MODIFIED] = - gtk_signal_new ("modified", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (ModuleInfoClass, - modified), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, module_info_signals, LAST_SIGNAL); + g_signal_new ("modified", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + GTK_SIGNAL_OFFSET (ModuleInfoClass, modified), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = module_info_destroy; - klass->modified = NULL; + klass->modified = NULL; } static void diff --git a/app/dialogs/offset-dialog.c b/app/dialogs/offset-dialog.c index d5646391ad..d42d2f5375 100644 --- a/app/dialogs/offset-dialog.c +++ b/app/dialogs/offset-dialog.c @@ -120,8 +120,6 @@ offset_dialog_create (GimpDrawable *drawable) /* The offset sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); diff --git a/app/dialogs/preferences-dialog.c b/app/dialogs/preferences-dialog.c index 123bca6a4c..7a0c751aa0 100644 --- a/app/dialogs/preferences-dialog.c +++ b/app/dialogs/preferences-dialog.c @@ -1718,6 +1718,10 @@ preferences_dialog_create (void) gtk_container_add (GTK_CONTAINER (frame), hbox); gtk_widget_show (hbox); +#ifdef __GNUC__ +#warning FIXME: replace GtkText +#endif +#if 0 text = gtk_text_new (NULL, NULL); gtk_text_set_editable (GTK_TEXT (text), TRUE); gtk_text_insert (GTK_TEXT (text), NULL, NULL, NULL, @@ -1727,6 +1731,7 @@ preferences_dialog_create (void) &the_gimp->config->default_comment); gtk_container_add (GTK_CONTAINER (hbox), text); gtk_widget_show (text); +#endif /* Display page */ vbox = prefs_notebook_append_page (GTK_NOTEBOOK (notebook), diff --git a/app/dialogs/resize-dialog.c b/app/dialogs/resize-dialog.c index e3975d89ef..119dabc2fe 100644 --- a/app/dialogs/resize-dialog.c +++ b/app/dialogs/resize-dialog.c @@ -104,16 +104,16 @@ static void resolution_update (Resize *resize, Resize * resize_widget_new (ResizeType type, ResizeTarget target, - GtkObject *object, - gchar *signal, + GObject *object, + const gchar *signal, gint width, gint height, gdouble resolution_x, gdouble resolution_y, GimpUnit unit, gboolean dot_for_dot, - GtkSignalFunc ok_cb, - GtkSignalFunc cancel_cb, + GCallback ok_cb, + GCallback cancel_cb, gpointer user_data) { Resize *resize; @@ -215,23 +215,23 @@ resize_widget_new (ResizeType type, NULL); - gtk_signal_connect_object (GTK_OBJECT (resize->resize_shell), "destroy", - GTK_SIGNAL_FUNC (g_free), - (GtkObject *) private); + g_signal_connect_swapped (G_OBJECT (resize->resize_shell), "destroy", + G_CALLBACK (g_free), + private); } /* handle the image disappearing under our feet */ if (object && signal) { if (cancel_cb) - gtk_signal_connect (GTK_OBJECT (object), signal, - cancel_cb, - user_data); + g_signal_connect (G_OBJECT (object), signal, + cancel_cb, + user_data); else - gtk_signal_connect_object_while_alive - (GTK_OBJECT (object), signal, - GTK_SIGNAL_FUNC (gtk_widget_destroy), - GTK_OBJECT (resize->resize_shell)); + g_signal_connect_object (G_OBJECT (object), signal, + G_CALLBACK (gtk_widget_destroy), + G_OBJECT (resize->resize_shell), + G_CONNECT_SWAPPED); } /* the main vbox */ @@ -298,8 +298,6 @@ resize_widget_new (ResizeType type, /* the new size sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); @@ -337,12 +335,12 @@ resize_widget_new (ResizeType type, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 1, height); - gtk_signal_connect (GTK_OBJECT (private->size_se), "value_changed", - GTK_SIGNAL_FUNC (size_callback), - resize); - gtk_signal_connect (GTK_OBJECT (private->size_se), "unit_changed", - GTK_SIGNAL_FUNC (orig_labels_update), - resize); + g_signal_connect (G_OBJECT (private->size_se), "value_changed", + G_CALLBACK (size_callback), + resize); + g_signal_connect (G_OBJECT (private->size_se), "unit_changed", + G_CALLBACK (orig_labels_update), + resize); /* initialize the original width & height labels */ orig_labels_update (private->size_se, resize); @@ -377,32 +375,30 @@ resize_widget_new (ResizeType type, (double) GIMP_MAX_IMAGE_SIZE / (double) resize->width, 0.01, 0.1, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (private->ratio_x_adj), 1, 4); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_table_attach_defaults (GTK_TABLE (table2), spinbutton, 0, 1, 0, 1); - gtk_signal_connect (GTK_OBJECT ( private->ratio_x_adj), "value_changed", - (GtkSignalFunc) ratio_callback, - resize); gtk_widget_show (spinbutton); + g_signal_connect (G_OBJECT ( private->ratio_x_adj), "value_changed", + G_CALLBACK (ratio_callback), + resize); + private->ratio_y_adj = gtk_adjustment_new (resize->ratio_y, (double) GIMP_MIN_IMAGE_SIZE / (double) resize->height, (double) GIMP_MAX_IMAGE_SIZE / (double) resize->height, 0.01, 0.1, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (private->ratio_y_adj), 1, 4); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_table_attach_defaults (GTK_TABLE (table2), spinbutton, 0, 1, 1, 2); - gtk_signal_connect (GTK_OBJECT ( private->ratio_y_adj), "value_changed", - (GtkSignalFunc) ratio_callback, - resize); gtk_widget_show (spinbutton); + g_signal_connect (G_OBJECT ( private->ratio_y_adj), "value_changed", + G_CALLBACK (ratio_callback), + resize); + /* the constrain ratio chainbutton */ private->constrain = gimp_chain_button_new (GIMP_CHAIN_RIGHT); gimp_chain_button_set_active (GIMP_CHAIN_BUTTON (private->constrain), TRUE); @@ -430,8 +426,6 @@ resize_widget_new (ResizeType type, /* the offset sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); @@ -468,9 +462,9 @@ resize_widget_new (ResizeType type, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->offset_se), 0, 0); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->offset_se), 1, 0); - gtk_signal_connect (GTK_OBJECT (private->offset_se), "value_changed", - GTK_SIGNAL_FUNC (offset_update), - resize); + g_signal_connect (G_OBJECT (private->offset_se), "value_changed", + G_CALLBACK (offset_update), + resize); gtk_widget_show (abox); @@ -484,11 +478,13 @@ resize_widget_new (ResizeType type, private->offset_area = gimp_offset_area_new (private->old_width, private->old_height); - gtk_signal_connect (GTK_OBJECT (private->offset_area), "offsets_changed", - GTK_SIGNAL_FUNC (offset_area_offsets_changed), - resize); gtk_container_add (GTK_CONTAINER (frame), private->offset_area); gtk_widget_show (private->offset_area); + + g_signal_connect (G_OBJECT (private->offset_area), "offsets_changed", + G_CALLBACK (offset_area_offsets_changed), + resize); + gtk_widget_show (frame); gtk_widget_show (abox); gtk_widget_show (vbox); @@ -527,8 +523,6 @@ resize_widget_new (ResizeType type, abox = gtk_alignment_new (0.0, 0.5, 0.0, 1.0); adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_container_add (GTK_CONTAINER (abox), spinbutton); @@ -566,12 +560,12 @@ resize_widget_new (ResizeType type, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->printsize_se), 1, resize->height); - gtk_signal_connect (GTK_OBJECT (private->printsize_se), "value_changed", - GTK_SIGNAL_FUNC (printsize_update), - resize); - gtk_signal_connect (GTK_OBJECT (private->printsize_se), "unit_changed", - GTK_SIGNAL_FUNC (unit_update), - resize); + g_signal_connect (G_OBJECT (private->printsize_se), "value_changed", + G_CALLBACK (printsize_update), + resize); + g_signal_connect (G_OBJECT (private->printsize_se), "unit_changed", + G_CALLBACK (unit_update), + resize); /* the resolution labels */ label = gtk_label_new (_("Resolution X:")); @@ -589,8 +583,6 @@ resize_widget_new (ResizeType type, /* the resolution sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); @@ -622,9 +614,9 @@ resize_widget_new (ResizeType type, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 1, resize->resolution_y); - gtk_signal_connect (GTK_OBJECT (private->resolution_se), "value_changed", - GTK_SIGNAL_FUNC (resolution_callback), - resize); + g_signal_connect (G_OBJECT (private->resolution_se), "value_changed", + G_CALLBACK (resolution_callback), + resize); /* the resolution chainbutton */ private->equal_res = gimp_chain_button_new (GIMP_CHAIN_RIGHT); @@ -874,16 +866,20 @@ size_update (Resize *resize, resize->width, resize->height); gtk_signal_handler_block_by_data (GTK_OBJECT (private->size_se), resize); + gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 1, height); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->size_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->ratio_x_adj), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->ratio_y_adj), resize); + gtk_adjustment_set_value (GTK_ADJUSTMENT (private->ratio_x_adj), ratio_x); gtk_adjustment_set_value (GTK_ADJUSTMENT (private->ratio_y_adj), ratio_y); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->ratio_x_adj), resize); gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->ratio_y_adj), resize); @@ -903,10 +899,12 @@ size_update (Resize *resize, { gtk_signal_handler_block_by_data (GTK_OBJECT (private->printsize_se), resize); + gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->printsize_se), 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->printsize_se), 1, height); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->printsize_se), resize); } @@ -983,14 +981,17 @@ printsize_update (GtkWidget *widget, resize->resolution_y = res_y; gtk_signal_handler_block_by_data (GTK_OBJECT (private->resolution_se), resize); + gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 0, res_x); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 1, res_y); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->resolution_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->size_se), resize); + gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->size_se), 0, res_x, TRUE); gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->size_se), @@ -999,9 +1000,11 @@ printsize_update (GtkWidget *widget, 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 1, height); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->size_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->printsize_se), resize); + gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->printsize_se), 0, res_x, TRUE); gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->printsize_se), @@ -1010,6 +1013,7 @@ printsize_update (GtkWidget *widget, 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->printsize_se), 1, height); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->printsize_se), resize); } @@ -1061,25 +1065,31 @@ resolution_update (Resize *resize, resize->resolution_y = res_y; gtk_signal_handler_block_by_data (GTK_OBJECT (private->resolution_se), resize); + gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 0, res_x); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 1, res_y); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->resolution_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->size_se), resize); + gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->size_se), 0, res_x, TRUE); gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->size_se), 1, res_y, TRUE); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->size_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->printsize_se), resize); + gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->printsize_se), 0, res_x, TRUE); gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->printsize_se), 1, res_y, TRUE); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->printsize_se), resize); } diff --git a/app/dialogs/resize-dialog.h b/app/dialogs/resize-dialog.h index d824b333a8..7dc0c6169c 100644 --- a/app/dialogs/resize-dialog.h +++ b/app/dialogs/resize-dialog.h @@ -73,16 +73,16 @@ typedef struct Resize * resize_widget_new (ResizeType type, ResizeTarget target, - GtkObject *object, - gchar *signal, + GObject *object, + const gchar *signal, gint width, gint height, gdouble resolution_x, gdouble resolution_y, GimpUnit unit, gboolean dot_for_dot, - GtkSignalFunc ok_cb, - GtkSignalFunc cancel_cb, + GCallback ok_cb, + GCallback cancel_cb, gpointer user_data); diff --git a/app/dialogs/tips-dialog.c b/app/dialogs/tips-dialog.c index 2a000d222c..340860a810 100644 --- a/app/dialogs/tips-dialog.c +++ b/app/dialogs/tips-dialog.c @@ -89,7 +89,9 @@ tips_dialog_create (void) if (tips_dialog) return tips_dialog; - tips_dialog = gtk_window_new (GTK_WINDOW_DIALOG); + tips_dialog = gtk_window_new (GTK_WINDOW_TOPLEVEL); + gtk_window_set_type_hint (GTK_WINDOW (tips_dialog), + GDK_WINDOW_TYPE_HINT_DIALOG); gtk_window_set_wmclass (GTK_WINDOW (tips_dialog), "tip_of_the_day", "Gimp"); gtk_window_set_title (GTK_WINDOW (tips_dialog), _("GIMP Tip of the Day")); gtk_window_set_position (GTK_WINDOW (tips_dialog), GTK_WIN_POS_CENTER); diff --git a/app/dialogs/user-install-dialog.c b/app/dialogs/user-install-dialog.c index 522db344ad..9845b52200 100644 --- a/app/dialogs/user-install-dialog.c +++ b/app/dialogs/user-install-dialog.c @@ -582,8 +582,10 @@ user_install_dialog_create (Gimp *gimp) footer_label = gtk_label_new (NULL); PAGE_STYLE (footer_label); gtk_label_set_justify (GTK_LABEL (footer_label), GTK_JUSTIFY_RIGHT); - gtk_box_pack_end (GTK_BOX (GTK_DIALOG (dialog)->action_area), footer_label, - FALSE, FALSE, 8); + gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->action_area), footer_label, + FALSE, FALSE, 8); + gtk_box_reorder_child (GTK_BOX (GTK_DIALOG (dialog)->action_area), + footer_label, 0); gtk_widget_show (footer_label); vbox = gtk_vbox_new (FALSE, 0); @@ -1014,21 +1016,34 @@ user_install_run (void) vadj = GTK_ADJUSTMENT (gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0)); vsb = gtk_vscrollbar_new (vadj); +#if 0 log_text = gtk_text_new (NULL, vadj); +#endif gtk_table_attach (GTK_TABLE (table), vsb, 1, 2, 0, 1, GTK_FILL, GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); +#if 0 gtk_table_attach (GTK_TABLE (table), log_text, 0, 1, 0, 1, GTK_EXPAND | GTK_SHRINK | GTK_FILL, GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); +#endif gtk_widget_show (vsb); +#if 0 gtk_widget_show (log_text); +#endif gtk_widget_show (table); while (fgets (buffer, sizeof (buffer), pfp)) - gtk_text_insert (GTK_TEXT (log_text), NULL, NULL, NULL, buffer, -1); + { +#ifdef __GNUC__ +#warning FIXME: replace GtkText +#endif +#if 0 + gtk_text_insert (GTK_TEXT (log_text), NULL, NULL, NULL, buffer, -1); +#endif + } pclose (pfp); add_label (GTK_BOX (log_page), diff --git a/app/disp_callbacks.c b/app/disp_callbacks.c index 99371c909c..c6ba3266c5 100644 --- a/app/disp_callbacks.c +++ b/app/disp_callbacks.c @@ -103,13 +103,13 @@ gdisplay_check_device_cursor (GDisplay *gdisp) /* gdk_input_list_devices returns an internal list, so we shouldn't * free it afterwards */ - for (list = gdk_input_list_devices(); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - GdkDeviceInfo *info = (GdkDeviceInfo *) list->data; + GdkDevice *device = (GdkDevice *) list->data; - if (info->deviceid == current_device) + if (device == current_device) { - gdisp->draw_cursor = !info->has_cursor; + gdisp->draw_cursor = ! device->has_cursor; break; } } @@ -492,8 +492,13 @@ gdisplay_canvas_events (GtkWidget *canvas, */ if (mevent->is_hint) { +#ifdef __GNUC__ +#warning FIXME: replace gdk_input_window_get_pointer() +#endif +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); +#endif } else { @@ -600,8 +605,10 @@ gdisplay_canvas_events (GtkWidget *canvas, /* For all modifier keys: call the tools modifier_key_func */ if (active_tool && !gimp_image_is_empty (gdisp->gimage)) { +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); +#endif gimp_tool_modifier_key (active_tool, kevent, gdisp); return_val = TRUE; } @@ -626,9 +633,11 @@ gdisplay_canvas_events (GtkWidget *canvas, /* For all modifier keys: call the tools modifier_key_func */ if (active_tool && !gimp_image_is_empty (gdisp->gimage)) { +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); gimp_tool_modifier_key (active_tool, kevent, gdisp); +#endif return_val = TRUE; } break; diff --git a/app/display/gimpdisplay-callbacks.c b/app/display/gimpdisplay-callbacks.c index 99371c909c..c6ba3266c5 100644 --- a/app/display/gimpdisplay-callbacks.c +++ b/app/display/gimpdisplay-callbacks.c @@ -103,13 +103,13 @@ gdisplay_check_device_cursor (GDisplay *gdisp) /* gdk_input_list_devices returns an internal list, so we shouldn't * free it afterwards */ - for (list = gdk_input_list_devices(); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - GdkDeviceInfo *info = (GdkDeviceInfo *) list->data; + GdkDevice *device = (GdkDevice *) list->data; - if (info->deviceid == current_device) + if (device == current_device) { - gdisp->draw_cursor = !info->has_cursor; + gdisp->draw_cursor = ! device->has_cursor; break; } } @@ -492,8 +492,13 @@ gdisplay_canvas_events (GtkWidget *canvas, */ if (mevent->is_hint) { +#ifdef __GNUC__ +#warning FIXME: replace gdk_input_window_get_pointer() +#endif +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); +#endif } else { @@ -600,8 +605,10 @@ gdisplay_canvas_events (GtkWidget *canvas, /* For all modifier keys: call the tools modifier_key_func */ if (active_tool && !gimp_image_is_empty (gdisp->gimage)) { +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); +#endif gimp_tool_modifier_key (active_tool, kevent, gdisp); return_val = TRUE; } @@ -626,9 +633,11 @@ gdisplay_canvas_events (GtkWidget *canvas, /* For all modifier keys: call the tools modifier_key_func */ if (active_tool && !gimp_image_is_empty (gdisp->gimage)) { +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); gimp_tool_modifier_key (active_tool, kevent, gdisp); +#endif return_val = TRUE; } break; diff --git a/app/display/gimpdisplay-scroll.c b/app/display/gimpdisplay-scroll.c index 6e8184de68..552894ec0d 100644 --- a/app/display/gimpdisplay-scroll.c +++ b/app/display/gimpdisplay-scroll.c @@ -110,6 +110,10 @@ scroll_to_pointer_position (GDisplay *gdisp, if (scroll_display (gdisp, off_x, off_y)) { +#ifdef __GNUC__ +#warning FIXME: replace gdk_input_window_get_pointer() +#endif +#if 0 gdk_input_window_get_pointer (gdisp->canvas->window, mevent->deviceid, &child_x, &child_y, NULL, NULL, NULL, NULL); @@ -117,6 +121,7 @@ scroll_to_pointer_position (GDisplay *gdisp, if (child_x == mevent->x && child_y == mevent->y) /* Put this event back on the queue -- so it keeps scrolling */ gdk_event_put ((GdkEvent *) mevent); +#endif } } diff --git a/app/display/gimpdisplayshell-callbacks.c b/app/display/gimpdisplayshell-callbacks.c index 99371c909c..c6ba3266c5 100644 --- a/app/display/gimpdisplayshell-callbacks.c +++ b/app/display/gimpdisplayshell-callbacks.c @@ -103,13 +103,13 @@ gdisplay_check_device_cursor (GDisplay *gdisp) /* gdk_input_list_devices returns an internal list, so we shouldn't * free it afterwards */ - for (list = gdk_input_list_devices(); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - GdkDeviceInfo *info = (GdkDeviceInfo *) list->data; + GdkDevice *device = (GdkDevice *) list->data; - if (info->deviceid == current_device) + if (device == current_device) { - gdisp->draw_cursor = !info->has_cursor; + gdisp->draw_cursor = ! device->has_cursor; break; } } @@ -492,8 +492,13 @@ gdisplay_canvas_events (GtkWidget *canvas, */ if (mevent->is_hint) { +#ifdef __GNUC__ +#warning FIXME: replace gdk_input_window_get_pointer() +#endif +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); +#endif } else { @@ -600,8 +605,10 @@ gdisplay_canvas_events (GtkWidget *canvas, /* For all modifier keys: call the tools modifier_key_func */ if (active_tool && !gimp_image_is_empty (gdisp->gimage)) { +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); +#endif gimp_tool_modifier_key (active_tool, kevent, gdisp); return_val = TRUE; } @@ -626,9 +633,11 @@ gdisplay_canvas_events (GtkWidget *canvas, /* For all modifier keys: call the tools modifier_key_func */ if (active_tool && !gimp_image_is_empty (gdisp->gimage)) { +#if 0 gdk_input_window_get_pointer (canvas->window, current_device, &tx, &ty, NULL, NULL, NULL, NULL); gimp_tool_modifier_key (active_tool, kevent, gdisp); +#endif return_val = TRUE; } break; diff --git a/app/display/gimpdisplayshell-draw.c b/app/display/gimpdisplayshell-draw.c index a1355871e7..5be3d0c9ea 100644 --- a/app/display/gimpdisplayshell-draw.c +++ b/app/display/gimpdisplayshell-draw.c @@ -337,7 +337,7 @@ create_display_shell (GDisplay *gdisp, gtk_widget_set_events (GTK_WIDGET (gdisp->hrule), GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); gtk_signal_connect_object (GTK_OBJECT (gdisp->shell), "motion_notify_event", - GTK_SIGNAL_FUNC (GTK_WIDGET_CLASS (GTK_OBJECT (gdisp->hrule)->klass)->motion_notify_event), + GTK_SIGNAL_FUNC (GTK_WIDGET_GET_CLASS (gdisp->hrule)->motion_notify_event), GTK_OBJECT (gdisp->hrule)); gtk_signal_connect (GTK_OBJECT (gdisp->hrule), "button_press_event", GTK_SIGNAL_FUNC (gdisplay_hruler_button_press), @@ -350,7 +350,7 @@ create_display_shell (GDisplay *gdisp, gtk_widget_set_events (GTK_WIDGET (gdisp->vrule), GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); gtk_signal_connect_object (GTK_OBJECT (gdisp->shell), "motion_notify_event", - GTK_SIGNAL_FUNC (GTK_WIDGET_CLASS (GTK_OBJECT (gdisp->vrule)->klass)->motion_notify_event), + GTK_SIGNAL_FUNC (GTK_WIDGET_GET_CLASS (gdisp->vrule)->motion_notify_event), GTK_OBJECT (gdisp->vrule)); gtk_signal_connect (GTK_OBJECT (gdisp->vrule), "button_press_event", GTK_SIGNAL_FUNC (gdisplay_vruler_button_press), diff --git a/app/display/gimpdisplayshell-layer-select.c b/app/display/gimpdisplayshell-layer-select.c index a382824aa7..cf50a5c0a4 100644 --- a/app/display/gimpdisplayshell-layer-select.c +++ b/app/display/gimpdisplayshell-layer-select.c @@ -158,7 +158,6 @@ layer_select_init (GimpImage *gimage, gtk_widget_show (layer_select->shell); } - gdk_key_repeat_disable (); gdk_keyboard_grab (layer_select->shell->window, FALSE, time); } @@ -241,7 +240,6 @@ static void layer_select_end (LayerSelect *layer_select, guint32 time) { - gdk_key_repeat_restore (); gdk_keyboard_ungrab (time); gtk_widget_hide (layer_select->shell); diff --git a/app/display/gimpdisplayshell-scroll.c b/app/display/gimpdisplayshell-scroll.c index 6e8184de68..552894ec0d 100644 --- a/app/display/gimpdisplayshell-scroll.c +++ b/app/display/gimpdisplayshell-scroll.c @@ -110,6 +110,10 @@ scroll_to_pointer_position (GDisplay *gdisp, if (scroll_display (gdisp, off_x, off_y)) { +#ifdef __GNUC__ +#warning FIXME: replace gdk_input_window_get_pointer() +#endif +#if 0 gdk_input_window_get_pointer (gdisp->canvas->window, mevent->deviceid, &child_x, &child_y, NULL, NULL, NULL, NULL); @@ -117,6 +121,7 @@ scroll_to_pointer_position (GDisplay *gdisp, if (child_x == mevent->x && child_y == mevent->y) /* Put this event back on the queue -- so it keeps scrolling */ gdk_event_put ((GdkEvent *) mevent); +#endif } } diff --git a/app/display/gimpdisplayshell.c b/app/display/gimpdisplayshell.c index a1355871e7..5be3d0c9ea 100644 --- a/app/display/gimpdisplayshell.c +++ b/app/display/gimpdisplayshell.c @@ -337,7 +337,7 @@ create_display_shell (GDisplay *gdisp, gtk_widget_set_events (GTK_WIDGET (gdisp->hrule), GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); gtk_signal_connect_object (GTK_OBJECT (gdisp->shell), "motion_notify_event", - GTK_SIGNAL_FUNC (GTK_WIDGET_CLASS (GTK_OBJECT (gdisp->hrule)->klass)->motion_notify_event), + GTK_SIGNAL_FUNC (GTK_WIDGET_GET_CLASS (gdisp->hrule)->motion_notify_event), GTK_OBJECT (gdisp->hrule)); gtk_signal_connect (GTK_OBJECT (gdisp->hrule), "button_press_event", GTK_SIGNAL_FUNC (gdisplay_hruler_button_press), @@ -350,7 +350,7 @@ create_display_shell (GDisplay *gdisp, gtk_widget_set_events (GTK_WIDGET (gdisp->vrule), GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); gtk_signal_connect_object (GTK_OBJECT (gdisp->shell), "motion_notify_event", - GTK_SIGNAL_FUNC (GTK_WIDGET_CLASS (GTK_OBJECT (gdisp->vrule)->klass)->motion_notify_event), + GTK_SIGNAL_FUNC (GTK_WIDGET_GET_CLASS (gdisp->vrule)->motion_notify_event), GTK_OBJECT (gdisp->vrule)); gtk_signal_connect (GTK_OBJECT (gdisp->vrule), "button_press_event", GTK_SIGNAL_FUNC (gdisplay_vruler_button_press), diff --git a/app/display/gimpnavigationeditor.c b/app/display/gimpnavigationeditor.c index 7249afa92a..06c36e70e4 100644 --- a/app/display/gimpnavigationeditor.c +++ b/app/display/gimpnavigationeditor.c @@ -530,7 +530,9 @@ nav_popup_click_handler (GtkWidget *widget, x = (x + nav_dialog->pwidth > scr_w) ? scr_w - nav_dialog->pwidth - 2: x; y = (y + nav_dialog->pheight > scr_h) ? scr_h - nav_dialog->pheight - 2: y; - gtk_widget_popup (nav_dialog->shell, x, y); + gtk_widget_set_uposition (nav_dialog->shell, x, y); + gtk_widget_show (nav_dialog->shell); + gdk_flush(); /* fill in then set up handlers for mouse motion etc */ diff --git a/app/display/gimpnavigationview.c b/app/display/gimpnavigationview.c index 7249afa92a..06c36e70e4 100644 --- a/app/display/gimpnavigationview.c +++ b/app/display/gimpnavigationview.c @@ -530,7 +530,9 @@ nav_popup_click_handler (GtkWidget *widget, x = (x + nav_dialog->pwidth > scr_w) ? scr_w - nav_dialog->pwidth - 2: x; y = (y + nav_dialog->pheight > scr_h) ? scr_h - nav_dialog->pheight - 2: y; - gtk_widget_popup (nav_dialog->shell, x, y); + gtk_widget_set_uposition (nav_dialog->shell, x, y); + gtk_widget_show (nav_dialog->shell); + gdk_flush(); /* fill in then set up handlers for mouse motion etc */ diff --git a/app/errorconsole.c b/app/errorconsole.c index d7b7f6b1bb..e669feb907 100644 --- a/app/errorconsole.c +++ b/app/errorconsole.c @@ -79,8 +79,10 @@ static void error_console_clear_callback (GtkWidget *widget, gpointer data) { +#if 0 gtk_editable_delete_text (GTK_EDITABLE (text), 0, gtk_text_get_length (GTK_TEXT (text))); +#endif } void @@ -97,6 +99,7 @@ gint error_console_write_file (gchar *path, gint textscope) { +#if 0 gint fd; gint text_length; gint bytes_written; @@ -151,6 +154,7 @@ error_console_write_file (gchar *path, } close (fd); +#endif return TRUE; } @@ -158,9 +162,9 @@ static void error_console_file_ok_callback (GtkWidget *widget, gpointer data) { - GtkWidget *filesel; - gchar *filename; - gint textscope; + GtkWidget *filesel; + const gchar *filename; + gint textscope; filesel = (GtkWidget *) data; filename = gtk_file_selection_get_filename (GTK_FILE_SELECTION (filesel)); @@ -184,6 +188,7 @@ error_console_file_ok_callback (GtkWidget *widget, static void error_console_menu_callback (gint textscope) { +#if 0 GtkWidget *filesel; if (!(GTK_TEXT (text)->editable.has_selection) && @@ -219,6 +224,7 @@ error_console_menu_callback (gint textscope) "dialogs/error_console.html"); gtk_widget_show (filesel); +#endif } static gint @@ -226,6 +232,7 @@ text_clicked_callback (GtkWidget *widget, GdkEventButton *event, gpointer data) { +#if 0 GtkMenu *menu = (GtkMenu *) data; GtkText *gtext; @@ -263,7 +270,7 @@ text_clicked_callback (GtkWidget *widget, default: break; } - +#endif return TRUE; } @@ -304,19 +311,23 @@ error_console_create (void) menu = gtk_menu_new (); menuitem = gtk_menu_item_new_with_label (_("Write all errors to file...")); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_signal_connect_object (GTK_OBJECT(menuitem), "activate", (GtkSignalFunc) error_console_menu_callback, (gpointer) ERRORS_ALL); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Write selection to file...")); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_signal_connect_object (GTK_OBJECT(menuitem), "activate", (GtkSignalFunc) error_console_menu_callback, (gpointer) ERRORS_SELECTION); gtk_widget_show (menuitem); +#ifdef __GNUC__ +#warning FIXME: replace GtkText +#endif +#if 0 /* The output text widget */ text = gtk_text_new (NULL, NULL); gtk_text_set_editable (GTK_TEXT (text), FALSE); @@ -335,6 +346,7 @@ error_console_create (void) gtk_table_attach (GTK_TABLE (table), vscrollbar, 1, 2, 0, 1, GTK_FILL, GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); gtk_widget_show (vscrollbar); +#endif gtk_widget_show (error_console); @@ -366,7 +378,9 @@ error_console_add (gchar *errormsg) if (errormsg) { +#if 0 gtk_text_insert (GTK_TEXT (text), NULL, NULL, NULL, errormsg, -1); gtk_text_insert (GTK_TEXT (text), NULL, NULL, NULL, "\n", -1); +#endif } } diff --git a/app/file-save.c b/app/file-save.c index 1615cd5de1..52710433fa 100644 --- a/app/file-save.c +++ b/app/file-save.c @@ -82,8 +82,8 @@ GSList *save_procs = NULL; GimpPDBStatusType file_save (GimpImage *gimage, - gchar *filename, - gchar *raw_filename, + const gchar *filename, + const gchar *raw_filename, RunModeType run_mode, gboolean set_filename) { @@ -217,8 +217,8 @@ file_save (GimpImage *gimage, */ gboolean file_save_with_proc (GimpImage *gimage, - gchar *full_filename, - gchar *raw_filename, + const gchar *full_filename, + const gchar *raw_filename, PlugInProcDef *save_proc, gboolean set_filename) { diff --git a/app/file-save.h b/app/file-save.h index 14fc7a81f6..f78fca910a 100644 --- a/app/file-save.h +++ b/app/file-save.h @@ -24,14 +24,14 @@ extern GSList *save_procs; GimpPDBStatusType file_save (GimpImage *gimage, - gchar *filename, - gchar *raw_filename, + const gchar *filename, + const gchar *raw_filename, RunModeType run_mode, gboolean set_filename); gboolean file_save_with_proc (GimpImage *gimage, - gchar *full_filename, - gchar *raw_filename, + const gchar *full_filename, + const gchar *raw_filename, PlugInProcDef *save_proc, gboolean set_filename); diff --git a/app/file/file-save.c b/app/file/file-save.c index 1615cd5de1..52710433fa 100644 --- a/app/file/file-save.c +++ b/app/file/file-save.c @@ -82,8 +82,8 @@ GSList *save_procs = NULL; GimpPDBStatusType file_save (GimpImage *gimage, - gchar *filename, - gchar *raw_filename, + const gchar *filename, + const gchar *raw_filename, RunModeType run_mode, gboolean set_filename) { @@ -217,8 +217,8 @@ file_save (GimpImage *gimage, */ gboolean file_save_with_proc (GimpImage *gimage, - gchar *full_filename, - gchar *raw_filename, + const gchar *full_filename, + const gchar *raw_filename, PlugInProcDef *save_proc, gboolean set_filename) { diff --git a/app/file/file-save.h b/app/file/file-save.h index 14fc7a81f6..f78fca910a 100644 --- a/app/file/file-save.h +++ b/app/file/file-save.h @@ -24,14 +24,14 @@ extern GSList *save_procs; GimpPDBStatusType file_save (GimpImage *gimage, - gchar *filename, - gchar *raw_filename, + const gchar *filename, + const gchar *raw_filename, RunModeType run_mode, gboolean set_filename); gboolean file_save_with_proc (GimpImage *gimage, - gchar *full_filename, - gchar *raw_filename, + const gchar *full_filename, + const gchar *raw_filename, PlugInProcDef *save_proc, gboolean set_filename); diff --git a/app/gui/about-dialog.c b/app/gui/about-dialog.c index 76edf16c12..54d68b470f 100644 --- a/app/gui/about-dialog.c +++ b/app/gui/about-dialog.c @@ -120,15 +120,19 @@ about_dialog_create (void) GtkWidget *aboutframe; GtkWidget *label; GtkWidget *alignment; +#if 0 GtkStyle *style; GdkFont *font; +#endif gint max_width; gint i; gchar *label_text; if (! about_dialog) { - about_dialog = gtk_window_new (GTK_WINDOW_DIALOG); + about_dialog = gtk_window_new (GTK_WINDOW_TOPLEVEL); + gtk_window_set_type_hint (GTK_WINDOW (about_dialog), + GDK_WINDOW_TYPE_HINT_DIALOG); gtk_window_set_wmclass (GTK_WINDOW (about_dialog), "about_dialog", "Gimp"); gtk_window_set_title (GTK_WINDOW (about_dialog), _("About the GIMP")); gtk_window_set_policy (GTK_WINDOW (about_dialog), FALSE, FALSE, FALSE); @@ -194,6 +198,10 @@ about_dialog_create (void) gdk_window_set_background (logo_area->window, &logo_area->style->black); /* this is a font, provide only one single font definition */ +#ifdef __GNUC__ +#warning FIXME: font description +#endif +#if 0 font = gdk_font_load (_("-*-helvetica-medium-r-normal--*-140-*-*-*-*-*-*")); if (font) { @@ -204,6 +212,7 @@ about_dialog_create (void) gtk_widget_push_style (style); gtk_style_unref (style); } +#endif label_text = g_strdup_printf (_("Version %s brought to you by"), GIMP_VERSION); label = gtk_label_new (label_text); @@ -216,7 +225,9 @@ about_dialog_create (void) gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, TRUE, 0); gtk_widget_show (label); +#if 0 gtk_widget_pop_style (); +#endif alignment = gtk_alignment_new (0.5, 0.5, 0.0, 0.0); gtk_box_pack_start (GTK_BOX (vbox), alignment, FALSE, TRUE, 0); diff --git a/app/gui/brush-editor.c b/app/gui/brush-editor.c index 72dad7ebfd..81dc522a0b 100644 --- a/app/gui/brush-editor.c +++ b/app/gui/brush-editor.c @@ -295,7 +295,7 @@ static void brush_editor_name_activate (GtkWidget *widget, BrushEditor *brush_editor) { - gchar *entry_text; + const gchar *entry_text; entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); gimp_object_set_name (GIMP_OBJECT (brush_editor->brush), entry_text); diff --git a/app/gui/brushes-commands.c b/app/gui/brushes-commands.c index b32579b0e5..588f9857a5 100644 --- a/app/gui/brushes-commands.c +++ b/app/gui/brushes-commands.c @@ -69,7 +69,7 @@ brushes_menu_set_sensitivity (GimpContainerEditor *editor) menus_set_sensitive ("/" menu, (condition) != 0) SET_SENSITIVE ("Duplicate Brush", - brush && GIMP_DATA_CLASS (GTK_OBJECT (brush)->klass)->duplicate); + brush && GIMP_DATA_GET_CLASS (brush)->duplicate); SET_SENSITIVE ("Edit Brush...", brush && GIMP_IS_BRUSH_GENERATED (brush)); SET_SENSITIVE ("Delete Brush...", diff --git a/app/gui/color-notebook.c b/app/gui/color-notebook.c index 8e5276209f..15189906c3 100644 --- a/app/gui/color-notebook.c +++ b/app/gui/color-notebook.c @@ -821,13 +821,16 @@ color_notebook_page_switch (GtkWidget *widget, guint page_num, gpointer data) { + GtkWidget *page_widget; ColorNotebook *cnp; ColorSelectorInstance *csel; gint i; cnp = (ColorNotebook *) data; - csel = gtk_object_get_data (GTK_OBJECT (page->child), "gimp_color_notebook"); + page_widget = gtk_notebook_get_nth_page (GTK_NOTEBOOK (widget), page_num); + + csel = g_object_get_data (G_OBJECT (page_widget), "gimp_color_notebook"); g_return_if_fail (cnp != NULL && csel != NULL); diff --git a/app/gui/colormap-dialog.c b/app/gui/colormap-dialog.c index 820b252487..5c36f50ade 100644 --- a/app/gui/colormap-dialog.c +++ b/app/gui/colormap-dialog.c @@ -163,19 +163,16 @@ gimp_colormap_dialog_class_init (GimpColormapDialogClass* klass) object_class = (GtkObjectClass*) klass; - parent_class = gtk_type_class (GTK_TYPE_VBOX); + parent_class = g_type_class_peek_parent (klass); gimp_colormap_dialog_signals[SELECTED] = - gtk_signal_new ("selected", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpColormapDialogClass, - selected), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, gimp_colormap_dialog_signals, - LAST_SIGNAL); + g_signal_new ("selected", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpColormapDialogClass, selected), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); klass->selected = NULL; } @@ -384,7 +381,7 @@ ipal_create_popup_menu (GimpColormapDialog *ipal) ipal->popup_menu = menu = gtk_menu_new (); menu_item = gtk_menu_item_new_with_label (_("Add")); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_widget_show (menu_item); gtk_signal_connect (GTK_OBJECT (menu_item), "activate", @@ -394,7 +391,7 @@ ipal_create_popup_menu (GimpColormapDialog *ipal) ipal->add_item = menu_item; menu_item = gtk_menu_item_new_with_label (_("Edit")); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_widget_show (menu_item); gtk_signal_connect (GTK_OBJECT (menu_item), "activate", @@ -746,8 +743,8 @@ static void hex_entry_change_cb (GtkEntry *entry, GimpColormapDialog *ipal) { - gchar *s; - gulong i; + const gchar *s; + gulong i; g_return_if_fail (ipal); g_return_if_fail (ipal->image); diff --git a/app/gui/device-status-dialog.c b/app/gui/device-status-dialog.c index 9eaa27bcbf..eae85ed401 100644 --- a/app/gui/device-status-dialog.c +++ b/app/gui/device-status-dialog.c @@ -63,33 +63,33 @@ typedef struct _DeviceInfo DeviceInfo; struct _DeviceInfo { - guint32 device; /* device ID */ - gchar *name; + GdkDevice *device; + gchar *name; - gshort is_present; /* is the device currently present */ + gshort is_present; /* is the device currently present */ /* gdk_input options - for not present devices */ - GdkInputMode mode; - gint num_axes; - GdkAxisUse *axes; - gint num_keys; - GdkDeviceKey *keys; + GdkInputMode mode; + gint num_axes; + GdkAxisUse *axes; + gint num_keys; + GdkDeviceKey *keys; - GimpContext *context; + GimpContext *context; }; typedef struct _DeviceInfoDialog DeviceInfoDialog; struct _DeviceInfoDialog { - gint num_devices; + gint num_devices; - guint32 current; - guint32 *ids; + GdkDevice *current; + GdkDevice **devices; - GtkWidget *shell; - GtkWidget *table; + GtkWidget *shell; + GtkWidget *table; GtkWidget **frames; GtkWidget **tools; @@ -103,7 +103,7 @@ struct _DeviceInfoDialog /* local functions */ static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data); static void devices_write_rc_device (DeviceInfo *device_info, @@ -114,7 +114,7 @@ static void device_status_destroy_callback (void); static void devices_close_callback (GtkWidget *widget, gpointer data); -static void device_status_update (guint32 deviceid); +static void device_status_update (GdkDevice *device); static void device_status_update_current (void); static void device_status_drop_tool (GtkWidget *widget, @@ -139,11 +139,11 @@ static void device_status_data_changed (GimpContext *context, gpointer data); static void device_status_context_connect (GimpContext *context, - guint32 deviceid); + GdkDevice *device); /* global data */ -gint current_device = GDK_CORE_POINTER; +GdkDevice *current_device = NULL; /* local data */ static GList *device_info_list = NULL; @@ -153,36 +153,19 @@ static DeviceInfoDialog *deviceD = NULL; static gboolean suppress_update = FALSE; -/* utility functions for the device lists */ - -static GdkDeviceInfo * -gdk_device_info_get_by_id (guint32 deviceid) -{ - GdkDeviceInfo *info; - GList *list; - - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) - { - info = (GdkDeviceInfo *) list->data; - - if (info->deviceid == deviceid) - return info; - } - - return NULL; -} +/* utility functions for the device_info_list */ static DeviceInfo * -device_info_get_by_id (guint32 deviceid) +device_info_get_by_device (GdkDevice *device) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { info = (DeviceInfo *) list->data; - if (info->device == deviceid) + if (info->device == device) return info; } @@ -193,7 +176,7 @@ static DeviceInfo * device_info_get_by_name (gchar *name) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { @@ -269,34 +252,40 @@ input_dialog_create (void) static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data) { - device_status_update (deviceid); + device_status_update (device); } void devices_init (void) { - GdkDeviceInfo *gdk_info; - DeviceInfo *device_info; - GList *list; + GdkDevice *device; + DeviceInfo *device_info; + GList *list; + + current_device = gdk_core_pointer; /* create device info structures for present devices */ - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - gdk_info = (GdkDeviceInfo *) list->data; + device = (GdkDevice *) list->data; device_info = g_new (DeviceInfo, 1); - device_info->device = gdk_info->deviceid; - device_info->name = g_strdup (gdk_info->name); + device_info->device = device; + device_info->name = g_strdup (device->name); + device_info->mode = device->mode; + device_info->is_present = TRUE; - device_info->mode = gdk_info->mode; - device_info->num_axes = gdk_info->num_axes; + device_info->num_axes = device->num_axes; device_info->axes = NULL; + device_info->num_keys = device->num_axes; + device_info->keys = NULL; + device_info->context = gimp_create_context (the_gimp, device_info->name, NULL); gimp_context_define_args (device_info->context, @@ -305,7 +294,8 @@ devices_init (void) gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } @@ -323,7 +313,7 @@ devices_restore (void) gimprc_parse_file (filename); g_free (filename); - if ((device_info = device_info_get_by_id (current_device)) == NULL) + if ((device_info = device_info_get_by_device (current_device)) == NULL) return; suppress_update = TRUE; @@ -356,10 +346,12 @@ devices_rc_update (gchar *name, /* Find device if we have it */ device_info = device_info_get_by_name (name); - if (!device_info) + if (! device_info) { device_info = g_new (DeviceInfo, 1); - device_info->name = g_strdup (name); + + device_info->device = NULL; + device_info->name = g_strdup (name); device_info->is_present = FALSE; if (values & DEVICE_AXES) @@ -371,7 +363,7 @@ devices_rc_update (gchar *name, else { device_info->num_axes = 0; - device_info->axes = NULL; + device_info->axes = NULL; } if (values & DEVICE_KEYS) @@ -380,6 +372,11 @@ devices_rc_update (gchar *name, device_info->keys = g_new (GdkDeviceKey, num_keys); memcpy (device_info->keys, axes, num_keys * sizeof (GdkDeviceKey)); } + else + { + device_info->num_keys = 0; + device_info->keys = NULL; + } if (values & DEVICE_MODE) device_info->mode = mode; @@ -394,31 +391,44 @@ devices_rc_update (gchar *name, gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } else { - GdkDeviceInfo *gdk_info; + GdkDevice *device; - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; - if (gdk_info != NULL) + if (device) { if (values & DEVICE_MODE) - gdk_input_set_mode (gdk_info->deviceid, mode); + { + gdk_device_set_mode (device, mode); + } - if ((values & DEVICE_AXES) && num_axes >= gdk_info->num_axes) - gdk_input_set_axes (gdk_info->deviceid, axes); - - if ((values & DEVICE_KEYS) && num_keys >= gdk_info->num_keys) + if ((values & DEVICE_AXES) && num_axes >= device->num_axes) { gint i; - - for (i=0; inum_keys); i++) - gdk_input_set_key (gdk_info->deviceid, i, - keys[i].keyval, keys[i].modifiers); + + for (i = 0; i < MIN (num_axes, device->num_axes); i++) + { + gdk_device_set_axis_use (device, i, axes[i]); + } + } + + if ((values & DEVICE_KEYS) && num_keys >= device->num_keys) + { + gint i; + + for (i = 0; i < MIN (num_keys, device->num_keys); i++) + { + gdk_device_set_key (device, i, + keys[i].keyval, + keys[i].modifiers); + } } } else @@ -517,18 +527,18 @@ devices_rc_update (gchar *name, } void -select_device (guint32 new_device) +select_device (GdkDevice *new_device) { - DeviceInfo *device_info; + DeviceInfo *device_info; GimpContext *context; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); gimp_context_unset_parent (device_info->context); suppress_update = TRUE; - device_info = device_info_get_by_id (new_device); + device_info = device_info_get_by_device (new_device); current_device = new_device; @@ -542,22 +552,22 @@ select_device (guint32 new_device) device_status_update_current (); } -gint +gboolean devices_check_change (GdkEvent *event) { - guint32 device; + GdkDevice *device; switch (event->type) { case GDK_MOTION_NOTIFY: - device = ((GdkEventMotion *)event)->deviceid; + device = ((GdkEventMotion *) event)->device; break; case GDK_BUTTON_PRESS: case GDK_BUTTON_RELEASE: - device = ((GdkEventButton *)event)->deviceid; + device = ((GdkEventButton *) event)->device; break; case GDK_PROXIMITY_OUT: - device = ((GdkEventProximity *)event)->deviceid; + device = ((GdkEventProximity *) event)->device; break; default: device = current_device; @@ -568,26 +578,24 @@ devices_check_change (GdkEvent *event) select_device (device); return TRUE; } - else - { - return FALSE; - } + + return FALSE; } static void devices_write_rc_device (DeviceInfo *device_info, FILE *fp) { - GdkDeviceInfo *gdk_info = NULL; - gchar *mode = NULL; - gint i; + GdkDevice *device = NULL; + gchar *mode = NULL; + gint i; if (device_info->is_present) - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; fprintf (fp, "(device \"%s\"", device_info->name); - switch (gdk_info ? gdk_info->mode : device_info->mode) + switch (device ? device->mode : device_info->mode) { case GDK_MODE_DISABLED: mode = "disabled"; @@ -603,13 +611,13 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp, "\n (mode %s)", mode); fprintf (fp, "\n (axes %d", - gdk_info ? gdk_info->num_axes : device_info->num_axes); + device ? device->num_axes : device_info->num_axes); - for (i=0; i< (gdk_info ? gdk_info->num_axes : device_info->num_axes); i++) + for (i = 0; i < (device ? device->num_axes : device_info->num_axes); i++) { gchar *axis_type = NULL; - switch (gdk_info ? gdk_info->axes[i] : device_info->axes[i]) + switch (device ? device->axes[i].use : device_info->axes[i]) { case GDK_AXIS_IGNORE: axis_type = "ignore"; @@ -635,14 +643,14 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp,")"); fprintf (fp, "\n (keys %d", - gdk_info ? gdk_info->num_keys : device_info->num_keys); + device ? device->num_keys : device_info->num_keys); - for (i = 0; i < (gdk_info ? gdk_info->num_keys : device_info->num_keys); i++) + for (i = 0; i < (device ? device->num_keys : device_info->num_keys); i++) { - GdkModifierType modifiers = gdk_info ? gdk_info->keys[i].modifiers : - device_info->keys[i].modifiers; - guint keyval = gdk_info ? gdk_info->keys[i].keyval : - device_info->keys[i].keyval; + GdkModifierType modifiers = (device ? device->keys[i].modifiers : + device_info->keys[i].modifiers); + guint keyval = (device ? device->keys[i].keyval : + device_info->keys[i].keyval); if (keyval) { @@ -716,7 +724,7 @@ devices_write_rc (void) gchar *filename; FILE *fp; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); filename = gimp_personal_rc_file ("devicerc"); fp = fopen (filename, "wb"); @@ -773,7 +781,7 @@ device_status_create (void) gtk_widget_realize (deviceD->table); gtk_widget_show (deviceD->table); - deviceD->ids = g_new (guint32, deviceD->num_devices); + deviceD->devices = g_new (GdkDevice *, deviceD->num_devices); deviceD->frames = g_new (GtkWidget *, deviceD->num_devices); deviceD->tools = g_new (GtkWidget *, deviceD->num_devices); deviceD->foregrounds = g_new (GtkWidget *, deviceD->num_devices); @@ -789,7 +797,7 @@ device_status_create (void) device_info = (DeviceInfo *) list->data; - deviceD->ids[i] = device_info->device; + deviceD->devices[i] = device_info->device; /* the device name */ @@ -811,11 +819,10 @@ device_status_create (void) gimp_preview_new_full (GIMP_VIEWABLE (gimp_context_get_tool (device_info->context)), CELL_SIZE, CELL_SIZE, 0, FALSE, FALSE, TRUE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (device_info->context), - "tool_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (deviceD->tools[i])); + gtk_signal_connect_object_while_alive (GTK_OBJECT (device_info->context), + "tool_changed", + GTK_SIGNAL_FUNC (gimp_preview_set_viewable), + GTK_OBJECT (deviceD->tools[i])); gimp_gtk_drag_dest_set_by_type (deviceD->tools[i], GTK_DEST_DEFAULT_ALL, GIMP_TYPE_TOOL_INFO, @@ -823,7 +830,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->tools[i], GIMP_TYPE_TOOL_INFO, device_status_drop_tool, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->tools[i], 1, 2, i, i+1, 0, 0, 2, 2); @@ -838,7 +845,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->foregrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_foreground_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->foregrounds[i], 2, 3, i, i+1, @@ -854,7 +861,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->backgrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_background_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->backgrounds[i], 3, 4, i, i+1, @@ -878,7 +885,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->brushes[i], GIMP_TYPE_BRUSH, device_status_drop_brush, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->brushes[i], 4, 5, i, i+1, 0, 0, 2, 2); @@ -901,7 +908,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->patterns[i], GIMP_TYPE_PATTERN, device_status_drop_pattern, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->patterns[i], 5, 6, i, i+1, 0, 0, 2, 2); @@ -924,7 +931,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->gradients[i], GIMP_TYPE_GRADIENT, device_status_drop_gradient, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->gradients[i], 6, 7, i, i+1, 0, 0, 2, 2); @@ -932,7 +939,8 @@ device_status_create (void) device_status_update (device_info->device); } - deviceD->current = 0xffffffff; /* random, but doesn't matter */ + deviceD->current = NULL; + device_status_update_current (); gtk_signal_connect (GTK_OBJECT (deviceD->shell), "destroy", @@ -945,7 +953,7 @@ device_status_create (void) static void device_status_destroy_callback (void) { - g_free (deviceD->ids); + g_free (deviceD->devices); g_free (deviceD->frames); g_free (deviceD->tools); g_free (deviceD->foregrounds); @@ -985,10 +993,10 @@ device_status_update_current (void) { for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceD->current) + if (deviceD->devices[i] == deviceD->current) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_OUT); - else if (deviceD->ids[i] == current_device) + else if (deviceD->devices[i] == current_device) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_IN); } @@ -998,9 +1006,8 @@ device_status_update_current (void) } void -device_status_update (guint32 deviceid) +device_status_update (GdkDevice *device) { - GdkDeviceInfo *gdk_info; DeviceInfo *device_info; GimpRGB color; guchar red, green, blue; @@ -1010,21 +1017,18 @@ device_status_update (guint32 deviceid) if (!deviceD || suppress_update) return; - if ((device_info = device_info_get_by_id (deviceid)) == NULL) - return; - - if ((gdk_info = gdk_device_info_get_by_id (deviceid)) == NULL) + if ((device_info = device_info_get_by_device (device)) == NULL) return; for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceid) + if (deviceD->devices[i] == device) break; } g_return_if_fail (i < deviceD->num_devices); - if (gdk_info->mode == GDK_MODE_DISABLED) + if (device->mode == GDK_MODE_DISABLED) { gtk_widget_hide (deviceD->frames[i]); gtk_widget_hide (deviceD->tools[i]); @@ -1097,7 +1101,7 @@ device_status_drop_tool (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1112,7 +1116,7 @@ device_status_foreground_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1128,7 +1132,7 @@ device_status_background_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1144,7 +1148,7 @@ device_status_drop_brush (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1159,7 +1163,7 @@ device_status_drop_pattern (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1174,7 +1178,7 @@ device_status_drop_gradient (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1189,33 +1193,29 @@ device_status_data_changed (GimpContext *context, gpointer dummy, gpointer data) { - DeviceInfo *device_info; - - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); - - device_status_update (device_info->device); + device_status_update ((GdkDevice *) data); } static void device_status_context_connect (GimpContext *context, - guint32 deviceid) + GdkDevice *device) { gtk_signal_connect (GTK_OBJECT (context), "foreground_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "background_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "tool_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "brush_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "pattern_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "gradient_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); } diff --git a/app/gui/dialogs-commands.c b/app/gui/dialogs-commands.c index 78e1efb8c9..3ceccab816 100644 --- a/app/gui/dialogs-commands.c +++ b/app/gui/dialogs-commands.c @@ -39,7 +39,7 @@ dialogs_create_toplevel_cmd_callback (GtkWidget *widget, { if (action) { - gchar *identifier; + const gchar *identifier; identifier = g_quark_to_string ((GQuark) action); @@ -55,7 +55,7 @@ dialogs_create_dockable_cmd_callback (GtkWidget *widget, { if (action) { - gchar *identifier; + const gchar *identifier; identifier = g_quark_to_string ((GQuark) action); @@ -75,8 +75,8 @@ dialogs_add_tab_cmd_callback (GtkWidget *widget, if (dockbook && action) { - GtkWidget *dockable; - gchar *identifier; + GtkWidget *dockable; + const gchar *identifier; identifier = g_quark_to_string ((GQuark) action); diff --git a/app/gui/dialogs-constructors.c b/app/gui/dialogs-constructors.c index f9cca0f6e6..a517d68eb1 100644 --- a/app/gui/dialogs-constructors.c +++ b/app/gui/dialogs-constructors.c @@ -705,9 +705,9 @@ dialogs_path_list_view_new (GimpDialogFactory *factory, view = paths_dialog_create (); - gtk_signal_connect (GTK_OBJECT (view), "destroy", - GTK_SIGNAL_FUNC (gtk_widget_destroyed), - &view); + g_signal_connect (G_OBJECT (view), "destroy", + G_CALLBACK (gtk_widget_destroyed), + &view); dockable = dialogs_dockable_new (view, "Path List", "Paths", @@ -738,9 +738,9 @@ dialogs_indexed_palette_new (GimpDialogFactory *factory, dialogs_set_indexed_palette_context_func (GIMP_DOCKABLE (dockable), context); - gtk_signal_connect (GTK_OBJECT (view), "selected", - GTK_SIGNAL_FUNC (dialogs_indexed_palette_selected), - dockable); + g_signal_connect (G_OBJECT (view), "selected", + G_CALLBACK (dialogs_indexed_palette_selected), + dockable); return dockable; } @@ -812,8 +812,8 @@ dialogs_indexed_palette_selected (GimpColormapDialog *dialog, { GimpContext *context; - context = (GimpContext *) gtk_object_get_data (GTK_OBJECT (dialog), - "gimp-dialogs-context"); + context = (GimpContext *) g_object_get_data (G_OBJECT (dialog), + "gimp-dialogs-context"); if (context) { @@ -852,11 +852,10 @@ dialogs_brush_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "brush_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "brush_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -876,11 +875,10 @@ dialogs_pattern_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "pattern_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "pattern_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -900,11 +898,10 @@ dialogs_gradient_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "gradient_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "gradient_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -924,11 +921,10 @@ dialogs_palette_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "palette_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "palette_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -948,11 +944,10 @@ dialogs_tool_tab_func (GimpDockable *dockable, size, size, 1, FALSE, FALSE, FALSE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (context), - "tool_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (preview)); + g_signal_connect_object (G_OBJECT (context), "tool_changed", + G_CALLBACK (gimp_preview_set_viewable), + G_OBJECT (preview), + G_CONNECT_SWAPPED); return preview; } @@ -963,8 +958,8 @@ dialogs_set_view_context_func (GimpDockable *dockable, { GimpContainerView *view; - view = (GimpContainerView *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + view = (GimpContainerView *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); if (view) gimp_container_view_set_context (view, context); @@ -976,8 +971,10 @@ dialogs_set_editor_context_func (GimpDockable *dockable, { GimpContainerEditor *editor; - editor = (GimpContainerEditor *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + editor = (GimpContainerEditor *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); + + g_print ("dialogs_set_editor_context_func()\n"); if (editor) gimp_container_view_set_context (editor->view, context); @@ -989,28 +986,23 @@ dialogs_set_drawable_context_func (GimpDockable *dockable, { GimpDrawableListView *view; - view = (GimpDrawableListView *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + view = (GimpDrawableListView *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); if (view) { - GimpContext *old_context; - - old_context = (GimpContext *) gtk_object_get_data (GTK_OBJECT (view), - "gimp-dialogs-context"); - - if (old_context) + if (dockable->context) { - gtk_signal_disconnect_by_func (GTK_OBJECT (old_context), - GTK_SIGNAL_FUNC (dialogs_drawable_view_image_changed), - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (dockable->context), + dialogs_drawable_view_image_changed, + view); } if (context) { - gtk_signal_connect (GTK_OBJECT (context), "image_changed", - GTK_SIGNAL_FUNC (dialogs_drawable_view_image_changed), - view); + g_signal_connect (G_OBJECT (context), "image_changed", + G_CALLBACK (dialogs_drawable_view_image_changed), + view); dialogs_drawable_view_image_changed (context, gimp_context_get_image (context), @@ -1020,8 +1012,6 @@ dialogs_set_drawable_context_func (GimpDockable *dockable, { dialogs_drawable_view_image_changed (NULL, NULL, view); } - - gtk_object_set_data (GTK_OBJECT (view), "gimp-dialogs-context", context); } } @@ -1031,28 +1021,23 @@ dialogs_set_path_context_func (GimpDockable *dockable, { GtkWidget *view; - view = (GtkWidget *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + view = (GtkWidget *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); if (view) { - GimpContext *old_context; - - old_context = (GimpContext *) gtk_object_get_data (GTK_OBJECT (view), - "gimp-dialogs-context"); - - if (old_context) + if (dockable->context) { - gtk_signal_disconnect_by_func (GTK_OBJECT (old_context), - GTK_SIGNAL_FUNC (dialogs_path_view_image_changed), - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (dockable->context), + dialogs_path_view_image_changed, + view); } if (context) { - gtk_signal_connect (GTK_OBJECT (context), "image_changed", - GTK_SIGNAL_FUNC (dialogs_path_view_image_changed), - view); + g_signal_connect (G_OBJECT (context), "image_changed", + G_CALLBACK (dialogs_path_view_image_changed), + view); dialogs_path_view_image_changed (context, gimp_context_get_image (context), @@ -1062,8 +1047,6 @@ dialogs_set_path_context_func (GimpDockable *dockable, { dialogs_path_view_image_changed (NULL, NULL, view); } - - gtk_object_set_data (GTK_OBJECT (view), "gimp-dialogs-context", context); } } @@ -1073,28 +1056,23 @@ dialogs_set_indexed_palette_context_func (GimpDockable *dockable, { GimpColormapDialog *view; - view = (GimpColormapDialog *) gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dialogs-view"); + view = (GimpColormapDialog *) g_object_get_data (G_OBJECT (dockable), + "gimp-dialogs-view"); if (view) { - GimpContext *old_context; - - old_context = (GimpContext *) gtk_object_get_data (GTK_OBJECT (view), - "gimp-dialogs-context"); - - if (old_context) + if (dockable->context) { - gtk_signal_disconnect_by_func (GTK_OBJECT (old_context), - GTK_SIGNAL_FUNC (dialogs_indexed_palette_image_changed), - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (dockable->context), + dialogs_indexed_palette_image_changed, + view); } if (context) { - gtk_signal_connect (GTK_OBJECT (context), "image_changed", - GTK_SIGNAL_FUNC (dialogs_indexed_palette_image_changed), - view); + g_signal_connect (G_OBJECT (context), "image_changed", + G_CALLBACK (dialogs_indexed_palette_image_changed), + view); dialogs_indexed_palette_image_changed (context, gimp_context_get_image (context), @@ -1104,8 +1082,6 @@ dialogs_set_indexed_palette_context_func (GimpDockable *dockable, { dialogs_indexed_palette_image_changed (NULL, NULL, view); } - - gtk_object_set_data (GTK_OBJECT (view), "gimp-dialogs-context", context); } } @@ -1125,7 +1101,7 @@ dialogs_dockable_new (GtkWidget *widget, gtk_container_add (GTK_CONTAINER (dockable), widget); gtk_widget_show (widget); - gtk_object_set_data (GTK_OBJECT (dockable), "gimp-dialogs-view", widget); + g_object_set_data (G_OBJECT (dockable), "gimp-dialogs-view", widget); return dockable; } diff --git a/app/gui/file-commands.c b/app/gui/file-commands.c index 752fc053a1..d4902dfbc1 100644 --- a/app/gui/file-commands.c +++ b/app/gui/file-commands.c @@ -152,8 +152,8 @@ file_save_cmd_callback (GtkWidget *widget, } else { - gchar *raw_filename; - gint status; + const gchar *raw_filename; + gint status; raw_filename = g_basename (filename); diff --git a/app/gui/file-dialog-utils.c b/app/gui/file-dialog-utils.c index 57d505d755..edd964cf30 100644 --- a/app/gui/file-dialog-utils.c +++ b/app/gui/file-dialog-utils.c @@ -68,9 +68,9 @@ file_dialog_update_name (PlugInProcDef *proc, { if (proc->extensions_list) { - gchar *text; - gchar *last_dot; - GString *s; + const gchar *text; + gchar *last_dot; + GString *s; text = gtk_entry_get_text (GTK_ENTRY (GTK_FILE_SELECTION (filesel)->selection_entry)); last_dot = strrchr (text, '.'); diff --git a/app/gui/file-new-dialog.c b/app/gui/file-new-dialog.c index 672b81680e..dabb4c703f 100644 --- a/app/gui/file-new-dialog.c +++ b/app/gui/file-new-dialog.c @@ -423,8 +423,6 @@ file_new_dialog_create (GimpImage *gimage) /* height in units */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); /* add the "height in units" spinbutton to the sizeentry */ @@ -436,8 +434,6 @@ file_new_dialog_create (GimpImage *gimage) hbox = gtk_hbox_new (FALSE, 2); adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton2 = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton2), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton2), TRUE); gtk_widget_set_usize (spinbutton2, 75, 0); gtk_box_pack_start (GTK_BOX (hbox), spinbutton2, FALSE, FALSE, 0); @@ -459,8 +455,6 @@ file_new_dialog_create (GimpImage *gimage) /* width in units */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); /* add the "width in units" spinbutton to the sizeentry */ @@ -473,8 +467,6 @@ file_new_dialog_create (GimpImage *gimage) gtk_table_attach_defaults (GTK_TABLE (table), abox, 1, 2, 0, 1); adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton2 = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton2), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton2), TRUE); gtk_widget_set_usize (spinbutton2, 75, 0); /* add the "width in pixels" spinbutton to the main table */ @@ -531,8 +523,6 @@ file_new_dialog_create (GimpImage *gimage) /* the resolution sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); diff --git a/app/gui/file-open-dialog.c b/app/gui/file-open-dialog.c index fbe3baaee5..a9c792c583 100644 --- a/app/gui/file-open-dialog.c +++ b/app/gui/file-open-dialog.c @@ -63,8 +63,8 @@ /* local function prototypes */ -static gint file_open_with_proc_and_display (gchar *filename, - gchar *raw_filename, +static gint file_open_with_proc_and_display (const gchar *filename, + const gchar *raw_filename, PlugInProcDef *file_proc); static void file_open_dialog_create (void); static void file_open_genbutton_callback (GtkWidget *widget, @@ -156,7 +156,7 @@ file_open_dialog_show (void) } gint -file_open_with_display (gchar *filename) +file_open_with_display (const gchar *filename) { return file_open_with_proc_and_display (filename, filename, NULL); } @@ -165,8 +165,8 @@ file_open_with_display (gchar *filename) /* private functions */ static gint -file_open_with_proc_and_display (gchar *filename, - gchar *raw_filename, +file_open_with_proc_and_display (const gchar *filename, + const gchar *raw_filename, PlugInProcDef *file_proc) { GimpImage *gimage; @@ -445,7 +445,7 @@ set_preview (const gchar *fullfname, guchar *raw_thumb; gint tnw,tnh, i; gchar *pname; - gchar *fname; + const gchar *fname; gchar *tname; gchar *imginfo = NULL; struct stat file_stat; @@ -581,7 +581,7 @@ static void file_open_clistrow_callback (GtkWidget *widget, gint row) { - gchar *fullfname = NULL; + const gchar *fullfname; fullfname = gtk_file_selection_get_filename (GTK_FILE_SELECTION (fileload)); @@ -602,7 +602,7 @@ file_open_genbutton_callback (GtkWidget *widget, /* added for multi-file preview generation... */ GtkFileSelection *fs; gchar *full_filename = NULL; - gchar *filedirname; + gchar *filedirname = NULL; struct stat buf; gint err; @@ -629,11 +629,12 @@ file_open_genbutton_callback (GtkWidget *widget, /* Find a real base directory for the multiple selection */ gtk_file_selection_set_filename (fs, ""); - filedirname= gtk_file_selection_get_filename (fs); + filedirname = g_strdup (gtk_file_selection_get_filename (fs)); + if (filedirname[strlen (filedirname) - 1] == G_DIR_SEPARATOR) filedirname[strlen (filedirname) - 1] = '\0'; - while(list) + while (list) { full_filename = g_strconcat (filedirname, G_DIR_SEPARATOR_S, (gchar *) list->data, NULL); @@ -641,7 +642,8 @@ file_open_genbutton_callback (GtkWidget *widget, err = stat (full_filename, &buf); if (! (err == 0 && (buf.st_mode & S_IFDIR))) - { /* Is not directory. */ + { + /* Is not directory. */ gint dummy; gimage_to_be_thumbed = file_open_image (the_gimp, @@ -677,13 +679,13 @@ file_open_genbutton_callback (GtkWidget *widget, } } - g_free(full_filename); - list= g_slist_next(list); + g_free (full_filename); + list = g_slist_next (list); } for (list = toplist; list; list = g_slist_next (list)) { - if (!(g_slist_next (list))) + if (! g_slist_next (list)) { full_filename = g_strconcat (filedirname, G_DIR_SEPARATOR_S, (gchar *) list->data, NULL); @@ -696,6 +698,8 @@ file_open_genbutton_callback (GtkWidget *widget, g_slist_free (toplist); toplist = NULL; + + g_free (filedirname); } gtk_widget_set_sensitive (GTK_WIDGET (fileload), TRUE); @@ -709,14 +713,15 @@ file_open_ok_callback (GtkWidget *widget, GtkFileSelection *fs; gchar *full_filename; gchar *raw_filename; - gchar *filedirname; + const gchar *filedirname; struct stat buf; gint err; gint status; fs = GTK_FILE_SELECTION (data); - full_filename = gtk_file_selection_get_filename (fs); - raw_filename = gtk_entry_get_text (GTK_ENTRY(fs->selection_entry)); + + full_filename = g_strdup (gtk_file_selection_get_filename (fs)); + raw_filename = g_strdup (gtk_entry_get_text (GTK_ENTRY(fs->selection_entry))); g_assert (full_filename && raw_filename); @@ -771,12 +776,15 @@ file_open_ok_callback (GtkWidget *widget, /* Find a real base directory for the multiple selection */ - raw_filename = g_strdup(raw_filename); + raw_filename = g_strdup (raw_filename); + gtk_file_selection_set_filename (fs, ""); filedirname = gtk_file_selection_get_filename (fs); while (list) { + g_free (full_filename); + full_filename = g_strconcat (filedirname, G_DIR_SEPARATOR_S, (gchar *) list->data, NULL); @@ -789,7 +797,7 @@ file_open_ok_callback (GtkWidget *widget, { /* Is not directory. */ status = file_open_with_proc_and_display (full_filename, - (gchar *) list->data, + (const gchar *) list->data, load_file_proc); if (status == GIMP_PDB_SUCCESS) @@ -803,7 +811,6 @@ file_open_ok_callback (GtkWidget *widget, } } - g_free (full_filename); g_free (list->data); list = g_slist_next (list); } @@ -813,9 +820,10 @@ file_open_ok_callback (GtkWidget *widget, } gtk_file_selection_set_filename (fs, raw_filename); - g_free (raw_filename); gtk_widget_set_sensitive (GTK_WIDGET (fs), TRUE); + g_free (full_filename); + g_free (raw_filename); } static GSList * diff --git a/app/gui/file-open-dialog.h b/app/gui/file-open-dialog.h index 3d3b47ae9c..10f869e4f0 100644 --- a/app/gui/file-open-dialog.h +++ b/app/gui/file-open-dialog.h @@ -25,7 +25,7 @@ void file_open_dialog_menu_reset (void); void file_open_dialog_show (void); -gint file_open_with_display (gchar *filename); +gint file_open_with_display (const gchar *filename); #endif /* __FILE_OPEN_DIALOG_H__ */ diff --git a/app/gui/file-save-dialog.c b/app/gui/file-save-dialog.c index 5175d2d0ad..fa74968b1d 100644 --- a/app/gui/file-save-dialog.c +++ b/app/gui/file-save-dialog.c @@ -320,15 +320,16 @@ file_save_ok_callback (GtkWidget *widget, gpointer data) { GtkFileSelection *fs; - gchar *filename; - gchar *raw_filename; + const gchar *filename; + const gchar *raw_filename; gchar *dot; gint x; struct stat buf; gint err; fs = GTK_FILE_SELECTION (data); - filename = gtk_file_selection_get_filename (fs); + + filename = gtk_file_selection_get_filename (fs); raw_filename = gtk_entry_get_text (GTK_ENTRY (fs->selection_entry)); g_assert (filename && raw_filename); diff --git a/app/gui/gradient-editor.c b/app/gui/gradient-editor.c index 3962576bcd..13f441edb4 100644 --- a/app/gui/gradient-editor.c +++ b/app/gui/gradient-editor.c @@ -819,7 +819,7 @@ gradient_editor_name_activate (GtkWidget *widget, GradientEditor *gradient_editor) { GimpGradient *gradient; - gchar *entry_text; + const gchar *entry_text; gradient = gimp_context_get_gradient (gradient_editor->context); @@ -2382,7 +2382,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", (GtkSignalFunc) cpopup_set_left_color_callback, gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2402,7 +2402,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) 'F', GDK_CONTROL_MASK); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), gradient_editor->control_left_load_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Save to")); @@ -2413,12 +2413,12 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) GTK_SIGNAL_FUNC (cpopup_save_left_callback)); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_left_save_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Right endpoint */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = cpopup_create_color_item (&gradient_editor->right_color_preview, @@ -2427,7 +2427,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", (GtkSignalFunc) cpopup_set_right_color_callback, gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2447,7 +2447,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) 'F', GDK_MOD1_MASK); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_right_load_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Save to")); @@ -2458,12 +2458,12 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) GTK_SIGNAL_FUNC (cpopup_save_right_callback)); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_right_save_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Blending function */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = cpopup_create_menu_item_with_label ("", &gradient_editor->control_blending_label); @@ -2471,7 +2471,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) cpopup_create_blending_menu (gradient_editor); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_blending_popup); - gtk_menu_append (GTK_MENU(menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Coloring type */ @@ -2480,12 +2480,12 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) cpopup_create_coloring_menu (gradient_editor); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_coloring_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Operations */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Split at midpoint */ @@ -2493,7 +2493,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_split_midpoint_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator(menuitem, "activate", accel_group, @@ -2505,7 +2505,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_split_uniform_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2517,7 +2517,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_delete_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gradient_editor->control_delete_menu_item = menuitem; gtk_widget_add_accelerator (menuitem, "activate", @@ -2530,7 +2530,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_recenter_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2542,7 +2542,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_redistribute_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2551,7 +2551,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) /* Selection ops */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Selection operations")); @@ -2559,7 +2559,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) cpopup_create_sel_ops_menu (gradient_editor); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), gradient_editor->control_sel_ops_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Done */ @@ -2990,7 +2990,7 @@ cpopup_create_load_menu (GradientEditor *gradient_editor, { /* Insert separator between "to fetch" and "saved" colors */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); } @@ -3000,7 +3000,7 @@ cpopup_create_load_menu (GradientEditor *gradient_editor, gtk_signal_connect (GTK_OBJECT (menuitem), "activate", callback, gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); switch (i) @@ -3059,7 +3059,7 @@ cpopup_create_save_menu (GradientEditor *gradient_editor, gtk_signal_connect (GTK_OBJECT (menuitem), "activate", callback, gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); } @@ -3322,7 +3322,7 @@ cpopup_set_left_color_callback (GtkWidget *widget, color_notebook_new (_("Left Endpoint Color"), &gradient_editor->control_sel_l->left_color, - (GtkSignalFunc) cpopup_left_color_changed, + (ColorNotebookCallback) cpopup_left_color_changed, gradient_editor, gradient_editor->instant_update, TRUE); @@ -3343,7 +3343,7 @@ cpopup_set_right_color_callback (GtkWidget *widget, color_notebook_new (_("Right Endpoint Color"), &gradient_editor->control_sel_l->right_color, - (GtkSignalFunc) cpopup_right_color_changed, + (ColorNotebookCallback) cpopup_right_color_changed, gradient_editor, gradient_editor->instant_update, TRUE); @@ -3487,7 +3487,7 @@ cpopup_create_blending_menu (GradientEditor *gradient_editor) GTK_SIGNAL_FUNC (cpopup_blending_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gradient_editor->control_blending_items[i] = menuitem; @@ -3570,7 +3570,7 @@ cpopup_create_coloring_menu (GradientEditor *gradient_editor) GTK_SIGNAL_FUNC (cpopup_coloring_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gradient_editor->control_coloring_items[i] = menuitem; @@ -4082,7 +4082,7 @@ cpopup_create_sel_ops_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_flip_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -4095,7 +4095,7 @@ cpopup_create_sel_ops_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_replicate_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -4104,14 +4104,14 @@ cpopup_create_sel_ops_menu (GradientEditor *gradient_editor) /* Blend colors / opacity */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Blend endpoints' colors")); gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_blend_colors), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gradient_editor->control_blend_colors_menu_item = menuitem; gtk_widget_add_accelerator (menuitem, "activate", @@ -4123,7 +4123,7 @@ cpopup_create_sel_ops_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_blend_opacity), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, diff --git a/app/gui/gradients-commands.c b/app/gui/gradients-commands.c index 277ac485e9..2bad9cc9d1 100644 --- a/app/gui/gradients-commands.c +++ b/app/gui/gradients-commands.c @@ -96,7 +96,7 @@ gradients_menu_set_sensitivity (GimpContainerEditor *editor) menus_set_sensitive ("/" menu, (condition) != 0) SET_SENSITIVE ("Duplicate Gradient", - gradient && GIMP_DATA_CLASS (GTK_OBJECT (gradient)->klass)->duplicate); + gradient && GIMP_DATA_GET_CLASS (gradient)->duplicate); SET_SENSITIVE ("Edit Gradient...", gradient && GIMP_DATA_FACTORY_VIEW (editor)->data_edit_func); SET_SENSITIVE ("Delete Gradient...", @@ -162,7 +162,7 @@ gradients_save_as_pov_ok_callback (GtkWidget *widget, GimpGradient *gradient) { GtkFileSelection *filesel; - gchar *filename; + const gchar *filename; FILE *file; GimpGradientSegment *seg; diff --git a/app/gui/image-commands.c b/app/gui/image-commands.c index 4e6d973498..f7c3f8c653 100644 --- a/app/gui/image-commands.c +++ b/app/gui/image-commands.c @@ -196,7 +196,7 @@ image_resize_cmd_callback (GtkWidget *widget, image_resize->gimage = gimage; image_resize->resize = resize_widget_new (ResizeWidget, ResizeImage, - GTK_OBJECT (gimage), + G_OBJECT (gimage), "destroy", gimage->width, gimage->height, @@ -204,7 +204,7 @@ image_resize_cmd_callback (GtkWidget *widget, gimage->yresolution, gimage->unit, gdisp->dot_for_dot, - image_resize_callback, + G_CALLBACK (image_resize_callback), NULL, image_resize); @@ -233,7 +233,7 @@ image_scale_cmd_callback (GtkWidget *widget, image_scale->gimage = gimage; image_scale->resize = resize_widget_new (ScaleWidget, ResizeImage, - GTK_OBJECT (gimage), + G_OBJECT (gimage), "destroy", gimage->width, gimage->height, @@ -241,7 +241,7 @@ image_scale_cmd_callback (GtkWidget *widget, gimage->yresolution, gimage->unit, gdisp->dot_for_dot, - image_scale_callback, + G_CALLBACK (image_scale_callback), NULL, image_scale); diff --git a/app/gui/info-dialog.c b/app/gui/info-dialog.c index 2f8d153378..df06bd1869 100644 --- a/app/gui/info-dialog.c +++ b/app/gui/info-dialog.c @@ -40,7 +40,7 @@ static void info_field_new (InfoDialog *idialog, GtkWidget *widget, GtkObject *object, gpointer value_ptr, - GtkSignalFunc callback, + GCallback callback, gpointer callback_data); static void update_field (InfoField *info_field); static gint info_dialog_delete_callback (GtkWidget *widget, @@ -55,7 +55,7 @@ info_field_new (InfoDialog *idialog, GtkWidget *widget, GtkObject *obj, gpointer value_ptr, - GtkSignalFunc callback, + GCallback callback, gpointer callback_data) { GtkWidget *label; @@ -99,43 +99,41 @@ info_field_new (InfoDialog *idialog, static void update_field (InfoField *field) { - gchar *old_text; - gint num; - gint i; + const gchar *old_text; + gint num; + gint i; if (field->value_ptr == NULL) return; if (field->field_type != INFO_LABEL) - gtk_signal_handler_block_by_func (GTK_OBJECT (field->obj), - field->callback, - field->callback_data); + g_signal_handlers_block_by_func (G_OBJECT (field->obj), + field->callback, + field->callback_data); switch (field->field_type) { case INFO_LABEL: - gtk_label_get (GTK_LABEL (field->obj), &old_text); - if (strcmp (old_text, (gchar*) field->value_ptr)) - gtk_label_set_text (GTK_LABEL (field->obj), (gchar*) field->value_ptr); + gtk_label_set_text (GTK_LABEL (field->obj), (gchar *) field->value_ptr); break; case INFO_ENTRY: old_text = gtk_entry_get_text (GTK_ENTRY (field->obj)); - if (strcmp (old_text, (gchar*) field->value_ptr)) - gtk_entry_set_text (GTK_ENTRY (field->obj), (gchar*) field->value_ptr); + if (strcmp (old_text, (gchar *) field->value_ptr)) + gtk_entry_set_text (GTK_ENTRY (field->obj), (gchar *) field->value_ptr); break; case INFO_SCALE: case INFO_SPINBUTTON: gtk_adjustment_set_value (GTK_ADJUSTMENT (field->obj), - *((gdouble*) field->value_ptr)); + *((gdouble *) field->value_ptr)); break; case INFO_SIZEENTRY: num = GIMP_SIZE_ENTRY (field->obj)->number_of_fields; for (i = 0; i < num; i++) gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (field->obj), i, - ((gdouble*) field->value_ptr)[i]); + ((gdouble *) field->value_ptr)[i]); break; default: @@ -144,12 +142,12 @@ update_field (InfoField *field) } if (field->field_type != INFO_LABEL) - gtk_signal_handler_unblock_by_func (GTK_OBJECT (field->obj), - field->callback, - field->callback_data); + g_signal_handlers_unblock_by_func (G_OBJECT (field->obj), + field->callback, + field->callback_data); } -static gint +static gboolean info_dialog_delete_callback (GtkWidget *widget, GdkEvent *event, gpointer data) @@ -179,8 +177,8 @@ info_dialog_new_extended (gchar *title, gtk_window_set_wmclass (GTK_WINDOW (shell), "info_dialog", "Gimp"); gtk_window_set_title (GTK_WINDOW (shell), title); - gtk_signal_connect (GTK_OBJECT (shell), "delete_event", - GTK_SIGNAL_FUNC (info_dialog_delete_callback), + g_signal_connect (G_OBJECT (shell), "delete_event", + G_CALLBACK (info_dialog_delete_callback), idialog); vbox = gtk_vbox_new (FALSE, 0); @@ -305,7 +303,8 @@ info_dialog_add_label (InfoDialog *idialog, label = gtk_label_new (text_ptr); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); - info_field_new (idialog, INFO_LABEL, title, label, NULL, (void*) text_ptr, + info_field_new (idialog, INFO_LABEL, title, label, NULL, + text_ptr, NULL, NULL); return label; @@ -313,10 +312,10 @@ info_dialog_add_label (InfoDialog *idialog, GtkWidget * info_dialog_add_entry (InfoDialog *idialog, - char *title, - char *text_ptr, - GtkSignalFunc callback, - gpointer data) + gchar *title, + gchar *text_ptr, + GCallback callback, + gpointer callback_data) { GtkWidget *entry; @@ -327,11 +326,13 @@ info_dialog_add_entry (InfoDialog *idialog, gtk_entry_set_text (GTK_ENTRY (entry), text_ptr ? text_ptr : ""); if (callback) - gtk_signal_connect (GTK_OBJECT (entry), "changed", - GTK_SIGNAL_FUNC (callback), data); + g_signal_connect (G_OBJECT (entry), "changed", + callback, + callback_data); - info_field_new (idialog, INFO_ENTRY, title, entry, NULL, (void*) text_ptr, - callback, data); + info_field_new (idialog, INFO_ENTRY, title, entry, NULL, + text_ptr, + callback, callback_data); return entry; } @@ -346,8 +347,8 @@ info_dialog_add_scale (InfoDialog *idialog, gfloat page_increment, gfloat page_size, gint digits, - GtkSignalFunc callback, - gpointer data) + GCallback callback, + gpointer callback_data) { GtkObject *adjustment; GtkWidget *scale; @@ -364,11 +365,13 @@ info_dialog_add_scale (InfoDialog *idialog, gtk_scale_set_draw_value (GTK_SCALE (scale), FALSE); if (callback) - gtk_signal_connect (GTK_OBJECT (adjustment), "value_changed", - GTK_SIGNAL_FUNC (callback), data); + g_signal_connect (G_OBJECT (adjustment), "value_changed", + callback, + callback_data); info_field_new (idialog, INFO_SCALE, title, scale, adjustment, - (void*) value_ptr, callback, data); + value_ptr, + callback, callback_data); return scale; } @@ -384,8 +387,8 @@ info_dialog_add_spinbutton (InfoDialog *idialog, gfloat page_size, gfloat climb_rate, gint digits, - GtkSignalFunc callback, - gpointer data) + GCallback callback, + gpointer callback_data) { GtkWidget *alignment; GtkObject *adjustment; @@ -399,20 +402,21 @@ info_dialog_add_spinbutton (InfoDialog *idialog, step_increment, page_increment, page_size); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), climb_rate, MAX (MIN (digits, 6), 0)); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); if (callback) - gtk_signal_connect (GTK_OBJECT (adjustment), "value_changed", - GTK_SIGNAL_FUNC (callback), data); + g_signal_connect (G_OBJECT (adjustment), "value_changed", + callback, + callback_data); gtk_container_add (GTK_CONTAINER (alignment), spinbutton); gtk_widget_show (spinbutton); - info_field_new (idialog, INFO_SPINBUTTON, title, alignment, adjustment, - (void*) value_ptr, callback, data); + info_field_new (idialog, INFO_SPINBUTTON, title, alignment, + adjustment, + value_ptr, + callback, callback_data); return spinbutton; } @@ -428,8 +432,8 @@ info_dialog_add_sizeentry (InfoDialog *idialog, gboolean menu_show_percent, gboolean show_refval, GimpSizeEntryUpdatePolicy update_policy, - GtkSignalFunc callback, - gpointer data) + GCallback callback, + gpointer callback_data) { GtkWidget *alignment; GtkWidget *sizeentry; @@ -448,15 +452,17 @@ info_dialog_add_sizeentry (InfoDialog *idialog, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (sizeentry), i, value_ptr[i]); if (callback) - gtk_signal_connect (GTK_OBJECT (sizeentry), "value_changed", - GTK_SIGNAL_FUNC (callback), data); + g_signal_connect (G_OBJECT (sizeentry), "value_changed", + callback, + callback_data); gtk_container_add (GTK_CONTAINER (alignment), sizeentry); gtk_widget_show (sizeentry); info_field_new (idialog, INFO_SIZEENTRY, title, alignment, GTK_OBJECT (sizeentry), - (void*) value_ptr, callback, data); + value_ptr, + callback, callback_data); return sizeentry; } diff --git a/app/gui/info-dialog.h b/app/gui/info-dialog.h index 54255fc41c..735dbc2b56 100644 --- a/app/gui/info-dialog.h +++ b/app/gui/info-dialog.h @@ -38,7 +38,7 @@ struct _InfoField GtkObject *obj; gpointer value_ptr; - GtkSignalFunc callback; + GCallback callback; gpointer callback_data; }; @@ -77,8 +77,8 @@ GtkWidget *info_dialog_add_label (InfoDialog *idialog, GtkWidget *info_dialog_add_entry (InfoDialog *idialog, gchar *title, gchar *text_ptr, - GtkSignalFunc callback, - gpointer data); + GCallback callback, + gpointer callback_data); GtkWidget *info_dialog_add_scale (InfoDialog *idialog, gchar *title, @@ -89,8 +89,8 @@ GtkWidget *info_dialog_add_scale (InfoDialog *idialog, gfloat page_increment, gfloat page_size, gint digits, - GtkSignalFunc callback, - gpointer data); + GCallback callback, + gpointer callback_data); GtkWidget *info_dialog_add_spinbutton (InfoDialog *idialog, gchar *title, @@ -102,8 +102,8 @@ GtkWidget *info_dialog_add_spinbutton (InfoDialog *idialog, gfloat page_size, gfloat climb_rate, gint digits, - GtkSignalFunc callback, - gpointer data); + GCallback callback, + gpointer callback_data); GtkWidget *info_dialog_add_sizeentry (InfoDialog *idialog, gchar *title, @@ -115,7 +115,7 @@ GtkWidget *info_dialog_add_sizeentry (InfoDialog *idialog, gboolean menu_show_percent, gboolean show_refval, GimpSizeEntryUpdatePolicy update_policy, - GtkSignalFunc callback, - gpointer data); + GCallback callback, + gpointer callback_data); #endif /* __INFO_DIALOG_H__ */ diff --git a/app/gui/input-dialog.c b/app/gui/input-dialog.c index 9eaa27bcbf..eae85ed401 100644 --- a/app/gui/input-dialog.c +++ b/app/gui/input-dialog.c @@ -63,33 +63,33 @@ typedef struct _DeviceInfo DeviceInfo; struct _DeviceInfo { - guint32 device; /* device ID */ - gchar *name; + GdkDevice *device; + gchar *name; - gshort is_present; /* is the device currently present */ + gshort is_present; /* is the device currently present */ /* gdk_input options - for not present devices */ - GdkInputMode mode; - gint num_axes; - GdkAxisUse *axes; - gint num_keys; - GdkDeviceKey *keys; + GdkInputMode mode; + gint num_axes; + GdkAxisUse *axes; + gint num_keys; + GdkDeviceKey *keys; - GimpContext *context; + GimpContext *context; }; typedef struct _DeviceInfoDialog DeviceInfoDialog; struct _DeviceInfoDialog { - gint num_devices; + gint num_devices; - guint32 current; - guint32 *ids; + GdkDevice *current; + GdkDevice **devices; - GtkWidget *shell; - GtkWidget *table; + GtkWidget *shell; + GtkWidget *table; GtkWidget **frames; GtkWidget **tools; @@ -103,7 +103,7 @@ struct _DeviceInfoDialog /* local functions */ static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data); static void devices_write_rc_device (DeviceInfo *device_info, @@ -114,7 +114,7 @@ static void device_status_destroy_callback (void); static void devices_close_callback (GtkWidget *widget, gpointer data); -static void device_status_update (guint32 deviceid); +static void device_status_update (GdkDevice *device); static void device_status_update_current (void); static void device_status_drop_tool (GtkWidget *widget, @@ -139,11 +139,11 @@ static void device_status_data_changed (GimpContext *context, gpointer data); static void device_status_context_connect (GimpContext *context, - guint32 deviceid); + GdkDevice *device); /* global data */ -gint current_device = GDK_CORE_POINTER; +GdkDevice *current_device = NULL; /* local data */ static GList *device_info_list = NULL; @@ -153,36 +153,19 @@ static DeviceInfoDialog *deviceD = NULL; static gboolean suppress_update = FALSE; -/* utility functions for the device lists */ - -static GdkDeviceInfo * -gdk_device_info_get_by_id (guint32 deviceid) -{ - GdkDeviceInfo *info; - GList *list; - - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) - { - info = (GdkDeviceInfo *) list->data; - - if (info->deviceid == deviceid) - return info; - } - - return NULL; -} +/* utility functions for the device_info_list */ static DeviceInfo * -device_info_get_by_id (guint32 deviceid) +device_info_get_by_device (GdkDevice *device) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { info = (DeviceInfo *) list->data; - if (info->device == deviceid) + if (info->device == device) return info; } @@ -193,7 +176,7 @@ static DeviceInfo * device_info_get_by_name (gchar *name) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { @@ -269,34 +252,40 @@ input_dialog_create (void) static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data) { - device_status_update (deviceid); + device_status_update (device); } void devices_init (void) { - GdkDeviceInfo *gdk_info; - DeviceInfo *device_info; - GList *list; + GdkDevice *device; + DeviceInfo *device_info; + GList *list; + + current_device = gdk_core_pointer; /* create device info structures for present devices */ - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - gdk_info = (GdkDeviceInfo *) list->data; + device = (GdkDevice *) list->data; device_info = g_new (DeviceInfo, 1); - device_info->device = gdk_info->deviceid; - device_info->name = g_strdup (gdk_info->name); + device_info->device = device; + device_info->name = g_strdup (device->name); + device_info->mode = device->mode; + device_info->is_present = TRUE; - device_info->mode = gdk_info->mode; - device_info->num_axes = gdk_info->num_axes; + device_info->num_axes = device->num_axes; device_info->axes = NULL; + device_info->num_keys = device->num_axes; + device_info->keys = NULL; + device_info->context = gimp_create_context (the_gimp, device_info->name, NULL); gimp_context_define_args (device_info->context, @@ -305,7 +294,8 @@ devices_init (void) gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } @@ -323,7 +313,7 @@ devices_restore (void) gimprc_parse_file (filename); g_free (filename); - if ((device_info = device_info_get_by_id (current_device)) == NULL) + if ((device_info = device_info_get_by_device (current_device)) == NULL) return; suppress_update = TRUE; @@ -356,10 +346,12 @@ devices_rc_update (gchar *name, /* Find device if we have it */ device_info = device_info_get_by_name (name); - if (!device_info) + if (! device_info) { device_info = g_new (DeviceInfo, 1); - device_info->name = g_strdup (name); + + device_info->device = NULL; + device_info->name = g_strdup (name); device_info->is_present = FALSE; if (values & DEVICE_AXES) @@ -371,7 +363,7 @@ devices_rc_update (gchar *name, else { device_info->num_axes = 0; - device_info->axes = NULL; + device_info->axes = NULL; } if (values & DEVICE_KEYS) @@ -380,6 +372,11 @@ devices_rc_update (gchar *name, device_info->keys = g_new (GdkDeviceKey, num_keys); memcpy (device_info->keys, axes, num_keys * sizeof (GdkDeviceKey)); } + else + { + device_info->num_keys = 0; + device_info->keys = NULL; + } if (values & DEVICE_MODE) device_info->mode = mode; @@ -394,31 +391,44 @@ devices_rc_update (gchar *name, gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } else { - GdkDeviceInfo *gdk_info; + GdkDevice *device; - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; - if (gdk_info != NULL) + if (device) { if (values & DEVICE_MODE) - gdk_input_set_mode (gdk_info->deviceid, mode); + { + gdk_device_set_mode (device, mode); + } - if ((values & DEVICE_AXES) && num_axes >= gdk_info->num_axes) - gdk_input_set_axes (gdk_info->deviceid, axes); - - if ((values & DEVICE_KEYS) && num_keys >= gdk_info->num_keys) + if ((values & DEVICE_AXES) && num_axes >= device->num_axes) { gint i; - - for (i=0; inum_keys); i++) - gdk_input_set_key (gdk_info->deviceid, i, - keys[i].keyval, keys[i].modifiers); + + for (i = 0; i < MIN (num_axes, device->num_axes); i++) + { + gdk_device_set_axis_use (device, i, axes[i]); + } + } + + if ((values & DEVICE_KEYS) && num_keys >= device->num_keys) + { + gint i; + + for (i = 0; i < MIN (num_keys, device->num_keys); i++) + { + gdk_device_set_key (device, i, + keys[i].keyval, + keys[i].modifiers); + } } } else @@ -517,18 +527,18 @@ devices_rc_update (gchar *name, } void -select_device (guint32 new_device) +select_device (GdkDevice *new_device) { - DeviceInfo *device_info; + DeviceInfo *device_info; GimpContext *context; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); gimp_context_unset_parent (device_info->context); suppress_update = TRUE; - device_info = device_info_get_by_id (new_device); + device_info = device_info_get_by_device (new_device); current_device = new_device; @@ -542,22 +552,22 @@ select_device (guint32 new_device) device_status_update_current (); } -gint +gboolean devices_check_change (GdkEvent *event) { - guint32 device; + GdkDevice *device; switch (event->type) { case GDK_MOTION_NOTIFY: - device = ((GdkEventMotion *)event)->deviceid; + device = ((GdkEventMotion *) event)->device; break; case GDK_BUTTON_PRESS: case GDK_BUTTON_RELEASE: - device = ((GdkEventButton *)event)->deviceid; + device = ((GdkEventButton *) event)->device; break; case GDK_PROXIMITY_OUT: - device = ((GdkEventProximity *)event)->deviceid; + device = ((GdkEventProximity *) event)->device; break; default: device = current_device; @@ -568,26 +578,24 @@ devices_check_change (GdkEvent *event) select_device (device); return TRUE; } - else - { - return FALSE; - } + + return FALSE; } static void devices_write_rc_device (DeviceInfo *device_info, FILE *fp) { - GdkDeviceInfo *gdk_info = NULL; - gchar *mode = NULL; - gint i; + GdkDevice *device = NULL; + gchar *mode = NULL; + gint i; if (device_info->is_present) - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; fprintf (fp, "(device \"%s\"", device_info->name); - switch (gdk_info ? gdk_info->mode : device_info->mode) + switch (device ? device->mode : device_info->mode) { case GDK_MODE_DISABLED: mode = "disabled"; @@ -603,13 +611,13 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp, "\n (mode %s)", mode); fprintf (fp, "\n (axes %d", - gdk_info ? gdk_info->num_axes : device_info->num_axes); + device ? device->num_axes : device_info->num_axes); - for (i=0; i< (gdk_info ? gdk_info->num_axes : device_info->num_axes); i++) + for (i = 0; i < (device ? device->num_axes : device_info->num_axes); i++) { gchar *axis_type = NULL; - switch (gdk_info ? gdk_info->axes[i] : device_info->axes[i]) + switch (device ? device->axes[i].use : device_info->axes[i]) { case GDK_AXIS_IGNORE: axis_type = "ignore"; @@ -635,14 +643,14 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp,")"); fprintf (fp, "\n (keys %d", - gdk_info ? gdk_info->num_keys : device_info->num_keys); + device ? device->num_keys : device_info->num_keys); - for (i = 0; i < (gdk_info ? gdk_info->num_keys : device_info->num_keys); i++) + for (i = 0; i < (device ? device->num_keys : device_info->num_keys); i++) { - GdkModifierType modifiers = gdk_info ? gdk_info->keys[i].modifiers : - device_info->keys[i].modifiers; - guint keyval = gdk_info ? gdk_info->keys[i].keyval : - device_info->keys[i].keyval; + GdkModifierType modifiers = (device ? device->keys[i].modifiers : + device_info->keys[i].modifiers); + guint keyval = (device ? device->keys[i].keyval : + device_info->keys[i].keyval); if (keyval) { @@ -716,7 +724,7 @@ devices_write_rc (void) gchar *filename; FILE *fp; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); filename = gimp_personal_rc_file ("devicerc"); fp = fopen (filename, "wb"); @@ -773,7 +781,7 @@ device_status_create (void) gtk_widget_realize (deviceD->table); gtk_widget_show (deviceD->table); - deviceD->ids = g_new (guint32, deviceD->num_devices); + deviceD->devices = g_new (GdkDevice *, deviceD->num_devices); deviceD->frames = g_new (GtkWidget *, deviceD->num_devices); deviceD->tools = g_new (GtkWidget *, deviceD->num_devices); deviceD->foregrounds = g_new (GtkWidget *, deviceD->num_devices); @@ -789,7 +797,7 @@ device_status_create (void) device_info = (DeviceInfo *) list->data; - deviceD->ids[i] = device_info->device; + deviceD->devices[i] = device_info->device; /* the device name */ @@ -811,11 +819,10 @@ device_status_create (void) gimp_preview_new_full (GIMP_VIEWABLE (gimp_context_get_tool (device_info->context)), CELL_SIZE, CELL_SIZE, 0, FALSE, FALSE, TRUE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (device_info->context), - "tool_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (deviceD->tools[i])); + gtk_signal_connect_object_while_alive (GTK_OBJECT (device_info->context), + "tool_changed", + GTK_SIGNAL_FUNC (gimp_preview_set_viewable), + GTK_OBJECT (deviceD->tools[i])); gimp_gtk_drag_dest_set_by_type (deviceD->tools[i], GTK_DEST_DEFAULT_ALL, GIMP_TYPE_TOOL_INFO, @@ -823,7 +830,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->tools[i], GIMP_TYPE_TOOL_INFO, device_status_drop_tool, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->tools[i], 1, 2, i, i+1, 0, 0, 2, 2); @@ -838,7 +845,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->foregrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_foreground_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->foregrounds[i], 2, 3, i, i+1, @@ -854,7 +861,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->backgrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_background_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->backgrounds[i], 3, 4, i, i+1, @@ -878,7 +885,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->brushes[i], GIMP_TYPE_BRUSH, device_status_drop_brush, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->brushes[i], 4, 5, i, i+1, 0, 0, 2, 2); @@ -901,7 +908,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->patterns[i], GIMP_TYPE_PATTERN, device_status_drop_pattern, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->patterns[i], 5, 6, i, i+1, 0, 0, 2, 2); @@ -924,7 +931,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->gradients[i], GIMP_TYPE_GRADIENT, device_status_drop_gradient, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->gradients[i], 6, 7, i, i+1, 0, 0, 2, 2); @@ -932,7 +939,8 @@ device_status_create (void) device_status_update (device_info->device); } - deviceD->current = 0xffffffff; /* random, but doesn't matter */ + deviceD->current = NULL; + device_status_update_current (); gtk_signal_connect (GTK_OBJECT (deviceD->shell), "destroy", @@ -945,7 +953,7 @@ device_status_create (void) static void device_status_destroy_callback (void) { - g_free (deviceD->ids); + g_free (deviceD->devices); g_free (deviceD->frames); g_free (deviceD->tools); g_free (deviceD->foregrounds); @@ -985,10 +993,10 @@ device_status_update_current (void) { for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceD->current) + if (deviceD->devices[i] == deviceD->current) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_OUT); - else if (deviceD->ids[i] == current_device) + else if (deviceD->devices[i] == current_device) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_IN); } @@ -998,9 +1006,8 @@ device_status_update_current (void) } void -device_status_update (guint32 deviceid) +device_status_update (GdkDevice *device) { - GdkDeviceInfo *gdk_info; DeviceInfo *device_info; GimpRGB color; guchar red, green, blue; @@ -1010,21 +1017,18 @@ device_status_update (guint32 deviceid) if (!deviceD || suppress_update) return; - if ((device_info = device_info_get_by_id (deviceid)) == NULL) - return; - - if ((gdk_info = gdk_device_info_get_by_id (deviceid)) == NULL) + if ((device_info = device_info_get_by_device (device)) == NULL) return; for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceid) + if (deviceD->devices[i] == device) break; } g_return_if_fail (i < deviceD->num_devices); - if (gdk_info->mode == GDK_MODE_DISABLED) + if (device->mode == GDK_MODE_DISABLED) { gtk_widget_hide (deviceD->frames[i]); gtk_widget_hide (deviceD->tools[i]); @@ -1097,7 +1101,7 @@ device_status_drop_tool (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1112,7 +1116,7 @@ device_status_foreground_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1128,7 +1132,7 @@ device_status_background_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1144,7 +1148,7 @@ device_status_drop_brush (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1159,7 +1163,7 @@ device_status_drop_pattern (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1174,7 +1178,7 @@ device_status_drop_gradient (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1189,33 +1193,29 @@ device_status_data_changed (GimpContext *context, gpointer dummy, gpointer data) { - DeviceInfo *device_info; - - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); - - device_status_update (device_info->device); + device_status_update ((GdkDevice *) data); } static void device_status_context_connect (GimpContext *context, - guint32 deviceid) + GdkDevice *device) { gtk_signal_connect (GTK_OBJECT (context), "foreground_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "background_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "tool_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "brush_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "pattern_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "gradient_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); } diff --git a/app/gui/layer-select.c b/app/gui/layer-select.c index a382824aa7..cf50a5c0a4 100644 --- a/app/gui/layer-select.c +++ b/app/gui/layer-select.c @@ -158,7 +158,6 @@ layer_select_init (GimpImage *gimage, gtk_widget_show (layer_select->shell); } - gdk_key_repeat_disable (); gdk_keyboard_grab (layer_select->shell->window, FALSE, time); } @@ -241,7 +240,6 @@ static void layer_select_end (LayerSelect *layer_select, guint32 time) { - gdk_key_repeat_restore (); gdk_keyboard_ungrab (time); gtk_widget_hide (layer_select->shell); diff --git a/app/gui/layers-commands.c b/app/gui/layers-commands.c index 4a985f1475..68a61e2e90 100644 --- a/app/gui/layers-commands.c +++ b/app/gui/layers-commands.c @@ -640,8 +640,6 @@ layers_new_layer_query (GimpImage *gimage) /* The size sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); diff --git a/app/gui/menus.c b/app/gui/menus.c index 173c9cd075..d520eec191 100644 --- a/app/gui/menus.c +++ b/app/gui/menus.c @@ -1634,7 +1634,7 @@ menus_filters_subdirs_to_top (GtkMenu *menu) GtkWidget *separator; separator = gtk_menu_item_new (); - gtk_menu_insert (menu, separator, pos); + gtk_menu_shell_insert (GTK_MENU_SHELL (menu), separator, pos); gtk_widget_show (separator); } } @@ -2473,7 +2473,7 @@ menus_init (void) if (menu_item && menu_item->parent) { separator = gtk_menu_item_new (); - gtk_menu_insert (GTK_MENU (menu_item->parent), separator, pos); + gtk_menu_shell_insert (GTK_MENU_SHELL (menu_item->parent), separator, pos); gtk_widget_show (separator); } } diff --git a/app/gui/module-browser.c b/app/gui/module-browser.c index c6d73b0821..263515fc64 100644 --- a/app/gui/module-browser.c +++ b/app/gui/module-browser.c @@ -441,22 +441,20 @@ module_info_class_init (ModuleInfoClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); module_info_signals[MODIFIED] = - gtk_signal_new ("modified", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (ModuleInfoClass, - modified), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, module_info_signals, LAST_SIGNAL); + g_signal_new ("modified", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + GTK_SIGNAL_OFFSET (ModuleInfoClass, modified), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = module_info_destroy; - klass->modified = NULL; + klass->modified = NULL; } static void diff --git a/app/gui/offset-dialog.c b/app/gui/offset-dialog.c index d5646391ad..d42d2f5375 100644 --- a/app/gui/offset-dialog.c +++ b/app/gui/offset-dialog.c @@ -120,8 +120,6 @@ offset_dialog_create (GimpDrawable *drawable) /* The offset sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); diff --git a/app/gui/palette-editor.c b/app/gui/palette-editor.c index add46fbc29..0e8bf6c470 100644 --- a/app/gui/palette-editor.c +++ b/app/gui/palette-editor.c @@ -397,7 +397,7 @@ palette_editor_name_activate (GtkWidget *widget, PaletteEditor *palette_editor) { GimpPalette *palette; - gchar *entry_text; + const gchar *entry_text; palette = gimp_context_get_palette (palette_editor->context); @@ -425,14 +425,14 @@ palette_editor_create_popup_menu (PaletteEditor *palette_editor) palette_editor->popup_menu = menu = gtk_menu_new (); menu_item = gtk_menu_item_new_with_label (_("New")); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_signal_connect (GTK_OBJECT (menu_item), "activate", GTK_SIGNAL_FUNC (palette_editor_new_entry_callback), palette_editor); gtk_widget_show (menu_item); menu_item = gtk_menu_item_new_with_label (_("Edit")); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_signal_connect (GTK_OBJECT (menu_item), "activate", GTK_SIGNAL_FUNC (palette_editor_edit_entry_callback), @@ -445,7 +445,7 @@ palette_editor_create_popup_menu (PaletteEditor *palette_editor) gtk_signal_connect (GTK_OBJECT (menu_item), "activate", GTK_SIGNAL_FUNC (palette_editor_delete_entry_callback), palette_editor); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_widget_show (menu_item); palette_editor->delete_menu_item = menu_item; diff --git a/app/gui/palettes-commands.c b/app/gui/palettes-commands.c index 9ee5408a17..9f754da1e6 100644 --- a/app/gui/palettes-commands.c +++ b/app/gui/palettes-commands.c @@ -113,7 +113,7 @@ palettes_menu_set_sensitivity (GimpContainerEditor *editor) menus_set_sensitive ("/" menu, (condition) != 0) SET_SENSITIVE ("Duplicate Palette", - palette && GIMP_DATA_CLASS (GTK_OBJECT (palette)->klass)->duplicate); + palette && GIMP_DATA_GET_CLASS (palette)->duplicate); SET_SENSITIVE ("Edit Palette...", palette && GIMP_DATA_FACTORY_VIEW (editor)->data_edit_func); SET_SENSITIVE ("Delete Palette...", diff --git a/app/gui/patterns-commands.c b/app/gui/patterns-commands.c index 61796e600b..5aa7341e9a 100644 --- a/app/gui/patterns-commands.c +++ b/app/gui/patterns-commands.c @@ -69,7 +69,7 @@ patterns_menu_set_sensitivity (GimpContainerEditor *editor) menus_set_sensitive ("/" menu, (condition) != 0) SET_SENSITIVE ("Duplicate Pattern", - pattern && GIMP_DATA_CLASS (GTK_OBJECT (pattern)->klass)->duplicate); + pattern && GIMP_DATA_GET_CLASS (pattern)->duplicate); SET_SENSITIVE ("Edit Pattern...", pattern && GIMP_DATA_FACTORY_VIEW (editor)->data_edit_func); SET_SENSITIVE ("Delete Pattern...", diff --git a/app/gui/preferences-dialog.c b/app/gui/preferences-dialog.c index 123bca6a4c..7a0c751aa0 100644 --- a/app/gui/preferences-dialog.c +++ b/app/gui/preferences-dialog.c @@ -1718,6 +1718,10 @@ preferences_dialog_create (void) gtk_container_add (GTK_CONTAINER (frame), hbox); gtk_widget_show (hbox); +#ifdef __GNUC__ +#warning FIXME: replace GtkText +#endif +#if 0 text = gtk_text_new (NULL, NULL); gtk_text_set_editable (GTK_TEXT (text), TRUE); gtk_text_insert (GTK_TEXT (text), NULL, NULL, NULL, @@ -1727,6 +1731,7 @@ preferences_dialog_create (void) &the_gimp->config->default_comment); gtk_container_add (GTK_CONTAINER (hbox), text); gtk_widget_show (text); +#endif /* Display page */ vbox = prefs_notebook_append_page (GTK_NOTEBOOK (notebook), diff --git a/app/gui/resize-dialog.c b/app/gui/resize-dialog.c index e3975d89ef..119dabc2fe 100644 --- a/app/gui/resize-dialog.c +++ b/app/gui/resize-dialog.c @@ -104,16 +104,16 @@ static void resolution_update (Resize *resize, Resize * resize_widget_new (ResizeType type, ResizeTarget target, - GtkObject *object, - gchar *signal, + GObject *object, + const gchar *signal, gint width, gint height, gdouble resolution_x, gdouble resolution_y, GimpUnit unit, gboolean dot_for_dot, - GtkSignalFunc ok_cb, - GtkSignalFunc cancel_cb, + GCallback ok_cb, + GCallback cancel_cb, gpointer user_data) { Resize *resize; @@ -215,23 +215,23 @@ resize_widget_new (ResizeType type, NULL); - gtk_signal_connect_object (GTK_OBJECT (resize->resize_shell), "destroy", - GTK_SIGNAL_FUNC (g_free), - (GtkObject *) private); + g_signal_connect_swapped (G_OBJECT (resize->resize_shell), "destroy", + G_CALLBACK (g_free), + private); } /* handle the image disappearing under our feet */ if (object && signal) { if (cancel_cb) - gtk_signal_connect (GTK_OBJECT (object), signal, - cancel_cb, - user_data); + g_signal_connect (G_OBJECT (object), signal, + cancel_cb, + user_data); else - gtk_signal_connect_object_while_alive - (GTK_OBJECT (object), signal, - GTK_SIGNAL_FUNC (gtk_widget_destroy), - GTK_OBJECT (resize->resize_shell)); + g_signal_connect_object (G_OBJECT (object), signal, + G_CALLBACK (gtk_widget_destroy), + G_OBJECT (resize->resize_shell), + G_CONNECT_SWAPPED); } /* the main vbox */ @@ -298,8 +298,6 @@ resize_widget_new (ResizeType type, /* the new size sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); @@ -337,12 +335,12 @@ resize_widget_new (ResizeType type, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 1, height); - gtk_signal_connect (GTK_OBJECT (private->size_se), "value_changed", - GTK_SIGNAL_FUNC (size_callback), - resize); - gtk_signal_connect (GTK_OBJECT (private->size_se), "unit_changed", - GTK_SIGNAL_FUNC (orig_labels_update), - resize); + g_signal_connect (G_OBJECT (private->size_se), "value_changed", + G_CALLBACK (size_callback), + resize); + g_signal_connect (G_OBJECT (private->size_se), "unit_changed", + G_CALLBACK (orig_labels_update), + resize); /* initialize the original width & height labels */ orig_labels_update (private->size_se, resize); @@ -377,32 +375,30 @@ resize_widget_new (ResizeType type, (double) GIMP_MAX_IMAGE_SIZE / (double) resize->width, 0.01, 0.1, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (private->ratio_x_adj), 1, 4); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_table_attach_defaults (GTK_TABLE (table2), spinbutton, 0, 1, 0, 1); - gtk_signal_connect (GTK_OBJECT ( private->ratio_x_adj), "value_changed", - (GtkSignalFunc) ratio_callback, - resize); gtk_widget_show (spinbutton); + g_signal_connect (G_OBJECT ( private->ratio_x_adj), "value_changed", + G_CALLBACK (ratio_callback), + resize); + private->ratio_y_adj = gtk_adjustment_new (resize->ratio_y, (double) GIMP_MIN_IMAGE_SIZE / (double) resize->height, (double) GIMP_MAX_IMAGE_SIZE / (double) resize->height, 0.01, 0.1, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (private->ratio_y_adj), 1, 4); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_table_attach_defaults (GTK_TABLE (table2), spinbutton, 0, 1, 1, 2); - gtk_signal_connect (GTK_OBJECT ( private->ratio_y_adj), "value_changed", - (GtkSignalFunc) ratio_callback, - resize); gtk_widget_show (spinbutton); + g_signal_connect (G_OBJECT ( private->ratio_y_adj), "value_changed", + G_CALLBACK (ratio_callback), + resize); + /* the constrain ratio chainbutton */ private->constrain = gimp_chain_button_new (GIMP_CHAIN_RIGHT); gimp_chain_button_set_active (GIMP_CHAIN_BUTTON (private->constrain), TRUE); @@ -430,8 +426,6 @@ resize_widget_new (ResizeType type, /* the offset sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); @@ -468,9 +462,9 @@ resize_widget_new (ResizeType type, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->offset_se), 0, 0); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->offset_se), 1, 0); - gtk_signal_connect (GTK_OBJECT (private->offset_se), "value_changed", - GTK_SIGNAL_FUNC (offset_update), - resize); + g_signal_connect (G_OBJECT (private->offset_se), "value_changed", + G_CALLBACK (offset_update), + resize); gtk_widget_show (abox); @@ -484,11 +478,13 @@ resize_widget_new (ResizeType type, private->offset_area = gimp_offset_area_new (private->old_width, private->old_height); - gtk_signal_connect (GTK_OBJECT (private->offset_area), "offsets_changed", - GTK_SIGNAL_FUNC (offset_area_offsets_changed), - resize); gtk_container_add (GTK_CONTAINER (frame), private->offset_area); gtk_widget_show (private->offset_area); + + g_signal_connect (G_OBJECT (private->offset_area), "offsets_changed", + G_CALLBACK (offset_area_offsets_changed), + resize); + gtk_widget_show (frame); gtk_widget_show (abox); gtk_widget_show (vbox); @@ -527,8 +523,6 @@ resize_widget_new (ResizeType type, abox = gtk_alignment_new (0.0, 0.5, 0.0, 1.0); adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_container_add (GTK_CONTAINER (abox), spinbutton); @@ -566,12 +560,12 @@ resize_widget_new (ResizeType type, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->printsize_se), 1, resize->height); - gtk_signal_connect (GTK_OBJECT (private->printsize_se), "value_changed", - GTK_SIGNAL_FUNC (printsize_update), - resize); - gtk_signal_connect (GTK_OBJECT (private->printsize_se), "unit_changed", - GTK_SIGNAL_FUNC (unit_update), - resize); + g_signal_connect (G_OBJECT (private->printsize_se), "value_changed", + G_CALLBACK (printsize_update), + resize); + g_signal_connect (G_OBJECT (private->printsize_se), "unit_changed", + G_CALLBACK (unit_update), + resize); /* the resolution labels */ label = gtk_label_new (_("Resolution X:")); @@ -589,8 +583,6 @@ resize_widget_new (ResizeType type, /* the resolution sizeentry */ adjustment = gtk_adjustment_new (1, 1, 1, 1, 10, 1); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 2); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); @@ -622,9 +614,9 @@ resize_widget_new (ResizeType type, gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 1, resize->resolution_y); - gtk_signal_connect (GTK_OBJECT (private->resolution_se), "value_changed", - GTK_SIGNAL_FUNC (resolution_callback), - resize); + g_signal_connect (G_OBJECT (private->resolution_se), "value_changed", + G_CALLBACK (resolution_callback), + resize); /* the resolution chainbutton */ private->equal_res = gimp_chain_button_new (GIMP_CHAIN_RIGHT); @@ -874,16 +866,20 @@ size_update (Resize *resize, resize->width, resize->height); gtk_signal_handler_block_by_data (GTK_OBJECT (private->size_se), resize); + gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 1, height); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->size_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->ratio_x_adj), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->ratio_y_adj), resize); + gtk_adjustment_set_value (GTK_ADJUSTMENT (private->ratio_x_adj), ratio_x); gtk_adjustment_set_value (GTK_ADJUSTMENT (private->ratio_y_adj), ratio_y); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->ratio_x_adj), resize); gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->ratio_y_adj), resize); @@ -903,10 +899,12 @@ size_update (Resize *resize, { gtk_signal_handler_block_by_data (GTK_OBJECT (private->printsize_se), resize); + gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->printsize_se), 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->printsize_se), 1, height); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->printsize_se), resize); } @@ -983,14 +981,17 @@ printsize_update (GtkWidget *widget, resize->resolution_y = res_y; gtk_signal_handler_block_by_data (GTK_OBJECT (private->resolution_se), resize); + gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 0, res_x); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 1, res_y); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->resolution_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->size_se), resize); + gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->size_se), 0, res_x, TRUE); gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->size_se), @@ -999,9 +1000,11 @@ printsize_update (GtkWidget *widget, 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->size_se), 1, height); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->size_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->printsize_se), resize); + gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->printsize_se), 0, res_x, TRUE); gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->printsize_se), @@ -1010,6 +1013,7 @@ printsize_update (GtkWidget *widget, 0, width); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->printsize_se), 1, height); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->printsize_se), resize); } @@ -1061,25 +1065,31 @@ resolution_update (Resize *resize, resize->resolution_y = res_y; gtk_signal_handler_block_by_data (GTK_OBJECT (private->resolution_se), resize); + gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 0, res_x); gimp_size_entry_set_refval (GIMP_SIZE_ENTRY (private->resolution_se), 1, res_y); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->resolution_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->size_se), resize); + gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->size_se), 0, res_x, TRUE); gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->size_se), 1, res_y, TRUE); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->size_se), resize); gtk_signal_handler_block_by_data (GTK_OBJECT (private->printsize_se), resize); + gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->printsize_se), 0, res_x, TRUE); gimp_size_entry_set_resolution (GIMP_SIZE_ENTRY (private->printsize_se), 1, res_y, TRUE); + gtk_signal_handler_unblock_by_data (GTK_OBJECT (private->printsize_se), resize); } diff --git a/app/gui/resize-dialog.h b/app/gui/resize-dialog.h index d824b333a8..7dc0c6169c 100644 --- a/app/gui/resize-dialog.h +++ b/app/gui/resize-dialog.h @@ -73,16 +73,16 @@ typedef struct Resize * resize_widget_new (ResizeType type, ResizeTarget target, - GtkObject *object, - gchar *signal, + GObject *object, + const gchar *signal, gint width, gint height, gdouble resolution_x, gdouble resolution_y, GimpUnit unit, gboolean dot_for_dot, - GtkSignalFunc ok_cb, - GtkSignalFunc cancel_cb, + GCallback ok_cb, + GCallback cancel_cb, gpointer user_data); diff --git a/app/gui/splash.c b/app/gui/splash.c index 34ac66bbc1..60f9b966c1 100644 --- a/app/gui/splash.c +++ b/app/gui/splash.c @@ -78,7 +78,9 @@ splash_create (void) GtkWidget *logo_hbox; GtkStyle *style; - win_initstatus = gtk_window_new (GTK_WINDOW_DIALOG); + win_initstatus = gtk_window_new (GTK_WINDOW_TOPLEVEL); + gtk_window_set_type_hint (GTK_WINDOW (win_initstatus), + GDK_WINDOW_TYPE_HINT_DIALOG); gtk_window_set_title (GTK_WINDOW (win_initstatus), _("GIMP Startup")); gtk_window_set_wmclass (GTK_WINDOW (win_initstatus), "gimp_startup", "Gimp"); diff --git a/app/gui/tips-dialog.c b/app/gui/tips-dialog.c index 2a000d222c..340860a810 100644 --- a/app/gui/tips-dialog.c +++ b/app/gui/tips-dialog.c @@ -89,7 +89,9 @@ tips_dialog_create (void) if (tips_dialog) return tips_dialog; - tips_dialog = gtk_window_new (GTK_WINDOW_DIALOG); + tips_dialog = gtk_window_new (GTK_WINDOW_TOPLEVEL); + gtk_window_set_type_hint (GTK_WINDOW (tips_dialog), + GDK_WINDOW_TYPE_HINT_DIALOG); gtk_window_set_wmclass (GTK_WINDOW (tips_dialog), "tip_of_the_day", "Gimp"); gtk_window_set_title (GTK_WINDOW (tips_dialog), _("GIMP Tip of the Day")); gtk_window_set_position (GTK_WINDOW (tips_dialog), GTK_WIN_POS_CENTER); diff --git a/app/gui/tool-options-dialog.c b/app/gui/tool-options-dialog.c index 11d9e78543..2b4e34f061 100644 --- a/app/gui/tool-options-dialog.c +++ b/app/gui/tool-options-dialog.c @@ -295,7 +295,7 @@ tool_options_dialog_reset_callback (GtkWidget *widget, { g_warning ("%s(): no tool info registered for %s", G_GNUC_FUNCTION, - gtk_type_name (GTK_OBJECT (active_tool)->klass->type)); + g_type_name (G_TYPE_FROM_INSTANCE (active_tool))); } if (tool_info->tool_options->reset_func) diff --git a/app/gui/toolbox.c b/app/gui/toolbox.c index 2697953a80..66ecc341db 100644 --- a/app/gui/toolbox.c +++ b/app/gui/toolbox.c @@ -362,9 +362,9 @@ toolbox_create (void) * device would change to that and not change back. So we check * manually that all devices have a cursor, before establishing the check. */ - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - if (! ((GdkDeviceInfo *) (list->data))->has_cursor) + if (! ((GdkDevice *) (list->data))->has_cursor) break; } @@ -401,7 +401,6 @@ toolbox_create (void) gtk_wrap_box_set_line_justify (GTK_WRAP_BOX (wbox), GTK_JUSTIFY_LEFT); /* magic number to set a default 5x5 layout */ gtk_wrap_box_set_aspect_ratio (GTK_WRAP_BOX (wbox), 5.0 / 5.9); - gtk_container_set_border_width (GTK_CONTAINER (wbox), 0); gtk_box_pack_start (GTK_BOX (main_vbox), wbox, TRUE, TRUE, 0); gtk_widget_show (wbox); @@ -456,17 +455,13 @@ toolbox_style_set_callback (GtkWidget *window, { GdkGeometry geometry; GtkStyle *style; - gint xthickness; - gint ythickness; style = gtk_widget_get_style (window); - xthickness = ((GtkStyleClass *) style->klass)->xthickness; - ythickness = ((GtkStyleClass *) style->klass)->ythickness; - - geometry.min_width = 2 + 24 + 2 * xthickness; - geometry.min_height = 80 + 24 + 2 * ythickness; - geometry.width_inc = 24 + 2 * xthickness; - geometry.height_inc = 24 + 2 * ythickness; + + geometry.min_width = 2 + 26 + 2 * style->xthickness; + geometry.min_height = 80 + 26 + 2 * style->ythickness; + geometry.width_inc = 26 + 2 * style->xthickness; + geometry.height_inc = 26 + 2 * style->ythickness; gtk_window_set_geometry_hints (GTK_WINDOW (window), NULL, diff --git a/app/gui/tools-commands.c b/app/gui/tools-commands.c index 2f1a7f7801..d598774384 100644 --- a/app/gui/tools-commands.c +++ b/app/gui/tools-commands.c @@ -109,7 +109,7 @@ tools_select_cmd_callback (GtkWidget *widget, /* Complete the initialisation by doing the same stuff * tools_initialize() does after it did what tools_select() does */ - if (GIMP_TOOL_CLASS (GTK_OBJECT (active_tool)->klass)->initialize) + if (GIMP_TOOL_GET_CLASS (active_tool)->initialize) { gimp_tool_initialize (active_tool, gdisp); diff --git a/app/gui/user-install-dialog.c b/app/gui/user-install-dialog.c index 522db344ad..9845b52200 100644 --- a/app/gui/user-install-dialog.c +++ b/app/gui/user-install-dialog.c @@ -582,8 +582,10 @@ user_install_dialog_create (Gimp *gimp) footer_label = gtk_label_new (NULL); PAGE_STYLE (footer_label); gtk_label_set_justify (GTK_LABEL (footer_label), GTK_JUSTIFY_RIGHT); - gtk_box_pack_end (GTK_BOX (GTK_DIALOG (dialog)->action_area), footer_label, - FALSE, FALSE, 8); + gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->action_area), footer_label, + FALSE, FALSE, 8); + gtk_box_reorder_child (GTK_BOX (GTK_DIALOG (dialog)->action_area), + footer_label, 0); gtk_widget_show (footer_label); vbox = gtk_vbox_new (FALSE, 0); @@ -1014,21 +1016,34 @@ user_install_run (void) vadj = GTK_ADJUSTMENT (gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0)); vsb = gtk_vscrollbar_new (vadj); +#if 0 log_text = gtk_text_new (NULL, vadj); +#endif gtk_table_attach (GTK_TABLE (table), vsb, 1, 2, 0, 1, GTK_FILL, GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); +#if 0 gtk_table_attach (GTK_TABLE (table), log_text, 0, 1, 0, 1, GTK_EXPAND | GTK_SHRINK | GTK_FILL, GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); +#endif gtk_widget_show (vsb); +#if 0 gtk_widget_show (log_text); +#endif gtk_widget_show (table); while (fgets (buffer, sizeof (buffer), pfp)) - gtk_text_insert (GTK_TEXT (log_text), NULL, NULL, NULL, buffer, -1); + { +#ifdef __GNUC__ +#warning FIXME: replace GtkText +#endif +#if 0 + gtk_text_insert (GTK_TEXT (log_text), NULL, NULL, NULL, buffer, -1); +#endif + } pclose (pfp); add_label (GTK_BOX (log_page), diff --git a/app/interface.c b/app/interface.c index a1355871e7..5be3d0c9ea 100644 --- a/app/interface.c +++ b/app/interface.c @@ -337,7 +337,7 @@ create_display_shell (GDisplay *gdisp, gtk_widget_set_events (GTK_WIDGET (gdisp->hrule), GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); gtk_signal_connect_object (GTK_OBJECT (gdisp->shell), "motion_notify_event", - GTK_SIGNAL_FUNC (GTK_WIDGET_CLASS (GTK_OBJECT (gdisp->hrule)->klass)->motion_notify_event), + GTK_SIGNAL_FUNC (GTK_WIDGET_GET_CLASS (gdisp->hrule)->motion_notify_event), GTK_OBJECT (gdisp->hrule)); gtk_signal_connect (GTK_OBJECT (gdisp->hrule), "button_press_event", GTK_SIGNAL_FUNC (gdisplay_hruler_button_press), @@ -350,7 +350,7 @@ create_display_shell (GDisplay *gdisp, gtk_widget_set_events (GTK_WIDGET (gdisp->vrule), GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); gtk_signal_connect_object (GTK_OBJECT (gdisp->shell), "motion_notify_event", - GTK_SIGNAL_FUNC (GTK_WIDGET_CLASS (GTK_OBJECT (gdisp->vrule)->klass)->motion_notify_event), + GTK_SIGNAL_FUNC (GTK_WIDGET_GET_CLASS (gdisp->vrule)->motion_notify_event), GTK_OBJECT (gdisp->vrule)); gtk_signal_connect (GTK_OBJECT (gdisp->vrule), "button_press_event", GTK_SIGNAL_FUNC (gdisplay_vruler_button_press), diff --git a/app/menus/menus.c b/app/menus/menus.c index 173c9cd075..d520eec191 100644 --- a/app/menus/menus.c +++ b/app/menus/menus.c @@ -1634,7 +1634,7 @@ menus_filters_subdirs_to_top (GtkMenu *menu) GtkWidget *separator; separator = gtk_menu_item_new (); - gtk_menu_insert (menu, separator, pos); + gtk_menu_shell_insert (GTK_MENU_SHELL (menu), separator, pos); gtk_widget_show (separator); } } @@ -2473,7 +2473,7 @@ menus_init (void) if (menu_item && menu_item->parent) { separator = gtk_menu_item_new (); - gtk_menu_insert (GTK_MENU (menu_item->parent), separator, pos); + gtk_menu_shell_insert (GTK_MENU_SHELL (menu_item->parent), separator, pos); gtk_widget_show (separator); } } diff --git a/app/module_db.c b/app/module_db.c index c6d73b0821..263515fc64 100644 --- a/app/module_db.c +++ b/app/module_db.c @@ -441,22 +441,20 @@ module_info_class_init (ModuleInfoClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); module_info_signals[MODIFIED] = - gtk_signal_new ("modified", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (ModuleInfoClass, - modified), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, module_info_signals, LAST_SIGNAL); + g_signal_new ("modified", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + GTK_SIGNAL_OFFSET (ModuleInfoClass, modified), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = module_info_destroy; - klass->modified = NULL; + klass->modified = NULL; } static void diff --git a/app/nav_window.c b/app/nav_window.c index 7249afa92a..06c36e70e4 100644 --- a/app/nav_window.c +++ b/app/nav_window.c @@ -530,7 +530,9 @@ nav_popup_click_handler (GtkWidget *widget, x = (x + nav_dialog->pwidth > scr_w) ? scr_w - nav_dialog->pwidth - 2: x; y = (y + nav_dialog->pheight > scr_h) ? scr_h - nav_dialog->pheight - 2: y; - gtk_widget_popup (nav_dialog->shell, x, y); + gtk_widget_set_uposition (nav_dialog->shell, x, y); + gtk_widget_show (nav_dialog->shell); + gdk_flush(); /* fill in then set up handlers for mouse motion etc */ diff --git a/app/ops_buttons.c b/app/ops_buttons.c index b8743cad7a..e0d08b313c 100644 --- a/app/ops_buttons.c +++ b/app/ops_buttons.c @@ -132,6 +132,10 @@ ops_button_extended_clicked (GtkWidget *widget, else modifier = OPS_BUTTON_MODIFIER_NONE; +#ifdef __GNUC__ +#warning FIXME: remove ops_buttons +#endif +#if 0 if (modifier > OPS_BUTTON_MODIFIER_NONE && modifier < OPS_BUTTON_MODIFIER_LAST) { @@ -142,4 +146,5 @@ ops_button_extended_clicked (GtkWidget *widget, } else (ops_button->callback) (widget, NULL); +#endif } diff --git a/app/paint/gimpairbrush.h b/app/paint/gimpairbrush.h index 81779fe145..0e903eb867 100644 --- a/app/paint/gimpairbrush.h +++ b/app/paint/gimpairbrush.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_AIRBRUSH_TOOL (gimp_airbrush_tool_get_type ()) -#define GIMP_AIRBRUSH_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_AIRBRUSH_TOOL, GimpAirbrushTool)) -#define GIMP_IS_AIRBRUSH_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_AIRBRUSH_TOOL)) -#define GIMP_AIRBRUSH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_AIRBRUSH_TOOL, GimpAirbrushToolClass)) -#define GIMP_IS_AIRBRUSH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_AIRBRUSH_TOOL)) +#define GIMP_AIRBRUSH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_AIRBRUSH_TOOL, GimpAirbrushTool)) +#define GIMP_IS_AIRBRUSH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_AIRBRUSH_TOOL)) +#define GIMP_AIRBRUSH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_AIRBRUSH_TOOL, GimpAirbrushToolClass)) +#define GIMP_IS_AIRBRUSH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_AIRBRUSH_TOOL)) typedef struct _GimpAirbrushTool GimpAirbrushTool; diff --git a/app/paint/gimpclone.c b/app/paint/gimpclone.c index 8df6c9d433..77d21f81c9 100644 --- a/app/paint/gimpclone.c +++ b/app/paint/gimpclone.c @@ -807,7 +807,7 @@ clone_options_new (void) vbox = ((GimpToolOptions *) options)->main_vbox; frame = gimp_radio_group_new2 (TRUE, _("Source"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->type, (gpointer) options->type, _("Image Source"), (gpointer) IMAGE_CLONE, @@ -821,7 +821,7 @@ clone_options_new (void) gtk_widget_show (frame); frame = gimp_radio_group_new2 (TRUE, _("Alignment"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->aligned, (gpointer) options->aligned, _("Non Aligned"), (gpointer) ALIGN_NO, diff --git a/app/paint/gimpclone.h b/app/paint/gimpclone.h index 15ce1359fd..c1debe09c5 100644 --- a/app/paint/gimpclone.h +++ b/app/paint/gimpclone.h @@ -31,10 +31,10 @@ typedef enum #define GIMP_TYPE_CLONE_TOOL (gimp_clone_tool_get_type ()) -#define GIMP_CLONE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CLONE_TOOL, GimpCloneTool)) -#define GIMP_IS_CLONE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CLONE_TOOL)) -#define GIMP_CLONE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CLONE_TOOL, GimpCloneToolClass)) -#define GIMP_IS_CLONE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CLONE_TOOL)) +#define GIMP_CLONE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CLONE_TOOL, GimpCloneTool)) +#define GIMP_IS_CLONE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CLONE_TOOL)) +#define GIMP_CLONE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CLONE_TOOL, GimpCloneToolClass)) +#define GIMP_IS_CLONE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CLONE_TOOL)) typedef struct _GimpCloneTool GimpCloneTool; diff --git a/app/paint/gimpconvolve.c b/app/paint/gimpconvolve.c index b41bd64d59..c9428fc5a1 100644 --- a/app/paint/gimpconvolve.c +++ b/app/paint/gimpconvolve.c @@ -748,7 +748,7 @@ convolve_options_new (void) gtk_widget_show (hbox); frame = gimp_radio_group_new2 (TRUE, _("Convolve Type"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->type, (gpointer) options->type, _("Blur"), (gpointer) BLUR_CONVOLVE, diff --git a/app/paint/gimpconvolve.h b/app/paint/gimpconvolve.h index 1662b3e344..4aaf9b1f33 100644 --- a/app/paint/gimpconvolve.h +++ b/app/paint/gimpconvolve.h @@ -32,10 +32,10 @@ typedef enum #define GIMP_TYPE_CONVOLVE_TOOL (gimp_convolve_tool_get_type ()) -#define GIMP_CONVOLVE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONVOLVE_TOOL, GimpConvolveTool)) -#define GIMP_IS_CONVOLVE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONVOLVE_TOOL)) -#define GIMP_CONVOLVE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONVOLVE_TOOL, GimpConvolveToolClass)) -#define GIMP_IS_CONVOLVE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONVOLVE_TOOL)) +#define GIMP_CONVOLVE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONVOLVE_TOOL, GimpConvolveTool)) +#define GIMP_IS_CONVOLVE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONVOLVE_TOOL)) +#define GIMP_CONVOLVE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONVOLVE_TOOL, GimpConvolveToolClass)) +#define GIMP_IS_CONVOLVE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONVOLVE_TOOL)) typedef struct _GimpConvolveTool GimpConvolveTool; diff --git a/app/paint/gimpdodgeburn.c b/app/paint/gimpdodgeburn.c index ab140f9afa..c4da6b1df4 100644 --- a/app/paint/gimpdodgeburn.c +++ b/app/paint/gimpdodgeburn.c @@ -686,8 +686,9 @@ gimp_dodgeburn_tool_options_new (void) /* the type (dodge or burn) */ frame = gimp_radio_group_new2 (TRUE, _("Type"), - gimp_radio_button_update, - &options->type, (gpointer) options->type, + G_CALLBACK (gimp_radio_button_update), + &options->type, + (gpointer) options->type, _("Dodge"), (gpointer) DODGE, &options->type_w[0], @@ -702,8 +703,9 @@ gimp_dodgeburn_tool_options_new (void) /* mode (highlights, midtones, or shadows) */ frame = gimp_radio_group_new2 (TRUE, _("Mode"), - gimp_radio_button_update, - &options->mode, (gpointer) options->mode, + G_CALLBACK (gimp_radio_button_update), + &options->mode, + (gpointer) options->mode, _("Highlights"), (gpointer) DODGEBURN_HIGHLIGHTS, &options->mode_w[0], diff --git a/app/paint/gimpdodgeburn.h b/app/paint/gimpdodgeburn.h index f7234d93ba..8049f6fd7a 100644 --- a/app/paint/gimpdodgeburn.h +++ b/app/paint/gimpdodgeburn.h @@ -38,10 +38,10 @@ typedef enum #define GIMP_TYPE_DODGEBURN_TOOL (gimp_dodgeburn_tool_get_type ()) -#define GIMP_DODGEBURN_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DODGEBURN_TOOL, GimpDodgeBurnTool)) -#define GIMP_IS_DODGEBURN_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DODGEBURN_TOOL)) -#define GIMP_DODGEBURN_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DODGEBURN_TOOL, GimpDodgeBurnToolClass)) -#define GIMP_IS_DODGEBURN_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DODGEBURN_TOOL)) +#define GIMP_DODGEBURN_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DODGEBURN_TOOL, GimpDodgeBurnTool)) +#define GIMP_IS_DODGEBURN_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DODGEBURN_TOOL)) +#define GIMP_DODGEBURN_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DODGEBURN_TOOL, GimpDodgeBurnToolClass)) +#define GIMP_IS_DODGEBURN_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DODGEBURN_TOOL)) typedef struct _GimpDodgeBurnTool GimpDodgeBurnTool; diff --git a/app/paint/gimperaser.h b/app/paint/gimperaser.h index b325bc9e96..5799d2f15b 100644 --- a/app/paint/gimperaser.h +++ b/app/paint/gimperaser.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_ERASER_TOOL (gimp_eraser_tool_get_type ()) -#define GIMP_ERASER_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_ERASER_TOOL, GimpEraserTool)) -#define GIMP_IS_ERASER_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_ERASER_TOOL)) -#define GIMP_ERASER_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ERASER_TOOL, GimpEraserToolClass)) -#define GIMP_IS_ERASER_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ERASER_TOOL)) +#define GIMP_ERASER_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_ERASER_TOOL, GimpEraserTool)) +#define GIMP_IS_ERASER_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_ERASER_TOOL)) +#define GIMP_ERASER_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ERASER_TOOL, GimpEraserToolClass)) +#define GIMP_IS_ERASER_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ERASER_TOOL)) typedef struct _GimpEraserTool GimpEraserTool; diff --git a/app/paint/gimpink.c b/app/paint/gimpink.c index c8ff2a63b6..69f193a824 100644 --- a/app/paint/gimpink.c +++ b/app/paint/gimpink.c @@ -423,9 +423,10 @@ ink_options_new (void) _("Size:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->size_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->size); + + g_signal_connect (G_OBJECT (options->size_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->size); /* angle adjust slider */ options->tilt_angle_w = @@ -436,9 +437,10 @@ ink_options_new (void) _("Angle:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->tilt_angle_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->tilt_angle); + + g_signal_connect (G_OBJECT (options->tilt_angle_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->tilt_angle); /* sens sliders */ frame = gtk_frame_new (_("Sensitivity")); @@ -461,9 +463,10 @@ ink_options_new (void) _("Size:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->sensitivity_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->sensitivity); + + g_signal_connect (G_OBJECT (options->sensitivity_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->sensitivity); /* tilt sens slider */ options->tilt_sensitivity_w = @@ -474,9 +477,10 @@ ink_options_new (void) _("Tilt:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->tilt_sensitivity_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->tilt_sensitivity); + + g_signal_connect (G_OBJECT (options->tilt_sensitivity_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->tilt_sensitivity); /* velocity sens slider */ options->vel_sensitivity_w = @@ -487,9 +491,10 @@ ink_options_new (void) _("Speed:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->vel_sensitivity_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->vel_sensitivity); + + g_signal_connect (G_OBJECT (options->vel_sensitivity_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->vel_sensitivity); /* bottom hbox */ hbox = gtk_hbox_new (FALSE, 2); @@ -518,13 +523,14 @@ ink_options_new (void) gtk_misc_set_padding (GTK_MISC (pixmap_widget), 6, 0); radio_button = gtk_radio_button_new (NULL); - gtk_signal_connect (GTK_OBJECT (radio_button), "toggled", - GTK_SIGNAL_FUNC (ink_type_update), - (gpointer)blob_ellipse); - gtk_container_add (GTK_CONTAINER (radio_button), pixmap_widget); gtk_box_pack_start (GTK_BOX (vbox), radio_button, FALSE, FALSE, 0); + g_signal_connect (G_OBJECT (radio_button), "toggled", + G_CALLBACK (ink_type_update), + (gpointer) blob_ellipse); + + options->function_w[0] = radio_button; pixmap = blob_pixmap (gtk_widget_get_colormap (vbox), @@ -537,13 +543,14 @@ ink_options_new (void) radio_button = gtk_radio_button_new_from_widget (GTK_RADIO_BUTTON (radio_button)); - gtk_signal_connect (GTK_OBJECT (radio_button), "toggled", - GTK_SIGNAL_FUNC (ink_type_update), - (gpointer)blob_square); - gtk_container_add (GTK_CONTAINER (radio_button), pixmap_widget); gtk_box_pack_start (GTK_BOX (vbox), radio_button, FALSE, FALSE, 0); + g_signal_connect (G_OBJECT (radio_button), "toggled", + G_CALLBACK (ink_type_update), + (gpointer) blob_square); + + options->function_w[1] = radio_button; pixmap = blob_pixmap (gtk_widget_get_colormap (vbox), @@ -556,13 +563,14 @@ ink_options_new (void) radio_button = gtk_radio_button_new_from_widget (GTK_RADIO_BUTTON (radio_button)); - gtk_signal_connect (GTK_OBJECT (radio_button), "toggled", - GTK_SIGNAL_FUNC (ink_type_update), - (gpointer)blob_diamond); - gtk_container_add (GTK_CONTAINER (radio_button), pixmap_widget); gtk_box_pack_start (GTK_BOX (vbox), radio_button, FALSE, FALSE, 0); + g_signal_connect (G_OBJECT (radio_button), "toggled", + G_CALLBACK (ink_type_update), + (gpointer) blob_diamond); + + options->function_w[2] = radio_button; /* Brush shape widget */ @@ -591,21 +599,22 @@ ink_options_new (void) gtk_widget_set_events (darea, GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_POINTER_MOTION_MASK | GDK_EXPOSURE_MASK); - gtk_signal_connect (GTK_OBJECT (darea), "button_press_event", - GTK_SIGNAL_FUNC (brush_widget_button_press), - options->brush_w); - gtk_signal_connect (GTK_OBJECT (darea), "button_release_event", - GTK_SIGNAL_FUNC (brush_widget_button_release), - options->brush_w); - gtk_signal_connect (GTK_OBJECT (darea), "motion_notify_event", - GTK_SIGNAL_FUNC (brush_widget_motion_notify), - options->brush_w); - gtk_signal_connect (GTK_OBJECT (darea), "expose_event", - GTK_SIGNAL_FUNC (brush_widget_expose), - options->brush_w); - gtk_signal_connect (GTK_OBJECT (darea), "realize", - GTK_SIGNAL_FUNC (brush_widget_realize), - options->brush_w); + + g_signal_connect (G_OBJECT (darea), "button_press_event", + G_CALLBACK (brush_widget_button_press), + options->brush_w); + g_signal_connect (G_OBJECT (darea), "button_release_event", + G_CALLBACK (brush_widget_button_release), + options->brush_w); + g_signal_connect (G_OBJECT (darea), "motion_notify_event", + G_CALLBACK (brush_widget_motion_notify), + options->brush_w); + g_signal_connect (G_OBJECT (darea), "expose_event", + G_CALLBACK (brush_widget_expose), + options->brush_w); + g_signal_connect (G_OBJECT (darea), "realize", + G_CALLBACK (brush_widget_realize), + options->brush_w); gtk_widget_show_all (hbox); @@ -942,8 +951,12 @@ ink_button_press (GimpTool *tool, tool->gdisp = gdisp; tool->state = ACTIVE; - b = ink_pen_ellipse (x, y, - bevent->pressure, bevent->xtilt, bevent->ytilt, 10.0); +#warning FIXME: presure, tilt + + b = ink_pen_ellipse (x, y, + 0, 0, 0, + /* bevent->pressure, bevent->xtilt, bevent->ytilt, */ + 10.0); ink_paste (ink_tool, drawable, b); ink_tool->last_blob = b; @@ -1124,10 +1137,15 @@ ink_motion (GimpTool *tool, ink_tool->lastx = x; ink_tool->lasty = y; - pressure = mevent->pressure; +#warning FIXME: tilt, pressure + + pressure = 0; /* mevent->pressure; */ velocity = 10.0 * sqrt ((dist) / (double) (thistime - lasttime)); - - b = ink_pen_ellipse (x, y, pressure, mevent->xtilt, mevent->ytilt, velocity); + +#warning FIXME: tilt, pressure + + b = ink_pen_ellipse (x, y, pressure, 0, 0, + /* mevent->xtilt, mevent->ytilt, */ velocity); blob_union = blob_convex_union (ink_tool->last_blob, b); g_free (ink_tool->last_blob); ink_tool->last_blob = b; diff --git a/app/paint/gimpink.h b/app/paint/gimpink.h index b884a01a43..ee35fdf9c1 100644 --- a/app/paint/gimpink.h +++ b/app/paint/gimpink.h @@ -29,10 +29,10 @@ #define GIMP_TYPE_INK_TOOL (gimp_ink_tool_get_type ()) -#define GIMP_INK_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_INK_TOOL, GimpInkTool)) -#define GIMP_IS_INK_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_INK_TOOL)) -#define GIMP_INK_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_INK_TOOL, GimpInkToolClass)) -#define GIMP_IS_INK_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_INK_TOOL)) +#define GIMP_INK_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_INK_TOOL, GimpInkTool)) +#define GIMP_IS_INK_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_INK_TOOL)) +#define GIMP_INK_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_INK_TOOL, GimpInkToolClass)) +#define GIMP_IS_INK_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_INK_TOOL)) typedef struct _GimpInkTool GimpInkTool; diff --git a/app/paint/gimppaintbrush.h b/app/paint/gimppaintbrush.h index a7daacf4fb..2fae0ea596 100644 --- a/app/paint/gimppaintbrush.h +++ b/app/paint/gimppaintbrush.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_PAINTBRUSH_TOOL (gimp_paintbrush_tool_get_type ()) -#define GIMP_PAINTBRUSH_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PAINTBRUSH_TOOL, GimpPaintbrushTool)) -#define GIMP_IS_PAINTBRUSH_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PAINTBRUSH_TOOL)) -#define GIMP_PAINTBRUSH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINTBRUSH_TOOL, GimpPaintbrushToolClass)) -#define GIMP_IS_PAINTBRUSH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINTBRUSH_TOOL)) +#define GIMP_PAINTBRUSH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PAINTBRUSH_TOOL, GimpPaintbrushTool)) +#define GIMP_IS_PAINTBRUSH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PAINTBRUSH_TOOL)) +#define GIMP_PAINTBRUSH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINTBRUSH_TOOL, GimpPaintbrushToolClass)) +#define GIMP_IS_PAINTBRUSH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINTBRUSH_TOOL)) typedef struct _GimpPaintbrushTool GimpPaintbrushTool; diff --git a/app/paint/gimppaintcore.c b/app/paint/gimppaintcore.c index 102bb77a0b..2bec9afda4 100644 --- a/app/paint/gimppaintcore.c +++ b/app/paint/gimppaintcore.c @@ -44,6 +44,7 @@ #include "core/gimpgradient.h" #include "core/gimpimage.h" #include "core/gimpimage-mask.h" +#include "core/gimpmarshal.h" #include "gimpdrawtool.h" #include "gimpdodgeburntool.h" @@ -244,21 +245,18 @@ gimp_paint_tool_class_init (GimpPaintToolClass *klass) tool_class = (GimpToolClass *) klass; draw_tool_class = (GimpDrawToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAW_TOOL); + parent_class = g_type_class_peek_parent (klass); gimp_paint_tool_signals[PAINT] = - gtk_signal_new ("paint", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPaintToolClass, - paint), - gtk_marshal_NONE__POINTER_INT, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_paint_tool_signals, - LAST_SIGNAL); + g_signal_new ("paint", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPaintToolClass, paint), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_INT, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_INT); object_class->destroy = gimp_paint_tool_destroy; @@ -352,9 +350,11 @@ gimp_paint_tool_button_press (GimpTool *tool, draw_line = FALSE; - paint_tool->curpressure = bevent->pressure; - paint_tool->curxtilt = bevent->xtilt; - paint_tool->curytilt = bevent->ytilt; +#warning FIXME tilt, pressure + + paint_tool->curpressure = 0; /* bevent->pressure; */ + paint_tool->curxtilt = 0; /* bevent->xtilt; */ + paint_tool->curytilt = 0; /* bevent->ytilt; */ paint_tool->state = bevent->state; if (gdisp != tool->gdisp || @@ -473,13 +473,11 @@ gimp_paint_tool_button_press (GimpTool *tool, */ if (paint_tool->lastx != paint_tool->curx || paint_tool->lasty != paint_tool->cury - || (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->want_null_motion) (paint_tool)) + || GIMP_BRUSH_GET_CLASS (paint_tool->brush)->want_null_motion (paint_tool)) { if (paint_tool->flags & TOOL_CAN_HANDLE_CHANGING_BRUSH) paint_tool->brush = - (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->select_brush) (paint_tool); + GIMP_BRUSH_GET_CLASS (paint_tool->brush)->select_brush (paint_tool); gimp_paint_tool_paint (paint_tool, drawable, MOTION_PAINT); } @@ -551,9 +549,11 @@ gimp_paint_tool_motion (GimpTool *tool, return; } - paint_tool->curpressure = mevent->pressure; - paint_tool->curxtilt = mevent->xtilt; - paint_tool->curytilt = mevent->ytilt; +#warning FIXME: tilt, pressure + + paint_tool->curpressure = 0; /* mevent->pressure; */ + paint_tool->curxtilt = 0; /* mevent->xtilt; */ + paint_tool->curytilt = 0; /* mevent->ytilt; */ paint_tool->state = mevent->state; gimp_paint_tool_interpolate (paint_tool, @@ -619,7 +619,7 @@ gimp_paint_tool_cursor_update (GimpTool *tool, { GtkType type; - type = GTK_OBJECT (tool)->klass->type; + type = G_TYPE_FROM_CLASS (G_OBJECT_GET_CLASS (tool)); if (type == GIMP_TYPE_ERASER_TOOL) { @@ -1015,9 +1015,8 @@ gimp_paint_tool_interpolate (GimpPaintTool *paint_tool, current_brush = paint_tool->brush; if (paint_tool->flags & TOOL_CAN_HANDLE_CHANGING_BRUSH) - paint_tool->brush = - (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->select_brush) (paint_tool); + paint_tool->brush = + GIMP_BRUSH_GET_CLASS (paint_tool->brush)->select_brush (paint_tool); gimp_paint_tool_paint(paint_tool, drawable, MOTION_PAINT); /* restore the current brush pointer */ @@ -1056,7 +1055,7 @@ gimp_paint_tool_finish (GimpPaintTool *paint_tool, pu = g_new0 (PaintUndo, 1); pu->tool_ID = GIMP_TOOL (paint_tool)->ID; - pu->tool_type = GTK_OBJECT (paint_tool)->klass->type; + pu->tool_type = G_TYPE_FROM_CLASS (G_OBJECT_GET_CLASS (paint_tool)); pu->lastx = paint_tool->startx; pu->lasty = paint_tool->starty; pu->lastpressure = paint_tool->startpressure; @@ -1319,7 +1318,7 @@ gimp_paint_tool_calculate_brush_size (MaskBuf *mask, { scale = CLAMP (scale, 0.0, 1.0); - if (current_device == GDK_CORE_POINTER) + if (current_device == gdk_core_pointer) { *width = mask->width; *height = mask->height; @@ -1639,7 +1638,7 @@ gimp_paint_tool_get_brush_mask (GimpPaintTool *paint_tool, { MaskBuf *mask; - if (current_device == GDK_CORE_POINTER) + if (current_device == gdk_core_pointer) mask = paint_tool->brush->mask; else mask = gimp_paint_tool_scale_mask (paint_tool->brush->mask, scale); diff --git a/app/paint/gimppaintcore.h b/app/paint/gimppaintcore.h index 3b2beb7059..a0b3556313 100644 --- a/app/paint/gimppaintcore.h +++ b/app/paint/gimppaintcore.h @@ -52,10 +52,10 @@ typedef enum /*< skip >*/ #define GIMP_TYPE_PAINT_TOOL (gimp_paint_tool_get_type ()) -#define GIMP_PAINT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PAINT_TOOL, GimpPaintTool)) -#define GIMP_IS_PAINT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PAINT_TOOL)) -#define GIMP_PAINT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINT_TOOL, GimpPaintToolClass)) -#define GIMP_IS_PAINT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINT_TOOL)) +#define GIMP_PAINT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PAINT_TOOL, GimpPaintTool)) +#define GIMP_IS_PAINT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PAINT_TOOL)) +#define GIMP_PAINT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINT_TOOL, GimpPaintToolClass)) +#define GIMP_IS_PAINT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINT_TOOL)) typedef struct _GimpPaintToolClass GimpPaintToolClass; diff --git a/app/paint/gimppencil.h b/app/paint/gimppencil.h index 0b13f7aa39..31cffbfee5 100644 --- a/app/paint/gimppencil.h +++ b/app/paint/gimppencil.h @@ -28,10 +28,10 @@ #define GIMP_TYPE_PENCIL_TOOL (gimp_pencil_tool_get_type ()) -#define GIMP_PENCIL_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PENCIL_TOOL, GimpPencilTool)) -#define GIMP_IS_PENCIL_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PENCIL_TOOL)) -#define GIMP_PENCIL_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PENCIL_TOOL, GimpPencilToolClass)) -#define GIMP_IS_PENCIL_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PENCIL_TOOL)) +#define GIMP_PENCIL_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PENCIL_TOOL, GimpPencilTool)) +#define GIMP_IS_PENCIL_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PENCIL_TOOL)) +#define GIMP_PENCIL_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PENCIL_TOOL, GimpPencilToolClass)) +#define GIMP_IS_PENCIL_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PENCIL_TOOL)) typedef struct _GimpPencilTool GimpPencilTool; typedef struct _GimpPencilToolClass GimpPencilToolClass; diff --git a/app/paint/gimpsmudge.h b/app/paint/gimpsmudge.h index 1584535691..2c453f6c5b 100644 --- a/app/paint/gimpsmudge.h +++ b/app/paint/gimpsmudge.h @@ -38,10 +38,10 @@ typedef enum #define GIMP_TYPE_SMUDGE_TOOL (gimp_smudge_tool_get_type ()) -#define GIMP_SMUDGE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_SMUDGE_TOOL, GimpSmudgeTool)) -#define GIMP_IS_SMUDGE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_SMUDGE_TOOL)) -#define GIMP_SMUDGE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SMUDGE_TOOL, GimpSmudgeToolClass)) -#define GIMP_IS_SMUDGE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SMUDGE_TOOL)) +#define GIMP_SMUDGE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_SMUDGE_TOOL, GimpSmudgeTool)) +#define GIMP_IS_SMUDGE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_SMUDGE_TOOL)) +#define GIMP_SMUDGE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SMUDGE_TOOL, GimpSmudgeToolClass)) +#define GIMP_IS_SMUDGE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SMUDGE_TOOL)) typedef struct _GimpSmudgeTool GimpSmudgeTool; diff --git a/app/paint/gimpsourcecore.c b/app/paint/gimpsourcecore.c index 8df6c9d433..77d21f81c9 100644 --- a/app/paint/gimpsourcecore.c +++ b/app/paint/gimpsourcecore.c @@ -807,7 +807,7 @@ clone_options_new (void) vbox = ((GimpToolOptions *) options)->main_vbox; frame = gimp_radio_group_new2 (TRUE, _("Source"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->type, (gpointer) options->type, _("Image Source"), (gpointer) IMAGE_CLONE, @@ -821,7 +821,7 @@ clone_options_new (void) gtk_widget_show (frame); frame = gimp_radio_group_new2 (TRUE, _("Alignment"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->aligned, (gpointer) options->aligned, _("Non Aligned"), (gpointer) ALIGN_NO, diff --git a/app/paint/gimpsourcecore.h b/app/paint/gimpsourcecore.h index 15ce1359fd..c1debe09c5 100644 --- a/app/paint/gimpsourcecore.h +++ b/app/paint/gimpsourcecore.h @@ -31,10 +31,10 @@ typedef enum #define GIMP_TYPE_CLONE_TOOL (gimp_clone_tool_get_type ()) -#define GIMP_CLONE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CLONE_TOOL, GimpCloneTool)) -#define GIMP_IS_CLONE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CLONE_TOOL)) -#define GIMP_CLONE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CLONE_TOOL, GimpCloneToolClass)) -#define GIMP_IS_CLONE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CLONE_TOOL)) +#define GIMP_CLONE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CLONE_TOOL, GimpCloneTool)) +#define GIMP_IS_CLONE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CLONE_TOOL)) +#define GIMP_CLONE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CLONE_TOOL, GimpCloneToolClass)) +#define GIMP_IS_CLONE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CLONE_TOOL)) typedef struct _GimpCloneTool GimpCloneTool; diff --git a/app/scroll.c b/app/scroll.c index 6e8184de68..552894ec0d 100644 --- a/app/scroll.c +++ b/app/scroll.c @@ -110,6 +110,10 @@ scroll_to_pointer_position (GDisplay *gdisp, if (scroll_display (gdisp, off_x, off_y)) { +#ifdef __GNUC__ +#warning FIXME: replace gdk_input_window_get_pointer() +#endif +#if 0 gdk_input_window_get_pointer (gdisp->canvas->window, mevent->deviceid, &child_x, &child_y, NULL, NULL, NULL, NULL); @@ -117,6 +121,7 @@ scroll_to_pointer_position (GDisplay *gdisp, if (child_x == mevent->x && child_y == mevent->y) /* Put this event back on the queue -- so it keeps scrolling */ gdk_event_put ((GdkEvent *) mevent); +#endif } } diff --git a/app/tools/gimpairbrushtool.h b/app/tools/gimpairbrushtool.h index 81779fe145..0e903eb867 100644 --- a/app/tools/gimpairbrushtool.h +++ b/app/tools/gimpairbrushtool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_AIRBRUSH_TOOL (gimp_airbrush_tool_get_type ()) -#define GIMP_AIRBRUSH_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_AIRBRUSH_TOOL, GimpAirbrushTool)) -#define GIMP_IS_AIRBRUSH_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_AIRBRUSH_TOOL)) -#define GIMP_AIRBRUSH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_AIRBRUSH_TOOL, GimpAirbrushToolClass)) -#define GIMP_IS_AIRBRUSH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_AIRBRUSH_TOOL)) +#define GIMP_AIRBRUSH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_AIRBRUSH_TOOL, GimpAirbrushTool)) +#define GIMP_IS_AIRBRUSH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_AIRBRUSH_TOOL)) +#define GIMP_AIRBRUSH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_AIRBRUSH_TOOL, GimpAirbrushToolClass)) +#define GIMP_IS_AIRBRUSH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_AIRBRUSH_TOOL)) typedef struct _GimpAirbrushTool GimpAirbrushTool; diff --git a/app/tools/gimpbezierselecttool.c b/app/tools/gimpbezierselecttool.c index 1a7852480e..7b816d2511 100644 --- a/app/tools/gimpbezierselecttool.c +++ b/app/tools/gimpbezierselecttool.c @@ -325,22 +325,20 @@ gimp_bezier_select_tool_class_init (GimpBezierSelectToolClass *klass) tool_class = (GimpToolClass *) klass; draw_tool_class = (GimpDrawToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_SELECTION_TOOL); + parent_class = g_type_class_peek_parent (klass); bezier_select_signals[BEZIER_SELECT] = - gtk_signal_new ("bezier_select", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpBezierSelectToolClass, - bezier_select), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, bezier_select_signals, LAST_SIGNAL); + g_signal_new ("bezier_select", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpBezierSelectToolClass, bezier_select), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); object_class->destroy = gimp_bezier_select_tool_destroy; diff --git a/app/tools/gimpbezierselecttool.h b/app/tools/gimpbezierselecttool.h index 5b9993de02..57cb348b17 100644 --- a/app/tools/gimpbezierselecttool.h +++ b/app/tools/gimpbezierselecttool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_BEZIER_SELECT_TOOL (gimp_bezier_select_tool_get_type ()) -#define GIMP_BEZIER_SELECT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BEZIER_SELECT_TOOL, GimpBezierSelectTool)) -#define GIMP_IS_BEZIER_SELECT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BEZIER_SELECT_TOOL)) -#define GIMP_BEZIER_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BEZIER_SELECT_TOOL, GimpBezierSelectToolClass)) -#define GIMP_IS_BEZIER_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BEZIER_SELECT_TOOL)) +#define GIMP_BEZIER_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BEZIER_SELECT_TOOL, GimpBezierSelectTool)) +#define GIMP_IS_BEZIER_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BEZIER_SELECT_TOOL)) +#define GIMP_BEZIER_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BEZIER_SELECT_TOOL, GimpBezierSelectToolClass)) +#define GIMP_IS_BEZIER_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BEZIER_SELECT_TOOL)) #define BEZIER_START 1 diff --git a/app/tools/gimpblendtool.c b/app/tools/gimpblendtool.c index 2dbdad46c3..0b2b6d8942 100644 --- a/app/tools/gimpblendtool.c +++ b/app/tools/gimpblendtool.c @@ -709,51 +709,60 @@ blend_options_new (void) /* the blend mode menu */ options->blend_mode_w = gimp_option_menu_new2 - (FALSE, gimp_menu_item_update, - &options->blend_mode, (gpointer) options->blend_mode_d, + (FALSE, + G_CALLBACK (gimp_menu_item_update), + &options->blend_mode, + GINT_TO_POINTER (options->blend_mode_d), - _("FG to BG (RGB)"), (gpointer) FG_BG_RGB_MODE, NULL, - _("FG to BG (HSV)"), (gpointer) FG_BG_HSV_MODE, NULL, - _("FG to Transparent"), (gpointer) FG_TRANS_MODE, NULL, - _("Custom Gradient"), (gpointer) CUSTOM_MODE, NULL, + _("FG to BG (RGB)"), GINT_TO_POINTER (FG_BG_RGB_MODE), NULL, + _("FG to BG (HSV)"), GINT_TO_POINTER (FG_BG_HSV_MODE), NULL, + _("FG to Transparent"), GINT_TO_POINTER (FG_TRANS_MODE), NULL, + _("Custom Gradient"), GINT_TO_POINTER (CUSTOM_MODE), NULL, NULL); + gimp_table_attach_aligned (GTK_TABLE (table), 0, 1, _("Blend:"), 1.0, 0.5, options->blend_mode_w, 1, TRUE); /* the gradient type menu */ options->gradient_type_w = gimp_option_menu_new2 - (FALSE, gradient_type_callback, - &options->gradient_type, (gpointer) options->gradient_type_d, + (FALSE, + G_CALLBACK (gradient_type_callback), + &options->gradient_type, + GINT_TO_POINTER (options->gradient_type_d), - _("Linear"), (gpointer) LINEAR, NULL, - _("Bi-Linear"), (gpointer) BILINEAR, NULL, - _("Radial"), (gpointer) RADIAL, NULL, - _("Square"), (gpointer) SQUARE, NULL, - _("Conical (symmetric)"), (gpointer) CONICAL_SYMMETRIC, NULL, - _("Conical (asymmetric)"), (gpointer) CONICAL_ASYMMETRIC, NULL, - _("Shapeburst (angular)"), (gpointer) SHAPEBURST_ANGULAR, NULL, - _("Shapeburst (spherical)"), (gpointer) SHAPEBURST_SPHERICAL, NULL, - _("Shapeburst (dimpled)"), (gpointer) SHAPEBURST_DIMPLED, NULL, - _("Spiral (clockwise)"), (gpointer) SPIRAL_CLOCKWISE, NULL, - _("Spiral (anticlockwise)"), (gpointer) SPIRAL_ANTICLOCKWISE, NULL, + _("Linear"), GINT_TO_POINTER (LINEAR), NULL, + _("Bi-Linear"), GINT_TO_POINTER (BILINEAR), NULL, + _("Radial"), GINT_TO_POINTER (RADIAL), NULL, + _("Square"), GINT_TO_POINTER (SQUARE), NULL, + _("Conical (symmetric)"), GINT_TO_POINTER (CONICAL_SYMMETRIC), NULL, + _("Conical (asymmetric)"), GINT_TO_POINTER (CONICAL_ASYMMETRIC), NULL, + _("Shapeburst (angular)"), GINT_TO_POINTER (SHAPEBURST_ANGULAR), NULL, + _("Shapeburst (spherical)"), GINT_TO_POINTER (SHAPEBURST_SPHERICAL), NULL, + _("Shapeburst (dimpled)"), GINT_TO_POINTER (SHAPEBURST_DIMPLED), NULL, + _("Spiral (clockwise)"), GINT_TO_POINTER (SPIRAL_CLOCKWISE), NULL, + _("Spiral (anticlockwise)"), GINT_TO_POINTER (SPIRAL_ANTICLOCKWISE), NULL, NULL); + gimp_table_attach_aligned (GTK_TABLE (table), 0, 2, _("Gradient:"), 1.0, 0.5, options->gradient_type_w, 1, TRUE); /* the repeat option */ options->repeat_w = gimp_option_menu_new2 - (FALSE, gimp_menu_item_update, - &options->repeat, (gpointer) options->repeat_d, + (FALSE, + G_CALLBACK (gimp_menu_item_update), + &options->repeat, + GINT_TO_POINTER (options->repeat_d), - _("None"), (gpointer) REPEAT_NONE, NULL, - _("Sawtooth Wave"), (gpointer) REPEAT_SAWTOOTH, NULL, - _("Triangular Wave"), (gpointer) REPEAT_TRIANGULAR, NULL, + _("None"), GINT_TO_POINTER (REPEAT_NONE), NULL, + _("Sawtooth Wave"), GINT_TO_POINTER (REPEAT_SAWTOOTH), NULL, + _("Triangular Wave"), GINT_TO_POINTER (REPEAT_TRIANGULAR), NULL, NULL); + gimp_table_attach_aligned (GTK_TABLE (table), 0, 3, _("Repeat:"), 1.0, 0.5, options->repeat_w, 1, TRUE); diff --git a/app/tools/gimpblendtool.h b/app/tools/gimpblendtool.h index e505baf95c..9243d272d8 100644 --- a/app/tools/gimpblendtool.h +++ b/app/tools/gimpblendtool.h @@ -58,10 +58,10 @@ typedef enum #define GIMP_TYPE_BLEND_TOOL (gimp_blend_tool_get_type ()) -#define GIMP_BLEND_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BLEND_TOOL, GimpBlendTool)) -#define GIMP_IS_BLEND_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BLEND_TOOL)) -#define GIMP_BLEND_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BLEND_TOOL, GimpBlendToolClass)) -#define GIMP_IS_BLEND_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BLEND_TOOL)) +#define GIMP_BLEND_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BLEND_TOOL, GimpBlendTool)) +#define GIMP_IS_BLEND_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BLEND_TOOL)) +#define GIMP_BLEND_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BLEND_TOOL, GimpBlendToolClass)) +#define GIMP_IS_BLEND_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BLEND_TOOL)) typedef struct _GimpBlendTool GimpBlendTool; diff --git a/app/tools/gimpbrightnesscontrasttool.h b/app/tools/gimpbrightnesscontrasttool.h index 6fd179c0e8..b327c7824c 100644 --- a/app/tools/gimpbrightnesscontrasttool.h +++ b/app/tools/gimpbrightnesscontrasttool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL (gimp_brightness_contrast_tool_get_type ()) -#define GIMP_BRIGHTNESS_CONTRAST_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL, GimpBrightnessContrastTool)) -#define GIMP_IS_BRIGHTNESS_CONTRAST_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL)) -#define GIMP_BRIGHTNESS_CONTRAST_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL, GimpBrightnessContrastToolClass)) -#define GIMP_IS_BRIGHTNESS_CONTRAST_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL)) +#define GIMP_BRIGHTNESS_CONTRAST_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL, GimpBrightnessContrastTool)) +#define GIMP_IS_BRIGHTNESS_CONTRAST_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL)) +#define GIMP_BRIGHTNESS_CONTRAST_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL, GimpBrightnessContrastToolClass)) +#define GIMP_IS_BRIGHTNESS_CONTRAST_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRIGHTNESS_CONTRAST_TOOL)) typedef struct _GimpBrightnessContrastTool GimpBrightnessContrastTool; diff --git a/app/tools/gimpbrushtool.c b/app/tools/gimpbrushtool.c index 102bb77a0b..2bec9afda4 100644 --- a/app/tools/gimpbrushtool.c +++ b/app/tools/gimpbrushtool.c @@ -44,6 +44,7 @@ #include "core/gimpgradient.h" #include "core/gimpimage.h" #include "core/gimpimage-mask.h" +#include "core/gimpmarshal.h" #include "gimpdrawtool.h" #include "gimpdodgeburntool.h" @@ -244,21 +245,18 @@ gimp_paint_tool_class_init (GimpPaintToolClass *klass) tool_class = (GimpToolClass *) klass; draw_tool_class = (GimpDrawToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAW_TOOL); + parent_class = g_type_class_peek_parent (klass); gimp_paint_tool_signals[PAINT] = - gtk_signal_new ("paint", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPaintToolClass, - paint), - gtk_marshal_NONE__POINTER_INT, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_paint_tool_signals, - LAST_SIGNAL); + g_signal_new ("paint", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPaintToolClass, paint), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_INT, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_INT); object_class->destroy = gimp_paint_tool_destroy; @@ -352,9 +350,11 @@ gimp_paint_tool_button_press (GimpTool *tool, draw_line = FALSE; - paint_tool->curpressure = bevent->pressure; - paint_tool->curxtilt = bevent->xtilt; - paint_tool->curytilt = bevent->ytilt; +#warning FIXME tilt, pressure + + paint_tool->curpressure = 0; /* bevent->pressure; */ + paint_tool->curxtilt = 0; /* bevent->xtilt; */ + paint_tool->curytilt = 0; /* bevent->ytilt; */ paint_tool->state = bevent->state; if (gdisp != tool->gdisp || @@ -473,13 +473,11 @@ gimp_paint_tool_button_press (GimpTool *tool, */ if (paint_tool->lastx != paint_tool->curx || paint_tool->lasty != paint_tool->cury - || (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->want_null_motion) (paint_tool)) + || GIMP_BRUSH_GET_CLASS (paint_tool->brush)->want_null_motion (paint_tool)) { if (paint_tool->flags & TOOL_CAN_HANDLE_CHANGING_BRUSH) paint_tool->brush = - (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->select_brush) (paint_tool); + GIMP_BRUSH_GET_CLASS (paint_tool->brush)->select_brush (paint_tool); gimp_paint_tool_paint (paint_tool, drawable, MOTION_PAINT); } @@ -551,9 +549,11 @@ gimp_paint_tool_motion (GimpTool *tool, return; } - paint_tool->curpressure = mevent->pressure; - paint_tool->curxtilt = mevent->xtilt; - paint_tool->curytilt = mevent->ytilt; +#warning FIXME: tilt, pressure + + paint_tool->curpressure = 0; /* mevent->pressure; */ + paint_tool->curxtilt = 0; /* mevent->xtilt; */ + paint_tool->curytilt = 0; /* mevent->ytilt; */ paint_tool->state = mevent->state; gimp_paint_tool_interpolate (paint_tool, @@ -619,7 +619,7 @@ gimp_paint_tool_cursor_update (GimpTool *tool, { GtkType type; - type = GTK_OBJECT (tool)->klass->type; + type = G_TYPE_FROM_CLASS (G_OBJECT_GET_CLASS (tool)); if (type == GIMP_TYPE_ERASER_TOOL) { @@ -1015,9 +1015,8 @@ gimp_paint_tool_interpolate (GimpPaintTool *paint_tool, current_brush = paint_tool->brush; if (paint_tool->flags & TOOL_CAN_HANDLE_CHANGING_BRUSH) - paint_tool->brush = - (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->select_brush) (paint_tool); + paint_tool->brush = + GIMP_BRUSH_GET_CLASS (paint_tool->brush)->select_brush (paint_tool); gimp_paint_tool_paint(paint_tool, drawable, MOTION_PAINT); /* restore the current brush pointer */ @@ -1056,7 +1055,7 @@ gimp_paint_tool_finish (GimpPaintTool *paint_tool, pu = g_new0 (PaintUndo, 1); pu->tool_ID = GIMP_TOOL (paint_tool)->ID; - pu->tool_type = GTK_OBJECT (paint_tool)->klass->type; + pu->tool_type = G_TYPE_FROM_CLASS (G_OBJECT_GET_CLASS (paint_tool)); pu->lastx = paint_tool->startx; pu->lasty = paint_tool->starty; pu->lastpressure = paint_tool->startpressure; @@ -1319,7 +1318,7 @@ gimp_paint_tool_calculate_brush_size (MaskBuf *mask, { scale = CLAMP (scale, 0.0, 1.0); - if (current_device == GDK_CORE_POINTER) + if (current_device == gdk_core_pointer) { *width = mask->width; *height = mask->height; @@ -1639,7 +1638,7 @@ gimp_paint_tool_get_brush_mask (GimpPaintTool *paint_tool, { MaskBuf *mask; - if (current_device == GDK_CORE_POINTER) + if (current_device == gdk_core_pointer) mask = paint_tool->brush->mask; else mask = gimp_paint_tool_scale_mask (paint_tool->brush->mask, scale); diff --git a/app/tools/gimpbrushtool.h b/app/tools/gimpbrushtool.h index 3b2beb7059..a0b3556313 100644 --- a/app/tools/gimpbrushtool.h +++ b/app/tools/gimpbrushtool.h @@ -52,10 +52,10 @@ typedef enum /*< skip >*/ #define GIMP_TYPE_PAINT_TOOL (gimp_paint_tool_get_type ()) -#define GIMP_PAINT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PAINT_TOOL, GimpPaintTool)) -#define GIMP_IS_PAINT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PAINT_TOOL)) -#define GIMP_PAINT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINT_TOOL, GimpPaintToolClass)) -#define GIMP_IS_PAINT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINT_TOOL)) +#define GIMP_PAINT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PAINT_TOOL, GimpPaintTool)) +#define GIMP_IS_PAINT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PAINT_TOOL)) +#define GIMP_PAINT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINT_TOOL, GimpPaintToolClass)) +#define GIMP_IS_PAINT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINT_TOOL)) typedef struct _GimpPaintToolClass GimpPaintToolClass; diff --git a/app/tools/gimpbucketfilltool.c b/app/tools/gimpbucketfilltool.c index 9340e498b6..c85a99b457 100644 --- a/app/tools/gimpbucketfilltool.c +++ b/app/tools/gimpbucketfilltool.c @@ -285,17 +285,18 @@ bucket_options_new (void) /* fill type */ frame = gimp_radio_group_new2 (TRUE, _("Fill Type"), - gimp_radio_button_update, - &options->fill_mode, (gpointer) options->fill_mode, + G_CALLBACK (gimp_radio_button_update), + &options->fill_mode, + GINT_TO_POINTER (options->fill_mode), _("FG Color Fill"), - (gpointer) FG_BUCKET_FILL, + GINT_TO_POINTER (FG_BUCKET_FILL), &options->fill_mode_w[0], _("BG Color Fill"), - (gpointer) BG_BUCKET_FILL, + GINT_TO_POINTER (BG_BUCKET_FILL), &options->fill_mode_w[1], _("Pattern Fill"), - (gpointer) PATTERN_BUCKET_FILL, + GINT_TO_POINTER (PATTERN_BUCKET_FILL), &options->fill_mode_w[2], NULL); diff --git a/app/tools/gimpbucketfilltool.h b/app/tools/gimpbucketfilltool.h index 410712823f..dbe60884b8 100644 --- a/app/tools/gimpbucketfilltool.h +++ b/app/tools/gimpbucketfilltool.h @@ -32,10 +32,10 @@ typedef enum #define GIMP_TYPE_BUCKET_FILL_TOOL (gimp_bucket_fill_tool_get_type ()) -#define GIMP_BUCKET_FILL_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BUCKET_FILL_TOOL, GimpBucketFillTool)) -#define GIMP_IS_BUCKET_FILL_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BUCKET_FILL_TOOL)) -#define GIMP_BUCKET_FILL_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUCKET_FILL_TOOL, GimpBucketFillToolClass)) -#define GIMP_IS_BUCKET_FILL_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUCKET_FILL_TOOL)) +#define GIMP_BUCKET_FILL_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BUCKET_FILL_TOOL, GimpBucketFillTool)) +#define GIMP_IS_BUCKET_FILL_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BUCKET_FILL_TOOL)) +#define GIMP_BUCKET_FILL_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUCKET_FILL_TOOL, GimpBucketFillToolClass)) +#define GIMP_IS_BUCKET_FILL_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUCKET_FILL_TOOL)) typedef struct _GimpBucketFillTool GimpBucketFillTool; diff --git a/app/tools/gimpbycolorselecttool.c b/app/tools/gimpbycolorselecttool.c index 1ebd89c7ba..b00496d230 100644 --- a/app/tools/gimpbycolorselecttool.c +++ b/app/tools/gimpbycolorselecttool.c @@ -786,7 +786,8 @@ by_color_select_control (GimpTool *tool, } void -by_color_select_initialize (GimpTool *tool, GDisplay *gdisp) +by_color_select_initialize (GimpTool *tool, + GDisplay *gdisp) { /* The "by color" dialog */ if (!by_color_dialog) @@ -794,9 +795,11 @@ by_color_select_initialize (GimpTool *tool, GDisplay *gdisp) by_color_dialog = by_color_select_dialog_new (); /* Catch the "mask_changed" signal and attach a handler that does * stuff with it. Need to do this somewhere with the relevant - * GimpImage in context */ - gtk_signal_connect (GTK_OBJECT (gdisp->gimage), "mask_changed", - by_color_select_mask_changed, NULL); + * GimpImage in context + */ + g_signal_connect (G_OBJECT (gdisp->gimage), "mask_changed", + G_CALLBACK (by_color_select_mask_changed), + NULL); } else if (!GTK_WIDGET_VISIBLE (by_color_dialog->shell)) @@ -864,9 +867,9 @@ by_color_select_dialog_new (void) gtk_widget_set_events (bcd->preview, PREVIEW_EVENT_MASK); gtk_container_add (GTK_CONTAINER (frame), bcd->preview); - gtk_signal_connect (GTK_OBJECT (bcd->preview), "button_press_event", - GTK_SIGNAL_FUNC (by_color_select_preview_events), - bcd); + g_signal_connect (G_OBJECT (bcd->preview), "button_press_event", + G_CALLBACK (by_color_select_preview_events), + bcd); /* dnd colors to the image window */ gtk_drag_dest_set (bcd->preview, @@ -897,19 +900,18 @@ by_color_select_dialog_new (void) gtk_widget_show (util_box); /* Create the selection mode radio box */ - frame = - gimp_radio_group_new2 (TRUE, _("Selection Mode"), - gimp_radio_button_update, - &bcd->operation, - (gpointer) bcd->operation, + frame = gimp_radio_group_new2 + (TRUE, _("Selection Mode"), + G_CALLBACK (gimp_radio_button_update), + &bcd->operation, + GINT_TO_POINTER (bcd->operation), - _("Replace"), (gpointer) SELECTION_REPLACE, - &bcd->replace_button, - _("Add"), (gpointer) SELECTION_ADD, NULL, - _("Subtract"), (gpointer) SELECTION_SUB, NULL, - _("Intersect"), (gpointer) SELECTION_INTERSECT, NULL, + _("Replace"), GINT_TO_POINTER (SELECTION_REPLACE), &bcd->replace_button, + _("Add"), GINT_TO_POINTER (SELECTION_ADD), NULL, + _("Subtract"), GINT_TO_POINTER (SELECTION_SUB), NULL, + _("Intersect"), GINT_TO_POINTER (SELECTION_INTERSECT), NULL, - NULL); + NULL); gtk_box_pack_start (GTK_BOX (options_box), frame, FALSE, FALSE, 0); gtk_widget_show (frame); @@ -931,9 +933,9 @@ by_color_select_dialog_new (void) gtk_scale_set_value_pos (GTK_SCALE (slider), GTK_POS_TOP); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (bcd->threshold_adj), "value_changed", - GTK_SIGNAL_FUNC (gimp_int_adjustment_update), - &bcd->threshold); + g_signal_connect (G_OBJECT (bcd->threshold_adj), "value_changed", + G_CALLBACK (gimp_int_adjustment_update), + &bcd->threshold); gtk_widget_show (slider); @@ -950,32 +952,35 @@ by_color_select_dialog_new (void) button = gtk_button_new_with_label (_("Invert")); gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 2, 0, 1); - gtk_signal_connect (GTK_OBJECT (button), "clicked", - GTK_SIGNAL_FUNC (by_color_select_invert_callback), - bcd); gtk_widget_show (button); + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (by_color_select_invert_callback), + bcd); + button = gtk_button_new_with_label (_("All")); gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 1, 2); - gtk_signal_connect (GTK_OBJECT (button), "clicked", - GTK_SIGNAL_FUNC (by_color_select_select_all_callback), - bcd); gtk_widget_show (button); + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (by_color_select_select_all_callback), + bcd); + button = gtk_button_new_with_label (_("None")); gtk_table_attach_defaults (GTK_TABLE (table), button, 1, 2, 1, 2); - gtk_signal_connect (GTK_OBJECT (button), "clicked", - GTK_SIGNAL_FUNC (by_color_select_select_none_callback), - bcd); gtk_widget_show (button); + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (by_color_select_select_none_callback), + bcd); + gtk_widget_show (options_box); gtk_widget_show (hbox); gtk_widget_show (bcd->shell); - gtk_signal_connect_object (GTK_OBJECT (bcd->shell), "unmap_event", - GTK_SIGNAL_FUNC (gimp_dialog_hide), - (gpointer) bcd->shell); + g_signal_connect_swapped (G_OBJECT (bcd->shell), "unmap_event", + G_CALLBACK (gimp_dialog_hide), + bcd->shell); return bcd; } diff --git a/app/tools/gimpbycolorselecttool.h b/app/tools/gimpbycolorselecttool.h index 001dc91277..9c3edcc6b4 100644 --- a/app/tools/gimpbycolorselecttool.h +++ b/app/tools/gimpbycolorselecttool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_BY_COLOR_SELECT_TOOL (gimp_by_color_select_tool_get_type ()) -#define GIMP_BY_COLOR_SELECT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BY_COLOR_SELECT_TOOL, GimpByColorSelectTool)) -#define GIMP_IS_BY_COLOR_SELECT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BY_COLOR_SELECT_TOOL)) -#define GIMP_BY_COLOR_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BY_COLOR_SELECT_TOOL, GimpByColorSelectToolClass)) -#define GIMP_IS_BY_COLOR_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BY_COLOR_SELECT_TOOL)) +#define GIMP_BY_COLOR_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BY_COLOR_SELECT_TOOL, GimpByColorSelectTool)) +#define GIMP_IS_BY_COLOR_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BY_COLOR_SELECT_TOOL)) +#define GIMP_BY_COLOR_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BY_COLOR_SELECT_TOOL, GimpByColorSelectToolClass)) +#define GIMP_IS_BY_COLOR_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BY_COLOR_SELECT_TOOL)) /* the by color selection structures */ diff --git a/app/tools/gimpclonetool.c b/app/tools/gimpclonetool.c index 8df6c9d433..77d21f81c9 100644 --- a/app/tools/gimpclonetool.c +++ b/app/tools/gimpclonetool.c @@ -807,7 +807,7 @@ clone_options_new (void) vbox = ((GimpToolOptions *) options)->main_vbox; frame = gimp_radio_group_new2 (TRUE, _("Source"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->type, (gpointer) options->type, _("Image Source"), (gpointer) IMAGE_CLONE, @@ -821,7 +821,7 @@ clone_options_new (void) gtk_widget_show (frame); frame = gimp_radio_group_new2 (TRUE, _("Alignment"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->aligned, (gpointer) options->aligned, _("Non Aligned"), (gpointer) ALIGN_NO, diff --git a/app/tools/gimpclonetool.h b/app/tools/gimpclonetool.h index 15ce1359fd..c1debe09c5 100644 --- a/app/tools/gimpclonetool.h +++ b/app/tools/gimpclonetool.h @@ -31,10 +31,10 @@ typedef enum #define GIMP_TYPE_CLONE_TOOL (gimp_clone_tool_get_type ()) -#define GIMP_CLONE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CLONE_TOOL, GimpCloneTool)) -#define GIMP_IS_CLONE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CLONE_TOOL)) -#define GIMP_CLONE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CLONE_TOOL, GimpCloneToolClass)) -#define GIMP_IS_CLONE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CLONE_TOOL)) +#define GIMP_CLONE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CLONE_TOOL, GimpCloneTool)) +#define GIMP_IS_CLONE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CLONE_TOOL)) +#define GIMP_CLONE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CLONE_TOOL, GimpCloneToolClass)) +#define GIMP_IS_CLONE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CLONE_TOOL)) typedef struct _GimpCloneTool GimpCloneTool; diff --git a/app/tools/gimpcolorbalancetool.h b/app/tools/gimpcolorbalancetool.h index 3a37ba396c..d3554b6328 100644 --- a/app/tools/gimpcolorbalancetool.h +++ b/app/tools/gimpcolorbalancetool.h @@ -32,10 +32,10 @@ typedef enum #define GIMP_TYPE_COLOR_BALANCE_TOOL (gimp_color_balance_tool_get_type ()) -#define GIMP_COLOR_BALANCE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_COLOR_BALANCE_TOOL, GimpColorBalanceTool)) -#define GIMP_IS_COLOR_BALANCE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_COLOR_BALANCE_TOOL)) -#define GIMP_COLOR_BALANCE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_BALANCE_TOOL, GimpColorBalanceToolClass)) -#define GIMP_IS_COLOR_BALANCE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_BALANCE_TOOL)) +#define GIMP_COLOR_BALANCE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_COLOR_BALANCE_TOOL, GimpColorBalanceTool)) +#define GIMP_IS_COLOR_BALANCE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_COLOR_BALANCE_TOOL)) +#define GIMP_COLOR_BALANCE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_BALANCE_TOOL, GimpColorBalanceToolClass)) +#define GIMP_IS_COLOR_BALANCE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_BALANCE_TOOL)) typedef struct _GimpColorBalanceTool GimpColorBalanceTool; diff --git a/app/tools/gimpcolorpickertool.h b/app/tools/gimpcolorpickertool.h index 744a09186a..ded2eef860 100644 --- a/app/tools/gimpcolorpickertool.h +++ b/app/tools/gimpcolorpickertool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_COLOR_PICKER_TOOL (gimp_color_picker_tool_get_type ()) -#define GIMP_COLOR_PICKER_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_COLOR_PICKER_TOOL, GimpColorPickerTool)) -#define GIMP_IS_COLOR_PICKER_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_COLOR_PICKER_TOOL)) -#define GIMP_COLOR_PICKER_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_PICKER_TOOL, GimpColorPickerToolClass)) -#define GIMP_IS_COLOR_PICKER_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_PICKER_TOOL)) +#define GIMP_COLOR_PICKER_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_COLOR_PICKER_TOOL, GimpColorPickerTool)) +#define GIMP_IS_COLOR_PICKER_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_COLOR_PICKER_TOOL)) +#define GIMP_COLOR_PICKER_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_PICKER_TOOL, GimpColorPickerToolClass)) +#define GIMP_IS_COLOR_PICKER_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_PICKER_TOOL)) typedef struct _GimpColorPickerTool GimpColorPickerTool; diff --git a/app/tools/gimpconvolvetool.c b/app/tools/gimpconvolvetool.c index b41bd64d59..c9428fc5a1 100644 --- a/app/tools/gimpconvolvetool.c +++ b/app/tools/gimpconvolvetool.c @@ -748,7 +748,7 @@ convolve_options_new (void) gtk_widget_show (hbox); frame = gimp_radio_group_new2 (TRUE, _("Convolve Type"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->type, (gpointer) options->type, _("Blur"), (gpointer) BLUR_CONVOLVE, diff --git a/app/tools/gimpconvolvetool.h b/app/tools/gimpconvolvetool.h index 1662b3e344..4aaf9b1f33 100644 --- a/app/tools/gimpconvolvetool.h +++ b/app/tools/gimpconvolvetool.h @@ -32,10 +32,10 @@ typedef enum #define GIMP_TYPE_CONVOLVE_TOOL (gimp_convolve_tool_get_type ()) -#define GIMP_CONVOLVE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONVOLVE_TOOL, GimpConvolveTool)) -#define GIMP_IS_CONVOLVE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONVOLVE_TOOL)) -#define GIMP_CONVOLVE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONVOLVE_TOOL, GimpConvolveToolClass)) -#define GIMP_IS_CONVOLVE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONVOLVE_TOOL)) +#define GIMP_CONVOLVE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONVOLVE_TOOL, GimpConvolveTool)) +#define GIMP_IS_CONVOLVE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONVOLVE_TOOL)) +#define GIMP_CONVOLVE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONVOLVE_TOOL, GimpConvolveToolClass)) +#define GIMP_IS_CONVOLVE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONVOLVE_TOOL)) typedef struct _GimpConvolveTool GimpConvolveTool; diff --git a/app/tools/gimpcroptool.c b/app/tools/gimpcroptool.c index 36a190eaaf..91da8245d9 100644 --- a/app/tools/gimpcroptool.c +++ b/app/tools/gimpcroptool.c @@ -902,7 +902,8 @@ crop_info_create (GimpTool *tool) gdisp->dot_for_dot ? GIMP_UNIT_PIXEL : gdisp->gimage->unit, "%a", TRUE, TRUE, FALSE, GIMP_SIZE_ENTRY_UPDATE_SIZE, - crop_orig_changed, crop_info); + G_CALLBACK (crop_orig_changed), + crop_info); gimp_size_entry_add_field (GIMP_SIZE_ENTRY (origin_sizeentry), GTK_SPIN_BUTTON (spinbutton), NULL); @@ -918,7 +919,8 @@ crop_info_create (GimpTool *tool) gdisp->dot_for_dot ? GIMP_UNIT_PIXEL : gdisp->gimage->unit, "%a", TRUE, TRUE, FALSE, GIMP_SIZE_ENTRY_UPDATE_SIZE, - crop_size_changed, crop_info); + G_CALLBACK (crop_size_changed), + crop_info); gimp_size_entry_add_field (GIMP_SIZE_ENTRY (size_sizeentry), GTK_SPIN_BUTTON (spinbutton), NULL); @@ -1262,7 +1264,7 @@ crop_options_new (void) /* tool toggle */ frame = gimp_radio_group_new2 (TRUE, _("Tool Toggle"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->type, (gpointer) options->type, _("Crop"), (gpointer) CROP_CROP, diff --git a/app/tools/gimpcroptool.h b/app/tools/gimpcroptool.h index 5c0c57d283..bd5fe857e6 100644 --- a/app/tools/gimpcroptool.h +++ b/app/tools/gimpcroptool.h @@ -32,9 +32,9 @@ typedef enum #define GIMP_TYPE_CROP_TOOL (gimp_crop_tool_get_type ()) -#define GIMP_CROP_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CROP_TOOL, GimpCropTool)) -#define GIMP_IS_CROP_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CROP_TOOL)) -#define GIMP_CROP_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CROP_TOOL, GimpCropToolClass)) +#define GIMP_CROP_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CROP_TOOL, GimpCropTool)) +#define GIMP_IS_CROP_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CROP_TOOL)) +#define GIMP_CROP_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CROP_TOOL, GimpCropToolClass)) typedef struct _GimpCropTool GimpCropTool; diff --git a/app/tools/gimpcurvestool.c b/app/tools/gimpcurvestool.c index 66a1adbd9c..621ca66ddb 100644 --- a/app/tools/gimpcurvestool.c +++ b/app/tools/gimpcurvestool.c @@ -695,14 +695,16 @@ curves_dialog_new (void) gtk_box_pack_start (GTK_BOX (channel_hbox), label, FALSE, FALSE, 0); cd->channel_menu = gimp_option_menu_new2 - (FALSE, curves_channel_callback, - cd, (gpointer) cd->channel, + (FALSE, + G_CALLBACK (curves_channel_callback), + cd, + GINT_TO_POINTER (cd->channel), - _("Value"), (gpointer) GIMP_HISTOGRAM_VALUE, &channel_items[0], - _("Red"), (gpointer) GIMP_HISTOGRAM_RED, &channel_items[1], - _("Green"), (gpointer) GIMP_HISTOGRAM_GREEN, &channel_items[2], - _("Blue"), (gpointer) GIMP_HISTOGRAM_BLUE, &channel_items[3], - _("Alpha"), (gpointer) GIMP_HISTOGRAM_ALPHA, &channel_items[4], + _("Value"), GINT_TO_POINTER (GIMP_HISTOGRAM_VALUE), &channel_items[0], + _("Red"), GINT_TO_POINTER (GIMP_HISTOGRAM_RED), &channel_items[1], + _("Green"), GINT_TO_POINTER (GIMP_HISTOGRAM_GREEN), &channel_items[2], + _("Blue"), GINT_TO_POINTER (GIMP_HISTOGRAM_BLUE), &channel_items[3], + _("Alpha"), GINT_TO_POINTER (GIMP_HISTOGRAM_ALPHA), &channel_items[4], NULL); @@ -729,9 +731,9 @@ curves_dialog_new (void) gtk_widget_set_events (cd->yrange, RANGE_MASK); gtk_container_add (GTK_CONTAINER (frame), cd->yrange); - gtk_signal_connect (GTK_OBJECT (cd->yrange), "event", - GTK_SIGNAL_FUNC (curves_yrange_events), - cd); + g_signal_connect (G_OBJECT (cd->yrange), "event", + G_CALLBACK (curves_yrange_events), + cd); gtk_widget_show (cd->yrange); gtk_widget_show (frame); @@ -750,9 +752,9 @@ curves_dialog_new (void) gtk_widget_set_events (cd->graph, GRAPH_MASK); gtk_container_add (GTK_CONTAINER (frame), cd->graph); - gtk_signal_connect (GTK_OBJECT (cd->graph), "event", - GTK_SIGNAL_FUNC (curves_graph_events), - cd); + g_signal_connect (G_OBJECT (cd->graph), "event", + G_CALLBACK (curves_graph_events), + cd); gtk_widget_show (cd->graph); gtk_widget_show (frame); @@ -768,9 +770,9 @@ curves_dialog_new (void) gtk_widget_set_events (cd->xrange, RANGE_MASK); gtk_container_add (GTK_CONTAINER (frame), cd->xrange); - gtk_signal_connect (GTK_OBJECT (cd->xrange), "event", - GTK_SIGNAL_FUNC (curves_xrange_events), - cd); + g_signal_connect (G_OBJECT (cd->xrange), "event", + G_CALLBACK (curves_xrange_events), + cd); gtk_widget_show (cd->xrange); gtk_widget_show (frame); @@ -802,9 +804,9 @@ curves_dialog_new (void) gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), cd->preview); gtk_box_pack_end (GTK_BOX (hbox), toggle, FALSE, FALSE, 0); - gtk_signal_connect (GTK_OBJECT (toggle), "toggled", - GTK_SIGNAL_FUNC (curves_preview_update), - cd); + g_signal_connect (G_OBJECT (toggle), "toggled", + G_CALLBACK (curves_preview_update), + cd); gtk_widget_show (toggle); gtk_widget_show (hbox); @@ -818,19 +820,21 @@ curves_dialog_new (void) button = gtk_button_new_with_label (_("Load")); GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (hbbox), button, FALSE, FALSE, 0); - gtk_signal_connect (GTK_OBJECT (button), "clicked", - GTK_SIGNAL_FUNC (curves_load_callback), - cd->shell); gtk_widget_show (button); + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (curves_load_callback), + cd->shell); + button = gtk_button_new_with_label (_("Save")); GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (hbbox), button, FALSE, FALSE, 0); - gtk_signal_connect (GTK_OBJECT (button), "clicked", - GTK_SIGNAL_FUNC (curves_save_callback), - cd->shell); gtk_widget_show (button); + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (curves_save_callback), + cd->shell); + gtk_widget_show (hbbox); gtk_widget_show (vbox); @@ -1754,19 +1758,21 @@ file_dialog_create (GtkWidget *parent) gtk_container_set_border_width (GTK_CONTAINER (file_dlg), 2); gtk_container_set_border_width (GTK_CONTAINER (GTK_FILE_SELECTION (file_dlg)->button_area), 2); - gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (file_dlg)->cancel_button), - "clicked", GTK_SIGNAL_FUNC (file_dialog_cancel_callback), - NULL); - gtk_signal_connect (GTK_OBJECT (file_dlg), "delete_event", - GTK_SIGNAL_FUNC (file_dialog_cancel_callback), - NULL); - gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (file_dlg)->ok_button), - "clicked", GTK_SIGNAL_FUNC (file_dialog_ok_callback), - NULL); + g_signal_connect (G_OBJECT (GTK_FILE_SELECTION (file_dlg)->cancel_button), + "clicked", + G_CALLBACK (file_dialog_cancel_callback), + NULL); + g_signal_connect (G_OBJECT (file_dlg), "delete_event", + G_CALLBACK (file_dialog_cancel_callback), + NULL); + g_signal_connect (G_OBJECT (GTK_FILE_SELECTION (file_dlg)->ok_button), + "clicked", + G_CALLBACK (file_dialog_ok_callback), + NULL); - gtk_signal_connect (GTK_OBJECT (parent), "unmap", - GTK_SIGNAL_FUNC (file_dialog_cancel_callback), - NULL); + g_signal_connect (G_OBJECT (parent), "unmap", + G_CALLBACK (file_dialog_cancel_callback), + NULL); temp = g_strdup_printf ("%s" G_DIR_SEPARATOR_S "curves" G_DIR_SEPARATOR_S, gimp_directory ()); @@ -1780,8 +1786,8 @@ static void file_dialog_ok_callback (GtkWidget *widget, gpointer data) { - FILE *f; - gchar *filename; + FILE *f; + const gchar *filename; filename = gtk_file_selection_get_filename (GTK_FILE_SELECTION (file_dlg)); diff --git a/app/tools/gimpcurvestool.h b/app/tools/gimpcurvestool.h index e760141a27..29699970d6 100644 --- a/app/tools/gimpcurvestool.h +++ b/app/tools/gimpcurvestool.h @@ -28,10 +28,10 @@ #define GIMP_TYPE_CURVES_TOOL (gimp_curves_tool_get_type ()) -#define GIMP_CURVES_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CURVES_TOOL, GimpCurvesTool)) -#define GIMP_IS_CURVES_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CURVES_TOOL)) -#define GIMP_CURVES_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CURVES_TOOL, GimpCurvesToolClass)) -#define GIMP_IS_CURVES_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CURVES_TOOL)) +#define GIMP_CURVES_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CURVES_TOOL, GimpCurvesTool)) +#define GIMP_IS_CURVES_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CURVES_TOOL)) +#define GIMP_CURVES_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CURVES_TOOL, GimpCurvesToolClass)) +#define GIMP_IS_CURVES_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CURVES_TOOL)) typedef struct _GimpCurvesTool GimpCurvesTool; diff --git a/app/tools/gimpdodgeburntool.c b/app/tools/gimpdodgeburntool.c index ab140f9afa..c4da6b1df4 100644 --- a/app/tools/gimpdodgeburntool.c +++ b/app/tools/gimpdodgeburntool.c @@ -686,8 +686,9 @@ gimp_dodgeburn_tool_options_new (void) /* the type (dodge or burn) */ frame = gimp_radio_group_new2 (TRUE, _("Type"), - gimp_radio_button_update, - &options->type, (gpointer) options->type, + G_CALLBACK (gimp_radio_button_update), + &options->type, + (gpointer) options->type, _("Dodge"), (gpointer) DODGE, &options->type_w[0], @@ -702,8 +703,9 @@ gimp_dodgeburn_tool_options_new (void) /* mode (highlights, midtones, or shadows) */ frame = gimp_radio_group_new2 (TRUE, _("Mode"), - gimp_radio_button_update, - &options->mode, (gpointer) options->mode, + G_CALLBACK (gimp_radio_button_update), + &options->mode, + (gpointer) options->mode, _("Highlights"), (gpointer) DODGEBURN_HIGHLIGHTS, &options->mode_w[0], diff --git a/app/tools/gimpdodgeburntool.h b/app/tools/gimpdodgeburntool.h index f7234d93ba..8049f6fd7a 100644 --- a/app/tools/gimpdodgeburntool.h +++ b/app/tools/gimpdodgeburntool.h @@ -38,10 +38,10 @@ typedef enum #define GIMP_TYPE_DODGEBURN_TOOL (gimp_dodgeburn_tool_get_type ()) -#define GIMP_DODGEBURN_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DODGEBURN_TOOL, GimpDodgeBurnTool)) -#define GIMP_IS_DODGEBURN_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DODGEBURN_TOOL)) -#define GIMP_DODGEBURN_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DODGEBURN_TOOL, GimpDodgeBurnToolClass)) -#define GIMP_IS_DODGEBURN_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DODGEBURN_TOOL)) +#define GIMP_DODGEBURN_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DODGEBURN_TOOL, GimpDodgeBurnTool)) +#define GIMP_IS_DODGEBURN_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DODGEBURN_TOOL)) +#define GIMP_DODGEBURN_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DODGEBURN_TOOL, GimpDodgeBurnToolClass)) +#define GIMP_IS_DODGEBURN_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DODGEBURN_TOOL)) typedef struct _GimpDodgeBurnTool GimpDodgeBurnTool; diff --git a/app/tools/gimpdrawtool.c b/app/tools/gimpdrawtool.c index e384017111..7c087ba4b5 100644 --- a/app/tools/gimpdrawtool.c +++ b/app/tools/gimpdrawtool.c @@ -85,19 +85,16 @@ gimp_draw_tool_class_init (GimpDrawToolClass *klass) object_class = (GtkObjectClass *) klass; tool_class = (GimpToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_TOOL); + parent_class = g_type_class_peek_parent (klass); gimp_draw_tool_signals[DRAW] = - gtk_signal_new ("draw", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDrawToolClass, - draw), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, gimp_draw_tool_signals, - LAST_SIGNAL); + g_signal_new ("draw", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpDrawToolClass, draw), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = gimp_draw_tool_destroy; diff --git a/app/tools/gimpdrawtool.h b/app/tools/gimpdrawtool.h index 598c37eb51..6fd0b57889 100644 --- a/app/tools/gimpdrawtool.h +++ b/app/tools/gimpdrawtool.h @@ -29,10 +29,10 @@ #define GIMP_TYPE_DRAW_TOOL (gimp_draw_tool_get_type ()) -#define GIMP_DRAW_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAW_TOOL, GimpDrawTool)) -#define GIMP_IS_DRAW_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAW_TOOL)) -#define GIMP_DRAW_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAW_TOOL, GimpDrawToolClass)) -#define GIMP_IS_DRAW_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAW_TOOL)) +#define GIMP_DRAW_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAW_TOOL, GimpDrawTool)) +#define GIMP_IS_DRAW_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DRAW_TOOL)) +#define GIMP_DRAW_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAW_TOOL, GimpDrawToolClass)) +#define GIMP_IS_DRAW_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAW_TOOL)) typedef struct _GimpDrawToolClass GimpDrawToolClass; diff --git a/app/tools/gimpellipseselecttool.h b/app/tools/gimpellipseselecttool.h index 782299eaa6..841e293b20 100644 --- a/app/tools/gimpellipseselecttool.h +++ b/app/tools/gimpellipseselecttool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_ELLIPSE_SELECT_TOOL (gimp_ellipse_select_tool_get_type ()) -#define GIMP_ELLIPSE_SELECT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_ELLIPSE_SELECT_TOOL, GimpEllipseSelectTool)) -#define GIMP_IS_ELLIPSE_SELECT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_ELLIPSE_SELECT_TOOL)) -#define GIMP_ELLIPSE_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ELLIPSE_SELECT_TOOL, GimpEllipseSelectToolClass)) -#define GIMP_IS_ELLIPSE_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ELLIPSE_SELECT_TOOL)) +#define GIMP_ELLIPSE_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_ELLIPSE_SELECT_TOOL, GimpEllipseSelectTool)) +#define GIMP_IS_ELLIPSE_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_ELLIPSE_SELECT_TOOL)) +#define GIMP_ELLIPSE_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ELLIPSE_SELECT_TOOL, GimpEllipseSelectToolClass)) +#define GIMP_IS_ELLIPSE_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ELLIPSE_SELECT_TOOL)) typedef struct _GimpEllipseSelectTool GimpEllipseSelectTool; diff --git a/app/tools/gimperasertool.h b/app/tools/gimperasertool.h index b325bc9e96..5799d2f15b 100644 --- a/app/tools/gimperasertool.h +++ b/app/tools/gimperasertool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_ERASER_TOOL (gimp_eraser_tool_get_type ()) -#define GIMP_ERASER_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_ERASER_TOOL, GimpEraserTool)) -#define GIMP_IS_ERASER_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_ERASER_TOOL)) -#define GIMP_ERASER_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ERASER_TOOL, GimpEraserToolClass)) -#define GIMP_IS_ERASER_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ERASER_TOOL)) +#define GIMP_ERASER_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_ERASER_TOOL, GimpEraserTool)) +#define GIMP_IS_ERASER_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_ERASER_TOOL)) +#define GIMP_ERASER_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ERASER_TOOL, GimpEraserToolClass)) +#define GIMP_IS_ERASER_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ERASER_TOOL)) typedef struct _GimpEraserTool GimpEraserTool; diff --git a/app/tools/gimpfliptool.c b/app/tools/gimpfliptool.c index 9871547db0..c3b07ae60d 100644 --- a/app/tools/gimpfliptool.c +++ b/app/tools/gimpfliptool.c @@ -398,8 +398,9 @@ flip_options_new (void) /* tool toggle */ frame = gimp_radio_group_new2 (TRUE, _("Tool Toggle"), - gimp_radio_button_update, - &options->type, (gpointer) options->type, + G_CALLBACK (gimp_radio_button_update), + &options->type, + (gpointer) options->type, _("Horizontal"), (gpointer) ORIENTATION_HORIZONTAL, &options->type_w[0], diff --git a/app/tools/gimpfliptool.h b/app/tools/gimpfliptool.h index cde40d0e7e..0918383699 100644 --- a/app/tools/gimpfliptool.h +++ b/app/tools/gimpfliptool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_FLIP_TOOL (gimp_flip_tool_get_type ()) -#define GIMP_FLIP_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_FLIP_TOOL, GimpFlipTool)) -#define GIMP_IS_FLIP_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_FLIP_TOOL)) -#define GIMP_FLIP_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FLIP_TOOL, GimpFlipToolClass)) -#define GIMP_IS_FLIP_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FLIP_TOOL)) +#define GIMP_FLIP_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_FLIP_TOOL, GimpFlipTool)) +#define GIMP_IS_FLIP_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_FLIP_TOOL)) +#define GIMP_FLIP_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FLIP_TOOL, GimpFlipToolClass)) +#define GIMP_IS_FLIP_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FLIP_TOOL)) typedef struct _GimpFlipTool GimpFlipTool; diff --git a/app/tools/gimpfreeselecttool.h b/app/tools/gimpfreeselecttool.h index 7923353577..c2b20358e3 100644 --- a/app/tools/gimpfreeselecttool.h +++ b/app/tools/gimpfreeselecttool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_FREE_SELECT_TOOL (gimp_free_select_tool_get_type ()) -#define GIMP_FREE_SELECT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_FREE_SELECT_TOOL, GimpFreeSelectTool)) -#define GIMP_IS_FREE_SELECT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_FREE_SELECT_TOOL)) -#define GIMP_FREE_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FREE_SELECT_TOOL, GimpFreeSelectToolClass)) -#define GIMP_IS_FREE_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FREE_SELECT_TOOL)) +#define GIMP_FREE_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_FREE_SELECT_TOOL, GimpFreeSelectTool)) +#define GIMP_IS_FREE_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_FREE_SELECT_TOOL)) +#define GIMP_FREE_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FREE_SELECT_TOOL, GimpFreeSelectToolClass)) +#define GIMP_IS_FREE_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FREE_SELECT_TOOL)) typedef struct _GimpFreeSelectTool GimpFreeSelectTool; diff --git a/app/tools/gimpfuzzyselecttool.h b/app/tools/gimpfuzzyselecttool.h index 041821e797..9221862305 100644 --- a/app/tools/gimpfuzzyselecttool.h +++ b/app/tools/gimpfuzzyselecttool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_FUZZY_SELECT_TOOL (gimp_fuzzy_select_tool_get_type ()) -#define GIMP_FUZZY_SELECT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_FUZZY_SELECT_TOOL, GimpFuzzySelectTool)) -#define GIMP_IS_FUZZY_SELECT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_FUZZY_SELECT_TOOL)) -#define GIMP_FUZZY_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FUZZY_SELECT_TOOL, GimpFuzzySelectToolClass)) -#define GIMP_IS_FUZZY_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FUZZY_SELECT_TOOL)) +#define GIMP_FUZZY_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_FUZZY_SELECT_TOOL, GimpFuzzySelectTool)) +#define GIMP_IS_FUZZY_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_FUZZY_SELECT_TOOL)) +#define GIMP_FUZZY_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FUZZY_SELECT_TOOL, GimpFuzzySelectToolClass)) +#define GIMP_IS_FUZZY_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FUZZY_SELECT_TOOL)) typedef struct _GimpFuzzySelectTool GimpFuzzySelectTool; diff --git a/app/tools/gimphistogramtool.c b/app/tools/gimphistogramtool.c index a3533d8d0a..20071c9f95 100644 --- a/app/tools/gimphistogramtool.c +++ b/app/tools/gimphistogramtool.c @@ -383,16 +383,19 @@ histogram_tool_dialog_new (void) gtk_box_pack_start (GTK_BOX (htd->channel_menu), label, FALSE, FALSE, 0); gtk_widget_show (label); - option_menu = gimp_option_menu_new2 - (FALSE, histogram_tool_channel_callback, - htd, (gpointer) htd->channel, + option_menu = + gimp_option_menu_new2 (FALSE, + G_CALLBACK (histogram_tool_channel_callback), + htd, + (gpointer) htd->channel, - _("Value"), (gpointer) GIMP_HISTOGRAM_VALUE, NULL, - _("Red"), (gpointer) GIMP_HISTOGRAM_RED, NULL, - _("Green"), (gpointer) GIMP_HISTOGRAM_GREEN, NULL, - _("Blue"), (gpointer) GIMP_HISTOGRAM_BLUE, NULL, + _("Value"), (gpointer) GIMP_HISTOGRAM_VALUE, NULL, + _("Red"), (gpointer) GIMP_HISTOGRAM_RED, NULL, + _("Green"), (gpointer) GIMP_HISTOGRAM_GREEN, NULL, + _("Blue"), (gpointer) GIMP_HISTOGRAM_BLUE, NULL, + + NULL); - NULL); gtk_box_pack_start (GTK_BOX (htd->channel_menu), option_menu, FALSE, FALSE, 0); gtk_widget_show (option_menu); diff --git a/app/tools/gimphistogramtool.h b/app/tools/gimphistogramtool.h index 4b47d8814a..acdfa32831 100644 --- a/app/tools/gimphistogramtool.h +++ b/app/tools/gimphistogramtool.h @@ -32,10 +32,10 @@ #define GIMP_TYPE_HISTOGRAM_TOOL (gimp_histogram_tool_get_type ()) -#define GIMP_HISTOGRAM_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_HISTOGRAM_TOOL, GimpHistogramTool)) -#define GIMP_IS_HISTOGRAM_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_HISTOGRAM_TOOL)) -#define GIMP_HISTOGRAM_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_HISTOGRAM_TOOL, GimpHistogramToolClass)) -#define GIMP_IS_HISTOGRAM_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_HISTOGRAM_TOOL)) +#define GIMP_HISTOGRAM_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_HISTOGRAM_TOOL, GimpHistogramTool)) +#define GIMP_IS_HISTOGRAM_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_HISTOGRAM_TOOL)) +#define GIMP_HISTOGRAM_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_HISTOGRAM_TOOL, GimpHistogramToolClass)) +#define GIMP_IS_HISTOGRAM_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_HISTOGRAM_TOOL)) typedef struct _GimpHistogramTool GimpHistogramTool; diff --git a/app/tools/gimphuesaturationtool.h b/app/tools/gimphuesaturationtool.h index af8aeda2cb..8ff6a2e888 100644 --- a/app/tools/gimphuesaturationtool.h +++ b/app/tools/gimphuesaturationtool.h @@ -36,10 +36,10 @@ typedef enum #define GIMP_TYPE_HUE_SATURATION_TOOL (gimp_hue_saturation_tool_get_type ()) -#define GIMP_HUE_SATURATION_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_HUE_SATURATION_TOOL, GimpHueSaturationTool)) -#define GIMP_IS_HUE_SATURATION_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_HUE_SATURATION_TOOL)) -#define GIMP_HUE_SATURATION_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_HUE_SATURATION_TOOL, GimpHueSaturationToolClass)) -#define GIMP_IS_HUE_SATURATION_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_HUE_SATURATION_TOOL)) +#define GIMP_HUE_SATURATION_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_HUE_SATURATION_TOOL, GimpHueSaturationTool)) +#define GIMP_IS_HUE_SATURATION_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_HUE_SATURATION_TOOL)) +#define GIMP_HUE_SATURATION_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_HUE_SATURATION_TOOL, GimpHueSaturationToolClass)) +#define GIMP_IS_HUE_SATURATION_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_HUE_SATURATION_TOOL)) typedef struct _GimpHueSaturationTool GimpHueSaturationTool; diff --git a/app/tools/gimpimagemaptool.h b/app/tools/gimpimagemaptool.h index 58088ab8f8..7725d1eace 100644 --- a/app/tools/gimpimagemaptool.h +++ b/app/tools/gimpimagemaptool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_IMAGE_MAP_TOOL (gimp_image_map_tool_get_type ()) -#define GIMP_IMAGE_MAP_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_IMAGE_MAP_TOOL, GimpImageMapTool)) -#define GIMP_IS_IMAGE_MAP_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_IMAGE_MAP_TOOL)) -#define GIMP_IMAGE_MAP_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_MAP_TOOL, GimpImageMapToolClass)) -#define GIMP_IS_IMAGE_MAP_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_MAP_TOOL)) +#define GIMP_IMAGE_MAP_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_IMAGE_MAP_TOOL, GimpImageMapTool)) +#define GIMP_IS_IMAGE_MAP_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_IMAGE_MAP_TOOL)) +#define GIMP_IMAGE_MAP_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_MAP_TOOL, GimpImageMapToolClass)) +#define GIMP_IS_IMAGE_MAP_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_MAP_TOOL)) typedef struct _GimpImageMapTool GimpImageMapTool; diff --git a/app/tools/gimpinktool.c b/app/tools/gimpinktool.c index c8ff2a63b6..69f193a824 100644 --- a/app/tools/gimpinktool.c +++ b/app/tools/gimpinktool.c @@ -423,9 +423,10 @@ ink_options_new (void) _("Size:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->size_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->size); + + g_signal_connect (G_OBJECT (options->size_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->size); /* angle adjust slider */ options->tilt_angle_w = @@ -436,9 +437,10 @@ ink_options_new (void) _("Angle:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->tilt_angle_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->tilt_angle); + + g_signal_connect (G_OBJECT (options->tilt_angle_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->tilt_angle); /* sens sliders */ frame = gtk_frame_new (_("Sensitivity")); @@ -461,9 +463,10 @@ ink_options_new (void) _("Size:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->sensitivity_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->sensitivity); + + g_signal_connect (G_OBJECT (options->sensitivity_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->sensitivity); /* tilt sens slider */ options->tilt_sensitivity_w = @@ -474,9 +477,10 @@ ink_options_new (void) _("Tilt:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->tilt_sensitivity_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->tilt_sensitivity); + + g_signal_connect (G_OBJECT (options->tilt_sensitivity_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->tilt_sensitivity); /* velocity sens slider */ options->vel_sensitivity_w = @@ -487,9 +491,10 @@ ink_options_new (void) _("Speed:"), 1.0, 1.0, slider, 1, FALSE); gtk_range_set_update_policy (GTK_RANGE (slider), GTK_UPDATE_DELAYED); - gtk_signal_connect (GTK_OBJECT (options->vel_sensitivity_w), "value_changed", - GTK_SIGNAL_FUNC (gimp_double_adjustment_update), - &options->vel_sensitivity); + + g_signal_connect (G_OBJECT (options->vel_sensitivity_w), "value_changed", + G_CALLBACK (gimp_double_adjustment_update), + &options->vel_sensitivity); /* bottom hbox */ hbox = gtk_hbox_new (FALSE, 2); @@ -518,13 +523,14 @@ ink_options_new (void) gtk_misc_set_padding (GTK_MISC (pixmap_widget), 6, 0); radio_button = gtk_radio_button_new (NULL); - gtk_signal_connect (GTK_OBJECT (radio_button), "toggled", - GTK_SIGNAL_FUNC (ink_type_update), - (gpointer)blob_ellipse); - gtk_container_add (GTK_CONTAINER (radio_button), pixmap_widget); gtk_box_pack_start (GTK_BOX (vbox), radio_button, FALSE, FALSE, 0); + g_signal_connect (G_OBJECT (radio_button), "toggled", + G_CALLBACK (ink_type_update), + (gpointer) blob_ellipse); + + options->function_w[0] = radio_button; pixmap = blob_pixmap (gtk_widget_get_colormap (vbox), @@ -537,13 +543,14 @@ ink_options_new (void) radio_button = gtk_radio_button_new_from_widget (GTK_RADIO_BUTTON (radio_button)); - gtk_signal_connect (GTK_OBJECT (radio_button), "toggled", - GTK_SIGNAL_FUNC (ink_type_update), - (gpointer)blob_square); - gtk_container_add (GTK_CONTAINER (radio_button), pixmap_widget); gtk_box_pack_start (GTK_BOX (vbox), radio_button, FALSE, FALSE, 0); + g_signal_connect (G_OBJECT (radio_button), "toggled", + G_CALLBACK (ink_type_update), + (gpointer) blob_square); + + options->function_w[1] = radio_button; pixmap = blob_pixmap (gtk_widget_get_colormap (vbox), @@ -556,13 +563,14 @@ ink_options_new (void) radio_button = gtk_radio_button_new_from_widget (GTK_RADIO_BUTTON (radio_button)); - gtk_signal_connect (GTK_OBJECT (radio_button), "toggled", - GTK_SIGNAL_FUNC (ink_type_update), - (gpointer)blob_diamond); - gtk_container_add (GTK_CONTAINER (radio_button), pixmap_widget); gtk_box_pack_start (GTK_BOX (vbox), radio_button, FALSE, FALSE, 0); + g_signal_connect (G_OBJECT (radio_button), "toggled", + G_CALLBACK (ink_type_update), + (gpointer) blob_diamond); + + options->function_w[2] = radio_button; /* Brush shape widget */ @@ -591,21 +599,22 @@ ink_options_new (void) gtk_widget_set_events (darea, GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_POINTER_MOTION_MASK | GDK_EXPOSURE_MASK); - gtk_signal_connect (GTK_OBJECT (darea), "button_press_event", - GTK_SIGNAL_FUNC (brush_widget_button_press), - options->brush_w); - gtk_signal_connect (GTK_OBJECT (darea), "button_release_event", - GTK_SIGNAL_FUNC (brush_widget_button_release), - options->brush_w); - gtk_signal_connect (GTK_OBJECT (darea), "motion_notify_event", - GTK_SIGNAL_FUNC (brush_widget_motion_notify), - options->brush_w); - gtk_signal_connect (GTK_OBJECT (darea), "expose_event", - GTK_SIGNAL_FUNC (brush_widget_expose), - options->brush_w); - gtk_signal_connect (GTK_OBJECT (darea), "realize", - GTK_SIGNAL_FUNC (brush_widget_realize), - options->brush_w); + + g_signal_connect (G_OBJECT (darea), "button_press_event", + G_CALLBACK (brush_widget_button_press), + options->brush_w); + g_signal_connect (G_OBJECT (darea), "button_release_event", + G_CALLBACK (brush_widget_button_release), + options->brush_w); + g_signal_connect (G_OBJECT (darea), "motion_notify_event", + G_CALLBACK (brush_widget_motion_notify), + options->brush_w); + g_signal_connect (G_OBJECT (darea), "expose_event", + G_CALLBACK (brush_widget_expose), + options->brush_w); + g_signal_connect (G_OBJECT (darea), "realize", + G_CALLBACK (brush_widget_realize), + options->brush_w); gtk_widget_show_all (hbox); @@ -942,8 +951,12 @@ ink_button_press (GimpTool *tool, tool->gdisp = gdisp; tool->state = ACTIVE; - b = ink_pen_ellipse (x, y, - bevent->pressure, bevent->xtilt, bevent->ytilt, 10.0); +#warning FIXME: presure, tilt + + b = ink_pen_ellipse (x, y, + 0, 0, 0, + /* bevent->pressure, bevent->xtilt, bevent->ytilt, */ + 10.0); ink_paste (ink_tool, drawable, b); ink_tool->last_blob = b; @@ -1124,10 +1137,15 @@ ink_motion (GimpTool *tool, ink_tool->lastx = x; ink_tool->lasty = y; - pressure = mevent->pressure; +#warning FIXME: tilt, pressure + + pressure = 0; /* mevent->pressure; */ velocity = 10.0 * sqrt ((dist) / (double) (thistime - lasttime)); - - b = ink_pen_ellipse (x, y, pressure, mevent->xtilt, mevent->ytilt, velocity); + +#warning FIXME: tilt, pressure + + b = ink_pen_ellipse (x, y, pressure, 0, 0, + /* mevent->xtilt, mevent->ytilt, */ velocity); blob_union = blob_convex_union (ink_tool->last_blob, b); g_free (ink_tool->last_blob); ink_tool->last_blob = b; diff --git a/app/tools/gimpinktool.h b/app/tools/gimpinktool.h index b884a01a43..ee35fdf9c1 100644 --- a/app/tools/gimpinktool.h +++ b/app/tools/gimpinktool.h @@ -29,10 +29,10 @@ #define GIMP_TYPE_INK_TOOL (gimp_ink_tool_get_type ()) -#define GIMP_INK_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_INK_TOOL, GimpInkTool)) -#define GIMP_IS_INK_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_INK_TOOL)) -#define GIMP_INK_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_INK_TOOL, GimpInkToolClass)) -#define GIMP_IS_INK_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_INK_TOOL)) +#define GIMP_INK_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_INK_TOOL, GimpInkTool)) +#define GIMP_IS_INK_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_INK_TOOL)) +#define GIMP_INK_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_INK_TOOL, GimpInkToolClass)) +#define GIMP_IS_INK_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_INK_TOOL)) typedef struct _GimpInkTool GimpInkTool; diff --git a/app/tools/gimpiscissorstool.h b/app/tools/gimpiscissorstool.h index 0c118fc1cc..91e5480ac3 100644 --- a/app/tools/gimpiscissorstool.h +++ b/app/tools/gimpiscissorstool.h @@ -48,10 +48,10 @@ typedef struct _ICurve ICurve; #define GIMP_TYPE_ISCISSORS_TOOL (gimp_iscissors_tool_get_type ()) -#define GIMP_ISCISSORS_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_ISCISSORS_TOOL, GimpIscissorsTool)) -#define GIMP_IS_ISCISSORS_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_ISCISSORS_TOOL)) -#define GIMP_ISCISSORS_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ISCISSORS_TOOL, GimpIscissorsToolClass)) -#define GIMP_IS_ISCISSORS_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ISCISSORS_TOOL)) +#define GIMP_ISCISSORS_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_ISCISSORS_TOOL, GimpIscissorsTool)) +#define GIMP_IS_ISCISSORS_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_ISCISSORS_TOOL)) +#define GIMP_ISCISSORS_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ISCISSORS_TOOL, GimpIscissorsToolClass)) +#define GIMP_IS_ISCISSORS_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ISCISSORS_TOOL)) typedef struct _GimpIscissorsTool GimpIscissorsTool; diff --git a/app/tools/gimplevelstool.c b/app/tools/gimplevelstool.c index 75e7a687df..875c5603b9 100644 --- a/app/tools/gimplevelstool.c +++ b/app/tools/gimplevelstool.c @@ -464,17 +464,25 @@ levels_dialog_new (void) gtk_box_pack_start (GTK_BOX (channel_hbox), label, FALSE, FALSE, 0); gtk_widget_show (label); - ld->channel_menu = gimp_option_menu_new2 - (FALSE, levels_channel_callback, - ld, (gpointer) ld->channel, + ld->channel_menu = + gimp_option_menu_new2 (FALSE, + G_CALLBACK (levels_channel_callback), + ld, + (gpointer) ld->channel, - _("Value"), (gpointer) GIMP_HISTOGRAM_VALUE, &color_option_items[0], - _("Red"), (gpointer) GIMP_HISTOGRAM_RED, &color_option_items[1], - _("Green"), (gpointer) GIMP_HISTOGRAM_GREEN, &color_option_items[2], - _("Blue"), (gpointer) GIMP_HISTOGRAM_BLUE, &color_option_items[3], - _("Alpha"), (gpointer) GIMP_HISTOGRAM_ALPHA, &color_option_items[4], + _("Value"), (gpointer) GIMP_HISTOGRAM_VALUE, + &color_option_items[0], + _("Red"), (gpointer) GIMP_HISTOGRAM_RED, + &color_option_items[1], + _("Green"), (gpointer) GIMP_HISTOGRAM_GREEN, + &color_option_items[2], + _("Blue"), (gpointer) GIMP_HISTOGRAM_BLUE, + &color_option_items[3], + _("Alpha"), (gpointer) GIMP_HISTOGRAM_ALPHA, + &color_option_items[4], + + NULL); - NULL); gtk_box_pack_start (GTK_BOX (channel_hbox), ld->channel_menu, FALSE, FALSE, 0); gtk_widget_show (ld->channel_menu); @@ -1568,8 +1576,8 @@ static void file_dialog_ok_callback (GtkWidget *widget, gpointer data) { - FILE *f; - gchar *filename; + FILE *f; + const gchar *filename; filename = gtk_file_selection_get_filename (GTK_FILE_SELECTION (file_dlg)); diff --git a/app/tools/gimplevelstool.h b/app/tools/gimplevelstool.h index 13645e2807..803bb1e23e 100644 --- a/app/tools/gimplevelstool.h +++ b/app/tools/gimplevelstool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_LEVELS_TOOL (gimp_levels_tool_get_type ()) -#define GIMP_LEVELS_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LEVELS_TOOL, GimpLevelsTool)) -#define GIMP_IS_LEVELS_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_LEVELS_TOOL)) -#define GIMP_LEVELS_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LEVELS_TOOL, GimpLevelsToolClass)) -#define GIMP_IS_LEVELS_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LEVELS_TOOL)) +#define GIMP_LEVELS_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LEVELS_TOOL, GimpLevelsTool)) +#define GIMP_IS_LEVELS_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LEVELS_TOOL)) +#define GIMP_LEVELS_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LEVELS_TOOL, GimpLevelsToolClass)) +#define GIMP_IS_LEVELS_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LEVELS_TOOL)) typedef struct _GimpLevelsTool GimpLevelsTool; diff --git a/app/tools/gimpmagnifytool.c b/app/tools/gimpmagnifytool.c index a149b69184..49362b3356 100644 --- a/app/tools/gimpmagnifytool.c +++ b/app/tools/gimpmagnifytool.c @@ -245,10 +245,11 @@ magnify_options_new (void) /* tool toggle */ frame = gimp_radio_group_new2 (TRUE, _("Tool Toggle"), - gimp_radio_button_update, - &options->type, (gpointer) options->type, + G_CALLBACK (gimp_radio_button_update), + &options->type, + (gpointer) options->type, - _("Zoom in"), (gpointer) GIMP_ZOOM_IN, + _("Zoom in"), (gpointer) GIMP_ZOOM_IN, &options->type_w[0], _("Zoom out"), (gpointer) GIMP_ZOOM_OUT, &options->type_w[1], diff --git a/app/tools/gimpmagnifytool.h b/app/tools/gimpmagnifytool.h index 67131fa6b0..94e6469adf 100644 --- a/app/tools/gimpmagnifytool.h +++ b/app/tools/gimpmagnifytool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_MAGNIFY_TOOL (gimp_magnify_tool_get_type ()) -#define GIMP_MAGNIFY_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_MAGNIFY_TOOL, GimpMagnifyTool)) -#define GIMP_IS_MAGNIFY_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_MAGNIFY_TOOL)) -#define GIMP_MAGNIFY_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_MAGNIFY_TOOL, GimpMagnifyToolClass)) -#define GIMP_IS_MAGNIFY_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_MAGNIFY_TOOL)) +#define GIMP_MAGNIFY_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_MAGNIFY_TOOL, GimpMagnifyTool)) +#define GIMP_IS_MAGNIFY_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_MAGNIFY_TOOL)) +#define GIMP_MAGNIFY_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_MAGNIFY_TOOL, GimpMagnifyToolClass)) +#define GIMP_IS_MAGNIFY_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_MAGNIFY_TOOL)) typedef struct _GimpMagnifyTool GimpMagnifyTool; diff --git a/app/tools/gimpmeasuretool.c b/app/tools/gimpmeasuretool.c index 8a930f1379..9bbafb3c32 100644 --- a/app/tools/gimpmeasuretool.c +++ b/app/tools/gimpmeasuretool.c @@ -812,11 +812,12 @@ measure_tool_options_new (void) gtk_check_button_new_with_label (_("Use Info Window")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (options->use_info_window_w), options->use_info_window_d); - gtk_box_pack_start (GTK_BOX (vbox), options->use_info_window_w, FALSE, FALSE, 0); - gtk_signal_connect (GTK_OBJECT (options->use_info_window_w), "toggled", - GTK_SIGNAL_FUNC (gimp_toggle_button_update), - &options->use_info_window); - gtk_widget_show (options->use_info_window_w); + gtk_box_pack_start (GTK_BOX (vbox), options->use_info_window_w, + FALSE, FALSE, 0); + + g_signal_connect (G_OBJECT (options->use_info_window_w), "toggled", + G_CALLBACK (gimp_toggle_button_update), + &options->use_info_window); return options; } diff --git a/app/tools/gimpmeasuretool.h b/app/tools/gimpmeasuretool.h index 987c7187bd..d35ae20ec3 100644 --- a/app/tools/gimpmeasuretool.h +++ b/app/tools/gimpmeasuretool.h @@ -36,10 +36,10 @@ typedef enum #define GIMP_TYPE_MEASURE_TOOL (gimp_measure_tool_get_type ()) -#define GIMP_MEASURE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_MEASURE_TOOL, GimpMeasureTool)) -#define GIMP_IS_MEASURE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_MEASURE_TOOL)) -#define GIMP_MEASURE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_MEASURE_TOOL, GimpMeasureToolClass)) -#define GIMP_IS_MEASURE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_MEASURE_TOOL)) +#define GIMP_MEASURE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_MEASURE_TOOL, GimpMeasureTool)) +#define GIMP_IS_MEASURE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_MEASURE_TOOL)) +#define GIMP_MEASURE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_MEASURE_TOOL, GimpMeasureToolClass)) +#define GIMP_IS_MEASURE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_MEASURE_TOOL)) typedef struct _GimpMeasureTool GimpMeasureTool; diff --git a/app/tools/gimpmovetool.h b/app/tools/gimpmovetool.h index 945152bf8a..1a4ceafc68 100644 --- a/app/tools/gimpmovetool.h +++ b/app/tools/gimpmovetool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_MOVE_TOOL (gimp_move_tool_get_type ()) -#define GIMP_MOVE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_MOVE_TOOL, GimpMoveTool)) -#define GIMP_IS_MOVE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_MOVE_TOOL)) -#define GIMP_MOVE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_MOVE_TOOL, GimpMoveToolClass)) -#define GIMP_IS_MOVE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_MOVE_TOOL)) +#define GIMP_MOVE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_MOVE_TOOL, GimpMoveTool)) +#define GIMP_IS_MOVE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_MOVE_TOOL)) +#define GIMP_MOVE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_MOVE_TOOL, GimpMoveToolClass)) +#define GIMP_IS_MOVE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_MOVE_TOOL)) typedef struct _GimpMoveTool GimpMoveTool; diff --git a/app/tools/gimppaintbrushtool.h b/app/tools/gimppaintbrushtool.h index a7daacf4fb..2fae0ea596 100644 --- a/app/tools/gimppaintbrushtool.h +++ b/app/tools/gimppaintbrushtool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_PAINTBRUSH_TOOL (gimp_paintbrush_tool_get_type ()) -#define GIMP_PAINTBRUSH_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PAINTBRUSH_TOOL, GimpPaintbrushTool)) -#define GIMP_IS_PAINTBRUSH_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PAINTBRUSH_TOOL)) -#define GIMP_PAINTBRUSH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINTBRUSH_TOOL, GimpPaintbrushToolClass)) -#define GIMP_IS_PAINTBRUSH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINTBRUSH_TOOL)) +#define GIMP_PAINTBRUSH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PAINTBRUSH_TOOL, GimpPaintbrushTool)) +#define GIMP_IS_PAINTBRUSH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PAINTBRUSH_TOOL)) +#define GIMP_PAINTBRUSH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINTBRUSH_TOOL, GimpPaintbrushToolClass)) +#define GIMP_IS_PAINTBRUSH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINTBRUSH_TOOL)) typedef struct _GimpPaintbrushTool GimpPaintbrushTool; diff --git a/app/tools/gimppaintoptions-gui.c b/app/tools/gimppaintoptions-gui.c index dedcca8348..69b8ec9607 100644 --- a/app/tools/gimppaintoptions-gui.c +++ b/app/tools/gimppaintoptions-gui.c @@ -192,7 +192,9 @@ paint_options_init (PaintOptions *options, gtk_table_set_row_spacing (GTK_TABLE (table), 0, 2); options->paint_mode_w = - gimp_paint_mode_menu_new (paint_options_paint_mode_update, options, TRUE, + gimp_paint_mode_menu_new (G_CALLBACK (paint_options_paint_mode_update), + options, + TRUE, gimp_context_get_paint_mode (tool_info->context)); gimp_table_attach_aligned (GTK_TABLE (table), 0, 1, _("Mode:"), 1.0, 0.5, @@ -566,8 +568,6 @@ paint_gradient_options_new (GtkType tool_type, 1e-5, 32767.0, 1.0, 50.0, 0.0); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (gradient->fade_out_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_signal_connect (GTK_OBJECT (gradient->fade_out_w), "value_changed", @@ -621,8 +621,6 @@ paint_gradient_options_new (GtkType tool_type, spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (gradient->gradient_length_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_signal_connect (GTK_OBJECT (gradient->gradient_length_w), "value_changed", @@ -654,16 +652,23 @@ paint_gradient_options_new (GtkType tool_type, gtk_table_attach_defaults (GTK_TABLE (table), abox, 1, 3, 2, 3); gtk_widget_show (abox); - gradient->gradient_type_w = gimp_option_menu_new2 - (FALSE, gimp_menu_item_update, - &gradient->gradient_type, (gpointer) gradient->gradient_type_d, + gradient->gradient_type_w = + gimp_option_menu_new2 (FALSE, + G_CALLBACK (gimp_menu_item_update), + &gradient->gradient_type, + (gpointer) gradient->gradient_type_d, - _("Once Forward"), (gpointer) ONCE_FORWARD, NULL, - _("Once Backward"), (gpointer) ONCE_BACKWARDS, NULL, - _("Loop Sawtooth"), (gpointer) LOOP_SAWTOOTH, NULL, - _("Loop Triangle"), (gpointer) LOOP_TRIANGLE, NULL, + _("Once Forward"), + GINT_TO_POINTER (ONCE_FORWARD), NULL, + _("Once Backward"), + GINT_TO_POINTER (ONCE_BACKWARDS), NULL, + _("Loop Sawtooth"), + GINT_TO_POINTER (LOOP_SAWTOOTH), NULL, + _("Loop Triangle"), + GINT_TO_POINTER (LOOP_TRIANGLE), NULL, + + NULL); - NULL); gtk_container_add (GTK_CONTAINER (abox), gradient->gradient_type_w); gtk_widget_show (gradient->gradient_type_w); diff --git a/app/tools/gimppainttool.c b/app/tools/gimppainttool.c index 102bb77a0b..2bec9afda4 100644 --- a/app/tools/gimppainttool.c +++ b/app/tools/gimppainttool.c @@ -44,6 +44,7 @@ #include "core/gimpgradient.h" #include "core/gimpimage.h" #include "core/gimpimage-mask.h" +#include "core/gimpmarshal.h" #include "gimpdrawtool.h" #include "gimpdodgeburntool.h" @@ -244,21 +245,18 @@ gimp_paint_tool_class_init (GimpPaintToolClass *klass) tool_class = (GimpToolClass *) klass; draw_tool_class = (GimpDrawToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAW_TOOL); + parent_class = g_type_class_peek_parent (klass); gimp_paint_tool_signals[PAINT] = - gtk_signal_new ("paint", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPaintToolClass, - paint), - gtk_marshal_NONE__POINTER_INT, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_paint_tool_signals, - LAST_SIGNAL); + g_signal_new ("paint", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPaintToolClass, paint), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_INT, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_INT); object_class->destroy = gimp_paint_tool_destroy; @@ -352,9 +350,11 @@ gimp_paint_tool_button_press (GimpTool *tool, draw_line = FALSE; - paint_tool->curpressure = bevent->pressure; - paint_tool->curxtilt = bevent->xtilt; - paint_tool->curytilt = bevent->ytilt; +#warning FIXME tilt, pressure + + paint_tool->curpressure = 0; /* bevent->pressure; */ + paint_tool->curxtilt = 0; /* bevent->xtilt; */ + paint_tool->curytilt = 0; /* bevent->ytilt; */ paint_tool->state = bevent->state; if (gdisp != tool->gdisp || @@ -473,13 +473,11 @@ gimp_paint_tool_button_press (GimpTool *tool, */ if (paint_tool->lastx != paint_tool->curx || paint_tool->lasty != paint_tool->cury - || (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->want_null_motion) (paint_tool)) + || GIMP_BRUSH_GET_CLASS (paint_tool->brush)->want_null_motion (paint_tool)) { if (paint_tool->flags & TOOL_CAN_HANDLE_CHANGING_BRUSH) paint_tool->brush = - (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->select_brush) (paint_tool); + GIMP_BRUSH_GET_CLASS (paint_tool->brush)->select_brush (paint_tool); gimp_paint_tool_paint (paint_tool, drawable, MOTION_PAINT); } @@ -551,9 +549,11 @@ gimp_paint_tool_motion (GimpTool *tool, return; } - paint_tool->curpressure = mevent->pressure; - paint_tool->curxtilt = mevent->xtilt; - paint_tool->curytilt = mevent->ytilt; +#warning FIXME: tilt, pressure + + paint_tool->curpressure = 0; /* mevent->pressure; */ + paint_tool->curxtilt = 0; /* mevent->xtilt; */ + paint_tool->curytilt = 0; /* mevent->ytilt; */ paint_tool->state = mevent->state; gimp_paint_tool_interpolate (paint_tool, @@ -619,7 +619,7 @@ gimp_paint_tool_cursor_update (GimpTool *tool, { GtkType type; - type = GTK_OBJECT (tool)->klass->type; + type = G_TYPE_FROM_CLASS (G_OBJECT_GET_CLASS (tool)); if (type == GIMP_TYPE_ERASER_TOOL) { @@ -1015,9 +1015,8 @@ gimp_paint_tool_interpolate (GimpPaintTool *paint_tool, current_brush = paint_tool->brush; if (paint_tool->flags & TOOL_CAN_HANDLE_CHANGING_BRUSH) - paint_tool->brush = - (* GIMP_BRUSH_CLASS (GTK_OBJECT (paint_tool->brush) - ->klass)->select_brush) (paint_tool); + paint_tool->brush = + GIMP_BRUSH_GET_CLASS (paint_tool->brush)->select_brush (paint_tool); gimp_paint_tool_paint(paint_tool, drawable, MOTION_PAINT); /* restore the current brush pointer */ @@ -1056,7 +1055,7 @@ gimp_paint_tool_finish (GimpPaintTool *paint_tool, pu = g_new0 (PaintUndo, 1); pu->tool_ID = GIMP_TOOL (paint_tool)->ID; - pu->tool_type = GTK_OBJECT (paint_tool)->klass->type; + pu->tool_type = G_TYPE_FROM_CLASS (G_OBJECT_GET_CLASS (paint_tool)); pu->lastx = paint_tool->startx; pu->lasty = paint_tool->starty; pu->lastpressure = paint_tool->startpressure; @@ -1319,7 +1318,7 @@ gimp_paint_tool_calculate_brush_size (MaskBuf *mask, { scale = CLAMP (scale, 0.0, 1.0); - if (current_device == GDK_CORE_POINTER) + if (current_device == gdk_core_pointer) { *width = mask->width; *height = mask->height; @@ -1639,7 +1638,7 @@ gimp_paint_tool_get_brush_mask (GimpPaintTool *paint_tool, { MaskBuf *mask; - if (current_device == GDK_CORE_POINTER) + if (current_device == gdk_core_pointer) mask = paint_tool->brush->mask; else mask = gimp_paint_tool_scale_mask (paint_tool->brush->mask, scale); diff --git a/app/tools/gimppainttool.h b/app/tools/gimppainttool.h index 3b2beb7059..a0b3556313 100644 --- a/app/tools/gimppainttool.h +++ b/app/tools/gimppainttool.h @@ -52,10 +52,10 @@ typedef enum /*< skip >*/ #define GIMP_TYPE_PAINT_TOOL (gimp_paint_tool_get_type ()) -#define GIMP_PAINT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PAINT_TOOL, GimpPaintTool)) -#define GIMP_IS_PAINT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PAINT_TOOL)) -#define GIMP_PAINT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINT_TOOL, GimpPaintToolClass)) -#define GIMP_IS_PAINT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINT_TOOL)) +#define GIMP_PAINT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PAINT_TOOL, GimpPaintTool)) +#define GIMP_IS_PAINT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PAINT_TOOL)) +#define GIMP_PAINT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PAINT_TOOL, GimpPaintToolClass)) +#define GIMP_IS_PAINT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PAINT_TOOL)) typedef struct _GimpPaintToolClass GimpPaintToolClass; diff --git a/app/tools/gimppathtool.h b/app/tools/gimppathtool.h index 97a35cc427..83e326ce8d 100644 --- a/app/tools/gimppathtool.h +++ b/app/tools/gimppathtool.h @@ -25,10 +25,10 @@ #define GIMP_TYPE_PATH_TOOL (gimp_path_tool_get_type ()) -#define GIMP_PATH_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PATH_TOOL, GimpPathTool)) -#define GIMP_IS_PATH_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PATH_TOOL)) -#define GIMP_PATH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PATH_TOOL, GimpPathToolClass)) -#define GIMP_IS_PATH_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PATH_TOOL)) +#define GIMP_PATH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PATH_TOOL, GimpPathTool)) +#define GIMP_IS_PATH_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PATH_TOOL)) +#define GIMP_PATH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PATH_TOOL, GimpPathToolClass)) +#define GIMP_IS_PATH_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PATH_TOOL)) typedef struct _GimpPathToolClass GimpPathToolClass; diff --git a/app/tools/gimppenciltool.h b/app/tools/gimppenciltool.h index 0b13f7aa39..31cffbfee5 100644 --- a/app/tools/gimppenciltool.h +++ b/app/tools/gimppenciltool.h @@ -28,10 +28,10 @@ #define GIMP_TYPE_PENCIL_TOOL (gimp_pencil_tool_get_type ()) -#define GIMP_PENCIL_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PENCIL_TOOL, GimpPencilTool)) -#define GIMP_IS_PENCIL_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PENCIL_TOOL)) -#define GIMP_PENCIL_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PENCIL_TOOL, GimpPencilToolClass)) -#define GIMP_IS_PENCIL_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PENCIL_TOOL)) +#define GIMP_PENCIL_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PENCIL_TOOL, GimpPencilTool)) +#define GIMP_IS_PENCIL_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PENCIL_TOOL)) +#define GIMP_PENCIL_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PENCIL_TOOL, GimpPencilToolClass)) +#define GIMP_IS_PENCIL_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PENCIL_TOOL)) typedef struct _GimpPencilTool GimpPencilTool; typedef struct _GimpPencilToolClass GimpPencilToolClass; diff --git a/app/tools/gimpperspectivetool.h b/app/tools/gimpperspectivetool.h index e9ab33a15c..e12d9d50af 100644 --- a/app/tools/gimpperspectivetool.h +++ b/app/tools/gimpperspectivetool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_PERSPECTIVE_TOOL (gimp_perspective_tool_get_type ()) -#define GIMP_PERSPECTIVE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PERSPECTIVE_TOOL, GimpPerspectiveTool)) -#define GIMP_IS_PERSPECTIVE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PERSPECTIVE_TOOL)) -#define GIMP_PERSPECTIVE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PERSPECTIVE_TOOL, GimpPerspectiveToolClass)) -#define GIMP_IS_PERSPECTIVE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PERSPECTIVE_TOOL)) +#define GIMP_PERSPECTIVE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PERSPECTIVE_TOOL, GimpPerspectiveTool)) +#define GIMP_IS_PERSPECTIVE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PERSPECTIVE_TOOL)) +#define GIMP_PERSPECTIVE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PERSPECTIVE_TOOL, GimpPerspectiveToolClass)) +#define GIMP_IS_PERSPECTIVE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PERSPECTIVE_TOOL)) typedef struct _GimpPerspectiveTool GimpPerspectiveTool; diff --git a/app/tools/gimpposterizetool.h b/app/tools/gimpposterizetool.h index 97b66c8da8..7b4011bc1a 100644 --- a/app/tools/gimpposterizetool.h +++ b/app/tools/gimpposterizetool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_POSTERIZE_TOOL (gimp_posterize_tool_get_type ()) -#define GIMP_POSTERIZE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_POSTERIZE_TOOL, GimpPosterizeTool)) -#define GIMP_IS_POSTERIZE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_POSTERIZE_TOOL)) -#define GIMP_POSTERIZE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_POSTERIZE_TOOL, GimpPosterizeToolClass)) -#define GIMP_IS_POSTERIZE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_POSTERIZE_TOOL)) +#define GIMP_POSTERIZE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_POSTERIZE_TOOL, GimpPosterizeTool)) +#define GIMP_IS_POSTERIZE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_POSTERIZE_TOOL)) +#define GIMP_POSTERIZE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_POSTERIZE_TOOL, GimpPosterizeToolClass)) +#define GIMP_IS_POSTERIZE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_POSTERIZE_TOOL)) typedef struct _GimpPosterizeTool GimpPosterizeTool; diff --git a/app/tools/gimprectselecttool.c b/app/tools/gimprectselecttool.c index 1f27d38f58..90b22d80fa 100644 --- a/app/tools/gimprectselecttool.c +++ b/app/tools/gimprectselecttool.c @@ -190,22 +190,20 @@ gimp_rect_select_tool_class_init (GimpRectSelectToolClass *klass) tool_class = (GimpToolClass *) klass; draw_tool_class = (GimpDrawToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_SELECTION_TOOL); + parent_class = g_type_class_peek_parent (klass); rect_select_signals[RECT_SELECT] = - gtk_signal_new ("rect_select", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpRectSelectToolClass, - rect_select), - gimp_marshal_NONE__INT_INT_INT_INT, - GTK_TYPE_NONE, 4, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, rect_select_signals, LAST_SIGNAL); + g_signal_new ("rect_select", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpRectSelectToolClass, rect_select), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT_INT_INT, + G_TYPE_NONE, 4, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT, + G_TYPE_INT); object_class->destroy = gimp_rect_select_tool_destroy; diff --git a/app/tools/gimprectselecttool.h b/app/tools/gimprectselecttool.h index 64e0bba2b5..237740837b 100644 --- a/app/tools/gimprectselecttool.h +++ b/app/tools/gimprectselecttool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_RECT_SELECT_TOOL (gimp_rect_select_tool_get_type ()) -#define GIMP_RECT_SELECT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_RECT_SELECT_TOOL, GimpRectSelectTool)) -#define GIMP_IS_RECT_SELECT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_RECT_SELECT_TOOL)) -#define GIMP_RECT_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_RECT_SELECT_TOOL, GimpRectSelectToolClass)) -#define GIMP_IS_RECT_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_RECT_SELECT_TOOL)) +#define GIMP_RECT_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_RECT_SELECT_TOOL, GimpRectSelectTool)) +#define GIMP_IS_RECT_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_RECT_SELECT_TOOL)) +#define GIMP_RECT_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_RECT_SELECT_TOOL, GimpRectSelectToolClass)) +#define GIMP_IS_RECT_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_RECT_SELECT_TOOL)) typedef struct _GimpRectSelectTool GimpRectSelectTool; diff --git a/app/tools/gimpregionselecttool.h b/app/tools/gimpregionselecttool.h index 041821e797..9221862305 100644 --- a/app/tools/gimpregionselecttool.h +++ b/app/tools/gimpregionselecttool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_FUZZY_SELECT_TOOL (gimp_fuzzy_select_tool_get_type ()) -#define GIMP_FUZZY_SELECT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_FUZZY_SELECT_TOOL, GimpFuzzySelectTool)) -#define GIMP_IS_FUZZY_SELECT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_FUZZY_SELECT_TOOL)) -#define GIMP_FUZZY_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FUZZY_SELECT_TOOL, GimpFuzzySelectToolClass)) -#define GIMP_IS_FUZZY_SELECT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FUZZY_SELECT_TOOL)) +#define GIMP_FUZZY_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_FUZZY_SELECT_TOOL, GimpFuzzySelectTool)) +#define GIMP_IS_FUZZY_SELECT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_FUZZY_SELECT_TOOL)) +#define GIMP_FUZZY_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FUZZY_SELECT_TOOL, GimpFuzzySelectToolClass)) +#define GIMP_IS_FUZZY_SELECT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FUZZY_SELECT_TOOL)) typedef struct _GimpFuzzySelectTool GimpFuzzySelectTool; diff --git a/app/tools/gimprotatetool.c b/app/tools/gimprotatetool.c index 337c3fa624..f294fcb056 100644 --- a/app/tools/gimprotatetool.c +++ b/app/tools/gimprotatetool.c @@ -261,7 +261,8 @@ gimp_rotate_tool_transform (GimpTransformTool *transform_tool, gdisp->gimage->unit, "%a", TRUE, TRUE, FALSE, GIMP_SIZE_ENTRY_UPDATE_SIZE, - rotate_center_changed, tool); + G_CALLBACK (rotate_center_changed), + tool); gimp_size_entry_add_field (GIMP_SIZE_ENTRY (sizeentry), GTK_SPIN_BUTTON (spinbutton2), NULL); diff --git a/app/tools/gimprotatetool.h b/app/tools/gimprotatetool.h index 83862a055d..abfa5c15d1 100644 --- a/app/tools/gimprotatetool.h +++ b/app/tools/gimprotatetool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_ROTATE_TOOL (gimp_rotate_tool_get_type ()) -#define GIMP_ROTATE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_ROTATE_TOOL, GimpRotateTool)) -#define GIMP_IS_ROTATE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_ROTATE_TOOL)) -#define GIMP_ROTATE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ROTATE_TOOL, GimpRotateToolClass)) -#define GIMP_IS_ROTATE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ROTATE_TOOL)) +#define GIMP_ROTATE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_ROTATE_TOOL, GimpRotateTool)) +#define GIMP_IS_ROTATE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_ROTATE_TOOL)) +#define GIMP_ROTATE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_ROTATE_TOOL, GimpRotateToolClass)) +#define GIMP_IS_ROTATE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_ROTATE_TOOL)) typedef struct _GimpRotateTool GimpRotateTool; diff --git a/app/tools/gimpscaletool.c b/app/tools/gimpscaletool.c index 573f51eda2..546adc94cf 100644 --- a/app/tools/gimpscaletool.c +++ b/app/tools/gimpscaletool.c @@ -203,9 +203,11 @@ gimp_scale_tool_transform (GimpTransformTool *tr_tool, gdisp->gimage->unit, "%a", TRUE, TRUE, FALSE, GIMP_SIZE_ENTRY_UPDATE_SIZE, - gimp_scale_tool_size_changed, tool); - gtk_signal_connect (GTK_OBJECT (sizeentry), "unit_changed", - gimp_scale_tool_unit_changed, sc_tool); + G_CALLBACK (gimp_scale_tool_size_changed), + tool); + g_signal_connect (G_OBJECT (sizeentry), "unit_changed", + G_CALLBACK (gimp_scale_tool_unit_changed), + sc_tool); gimp_size_entry_add_field (GIMP_SIZE_ENTRY (sizeentry), GTK_SPIN_BUTTON (spinbutton), NULL); diff --git a/app/tools/gimpscaletool.h b/app/tools/gimpscaletool.h index 0fc528199d..5c820b3d4f 100644 --- a/app/tools/gimpscaletool.h +++ b/app/tools/gimpscaletool.h @@ -24,9 +24,9 @@ #define GIMP_TYPE_SCALE_TOOL (gimp_scale_tool_get_type ()) -#define GIMP_SCALE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_SCALE_TOOL, GimpScaleTool)) -#define GIMP_IS_SCALE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_SCALE_TOOL)) -#define GIMP_SCALE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SCALE_TOOL, GimpScaleToolClass)) +#define GIMP_SCALE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_SCALE_TOOL, GimpScaleTool)) +#define GIMP_IS_SCALE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_SCALE_TOOL)) +#define GIMP_SCALE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SCALE_TOOL, GimpScaleToolClass)) typedef struct _GimpScaleTool GimpScaleTool; diff --git a/app/tools/gimpselectionoptions.c b/app/tools/gimpselectionoptions.c index 87bf79ea33..a1fb7b0565 100644 --- a/app/tools/gimpselectionoptions.c +++ b/app/tools/gimpselectionoptions.c @@ -248,8 +248,6 @@ selection_options_init (SelectionOptions *options, 1.0, 50.0, 0.0); width_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (options->fixed_width_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON(width_spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (width_spinbutton), TRUE); gtk_widget_set_usize (width_spinbutton, 75, 0); gtk_signal_connect (GTK_OBJECT (options->fixed_width_w), "value_changed", @@ -264,8 +262,6 @@ selection_options_init (SelectionOptions *options, 1.0, 50.0, 0.0); height_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (options->fixed_height_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON(height_spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(height_spinbutton), TRUE); gtk_widget_set_usize (height_spinbutton, 75, 0); gtk_signal_connect (GTK_OBJECT (options->fixed_height_w), "value_changed", diff --git a/app/tools/gimpselectiontool.h b/app/tools/gimpselectiontool.h index 35195ed98f..20a757470c 100644 --- a/app/tools/gimpselectiontool.h +++ b/app/tools/gimpselectiontool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_SELECTION_TOOL (gimp_selection_tool_get_type ()) -#define GIMP_SELECTION_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_SELECTION_TOOL, GimpSelectionTool)) -#define GIMP_IS_SELECTION_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_SELECTION_TOOL)) -#define GIMP_SELECTION_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SELECTION_TOOL, GimpSelectionToolClass)) -#define GIMP_IS_SELECTION_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SELECTION_TOOL)) +#define GIMP_SELECTION_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_SELECTION_TOOL, GimpSelectionTool)) +#define GIMP_IS_SELECTION_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_SELECTION_TOOL)) +#define GIMP_SELECTION_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SELECTION_TOOL, GimpSelectionToolClass)) +#define GIMP_IS_SELECTION_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SELECTION_TOOL)) typedef struct _GimpSelectionTool GimpSelectionTool; diff --git a/app/tools/gimpsheartool.c b/app/tools/gimpsheartool.c index 18b921130f..f2f9523d85 100644 --- a/app/tools/gimpsheartool.c +++ b/app/tools/gimpsheartool.c @@ -226,13 +226,15 @@ gimp_shear_tool_transform (GimpTransformTool *transform_tool, _("Shear Magnitude X:"), &xshear_val, -65536, 65536, 1, 15, 1, 1, 0, - shear_x_mag_changed, tool); + G_CALLBACK (shear_x_mag_changed), + tool); info_dialog_add_spinbutton (transform_info, _("Y:"), &yshear_val, -65536, 65536, 1, 15, 1, 1, 0, - shear_y_mag_changed, tool); + G_CALLBACK (shear_y_mag_changed), + tool); } gtk_widget_set_sensitive (GTK_WIDGET (transform_info->shell), TRUE); transform_tool->trans_info[HORZ_OR_VERT] = ORIENTATION_UNKNOWN; diff --git a/app/tools/gimpsheartool.h b/app/tools/gimpsheartool.h index 7cf3349504..2a80e7dfd3 100644 --- a/app/tools/gimpsheartool.h +++ b/app/tools/gimpsheartool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_SHEAR_TOOL (gimp_shear_tool_get_type ()) -#define GIMP_SHEAR_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_SHEAR_TOOL, GimpShearTool)) -#define GIMP_IS_SHEAR_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_SHEAR_TOOL)) -#define GIMP_SHEAR_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SHEAR_TOOL, GimpShearToolClass)) -#define GIMP_IS_SHEAR_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SHEAR_TOOL)) +#define GIMP_SHEAR_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_SHEAR_TOOL, GimpShearTool)) +#define GIMP_IS_SHEAR_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_SHEAR_TOOL)) +#define GIMP_SHEAR_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SHEAR_TOOL, GimpShearToolClass)) +#define GIMP_IS_SHEAR_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SHEAR_TOOL)) typedef struct _GimpShearTool GimpShearTool; diff --git a/app/tools/gimpsmudgetool.h b/app/tools/gimpsmudgetool.h index 1584535691..2c453f6c5b 100644 --- a/app/tools/gimpsmudgetool.h +++ b/app/tools/gimpsmudgetool.h @@ -38,10 +38,10 @@ typedef enum #define GIMP_TYPE_SMUDGE_TOOL (gimp_smudge_tool_get_type ()) -#define GIMP_SMUDGE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_SMUDGE_TOOL, GimpSmudgeTool)) -#define GIMP_IS_SMUDGE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_SMUDGE_TOOL)) -#define GIMP_SMUDGE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SMUDGE_TOOL, GimpSmudgeToolClass)) -#define GIMP_IS_SMUDGE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SMUDGE_TOOL)) +#define GIMP_SMUDGE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_SMUDGE_TOOL, GimpSmudgeTool)) +#define GIMP_IS_SMUDGE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_SMUDGE_TOOL)) +#define GIMP_SMUDGE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SMUDGE_TOOL, GimpSmudgeToolClass)) +#define GIMP_IS_SMUDGE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SMUDGE_TOOL)) typedef struct _GimpSmudgeTool GimpSmudgeTool; diff --git a/app/tools/gimpsourcetool.c b/app/tools/gimpsourcetool.c index 8df6c9d433..77d21f81c9 100644 --- a/app/tools/gimpsourcetool.c +++ b/app/tools/gimpsourcetool.c @@ -807,7 +807,7 @@ clone_options_new (void) vbox = ((GimpToolOptions *) options)->main_vbox; frame = gimp_radio_group_new2 (TRUE, _("Source"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->type, (gpointer) options->type, _("Image Source"), (gpointer) IMAGE_CLONE, @@ -821,7 +821,7 @@ clone_options_new (void) gtk_widget_show (frame); frame = gimp_radio_group_new2 (TRUE, _("Alignment"), - gimp_radio_button_update, + G_CALLBACK (gimp_radio_button_update), &options->aligned, (gpointer) options->aligned, _("Non Aligned"), (gpointer) ALIGN_NO, diff --git a/app/tools/gimpsourcetool.h b/app/tools/gimpsourcetool.h index 15ce1359fd..c1debe09c5 100644 --- a/app/tools/gimpsourcetool.h +++ b/app/tools/gimpsourcetool.h @@ -31,10 +31,10 @@ typedef enum #define GIMP_TYPE_CLONE_TOOL (gimp_clone_tool_get_type ()) -#define GIMP_CLONE_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CLONE_TOOL, GimpCloneTool)) -#define GIMP_IS_CLONE_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CLONE_TOOL)) -#define GIMP_CLONE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CLONE_TOOL, GimpCloneToolClass)) -#define GIMP_IS_CLONE_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CLONE_TOOL)) +#define GIMP_CLONE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CLONE_TOOL, GimpCloneTool)) +#define GIMP_IS_CLONE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CLONE_TOOL)) +#define GIMP_CLONE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CLONE_TOOL, GimpCloneToolClass)) +#define GIMP_IS_CLONE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CLONE_TOOL)) typedef struct _GimpCloneTool GimpCloneTool; diff --git a/app/tools/gimptexttool.c b/app/tools/gimptexttool.c index 9b87e59288..c34b346eb0 100644 --- a/app/tools/gimptexttool.c +++ b/app/tools/gimptexttool.c @@ -308,8 +308,6 @@ text_tool_options_new (void) &options->border); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (options->border_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_box_pack_start (GTK_BOX (hbox), spinbutton, FALSE, FALSE, 0); diff --git a/app/tools/gimptexttool.h b/app/tools/gimptexttool.h index 525d42b554..b723ba85ce 100644 --- a/app/tools/gimptexttool.h +++ b/app/tools/gimptexttool.h @@ -33,10 +33,10 @@ typedef enum #define GIMP_TYPE_TEXT_TOOL (gimp_text_tool_get_type ()) -#define GIMP_TEXT_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_TEXT_TOOL, GimpTextTool)) -#define GIMP_IS_TEXT_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_TEXT_TOOL)) -#define GIMP_TEXT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TEXT_TOOL, GimpTextToolClass)) -#define GIMP_IS_TEXT_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TEXT_TOOL)) +#define GIMP_TEXT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_TEXT_TOOL, GimpTextTool)) +#define GIMP_IS_TEXT_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_TEXT_TOOL)) +#define GIMP_TEXT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TEXT_TOOL, GimpTextToolClass)) +#define GIMP_IS_TEXT_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TEXT_TOOL)) typedef struct _GimpTextTool GimpTextTool; typedef struct _GimpTextToolClass GimpTextToolClass; diff --git a/app/tools/gimpthresholdtool.h b/app/tools/gimpthresholdtool.h index 39219ef1ba..104e1554a6 100644 --- a/app/tools/gimpthresholdtool.h +++ b/app/tools/gimpthresholdtool.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_THRESHOLD_TOOL (gimp_threshold_tool_get_type ()) -#define GIMP_THRESHOLD_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_THRESHOLD_TOOL, GimpThresholdTool)) -#define GIMP_IS_THRESHOLD_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_THRESHOLD_TOOL)) -#define GIMP_THRESHOLD_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_THRESHOLD_TOOL, GimpThresholdToolClass)) -#define GIMP_IS_THRESHOLD_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_THRESHOLD_TOOL)) +#define GIMP_THRESHOLD_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_THRESHOLD_TOOL, GimpThresholdTool)) +#define GIMP_IS_THRESHOLD_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_THRESHOLD_TOOL)) +#define GIMP_THRESHOLD_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_THRESHOLD_TOOL, GimpThresholdToolClass)) +#define GIMP_IS_THRESHOLD_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_THRESHOLD_TOOL)) typedef struct _GimpThresholdTool GimpThresholdTool; diff --git a/app/tools/gimptool.c b/app/tools/gimptool.c index 0d9b0dbd46..556a3c8eec 100644 --- a/app/tools/gimptool.c +++ b/app/tools/gimptool.c @@ -25,6 +25,7 @@ #include "tools-types.h" #include "core/gimpimage.h" +#include "core/gimpmarshal.h" #include "gimptool.h" #include "tool_manager.h" @@ -122,107 +123,105 @@ gimp_tool_class_init (GimpToolClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); gimp_tool_signals[INITIALIZE] = - gtk_signal_new ("initialize", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - initialize), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, 1, - GTK_TYPE_POINTER); + g_signal_new ("initialize", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, initialize), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); gimp_tool_signals[CONTROL] = - gtk_signal_new ("control", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - control), - gtk_marshal_NONE__INT_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_INT, - GTK_TYPE_POINTER); + g_signal_new ("control", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, control), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_POINTER, + G_TYPE_NONE, 2, + G_TYPE_INT, + G_TYPE_POINTER); gimp_tool_signals[BUTTON_PRESS] = - gtk_signal_new ("button_press", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - button_press), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("button_press", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, button_press), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_POINTER, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_POINTER); gimp_tool_signals[BUTTON_RELEASE] = - gtk_signal_new ("button_release", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - button_release), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("button_release", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, button_release), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_POINTER, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_POINTER); gimp_tool_signals[MOTION] = - gtk_signal_new ("motion", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - motion), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("motion", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, motion), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_POINTER, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_POINTER); gimp_tool_signals[ARROW_KEY] = - gtk_signal_new ("arrow_key", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - arrow_key), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("arrow_key", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, arrow_key), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_POINTER, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_POINTER); gimp_tool_signals[MODIFIER_KEY] = - gtk_signal_new ("modifier_key", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - modifier_key), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("modifier_key", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, modifier_key), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_POINTER, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_POINTER); gimp_tool_signals[CURSOR_UPDATE] = - gtk_signal_new ("cursor_update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - cursor_update), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("cursor_update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, cursor_update), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_POINTER, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_POINTER); gimp_tool_signals[OPER_UPDATE] = - gtk_signal_new ("oper_update", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpToolClass, - oper_update), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); - - gtk_object_class_add_signals (object_class, gimp_tool_signals, LAST_SIGNAL); + g_signal_new ("oper_update", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpToolClass, oper_update), + NULL, NULL, + gimp_cclosure_marshal_VOID__POINTER_POINTER, + G_TYPE_NONE, 2, + G_TYPE_POINTER, + G_TYPE_POINTER); object_class->destroy = gimp_tool_destroy; @@ -382,7 +381,7 @@ gimp_tool_get_PDB_string (GimpTool *tool) object = GTK_OBJECT (tool); - klass = GIMP_TOOL_CLASS (object->klass); + klass = GIMP_TOOL_GET_CLASS (object); return klass->pdb_string; } diff --git a/app/tools/gimptool.h b/app/tools/gimptool.h index 63e13a0179..7bd8f245d5 100644 --- a/app/tools/gimptool.h +++ b/app/tools/gimptool.h @@ -30,10 +30,11 @@ #define GIMP_TYPE_TOOL (gimp_tool_get_type ()) -#define GIMP_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_TOOL, GimpTool)) -#define GIMP_IS_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_TOOL)) -#define GIMP_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TOOL, GimpToolClass)) -#define GIMP_IS_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TOOL)) +#define GIMP_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_TOOL, GimpTool)) +#define GIMP_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TOOL, GimpToolClass)) +#define GIMP_IS_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_TOOL)) +#define GIMP_IS_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TOOL)) +#define GIMP_TOOL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_TOOL, GimpToolClass)) typedef struct _GimpToolClass GimpToolClass; diff --git a/app/tools/gimptransformtool.c b/app/tools/gimptransformtool.c index f491d437bd..e2df8f913a 100644 --- a/app/tools/gimptransformtool.c +++ b/app/tools/gimptransformtool.c @@ -136,14 +136,16 @@ static void gimp_transform_tool_draw (GimpDrawTool *draw_too static TranInfo old_trans_info; InfoDialog *transform_info = NULL; static gboolean transform_info_inited = FALSE; -static GimpDrawToolClass *parent_class = NULL; -static guint gimp_transform_tool_signals[LAST_SIGNAL] = { 0 }; + +static GimpDrawToolClass *parent_class = NULL; + +static guint gimp_transform_tool_signals[LAST_SIGNAL] = { 0 }; -GtkType +GType gimp_transform_tool_get_type (void) { - static GtkType tool_type = 0; + static GType tool_type = 0; if (! tool_type) { @@ -176,21 +178,18 @@ gimp_transform_tool_class_init (GimpTransformToolClass *klass) tool_class = (GimpToolClass *) klass; draw_class = (GimpDrawToolClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAW_TOOL); + parent_class = g_type_class_peek_parent (klass); gimp_transform_tool_signals[TRANSFORM] = - gtk_signal_new ("transform", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpTransformToolClass, - transform), - gimp_marshal_POINTER__POINTER_INT, - GTK_TYPE_POINTER, 2, - GTK_TYPE_POINTER, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_transform_tool_signals, - LAST_SIGNAL); + g_signal_new ("transform", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpTransformToolClass, transform), + NULL, NULL, + gimp_cclosure_marshal_POINTER__POINTER_INT, + G_TYPE_POINTER, 2, + G_TYPE_POINTER, + G_TYPE_INT); object_class->destroy = gimp_transform_tool_destroy; @@ -452,7 +451,7 @@ gimp_transform_tool_button_press (GimpTool *tool, if (transform_info && !transform_info_inited) { - GtkType tool_type; + GType tool_type; tool_type = gimp_context_get_tool (gimp_get_user_context (gdisp->gimage->gimp))->tool_type; @@ -611,7 +610,7 @@ gimp_transform_tool_doit (GimpTransformTool *gt_tool, /* create and initialize the transform_undo structure */ tu = g_new0 (TransformUndo, 1); tu->tool_ID = tool->ID; - tu->tool_type = GTK_OBJECT (tool)->klass->type; + tu->tool_type = G_TYPE_FROM_INSTANCE (tool); for (i = 0; i < TRAN_INFO_SIZE; i++) tu->trans_info[i] = old_trans_info[i]; diff --git a/app/tools/gimptransformtool.h b/app/tools/gimptransformtool.h index 097e86c398..3d3d07bf7c 100644 --- a/app/tools/gimptransformtool.h +++ b/app/tools/gimptransformtool.h @@ -36,10 +36,10 @@ typedef gdouble TranInfo[TRAN_INFO_SIZE]; #define GIMP_TYPE_TRANSFORM_TOOL (gimp_transform_tool_get_type ()) -#define GIMP_TRANSFORM_TOOL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_TRANSFORM_TOOL, GimpTransformTool)) -#define GIMP_IS_TRANSFORM_TOOL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_TRANSFORM_TOOL)) -#define GIMP_TRANSFORM_TOOL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TRANSFORM_TOOL, GimpTransformToolClass)) -#define GIMP_IS_TRANSFORM_TOOL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TRANSFORM_TOOL)) +#define GIMP_TRANSFORM_TOOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_TRANSFORM_TOOL, GimpTransformTool)) +#define GIMP_IS_TRANSFORM_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_TRANSFORM_TOOL)) +#define GIMP_TRANSFORM_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TRANSFORM_TOOL, GimpTransformToolClass)) +#define GIMP_IS_TRANSFORM_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TRANSFORM_TOOL)) typedef struct _GimpTransformToolClass GimpTransformToolClass; diff --git a/app/tools/paint_options.c b/app/tools/paint_options.c index dedcca8348..69b8ec9607 100644 --- a/app/tools/paint_options.c +++ b/app/tools/paint_options.c @@ -192,7 +192,9 @@ paint_options_init (PaintOptions *options, gtk_table_set_row_spacing (GTK_TABLE (table), 0, 2); options->paint_mode_w = - gimp_paint_mode_menu_new (paint_options_paint_mode_update, options, TRUE, + gimp_paint_mode_menu_new (G_CALLBACK (paint_options_paint_mode_update), + options, + TRUE, gimp_context_get_paint_mode (tool_info->context)); gimp_table_attach_aligned (GTK_TABLE (table), 0, 1, _("Mode:"), 1.0, 0.5, @@ -566,8 +568,6 @@ paint_gradient_options_new (GtkType tool_type, 1e-5, 32767.0, 1.0, 50.0, 0.0); spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (gradient->fade_out_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_signal_connect (GTK_OBJECT (gradient->fade_out_w), "value_changed", @@ -621,8 +621,6 @@ paint_gradient_options_new (GtkType tool_type, spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (gradient->gradient_length_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, 0); gtk_signal_connect (GTK_OBJECT (gradient->gradient_length_w), "value_changed", @@ -654,16 +652,23 @@ paint_gradient_options_new (GtkType tool_type, gtk_table_attach_defaults (GTK_TABLE (table), abox, 1, 3, 2, 3); gtk_widget_show (abox); - gradient->gradient_type_w = gimp_option_menu_new2 - (FALSE, gimp_menu_item_update, - &gradient->gradient_type, (gpointer) gradient->gradient_type_d, + gradient->gradient_type_w = + gimp_option_menu_new2 (FALSE, + G_CALLBACK (gimp_menu_item_update), + &gradient->gradient_type, + (gpointer) gradient->gradient_type_d, - _("Once Forward"), (gpointer) ONCE_FORWARD, NULL, - _("Once Backward"), (gpointer) ONCE_BACKWARDS, NULL, - _("Loop Sawtooth"), (gpointer) LOOP_SAWTOOTH, NULL, - _("Loop Triangle"), (gpointer) LOOP_TRIANGLE, NULL, + _("Once Forward"), + GINT_TO_POINTER (ONCE_FORWARD), NULL, + _("Once Backward"), + GINT_TO_POINTER (ONCE_BACKWARDS), NULL, + _("Loop Sawtooth"), + GINT_TO_POINTER (LOOP_SAWTOOTH), NULL, + _("Loop Triangle"), + GINT_TO_POINTER (LOOP_TRIANGLE), NULL, + + NULL); - NULL); gtk_container_add (GTK_CONTAINER (abox), gradient->gradient_type_w); gtk_widget_show (gradient->gradient_type_w); diff --git a/app/tools/selection_options.c b/app/tools/selection_options.c index 87bf79ea33..a1fb7b0565 100644 --- a/app/tools/selection_options.c +++ b/app/tools/selection_options.c @@ -248,8 +248,6 @@ selection_options_init (SelectionOptions *options, 1.0, 50.0, 0.0); width_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (options->fixed_width_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON(width_spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (width_spinbutton), TRUE); gtk_widget_set_usize (width_spinbutton, 75, 0); gtk_signal_connect (GTK_OBJECT (options->fixed_width_w), "value_changed", @@ -264,8 +262,6 @@ selection_options_init (SelectionOptions *options, 1.0, 50.0, 0.0); height_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (options->fixed_height_w), 1.0, 0.0); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON(height_spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(height_spinbutton), TRUE); gtk_widget_set_usize (height_spinbutton, 75, 0); gtk_signal_connect (GTK_OBJECT (options->fixed_height_w), "value_changed", diff --git a/app/tools/tool_manager.c b/app/tools/tool_manager.c index 1ac59c03d8..c0662bb399 100644 --- a/app/tools/tool_manager.c +++ b/app/tools/tool_manager.c @@ -105,14 +105,14 @@ tool_manager_init (Gimp *gimp) tool_manager->image_dirty_handler_id = gimp_container_add_handler (gimp->images, "dirty", - GTK_SIGNAL_FUNC (tool_manager_image_dirty), + G_CALLBACK (tool_manager_image_dirty), tool_manager); user_context = gimp_get_user_context (gimp); - gtk_signal_connect (GTK_OBJECT (user_context), "tool_changed", - GTK_SIGNAL_FUNC (tool_manager_tool_changed), - tool_manager); + g_signal_connect (G_OBJECT (user_context), "tool_changed", + G_CALLBACK (tool_manager_tool_changed), + tool_manager); /* Create a context to store the paint options of the * global paint options mode @@ -289,12 +289,12 @@ tool_manager_initialize_tool (Gimp *gimp, tool_manager = tool_manager_get (gimp); - tool_type = GTK_OBJECT (tool)->klass->type; + tool_type = G_TYPE_FROM_INSTANCE (tool); /* Tools which have an init function have dialogs and * cannot be initialized without a display */ - if (GIMP_TOOL_CLASS (GTK_OBJECT (tool)->klass)->initialize && ! gdisp) + if (GIMP_TOOL_GET_CLASS (tool)->initialize && ! gdisp) { tool_info = tool_manager_get_info_by_type (gimp, GIMP_TYPE_RECT_SELECT_TOOL); @@ -504,7 +504,7 @@ tool_manager_get_info_by_tool (Gimp *gimp, g_return_val_if_fail (tool != NULL, NULL); g_return_val_if_fail (GIMP_IS_TOOL (tool), NULL); - return tool_manager_get_info_by_type (gimp, GTK_OBJECT (tool)->klass->type); + return tool_manager_get_info_by_type (gimp, G_TYPE_FROM_INSTANCE (tool)); } const gchar * @@ -620,23 +620,23 @@ tool_manager_tool_changed (GimpContext *user_context, /* there may be contexts waiting for the user_context's "tool_changed" * signal, so stop emitting it. */ - gtk_signal_emit_stop_by_name (GTK_OBJECT (user_context), "tool_changed"); + g_signal_stop_emission_by_name (G_OBJECT (user_context), "tool_changed"); - if (GTK_OBJECT (tool_manager->active_tool)->klass->type != + if (G_TYPE_FROM_INSTANCE (tool_manager->active_tool) != tool_info->tool_type) { - gtk_signal_handler_block_by_func (GTK_OBJECT (user_context), - tool_manager_tool_changed, - data); + g_signal_handlers_block_by_func (G_OBJECT (user_context), + tool_manager_tool_changed, + data); /* explicitly set the current tool */ gimp_context_set_tool (user_context, tool_manager_get_info_by_tool (user_context->gimp, tool_manager->active_tool)); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (user_context), - tool_manager_tool_changed, - data); + g_signal_handlers_unblock_by_func (G_OBJECT (user_context), + tool_manager_tool_changed, + data); } return; diff --git a/app/user_install.c b/app/user_install.c index 522db344ad..9845b52200 100644 --- a/app/user_install.c +++ b/app/user_install.c @@ -582,8 +582,10 @@ user_install_dialog_create (Gimp *gimp) footer_label = gtk_label_new (NULL); PAGE_STYLE (footer_label); gtk_label_set_justify (GTK_LABEL (footer_label), GTK_JUSTIFY_RIGHT); - gtk_box_pack_end (GTK_BOX (GTK_DIALOG (dialog)->action_area), footer_label, - FALSE, FALSE, 8); + gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->action_area), footer_label, + FALSE, FALSE, 8); + gtk_box_reorder_child (GTK_BOX (GTK_DIALOG (dialog)->action_area), + footer_label, 0); gtk_widget_show (footer_label); vbox = gtk_vbox_new (FALSE, 0); @@ -1014,21 +1016,34 @@ user_install_run (void) vadj = GTK_ADJUSTMENT (gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0)); vsb = gtk_vscrollbar_new (vadj); +#if 0 log_text = gtk_text_new (NULL, vadj); +#endif gtk_table_attach (GTK_TABLE (table), vsb, 1, 2, 0, 1, GTK_FILL, GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); +#if 0 gtk_table_attach (GTK_TABLE (table), log_text, 0, 1, 0, 1, GTK_EXPAND | GTK_SHRINK | GTK_FILL, GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); +#endif gtk_widget_show (vsb); +#if 0 gtk_widget_show (log_text); +#endif gtk_widget_show (table); while (fgets (buffer, sizeof (buffer), pfp)) - gtk_text_insert (GTK_TEXT (log_text), NULL, NULL, NULL, buffer, -1); + { +#ifdef __GNUC__ +#warning FIXME: replace GtkText +#endif +#if 0 + gtk_text_insert (GTK_TEXT (log_text), NULL, NULL, NULL, buffer, -1); +#endif + } pclose (pfp); add_label (GTK_BOX (log_page), diff --git a/app/widgets/gimpbrusheditor.c b/app/widgets/gimpbrusheditor.c index 72dad7ebfd..81dc522a0b 100644 --- a/app/widgets/gimpbrusheditor.c +++ b/app/widgets/gimpbrusheditor.c @@ -295,7 +295,7 @@ static void brush_editor_name_activate (GtkWidget *widget, BrushEditor *brush_editor) { - gchar *entry_text; + const gchar *entry_text; entry_text = gtk_entry_get_text (GTK_ENTRY (widget)); gimp_object_set_name (GIMP_OBJECT (brush_editor->brush), entry_text); diff --git a/app/widgets/gimpbrushfactoryview.c b/app/widgets/gimpbrushfactoryview.c index c8f4cb33b0..153c158f61 100644 --- a/app/widgets/gimpbrushfactoryview.c +++ b/app/widgets/gimpbrushfactoryview.c @@ -119,9 +119,9 @@ gimp_brush_factory_view_init (GimpBrushFactoryView *view) _("Spacing:"), 1.0, 1.0, view->spacing_scale, 1, FALSE); - gtk_signal_connect (GTK_OBJECT (view->spacing_adjustment), "value_changed", - GTK_SIGNAL_FUNC (gimp_brush_factory_view_spacing_update), - view); + g_signal_connect (G_OBJECT (view->spacing_adjustment), "value_changed", + G_CALLBACK (gimp_brush_factory_view_spacing_update), + view); view->spacing_changed_handler_id = 0; } @@ -188,7 +188,7 @@ gimp_brush_factory_view_new (GimpViewType view_type, gimp_container_add_handler (editor->view->container, "spacing_changed", - GTK_SIGNAL_FUNC (gimp_brush_factory_view_spacing_changed), + G_CALLBACK (gimp_brush_factory_view_spacing_changed), factory_view); return GTK_WIDGET (factory_view); @@ -199,7 +199,6 @@ gimp_brush_factory_view_select_item (GimpContainerEditor *editor, GimpViewable *viewable) { GimpBrushFactoryView *view; - GimpBrush *brush; gboolean edit_sensitive = FALSE; gboolean spacing_sensitive = FALSE; @@ -207,26 +206,29 @@ gimp_brush_factory_view_select_item (GimpContainerEditor *editor, if (GIMP_CONTAINER_EDITOR_CLASS (parent_class)->select_item) GIMP_CONTAINER_EDITOR_CLASS (parent_class)->select_item (editor, viewable); - view = GIMP_BRUSH_FACTORY_VIEW (editor); - brush = GIMP_BRUSH (viewable); + view = GIMP_BRUSH_FACTORY_VIEW (editor); - if (brush && + if (viewable && gimp_container_have (GIMP_CONTAINER_EDITOR (view)->view->container, - GIMP_OBJECT (brush))) + GIMP_OBJECT (viewable))) { + GimpBrush *brush; + + brush = GIMP_BRUSH (viewable); + edit_sensitive = GIMP_IS_BRUSH_GENERATED (brush); spacing_sensitive = TRUE; - gtk_signal_handler_block_by_func (GTK_OBJECT (view->spacing_adjustment), - gimp_brush_factory_view_spacing_update, - view); + g_signal_handlers_block_by_func (G_OBJECT (view->spacing_adjustment), + gimp_brush_factory_view_spacing_update, + view); gtk_adjustment_set_value (view->spacing_adjustment, gimp_brush_get_spacing (brush)); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (view->spacing_adjustment), - gimp_brush_factory_view_spacing_update, - view); + g_signal_handlers_unblock_by_func (G_OBJECT (view->spacing_adjustment), + gimp_brush_factory_view_spacing_update, + view); } gtk_widget_set_sensitive (GIMP_DATA_FACTORY_VIEW (view)->edit_button, @@ -240,14 +242,16 @@ gimp_brush_factory_view_spacing_changed (GimpBrush *brush, { if (brush == GIMP_CONTAINER_EDITOR (view)->view->context->brush) { - gtk_signal_handler_block_by_func (GTK_OBJECT (view->spacing_adjustment), - gimp_brush_factory_view_spacing_update, - view); + g_signal_handlers_block_by_func (G_OBJECT (view->spacing_adjustment), + gimp_brush_factory_view_spacing_update, + view); + gtk_adjustment_set_value (view->spacing_adjustment, gimp_brush_get_spacing (brush)); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (view->spacing_adjustment), - gimp_brush_factory_view_spacing_update, - view); + + g_signal_handlers_unblock_by_func (G_OBJECT (view->spacing_adjustment), + gimp_brush_factory_view_spacing_update, + view); } } @@ -261,12 +265,14 @@ gimp_brush_factory_view_spacing_update (GtkAdjustment *adjustment, if (brush && view->change_brush_spacing) { - gtk_signal_handler_block_by_func (GTK_OBJECT (brush), - gimp_brush_factory_view_spacing_changed, - view); + g_signal_handlers_block_by_func (G_OBJECT (brush), + gimp_brush_factory_view_spacing_changed, + view); + gimp_brush_set_spacing (brush, adjustment->value); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (brush), - gimp_brush_factory_view_spacing_changed, - view); + + g_signal_handlers_unblock_by_func (G_OBJECT (brush), + gimp_brush_factory_view_spacing_changed, + view); } } diff --git a/app/widgets/gimpbrushfactoryview.h b/app/widgets/gimpbrushfactoryview.h index ce3c72f62d..01cb051c60 100644 --- a/app/widgets/gimpbrushfactoryview.h +++ b/app/widgets/gimpbrushfactoryview.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_BRUSH_FACTORY_VIEW (gimp_brush_factory_view_get_type ()) -#define GIMP_BRUSH_FACTORY_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BRUSH_FACTORY_VIEW, GimpBrushFactoryView)) -#define GIMP_BRUSH_FACTORY_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_FACTORY_VIEW, GimpBrushFactoryViewClass)) -#define GIMP_IS_BRUSH_FACTORY_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BRUSH_FACTORY_VIEW)) -#define GIMP_IS_BRUSH_FACTORY_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_FACTORY_VIEW)) +#define GIMP_BRUSH_FACTORY_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BRUSH_FACTORY_VIEW, GimpBrushFactoryView)) +#define GIMP_BRUSH_FACTORY_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_FACTORY_VIEW, GimpBrushFactoryViewClass)) +#define GIMP_IS_BRUSH_FACTORY_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BRUSH_FACTORY_VIEW)) +#define GIMP_IS_BRUSH_FACTORY_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_FACTORY_VIEW)) typedef struct _GimpBrushFactoryViewClass GimpBrushFactoryViewClass; diff --git a/app/widgets/gimpbrushpreview.h b/app/widgets/gimpbrushpreview.h index 7207f724f4..0121548743 100644 --- a/app/widgets/gimpbrushpreview.h +++ b/app/widgets/gimpbrushpreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_BRUSH_PREVIEW (gimp_brush_preview_get_type ()) -#define GIMP_BRUSH_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreview)) -#define GIMP_BRUSH_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreviewClass)) -#define GIMP_IS_BRUSH_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_BRUSH_PREVIEW)) -#define GIMP_IS_BRUSH_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_PREVIEW)) +#define GIMP_BRUSH_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreview)) +#define GIMP_BRUSH_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreviewClass)) +#define GIMP_IS_BRUSH_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_BRUSH_PREVIEW)) +#define GIMP_IS_BRUSH_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_PREVIEW)) typedef struct _GimpBrushPreviewClass GimpBrushPreviewClass; diff --git a/app/widgets/gimpbufferpreview.h b/app/widgets/gimpbufferpreview.h index b5ca7aa3df..a076eb3afa 100644 --- a/app/widgets/gimpbufferpreview.h +++ b/app/widgets/gimpbufferpreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_BUFFER_PREVIEW (gimp_buffer_preview_get_type ()) -#define GIMP_BUFFER_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BUFFER_PREVIEW, GimpBufferPreview)) -#define GIMP_BUFFER_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUFFER_PREVIEW, GimpBufferPreviewClass)) -#define GIMP_IS_BUFFER_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_BUFFER_PREVIEW)) -#define GIMP_IS_BUFFER_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUFFER_PREVIEW)) +#define GIMP_BUFFER_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BUFFER_PREVIEW, GimpBufferPreview)) +#define GIMP_BUFFER_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUFFER_PREVIEW, GimpBufferPreviewClass)) +#define GIMP_IS_BUFFER_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_BUFFER_PREVIEW)) +#define GIMP_IS_BUFFER_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUFFER_PREVIEW)) typedef struct _GimpBufferPreviewClass GimpBufferPreviewClass; diff --git a/app/widgets/gimpbufferview.c b/app/widgets/gimpbufferview.c index d358893c53..e101b1d69a 100644 --- a/app/widgets/gimpbufferview.c +++ b/app/widgets/gimpbufferview.c @@ -103,7 +103,7 @@ gimp_buffer_view_class_init (GimpBufferViewClass *klass) object_class = (GtkObjectClass *) klass; editor_class = (GimpContainerEditorClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CONTAINER_EDITOR); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_buffer_view_destroy; @@ -122,25 +122,25 @@ gimp_buffer_view_init (GimpBufferView *view) gimp_container_editor_add_button (editor, paste_xpm, _("Paste"), NULL, - gimp_buffer_view_paste_clicked); + G_CALLBACK (gimp_buffer_view_paste_clicked)); view->paste_into_button = gimp_container_editor_add_button (editor, paste_into_xpm, _("Paste Into"), NULL, - gimp_buffer_view_paste_into_clicked); + G_CALLBACK (gimp_buffer_view_paste_into_clicked)); view->paste_as_new_button = gimp_container_editor_add_button (editor, paste_as_new_xpm, _("Paste as New"), NULL, - gimp_buffer_view_paste_as_new_clicked); + G_CALLBACK (gimp_buffer_view_paste_as_new_clicked)); view->delete_button = gimp_container_editor_add_button (editor, delete_xpm, _("Delete"), NULL, - gimp_buffer_view_delete_clicked); + G_CALLBACK (gimp_buffer_view_delete_clicked)); gtk_widget_set_sensitive (view->paste_button, FALSE); gtk_widget_set_sensitive (view->paste_into_button, FALSE); diff --git a/app/widgets/gimpbufferview.h b/app/widgets/gimpbufferview.h index 2d81097c9b..8767a5c5bd 100644 --- a/app/widgets/gimpbufferview.h +++ b/app/widgets/gimpbufferview.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_BUFFER_VIEW (gimp_buffer_view_get_type ()) -#define GIMP_BUFFER_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BUFFER_VIEW, GimpBufferView)) -#define GIMP_BUFFER_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUFFER_VIEW, GimpBufferViewClass)) -#define GIMP_IS_BUFFER_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BUFFER_VIEW)) -#define GIMP_IS_BUFFER_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUFFER_VIEW)) +#define GIMP_BUFFER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BUFFER_VIEW, GimpBufferView)) +#define GIMP_BUFFER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUFFER_VIEW, GimpBufferViewClass)) +#define GIMP_IS_BUFFER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BUFFER_VIEW)) +#define GIMP_IS_BUFFER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUFFER_VIEW)) typedef struct _GimpBufferViewClass GimpBufferViewClass; diff --git a/app/widgets/gimpchannellistitem.h b/app/widgets/gimpchannellistitem.h index d83368917d..b833a8184f 100644 --- a/app/widgets/gimpchannellistitem.h +++ b/app/widgets/gimpchannellistitem.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_CHANNEL_LIST_ITEM (gimp_channel_list_item_get_type ()) -#define GIMP_CHANNEL_LIST_ITEM(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CHANNEL_LIST_ITEM, GimpChannelListItem)) -#define GIMP_CHANNEL_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL_LIST_ITEM, GimpChannelListItemClass)) -#define GIMP_IS_CHANNEL_LIST_ITEM(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CHANNEL_LIST_ITEM)) -#define GIMP_IS_CHANNEL_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL_LIST_ITEM)) +#define GIMP_CHANNEL_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CHANNEL_LIST_ITEM, GimpChannelListItem)) +#define GIMP_CHANNEL_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL_LIST_ITEM, GimpChannelListItemClass)) +#define GIMP_IS_CHANNEL_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CHANNEL_LIST_ITEM)) +#define GIMP_IS_CHANNEL_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL_LIST_ITEM)) typedef struct _GimpChannelListItemClass GimpChannelListItemClass; diff --git a/app/widgets/gimpchannellistview.c b/app/widgets/gimpchannellistview.c index f952cbc2cf..51e127d411 100644 --- a/app/widgets/gimpchannellistview.c +++ b/app/widgets/gimpchannellistview.c @@ -128,7 +128,7 @@ gimp_channel_list_view_class_init (GimpChannelListViewClass *klass) container_view_class = (GimpContainerViewClass *) klass; drawable_view_class = (GimpDrawableListViewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAWABLE_LIST_VIEW); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_channel_list_view_destroy; @@ -159,12 +159,12 @@ gimp_channel_list_view_init (GimpChannelListView *view) view->component_list); gtk_widget_show (view->component_list); - gtk_signal_connect (GTK_OBJECT (view->component_list), "select_child", - GTK_SIGNAL_FUNC (gimp_channel_list_view_component_toggle), - view); - gtk_signal_connect (GTK_OBJECT (view->component_list), "unselect_child", - GTK_SIGNAL_FUNC (gimp_channel_list_view_component_toggle), - view); + g_signal_connect (G_OBJECT (view->component_list), "select_child", + G_CALLBACK (gimp_channel_list_view_component_toggle), + view); + g_signal_connect (G_OBJECT (view->component_list), "unselect_child", + G_CALLBACK (gimp_channel_list_view_component_toggle), + view); /* To Selection button */ @@ -181,12 +181,12 @@ gimp_channel_list_view_init (GimpChannelListView *view) " Subtract " " Intersect"), NULL); - gtk_signal_connect (GTK_OBJECT (view->toselection_button), "clicked", - GTK_SIGNAL_FUNC (gimp_channel_list_view_toselection_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->toselection_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_channel_list_view_toselection_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->toselection_button), "clicked", + G_CALLBACK (gimp_channel_list_view_toselection_clicked), + view); + g_signal_connect (G_OBJECT (view->toselection_button), "extended_clicked", + G_CALLBACK (gimp_channel_list_view_toselection_extended_clicked), + view); pixmap = gimp_pixmap_new (toselection_xpm); gtk_container_add (GTK_CONTAINER (view->toselection_button), pixmap); @@ -233,9 +233,9 @@ gimp_channel_list_view_set_image (GimpDrawableListView *view, gimp_channel_list_view_clear_components (channel_view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_channel_list_view_mode_changed, - channel_view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_channel_list_view_mode_changed, + channel_view); } if (GIMP_DRAWABLE_LIST_VIEW_CLASS (parent_class)->set_image) @@ -248,9 +248,9 @@ gimp_channel_list_view_set_image (GimpDrawableListView *view, gimp_channel_list_view_create_components (channel_view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "mode_changed", - GTK_SIGNAL_FUNC (gimp_channel_list_view_mode_changed), - channel_view); + g_signal_connect (G_OBJECT (view->gimage), "mode_changed", + G_CALLBACK (gimp_channel_list_view_mode_changed), + channel_view); } } @@ -466,15 +466,15 @@ gimp_channel_list_view_create_components (GimpChannelListView *view) static void gimp_channel_list_view_clear_components (GimpChannelListView *view) { - gtk_signal_handler_block_by_func (GTK_OBJECT (view->component_list), - gimp_channel_list_view_component_toggle, - view); + g_signal_handlers_block_by_func (G_OBJECT (view->component_list), + gimp_channel_list_view_component_toggle, + view); gtk_list_clear_items (GTK_LIST (view->component_list), 0, -1); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (view->component_list), - gimp_channel_list_view_component_toggle, - view); + g_signal_handlers_unblock_by_func (G_OBJECT (view->component_list), + gimp_channel_list_view_component_toggle, + view); } static void @@ -494,15 +494,15 @@ gimp_channel_list_view_component_toggle (GtkList *list, component_item = GIMP_COMPONENT_LIST_ITEM (child); - gtk_signal_handler_block_by_func (GTK_OBJECT (view->component_list), - gimp_channel_list_view_component_toggle, - view); + g_signal_handlers_block_by_func (G_OBJECT (view->component_list), + gimp_channel_list_view_component_toggle, + view); gimp_image_set_component_active (GIMP_DRAWABLE_LIST_VIEW (view)->gimage, component_item->channel, child->state == GTK_STATE_SELECTED); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (view->component_list), - gimp_channel_list_view_component_toggle, - view); + g_signal_handlers_unblock_by_func (G_OBJECT (view->component_list), + gimp_channel_list_view_component_toggle, + view); } diff --git a/app/widgets/gimpchannellistview.h b/app/widgets/gimpchannellistview.h index d5019053b3..c991d7ce95 100644 --- a/app/widgets/gimpchannellistview.h +++ b/app/widgets/gimpchannellistview.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_CHANNEL_LIST_VIEW (gimp_channel_list_view_get_type ()) -#define GIMP_CHANNEL_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CHANNEL_LIST_VIEW, GimpChannelListView)) -#define GIMP_CHANNEL_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL_LIST_VIEW, GimpChannelListViewClass)) -#define GIMP_IS_CHANNEL_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CHANNEL_LIST_VIEW)) -#define GIMP_IS_CHANNEL_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL_LIST_VIEW)) +#define GIMP_CHANNEL_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CHANNEL_LIST_VIEW, GimpChannelListView)) +#define GIMP_CHANNEL_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL_LIST_VIEW, GimpChannelListViewClass)) +#define GIMP_IS_CHANNEL_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CHANNEL_LIST_VIEW)) +#define GIMP_IS_CHANNEL_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL_LIST_VIEW)) typedef struct _GimpChannelListViewClass GimpChannelListViewClass; diff --git a/app/widgets/gimpchanneltreeview.c b/app/widgets/gimpchanneltreeview.c index f952cbc2cf..51e127d411 100644 --- a/app/widgets/gimpchanneltreeview.c +++ b/app/widgets/gimpchanneltreeview.c @@ -128,7 +128,7 @@ gimp_channel_list_view_class_init (GimpChannelListViewClass *klass) container_view_class = (GimpContainerViewClass *) klass; drawable_view_class = (GimpDrawableListViewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DRAWABLE_LIST_VIEW); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_channel_list_view_destroy; @@ -159,12 +159,12 @@ gimp_channel_list_view_init (GimpChannelListView *view) view->component_list); gtk_widget_show (view->component_list); - gtk_signal_connect (GTK_OBJECT (view->component_list), "select_child", - GTK_SIGNAL_FUNC (gimp_channel_list_view_component_toggle), - view); - gtk_signal_connect (GTK_OBJECT (view->component_list), "unselect_child", - GTK_SIGNAL_FUNC (gimp_channel_list_view_component_toggle), - view); + g_signal_connect (G_OBJECT (view->component_list), "select_child", + G_CALLBACK (gimp_channel_list_view_component_toggle), + view); + g_signal_connect (G_OBJECT (view->component_list), "unselect_child", + G_CALLBACK (gimp_channel_list_view_component_toggle), + view); /* To Selection button */ @@ -181,12 +181,12 @@ gimp_channel_list_view_init (GimpChannelListView *view) " Subtract " " Intersect"), NULL); - gtk_signal_connect (GTK_OBJECT (view->toselection_button), "clicked", - GTK_SIGNAL_FUNC (gimp_channel_list_view_toselection_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->toselection_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_channel_list_view_toselection_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->toselection_button), "clicked", + G_CALLBACK (gimp_channel_list_view_toselection_clicked), + view); + g_signal_connect (G_OBJECT (view->toselection_button), "extended_clicked", + G_CALLBACK (gimp_channel_list_view_toselection_extended_clicked), + view); pixmap = gimp_pixmap_new (toselection_xpm); gtk_container_add (GTK_CONTAINER (view->toselection_button), pixmap); @@ -233,9 +233,9 @@ gimp_channel_list_view_set_image (GimpDrawableListView *view, gimp_channel_list_view_clear_components (channel_view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_channel_list_view_mode_changed, - channel_view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_channel_list_view_mode_changed, + channel_view); } if (GIMP_DRAWABLE_LIST_VIEW_CLASS (parent_class)->set_image) @@ -248,9 +248,9 @@ gimp_channel_list_view_set_image (GimpDrawableListView *view, gimp_channel_list_view_create_components (channel_view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "mode_changed", - GTK_SIGNAL_FUNC (gimp_channel_list_view_mode_changed), - channel_view); + g_signal_connect (G_OBJECT (view->gimage), "mode_changed", + G_CALLBACK (gimp_channel_list_view_mode_changed), + channel_view); } } @@ -466,15 +466,15 @@ gimp_channel_list_view_create_components (GimpChannelListView *view) static void gimp_channel_list_view_clear_components (GimpChannelListView *view) { - gtk_signal_handler_block_by_func (GTK_OBJECT (view->component_list), - gimp_channel_list_view_component_toggle, - view); + g_signal_handlers_block_by_func (G_OBJECT (view->component_list), + gimp_channel_list_view_component_toggle, + view); gtk_list_clear_items (GTK_LIST (view->component_list), 0, -1); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (view->component_list), - gimp_channel_list_view_component_toggle, - view); + g_signal_handlers_unblock_by_func (G_OBJECT (view->component_list), + gimp_channel_list_view_component_toggle, + view); } static void @@ -494,15 +494,15 @@ gimp_channel_list_view_component_toggle (GtkList *list, component_item = GIMP_COMPONENT_LIST_ITEM (child); - gtk_signal_handler_block_by_func (GTK_OBJECT (view->component_list), - gimp_channel_list_view_component_toggle, - view); + g_signal_handlers_block_by_func (G_OBJECT (view->component_list), + gimp_channel_list_view_component_toggle, + view); gimp_image_set_component_active (GIMP_DRAWABLE_LIST_VIEW (view)->gimage, component_item->channel, child->state == GTK_STATE_SELECTED); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (view->component_list), - gimp_channel_list_view_component_toggle, - view); + g_signal_handlers_unblock_by_func (G_OBJECT (view->component_list), + gimp_channel_list_view_component_toggle, + view); } diff --git a/app/widgets/gimpchanneltreeview.h b/app/widgets/gimpchanneltreeview.h index d5019053b3..c991d7ce95 100644 --- a/app/widgets/gimpchanneltreeview.h +++ b/app/widgets/gimpchanneltreeview.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_CHANNEL_LIST_VIEW (gimp_channel_list_view_get_type ()) -#define GIMP_CHANNEL_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CHANNEL_LIST_VIEW, GimpChannelListView)) -#define GIMP_CHANNEL_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL_LIST_VIEW, GimpChannelListViewClass)) -#define GIMP_IS_CHANNEL_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CHANNEL_LIST_VIEW)) -#define GIMP_IS_CHANNEL_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL_LIST_VIEW)) +#define GIMP_CHANNEL_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CHANNEL_LIST_VIEW, GimpChannelListView)) +#define GIMP_CHANNEL_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHANNEL_LIST_VIEW, GimpChannelListViewClass)) +#define GIMP_IS_CHANNEL_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CHANNEL_LIST_VIEW)) +#define GIMP_IS_CHANNEL_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHANNEL_LIST_VIEW)) typedef struct _GimpChannelListViewClass GimpChannelListViewClass; diff --git a/app/widgets/gimpcolordialog.c b/app/widgets/gimpcolordialog.c index 8e5276209f..15189906c3 100644 --- a/app/widgets/gimpcolordialog.c +++ b/app/widgets/gimpcolordialog.c @@ -821,13 +821,16 @@ color_notebook_page_switch (GtkWidget *widget, guint page_num, gpointer data) { + GtkWidget *page_widget; ColorNotebook *cnp; ColorSelectorInstance *csel; gint i; cnp = (ColorNotebook *) data; - csel = gtk_object_get_data (GTK_OBJECT (page->child), "gimp_color_notebook"); + page_widget = gtk_notebook_get_nth_page (GTK_NOTEBOOK (widget), page_num); + + csel = g_object_get_data (G_OBJECT (page_widget), "gimp_color_notebook"); g_return_if_fail (cnp != NULL && csel != NULL); diff --git a/app/widgets/gimpcolormapeditor.c b/app/widgets/gimpcolormapeditor.c index 820b252487..5c36f50ade 100644 --- a/app/widgets/gimpcolormapeditor.c +++ b/app/widgets/gimpcolormapeditor.c @@ -163,19 +163,16 @@ gimp_colormap_dialog_class_init (GimpColormapDialogClass* klass) object_class = (GtkObjectClass*) klass; - parent_class = gtk_type_class (GTK_TYPE_VBOX); + parent_class = g_type_class_peek_parent (klass); gimp_colormap_dialog_signals[SELECTED] = - gtk_signal_new ("selected", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpColormapDialogClass, - selected), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, gimp_colormap_dialog_signals, - LAST_SIGNAL); + g_signal_new ("selected", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpColormapDialogClass, selected), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); klass->selected = NULL; } @@ -384,7 +381,7 @@ ipal_create_popup_menu (GimpColormapDialog *ipal) ipal->popup_menu = menu = gtk_menu_new (); menu_item = gtk_menu_item_new_with_label (_("Add")); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_widget_show (menu_item); gtk_signal_connect (GTK_OBJECT (menu_item), "activate", @@ -394,7 +391,7 @@ ipal_create_popup_menu (GimpColormapDialog *ipal) ipal->add_item = menu_item; menu_item = gtk_menu_item_new_with_label (_("Edit")); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_widget_show (menu_item); gtk_signal_connect (GTK_OBJECT (menu_item), "activate", @@ -746,8 +743,8 @@ static void hex_entry_change_cb (GtkEntry *entry, GimpColormapDialog *ipal) { - gchar *s; - gulong i; + const gchar *s; + gulong i; g_return_if_fail (ipal); g_return_if_fail (ipal->image); diff --git a/app/widgets/gimpcolorpanel.h b/app/widgets/gimpcolorpanel.h index 5ad2298372..4932bce5db 100644 --- a/app/widgets/gimpcolorpanel.h +++ b/app/widgets/gimpcolorpanel.h @@ -24,10 +24,10 @@ #define GIMP_TYPE_COLOR_PANEL (gimp_color_panel_get_type ()) -#define GIMP_COLOR_PANEL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_COLOR_PANEL, GimpColorPanel)) -#define GIMP_COLOR_PANEL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_PANEL, GimpColorPanelClass)) -#define GIMP_IS_COLOR_PANEL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_COLOR_PANEL)) -#define GIMP_IS_COLOR_PANEL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_PANEL)) +#define GIMP_COLOR_PANEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_COLOR_PANEL, GimpColorPanel)) +#define GIMP_COLOR_PANEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_PANEL, GimpColorPanelClass)) +#define GIMP_IS_COLOR_PANEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_COLOR_PANEL)) +#define GIMP_IS_COLOR_PANEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_PANEL)) typedef struct _GimpColorPanel GimpColorPanel; diff --git a/app/widgets/gimpcomponentlistitem.c b/app/widgets/gimpcomponentlistitem.c index d7c141f6ad..409e1b981d 100644 --- a/app/widgets/gimpcomponentlistitem.c +++ b/app/widgets/gimpcomponentlistitem.c @@ -124,13 +124,13 @@ gimp_component_list_item_init (GimpComponentListItem *list_item) gtk_container_add (GTK_CONTAINER (abox), list_item->eye_button); gtk_widget_show (list_item->eye_button); - gtk_signal_connect (GTK_OBJECT (list_item->eye_button), "realize", - GTK_SIGNAL_FUNC (gimp_list_item_button_realize), - list_item); + g_signal_connect (G_OBJECT (list_item->eye_button), "realize", + G_CALLBACK (gimp_list_item_button_realize), + list_item); - gtk_signal_connect (GTK_OBJECT (list_item->eye_button), "state_changed", - GTK_SIGNAL_FUNC (gimp_list_item_button_state_changed), - list_item); + g_signal_connect (G_OBJECT (list_item->eye_button), "state_changed", + G_CALLBACK (gimp_list_item_button_state_changed), + list_item); pixmap = gimp_pixmap_new (eye_xpm); gtk_container_add (GTK_CONTAINER (list_item->eye_button), pixmap); @@ -218,21 +218,19 @@ gimp_component_list_item_set_viewable (GimpListItem *list_item, if (active) gtk_item_select (GTK_ITEM (list_item)); - gtk_signal_connect (GTK_OBJECT (component_item->eye_button), "toggled", - GTK_SIGNAL_FUNC (gimp_component_list_item_eye_toggled), - list_item); + g_signal_connect (G_OBJECT (component_item->eye_button), "toggled", + G_CALLBACK (gimp_component_list_item_eye_toggled), + list_item); - gtk_signal_connect_while_alive - (GTK_OBJECT (viewable), "component_visibility_changed", - GTK_SIGNAL_FUNC (gimp_component_list_item_visibility_changed), - list_item, - GTK_OBJECT (list_item)); + g_signal_connect_object (G_OBJECT (viewable), "component_visibility_changed", + G_CALLBACK (gimp_component_list_item_visibility_changed), + G_OBJECT (list_item), + 0); - gtk_signal_connect_while_alive - (GTK_OBJECT (viewable), "component_active_changed", - GTK_SIGNAL_FUNC (gimp_component_list_item_active_changed), - list_item, - GTK_OBJECT (list_item)); + g_signal_connect_object (G_OBJECT (viewable), "component_active_changed", + G_CALLBACK (gimp_component_list_item_active_changed), + G_OBJECT (list_item), + 0); } static void @@ -265,16 +263,16 @@ gimp_component_list_item_eye_toggled (GtkWidget *widget, gtk_widget_set_usize (GTK_WIDGET (widget), -1, -1); } - gtk_signal_handler_block_by_func (GTK_OBJECT (gimage), - gimp_component_list_item_visibility_changed, - list_item); + g_signal_handlers_block_by_func (G_OBJECT (gimage), + gimp_component_list_item_visibility_changed, + list_item); gimp_image_set_component_visible (gimage, component_item->channel, visible); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (gimage), - gimp_component_list_item_visibility_changed, - list_item); + g_signal_handlers_unblock_by_func (G_OBJECT (gimage), + gimp_component_list_item_visibility_changed, + list_item); gdisplays_update_area (gimage, 0, 0, gimage->width, gimage->height); gdisplays_flush (); @@ -315,15 +313,15 @@ gimp_component_list_item_visibility_changed (GimpImage *gimage, gtk_widget_set_usize (GTK_WIDGET (toggle), -1, -1); } - gtk_signal_handler_block_by_func (GTK_OBJECT (toggle), - gimp_component_list_item_eye_toggled, - list_item); + g_signal_handlers_block_by_func (G_OBJECT (toggle), + gimp_component_list_item_eye_toggled, + list_item); gtk_toggle_button_set_active (toggle, visible); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (toggle), - gimp_component_list_item_eye_toggled, - list_item); + g_signal_handlers_unblock_by_func (G_OBJECT (toggle), + gimp_component_list_item_eye_toggled, + list_item); } } diff --git a/app/widgets/gimpcomponentlistitem.h b/app/widgets/gimpcomponentlistitem.h index 4640f86ef9..535343ee1b 100644 --- a/app/widgets/gimpcomponentlistitem.h +++ b/app/widgets/gimpcomponentlistitem.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_COMPONENT_LIST_ITEM (gimp_component_list_item_get_type ()) -#define GIMP_COMPONENT_LIST_ITEM(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_COMPONENT_LIST_ITEM, GimpComponentListItem)) -#define GIMP_COMPONENT_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COMPONENT_LIST_ITEM, GimpComponentListItemClass)) -#define GIMP_IS_COMPONENT_LIST_ITEM(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_COMPONENT_LIST_ITEM)) -#define GIMP_IS_COMPONENT_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COMPONENT_LIST_ITEM)) +#define GIMP_COMPONENT_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_COMPONENT_LIST_ITEM, GimpComponentListItem)) +#define GIMP_COMPONENT_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COMPONENT_LIST_ITEM, GimpComponentListItemClass)) +#define GIMP_IS_COMPONENT_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_COMPONENT_LIST_ITEM)) +#define GIMP_IS_COMPONENT_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COMPONENT_LIST_ITEM)) typedef struct _GimpComponentListItemClass GimpComponentListItemClass; diff --git a/app/widgets/gimpconstrainedhwrapbox.c b/app/widgets/gimpconstrainedhwrapbox.c index 2e975f4392..49e836dea1 100644 --- a/app/widgets/gimpconstrainedhwrapbox.c +++ b/app/widgets/gimpconstrainedhwrapbox.c @@ -126,8 +126,8 @@ gimp_constrained_hwrap_box_size_request (GtkWidget *widget, viewport_width = (scrolled_win->allocation.width - GTK_SCROLLED_WINDOW (scrolled_win)->vscrollbar->allocation.width - - GTK_SCROLLED_WINDOW_CLASS (GTK_OBJECT (scrolled_win)->klass)->scrollbar_spacing - - scrolled_win->style->klass->xthickness * 2); + GTK_SCROLLED_WINDOW_GET_CLASS (scrolled_win)->scrollbar_spacing - + scrolled_win->style->xthickness * 2); columns = (viewport_width + wbox->hspacing) / (child_width + wbox->hspacing); @@ -185,8 +185,8 @@ gimp_constrained_hwrap_box_size_allocate (GtkWidget *widget, viewport_width = (scrolled_win->allocation.width - GTK_SCROLLED_WINDOW (scrolled_win)->vscrollbar->allocation.width - - GTK_SCROLLED_WINDOW_CLASS (GTK_OBJECT (scrolled_win)->klass)->scrollbar_spacing - - scrolled_win->style->klass->xthickness * 2); + GTK_SCROLLED_WINDOW_GET_CLASS (scrolled_win)->scrollbar_spacing - + scrolled_win->style->xthickness * 2); allocation->width = viewport_width; diff --git a/app/widgets/gimpconstrainedhwrapbox.h b/app/widgets/gimpconstrainedhwrapbox.h index 825925a044..bdbf76cc3a 100644 --- a/app/widgets/gimpconstrainedhwrapbox.h +++ b/app/widgets/gimpconstrainedhwrapbox.h @@ -33,10 +33,10 @@ extern "C" { #define GIMP_TYPE_CONSTRAINED_HWRAP_BOX (gimp_constrained_hwrap_box_get_type ()) -#define GIMP_CONSTRAINED_HWRAP_BOX(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONSTRAINED_HWRAP_BOX, GimpConstrainedHWrapBox)) -#define GIMP_CONSTRAINED_HWRAP_BOX_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONSTRAINED_HWRAP_BOX, GimpConstrainedHWrapBoxClass)) -#define GIMP_IS_CONSTRAINED_HWRAP_BOX(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONSTRAINED_HWRAP_BOX)) -#define GIMP_IS_CONSTRAINED_HWRAP_BOX_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONSTRAINED_HWRAP_BOX)) +#define GIMP_CONSTRAINED_HWRAP_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONSTRAINED_HWRAP_BOX, GimpConstrainedHWrapBox)) +#define GIMP_CONSTRAINED_HWRAP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONSTRAINED_HWRAP_BOX, GimpConstrainedHWrapBoxClass)) +#define GIMP_IS_CONSTRAINED_HWRAP_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONSTRAINED_HWRAP_BOX)) +#define GIMP_IS_CONSTRAINED_HWRAP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONSTRAINED_HWRAP_BOX)) #define GIMP_CONSTRAINED_HWRAP_BOX_GET_CLASS(obj) (GIMP_CONSTRAINED_HWRAP_BOX_CLASS (((GtkObject *) (obj))->klass)) diff --git a/app/widgets/gimpcontainereditor.c b/app/widgets/gimpcontainereditor.c index c0f9e82cd3..0fa9c0e22a 100644 --- a/app/widgets/gimpcontainereditor.c +++ b/app/widgets/gimpcontainereditor.c @@ -138,11 +138,8 @@ gimp_container_editor_construct (GimpContainerEditor *editor, gint min_items_y, GimpContainerContextFunc context_func) { - g_return_val_if_fail (editor != NULL, FALSE); g_return_val_if_fail (GIMP_IS_CONTAINER_EDITOR (editor), FALSE); - g_return_val_if_fail (container != NULL, FALSE); g_return_val_if_fail (GIMP_IS_CONTAINER (container), FALSE); - g_return_val_if_fail (context != NULL, FALSE); g_return_val_if_fail (GIMP_IS_CONTEXT (context), FALSE); g_return_val_if_fail (preview_size > 0 && preview_size <= 64, FALSE); @@ -180,23 +177,20 @@ gimp_container_editor_construct (GimpContainerEditor *editor, GTK_WIDGET (editor->view)); gtk_widget_show (GTK_WIDGET (editor->view)); - gtk_signal_connect_while_alive - (GTK_OBJECT (editor->view), "select_item", - GTK_SIGNAL_FUNC (gimp_container_editor_select_item), - editor, - GTK_OBJECT (editor)); + g_signal_connect_object (G_OBJECT (editor->view), "select_item", + G_CALLBACK (gimp_container_editor_select_item), + G_OBJECT (editor), + 0); - gtk_signal_connect_while_alive - (GTK_OBJECT (editor->view), "activate_item", - GTK_SIGNAL_FUNC (gimp_container_editor_activate_item), - editor, - GTK_OBJECT (editor)); + g_signal_connect_object (G_OBJECT (editor->view), "activate_item", + G_CALLBACK (gimp_container_editor_activate_item), + G_OBJECT (editor), + 0); - gtk_signal_connect_while_alive - (GTK_OBJECT (editor->view), "context_item", - GTK_SIGNAL_FUNC (gimp_container_editor_context_item), - editor, - GTK_OBJECT (editor)); + g_signal_connect_object (G_OBJECT (editor->view), "context_item", + G_CALLBACK (gimp_container_editor_context_item), + G_OBJECT (editor), + 0); /* select the active item */ gimp_container_editor_select_item @@ -214,12 +208,11 @@ gimp_container_editor_add_button (GimpContainerEditor *editor, gchar **xpm_data, const gchar *tooltip, const gchar *help_data, - GtkSignalFunc callback) + GCallback callback) { GtkWidget *pixmap; GtkWidget *button; - g_return_val_if_fail (editor != NULL, NULL); g_return_val_if_fail (GIMP_IS_CONTAINER_EDITOR (editor), NULL); g_return_val_if_fail (xpm_data != NULL, NULL); @@ -232,8 +225,9 @@ gimp_container_editor_add_button (GimpContainerEditor *editor, gimp_help_set_help_data (button, tooltip, help_data); if (callback) - gtk_signal_connect (GTK_OBJECT (button), "clicked", - callback, editor); + g_signal_connect (G_OBJECT (button), "clicked", + callback, + editor); pixmap = gimp_pixmap_new (xpm_data); gtk_container_add (GTK_CONTAINER (button), pixmap); @@ -246,9 +240,7 @@ void gimp_container_editor_enable_dnd (GimpContainerEditor *editor, GtkButton *button) { - g_return_if_fail (editor != NULL); g_return_if_fail (GIMP_IS_CONTAINER_EDITOR (editor)); - g_return_if_fail (button != NULL); g_return_if_fail (GTK_IS_BUTTON (button)); g_return_if_fail (editor->view != NULL); @@ -295,7 +287,7 @@ gimp_container_editor_select_item (GtkWidget *widget, { GimpContainerEditorClass *klass; - klass = GIMP_CONTAINER_EDITOR_CLASS (GTK_OBJECT (editor)->klass); + klass = GIMP_CONTAINER_EDITOR_GET_CLASS (editor); if (klass->select_item) klass->select_item (editor, viewable); @@ -309,7 +301,7 @@ gimp_container_editor_activate_item (GtkWidget *widget, { GimpContainerEditorClass *klass; - klass = GIMP_CONTAINER_EDITOR_CLASS (GTK_OBJECT (editor)->klass); + klass = GIMP_CONTAINER_EDITOR_GET_CLASS (editor); if (klass->activate_item) klass->activate_item (editor, viewable); @@ -323,7 +315,7 @@ gimp_container_editor_context_item (GtkWidget *widget, { GimpContainerEditorClass *klass; - klass = GIMP_CONTAINER_EDITOR_CLASS (GTK_OBJECT (editor)->klass); + klass = GIMP_CONTAINER_EDITOR_GET_CLASS (editor); if (klass->context_item) klass->context_item (editor, viewable); diff --git a/app/widgets/gimpcontainereditor.h b/app/widgets/gimpcontainereditor.h index b676294173..6567b12775 100644 --- a/app/widgets/gimpcontainereditor.h +++ b/app/widgets/gimpcontainereditor.h @@ -37,10 +37,11 @@ typedef enum #define GIMP_TYPE_CONTAINER_EDITOR (gimp_container_editor_get_type ()) -#define GIMP_CONTAINER_EDITOR(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONTAINER_EDITOR, GimpContainerEditor)) -#define GIMP_CONTAINER_EDITOR_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_EDITOR, GimpContainerEditorClass)) -#define GIMP_IS_CONTAINER_EDITOR(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONTAINER_EDITOR)) -#define GIMP_IS_CONTAINER_EDITOR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_EDITOR)) +#define GIMP_CONTAINER_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTAINER_EDITOR, GimpContainerEditor)) +#define GIMP_CONTAINER_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_EDITOR, GimpContainerEditorClass)) +#define GIMP_IS_CONTAINER_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONTAINER_EDITOR)) +#define GIMP_IS_CONTAINER_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_EDITOR)) +#define GIMP_CONTAINER_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_CONTAINER_EDITOR, GimpContainerEditorClass)) typedef struct _GimpContainerEditorClass GimpContainerEditorClass; @@ -68,7 +69,7 @@ struct _GimpContainerEditorClass }; -GtkType gimp_container_editor_get_type (void); +GType gimp_container_editor_get_type (void); /* protected */ @@ -86,7 +87,7 @@ GtkWidget * gimp_container_editor_add_button (GimpContainerEditor *editor, gchar **xpm_data, const gchar *tooltip, const gchar *help_data, - GtkSignalFunc callback); + GCallback callback); void gimp_container_editor_enable_dnd (GimpContainerEditor *editor, GtkButton *button); diff --git a/app/widgets/gimpcontainergridview.c b/app/widgets/gimpcontainergridview.c index 2636d5ba25..56fed0c6cb 100644 --- a/app/widgets/gimpcontainergridview.c +++ b/app/widgets/gimpcontainergridview.c @@ -139,7 +139,7 @@ gimp_container_grid_view_init (GimpContainerGridView *grid_view) grid_view->name_label = gtk_label_new (_("(None)")); gtk_misc_set_alignment (GTK_MISC (grid_view->name_label), 0.0, 0.5); gtk_misc_set_padding (GTK_MISC (grid_view->name_label), - grid_view->name_label->style->klass->xthickness, 0); + grid_view->name_label->style->xthickness, 0); gtk_box_pack_start (GTK_BOX (grid_view), grid_view->name_label, FALSE, FALSE, 0); gtk_widget_show (grid_view->name_label); @@ -162,7 +162,7 @@ gimp_container_grid_view_init (GimpContainerGridView *grid_view) gtk_widget_set_style (grid_view->wrap_box->parent, - GIMP_CONTAINER_GRID_VIEW_CLASS (GTK_OBJECT (grid_view)->klass)->white_style); + GIMP_CONTAINER_GRID_VIEW_GET_CLASS (grid_view)->white_style); gtk_container_set_focus_vadjustment (GTK_CONTAINER (grid_view->wrap_box->parent), @@ -215,8 +215,8 @@ gimp_container_grid_view_new (GimpContainer *container, window_border = GTK_SCROLLED_WINDOW (grid_view->scrolled_win)->vscrollbar->requisition.width + - GTK_SCROLLED_WINDOW_CLASS (GTK_OBJECT (grid_view->scrolled_win)->klass)->scrollbar_spacing + - grid_view->scrolled_win->style->klass->xthickness * 4; + GTK_SCROLLED_WINDOW_GET_CLASS (grid_view->scrolled_win)->scrollbar_spacing + + grid_view->scrolled_win->style->xthickness * 4; gtk_widget_set_usize (grid_view->scrolled_win, (preview_size + 2) * min_items_x + window_border, diff --git a/app/widgets/gimpcontainergridview.h b/app/widgets/gimpcontainergridview.h index abdf003770..fbd7b7a364 100644 --- a/app/widgets/gimpcontainergridview.h +++ b/app/widgets/gimpcontainergridview.h @@ -27,10 +27,11 @@ #define GIMP_TYPE_CONTAINER_GRID_VIEW (gimp_container_grid_view_get_type ()) -#define GIMP_CONTAINER_GRID_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONTAINER_GRID_VIEW, GimpContainerGridView)) -#define GIMP_CONTAINER_GRID_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_GRID_VIEW, GimpContainerGridViewClass)) -#define GIMP_IS_CONTAINER_GRID_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONTAINER_GRID_VIEW)) -#define GIMP_IS_CONTAINER_GRID_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_GRID_VIEW)) +#define GIMP_CONTAINER_GRID_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTAINER_GRID_VIEW, GimpContainerGridView)) +#define GIMP_CONTAINER_GRID_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_GRID_VIEW, GimpContainerGridViewClass)) +#define GIMP_IS_CONTAINER_GRID_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONTAINER_GRID_VIEW)) +#define GIMP_IS_CONTAINER_GRID_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_GRID_VIEW)) +#define GIMP_CONTAINER_GRID_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_CONTAINER_GRID_VIEW, GimpContainerGridViewClass)) typedef struct _GimpContainerGridViewClass GimpContainerGridViewClass; diff --git a/app/widgets/gimpcontainerlistview.c b/app/widgets/gimpcontainerlistview.c index 8262eee4a5..9d5ea4b140 100644 --- a/app/widgets/gimpcontainerlistview.c +++ b/app/widgets/gimpcontainerlistview.c @@ -67,10 +67,10 @@ static gint gimp_container_list_view_item_activated (GtkWidget *w static GimpContainerViewClass *parent_class = NULL; -GtkType +GType gimp_container_list_view_get_type (void) { - static guint list_view_type = 0; + static GType list_view_type = 0; if (! list_view_type) { @@ -102,9 +102,9 @@ gimp_container_list_view_class_init (GimpContainerListViewClass *klass) object_class = (GtkObjectClass *) klass; container_view_class = (GimpContainerViewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CONTAINER_VIEW); + parent_class = g_type_class_peek_parent (klass); - object_class->destroy = gimp_container_list_view_destroy; + object_class->destroy = gimp_container_list_view_destroy; container_view_class->insert_item = gimp_container_list_view_insert_item; container_view_class->remove_item = gimp_container_list_view_remove_item; @@ -141,11 +141,10 @@ gimp_container_list_view_init (GimpContainerListView *list_view) (list_view->scrolled_win)->vscrollbar, GTK_CAN_FOCUS); - gtk_signal_connect_while_alive - (GTK_OBJECT (list_view->gtk_list), "select_child", - GTK_SIGNAL_FUNC (gimp_container_list_view_item_selected), - list_view, - GTK_OBJECT (list_view)); + g_signal_connect_object (G_OBJECT (list_view->gtk_list), "select_child", + G_CALLBACK (gimp_container_list_view_item_selected), + G_OBJECT (list_view), + 0); gtk_widget_show (list_view->gtk_list); gtk_widget_show (list_view->scrolled_win); @@ -187,8 +186,8 @@ gimp_container_list_view_new (GimpContainer *container, window_border = GTK_SCROLLED_WINDOW (list_view->scrolled_win)->vscrollbar->requisition.width + - GTK_SCROLLED_WINDOW_CLASS (GTK_OBJECT (list_view->scrolled_win)->klass)->scrollbar_spacing + - list_view->scrolled_win->style->klass->xthickness * 4; + GTK_SCROLLED_WINDOW_GET_CLASS (list_view->scrolled_win)->scrollbar_spacing + + list_view->scrolled_win->style->xthickness * 4; gtk_widget_set_usize (list_view->gtk_list->parent, (preview_size + 2) * min_items_x + window_border, @@ -221,9 +220,9 @@ gimp_container_list_view_insert_item (GimpContainerView *view, gimp_list_item_set_name_func (GIMP_LIST_ITEM (list_item), view->get_name_func); - gtk_signal_connect (GTK_OBJECT (list_item), "button_press_event", - GTK_SIGNAL_FUNC (gimp_container_list_view_item_activated), - list_view); + g_signal_connect (G_OBJECT (list_item), "button_press_event", + G_CALLBACK (gimp_container_list_view_item_activated), + list_view); gtk_widget_show (list_item); @@ -332,15 +331,15 @@ gimp_container_list_view_select_item (GimpContainerView *view, index = gimp_container_get_child_index (view->container, GIMP_OBJECT (viewable)); - gtk_signal_handler_block_by_func (GTK_OBJECT (list_view->gtk_list), - gimp_container_list_view_item_selected, - list_view); + g_signal_handlers_block_by_func (G_OBJECT (list_view->gtk_list), + gimp_container_list_view_item_selected, + list_view); gtk_list_select_child (GTK_LIST (list_view->gtk_list), list_item); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (list_view->gtk_list), - gimp_container_list_view_item_selected, - list_view); + g_signal_handlers_unblock_by_func (G_OBJECT (list_view->gtk_list), + gimp_container_list_view_item_selected, + list_view); if (index * item_height < adj->value) { diff --git a/app/widgets/gimpcontainerlistview.h b/app/widgets/gimpcontainerlistview.h index be4e351d8f..9a434db6a0 100644 --- a/app/widgets/gimpcontainerlistview.h +++ b/app/widgets/gimpcontainerlistview.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_CONTAINER_LIST_VIEW (gimp_container_list_view_get_type ()) -#define GIMP_CONTAINER_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONTAINER_LIST_VIEW, GimpContainerListView)) -#define GIMP_CONTAINER_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_LIST_VIEW, GimpContainerListViewClass)) -#define GIMP_IS_CONTAINER_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONTAINER_LIST_VIEW)) -#define GIMP_IS_CONTAINER_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_LIST_VIEW)) +#define GIMP_CONTAINER_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTAINER_LIST_VIEW, GimpContainerListView)) +#define GIMP_CONTAINER_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_LIST_VIEW, GimpContainerListViewClass)) +#define GIMP_IS_CONTAINER_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONTAINER_LIST_VIEW)) +#define GIMP_IS_CONTAINER_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_LIST_VIEW)) typedef struct _GimpContainerListViewClass GimpContainerListViewClass; diff --git a/app/widgets/gimpcontainermenu.c b/app/widgets/gimpcontainermenu.c index 9a9fe3be96..1578712375 100644 --- a/app/widgets/gimpcontainermenu.c +++ b/app/widgets/gimpcontainermenu.c @@ -114,106 +114,104 @@ gimp_container_menu_class_init (GimpContainerMenuClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_MENU); + parent_class = g_type_class_peek_parent (klass); menu_signals[SET_CONTAINER] = - gtk_signal_new ("set_container", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - set_container), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_OBJECT); + g_signal_new ("set_container", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerMenuClass, set_container), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_OBJECT); menu_signals[INSERT_ITEM] = - gtk_signal_new ("insert_item", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - insert_item), - gimp_marshal_POINTER__POINTER_INT, - GTK_TYPE_POINTER, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_INT); + g_signal_new ("insert_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerMenuClass, insert_item), + NULL, NULL, + gimp_cclosure_marshal_POINTER__OBJECT_INT, + G_TYPE_POINTER, 2, + GIMP_TYPE_OBJECT, + G_TYPE_INT); menu_signals[REMOVE_ITEM] = - gtk_signal_new ("remove_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - remove_item), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_POINTER); + g_signal_new ("remove_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerMenuClass, remove_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_POINTER, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_POINTER); menu_signals[REORDER_ITEM] = - gtk_signal_new ("reorder_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - reorder_item), - gtk_marshal_NONE__POINTER_INT_POINTER, - GTK_TYPE_NONE, 3, - GIMP_TYPE_OBJECT, - GTK_TYPE_INT, - GTK_TYPE_POINTER); + g_signal_new ("reorder_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerMenuClass, reorder_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_INT_POINTER, + G_TYPE_NONE, 3, + GIMP_TYPE_OBJECT, + G_TYPE_INT, + G_TYPE_POINTER); menu_signals[SELECT_ITEM] = - gtk_signal_new ("select_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - select_item), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_POINTER); + g_signal_new ("select_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerMenuClass, select_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_POINTER, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_POINTER); menu_signals[ACTIVATE_ITEM] = - gtk_signal_new ("activate_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - activate_item), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_POINTER); + g_signal_new ("activate_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerMenuClass, activate_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_POINTER, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_POINTER); menu_signals[CONTEXT_ITEM] = - gtk_signal_new ("context_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - context_item), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_POINTER); + g_signal_new ("context_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerMenuClass, context_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_POINTER, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_POINTER); menu_signals[CLEAR_ITEMS] = - gtk_signal_new ("clear_items", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - clear_items), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clear_items", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerMenuClass, clear_items), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); menu_signals[SET_PREVIEW_SIZE] = - gtk_signal_new ("set_preview_size", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerMenuClass, - set_preview_size), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("set_preview_size", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerMenuClass, set_preview_size), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, menu_signals, LAST_SIGNAL); - - object_class->destroy = gimp_container_menu_destroy; + object_class->destroy = gimp_container_menu_destroy; klass->set_container = gimp_container_menu_real_set_container; klass->insert_item = NULL; @@ -244,13 +242,17 @@ gimp_container_menu_destroy (GtkObject *object) menu = GIMP_CONTAINER_MENU (object); - gimp_container_menu_set_container (menu, NULL); + if (menu->container) + gimp_container_menu_set_container (menu, NULL); - gimp_container_menu_set_context (menu, NULL); + if (menu->context) + gimp_container_menu_set_context (menu, NULL); - g_hash_table_destroy (menu->hash_table); - - menu->hash_table = NULL; + if (menu->hash_table) + { + g_hash_table_destroy (menu->hash_table); + menu->hash_table = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -267,8 +269,8 @@ gimp_container_menu_set_container (GimpContainerMenu *menu, if (container == menu->container) return; - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[SET_CONTAINER], - container); + g_signal_emit (G_OBJECT (menu), menu_signals[SET_CONTAINER], 0, + container); } static void @@ -281,15 +283,15 @@ gimp_container_menu_real_set_container (GimpContainerMenu *menu, gimp_container_menu_clear_items (menu); - gtk_signal_disconnect_by_func (GTK_OBJECT (menu->container), - gimp_container_menu_add, - menu); - gtk_signal_disconnect_by_func (GTK_OBJECT (menu->container), - gimp_container_menu_remove, - menu); - gtk_signal_disconnect_by_func (GTK_OBJECT (menu->container), - gimp_container_menu_reorder, - menu); + g_signal_handlers_disconnect_by_func (G_OBJECT (menu->container), + gimp_container_menu_add, + menu); + g_signal_handlers_disconnect_by_func (G_OBJECT (menu->container), + gimp_container_menu_remove, + menu); + g_signal_handlers_disconnect_by_func (G_OBJECT (menu->container), + gimp_container_menu_reorder, + menu); g_hash_table_destroy (menu->hash_table); @@ -297,9 +299,9 @@ gimp_container_menu_real_set_container (GimpContainerMenu *menu, if (menu->context) { - gtk_signal_disconnect_by_func (GTK_OBJECT (menu->context), - gimp_container_menu_context_changed, - menu); + g_signal_handlers_disconnect_by_func (G_OBJECT (menu->context), + gimp_container_menu_context_changed, + menu); } if (menu->get_name_func && @@ -326,17 +328,17 @@ gimp_container_menu_real_set_container (GimpContainerMenu *menu, (GFunc) gimp_container_menu_add_foreach, menu); - gtk_signal_connect_object (GTK_OBJECT (menu->container), "add", - GTK_SIGNAL_FUNC (gimp_container_menu_add), - GTK_OBJECT (menu)); + g_signal_connect_swapped (G_OBJECT (menu->container), "add", + G_CALLBACK (gimp_container_menu_add), + menu); - gtk_signal_connect_object (GTK_OBJECT (menu->container), "remove", - GTK_SIGNAL_FUNC (gimp_container_menu_remove), - GTK_OBJECT (menu)); + g_signal_connect_swapped (G_OBJECT (menu->container), "remove", + G_CALLBACK (gimp_container_menu_remove), + menu); - gtk_signal_connect_object (GTK_OBJECT (menu->container), "reorder", - GTK_SIGNAL_FUNC (gimp_container_menu_reorder), - GTK_OBJECT (menu)); + g_signal_connect_swapped (G_OBJECT (menu->container), "reorder", + G_CALLBACK (gimp_container_menu_reorder), + menu); if (menu->context) { @@ -346,10 +348,9 @@ gimp_container_menu_real_set_container (GimpContainerMenu *menu, signal_name = gimp_context_type_to_signal_name (menu->container->children_type); - gtk_signal_connect - (GTK_OBJECT (menu->context), signal_name, - GTK_SIGNAL_FUNC (gimp_container_menu_context_changed), - menu); + g_signal_connect (G_OBJECT (menu->context), signal_name, + G_CALLBACK (gimp_container_menu_context_changed), + menu); object = gimp_context_get_by_type (menu->context, menu->container->children_type); @@ -374,9 +375,9 @@ gimp_container_menu_set_context (GimpContainerMenu *menu, if (menu->context && menu->container) { - gtk_signal_disconnect_by_func (GTK_OBJECT (menu->context), - gimp_container_menu_context_changed, - menu); + g_signal_handlers_disconnect_by_func (G_OBJECT (menu->context), + gimp_container_menu_context_changed, + menu); } menu->context = context; @@ -389,9 +390,9 @@ gimp_container_menu_set_context (GimpContainerMenu *menu, signal_name = gimp_context_type_to_signal_name (menu->container->children_type); - gtk_signal_connect (GTK_OBJECT (menu->context), signal_name, - GTK_SIGNAL_FUNC (gimp_container_menu_context_changed), - menu); + g_signal_connect (G_OBJECT (menu->context), signal_name, + G_CALLBACK (gimp_container_menu_context_changed), + menu); object = gimp_context_get_by_type (menu->context, menu->container->children_type); @@ -413,7 +414,7 @@ gimp_container_menu_set_preview_size (GimpContainerMenu *menu, { menu->preview_size = preview_size; - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[SET_PREVIEW_SIZE]); + g_signal_emit (G_OBJECT (menu), menu_signals[SET_PREVIEW_SIZE], 0); } } @@ -442,8 +443,8 @@ gimp_container_menu_select_item (GimpContainerMenu *menu, insert_data = g_hash_table_lookup (menu->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[SELECT_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (menu), menu_signals[SELECT_ITEM], 0, + viewable, insert_data); } void @@ -459,8 +460,8 @@ gimp_container_menu_activate_item (GimpContainerMenu *menu, insert_data = g_hash_table_lookup (menu->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[ACTIVATE_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (menu), menu_signals[ACTIVATE_ITEM], 0, + viewable, insert_data); } void @@ -476,8 +477,8 @@ gimp_container_menu_context_item (GimpContainerMenu *menu, insert_data = g_hash_table_lookup (menu->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[CONTEXT_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (menu), menu_signals[CONTEXT_ITEM], 0, + viewable, insert_data); } void @@ -526,7 +527,7 @@ gimp_container_menu_item_context (GimpContainerMenu *menu, static void gimp_container_menu_clear_items (GimpContainerMenu *menu) { - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[CLEAR_ITEMS]); + g_signal_emit (G_OBJECT (menu), menu_signals[CLEAR_ITEMS], 0); } static void @@ -543,8 +544,8 @@ gimp_container_menu_add_foreach (GimpViewable *viewable, { gpointer insert_data = NULL; - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[INSERT_ITEM], - viewable, -1, &insert_data); + g_signal_emit (G_OBJECT (menu), menu_signals[INSERT_ITEM], 0, + viewable, -1, &insert_data); g_hash_table_insert (menu->hash_table, viewable, insert_data); } @@ -560,8 +561,8 @@ gimp_container_menu_add (GimpContainerMenu *menu, index = gimp_container_get_child_index (container, GIMP_OBJECT (viewable)); - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[INSERT_ITEM], - viewable, index, &insert_data); + g_signal_emit (G_OBJECT (menu), menu_signals[INSERT_ITEM], 0, + viewable, index, &insert_data); g_hash_table_insert (menu->hash_table, viewable, insert_data); } @@ -579,8 +580,8 @@ gimp_container_menu_remove (GimpContainerMenu *menu, { g_hash_table_remove (menu->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[REMOVE_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (menu), menu_signals[REMOVE_ITEM], 0, + viewable, insert_data); } } @@ -596,8 +597,8 @@ gimp_container_menu_reorder (GimpContainerMenu *menu, if (insert_data) { - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[REORDER_ITEM], - viewable, new_index, insert_data); + g_signal_emit (G_OBJECT (menu), menu_signals[REORDER_ITEM], 0, + viewable, new_index, insert_data); } } @@ -610,6 +611,6 @@ gimp_container_menu_context_changed (GimpContext *context, insert_data = g_hash_table_lookup (menu->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (menu), menu_signals[SELECT_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (menu), menu_signals[SELECT_ITEM], 0, + viewable, insert_data); } diff --git a/app/widgets/gimpcontainermenu.h b/app/widgets/gimpcontainermenu.h index b8330307e2..786d55b0b1 100644 --- a/app/widgets/gimpcontainermenu.h +++ b/app/widgets/gimpcontainermenu.h @@ -31,10 +31,10 @@ #define GIMP_TYPE_CONTAINER_MENU (gimp_container_menu_get_type ()) -#define GIMP_CONTAINER_MENU(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONTAINER_MENU, GimpContainerMenu)) -#define GIMP_CONTAINER_MENU_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_MENU, GimpContainerMenuClass)) -#define GIMP_IS_CONTAINER_MENU(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONTAINER_MENU)) -#define GIMP_IS_CONTAINER_MENU_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_MENU)) +#define GIMP_CONTAINER_MENU(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTAINER_MENU, GimpContainerMenu)) +#define GIMP_CONTAINER_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_MENU, GimpContainerMenuClass)) +#define GIMP_IS_CONTAINER_MENU(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONTAINER_MENU)) +#define GIMP_IS_CONTAINER_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_MENU)) typedef struct _GimpContainerMenuClass GimpContainerMenuClass; diff --git a/app/widgets/gimpcontainermenuimpl.c b/app/widgets/gimpcontainermenuimpl.c index fa6843d253..02390b0311 100644 --- a/app/widgets/gimpcontainermenuimpl.c +++ b/app/widgets/gimpcontainermenuimpl.c @@ -100,9 +100,9 @@ gimp_container_menu_impl_class_init (GimpContainerMenuImplClass *klass) object_class = (GtkObjectClass *) klass; container_menu_class = (GimpContainerMenuClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CONTAINER_MENU); + parent_class = g_type_class_peek_parent (klass); - object_class->destroy = gimp_container_menu_impl_destroy; + object_class->destroy = gimp_container_menu_impl_destroy; container_menu_class->insert_item = gimp_container_menu_impl_insert_item; container_menu_class->remove_item = gimp_container_menu_impl_remove_item; @@ -151,11 +151,11 @@ gimp_container_menu_new (GimpContainer *container, gtk_widget_set_usize (menu_impl->empty_item, -1, preview_size + - 2 * menu_impl->empty_item->style->klass->ythickness); + 2 * menu_impl->empty_item->style->ythickness); gtk_widget_set_sensitive (menu_impl->empty_item, FALSE); gtk_widget_show (menu_impl->empty_item); - gtk_menu_append (GTK_MENU (menu), menu_impl->empty_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_impl->empty_item); if (container) gimp_container_menu_set_container (menu, container); @@ -185,7 +185,7 @@ gimp_container_menu_impl_insert_item (GimpContainerMenu *menu, GTK_SIGNAL_FUNC (gimp_container_menu_impl_item_selected), menu); - gtk_menu_insert (GTK_MENU (menu), menu_item, index); + gtk_menu_shell_insert (GTK_MENU_SHELL (menu), menu_item, index); gtk_widget_show (menu_item); gtk_menu_reorder_child (GTK_MENU (menu), diff --git a/app/widgets/gimpcontainermenuimpl.h b/app/widgets/gimpcontainermenuimpl.h index ff0c3a48cf..c5febbc055 100644 --- a/app/widgets/gimpcontainermenuimpl.h +++ b/app/widgets/gimpcontainermenuimpl.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_CONTAINER_MENU_IMPL (gimp_container_menu_impl_get_type ()) -#define GIMP_CONTAINER_MENU_IMPL(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONTAINER_MENU_IMPL, GimpContainerMenuImpl)) -#define GIMP_CONTAINER_MENU_IMPL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_MENU_IMPL, GimpContainerMenuImplClass)) -#define GIMP_IS_CONTAINER_MENU_IMPL(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONTAINER_MENU_IMPL)) -#define GIMP_IS_CONTAINER_MENU_IMPL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_MENU_IMPL)) +#define GIMP_CONTAINER_MENU_IMPL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTAINER_MENU_IMPL, GimpContainerMenuImpl)) +#define GIMP_CONTAINER_MENU_IMPL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_MENU_IMPL, GimpContainerMenuImplClass)) +#define GIMP_IS_CONTAINER_MENU_IMPL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONTAINER_MENU_IMPL)) +#define GIMP_IS_CONTAINER_MENU_IMPL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_MENU_IMPL)) typedef struct _GimpContainerMenuImplClass GimpContainerMenuImplClass; diff --git a/app/widgets/gimpcontainerview.c b/app/widgets/gimpcontainerview.c index f7903f9168..4e0cf68915 100644 --- a/app/widgets/gimpcontainerview.c +++ b/app/widgets/gimpcontainerview.c @@ -86,10 +86,10 @@ static guint view_signals[LAST_SIGNAL] = { 0 }; static GtkVBoxClass *parent_class = NULL; -GtkType +GType gimp_container_view_get_type (void) { - static guint view_type = 0; + static GType view_type = 0; if (! view_type) { @@ -118,106 +118,104 @@ gimp_container_view_class_init (GimpContainerViewClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_VBOX); + parent_class = g_type_class_peek_parent (klass); view_signals[SET_CONTAINER] = - gtk_signal_new ("set_container", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - set_container), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_OBJECT); + g_signal_new ("set_container", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerViewClass, set_container), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_OBJECT); view_signals[INSERT_ITEM] = - gtk_signal_new ("insert_item", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - insert_item), - gimp_marshal_POINTER__POINTER_INT, - GTK_TYPE_POINTER, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_INT); + g_signal_new ("insert_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpContainerViewClass, insert_item), + NULL, NULL, + gimp_cclosure_marshal_POINTER__OBJECT_INT, + G_TYPE_POINTER, 2, + GIMP_TYPE_OBJECT, + G_TYPE_INT); view_signals[REMOVE_ITEM] = - gtk_signal_new ("remove_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - remove_item), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_POINTER); + g_signal_new ("remove_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerViewClass, remove_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_POINTER, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_POINTER); view_signals[REORDER_ITEM] = - gtk_signal_new ("reorder_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - reorder_item), - gtk_marshal_NONE__POINTER_INT_POINTER, - GTK_TYPE_NONE, 3, - GIMP_TYPE_OBJECT, - GTK_TYPE_INT, - GTK_TYPE_POINTER); + g_signal_new ("reorder_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerViewClass, reorder_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_INT_POINTER, + G_TYPE_NONE, 3, + GIMP_TYPE_OBJECT, + G_TYPE_INT, + G_TYPE_POINTER); view_signals[SELECT_ITEM] = - gtk_signal_new ("select_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - select_item), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_POINTER); + g_signal_new ("select_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerViewClass, select_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_POINTER, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_POINTER); view_signals[ACTIVATE_ITEM] = - gtk_signal_new ("activate_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - activate_item), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_POINTER); + g_signal_new ("activate_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerViewClass, activate_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_POINTER, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_POINTER); view_signals[CONTEXT_ITEM] = - gtk_signal_new ("context_item", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - context_item), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, - GIMP_TYPE_OBJECT, - GTK_TYPE_POINTER); + g_signal_new ("context_item", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerViewClass, context_item), + NULL, NULL, + gimp_cclosure_marshal_VOID__OBJECT_POINTER, + G_TYPE_NONE, 2, + GIMP_TYPE_OBJECT, + G_TYPE_POINTER); view_signals[CLEAR_ITEMS] = - gtk_signal_new ("clear_items", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - clear_items), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clear_items", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerViewClass, clear_items), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); view_signals[SET_PREVIEW_SIZE] = - gtk_signal_new ("set_preview_size", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpContainerViewClass, - set_preview_size), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("set_preview_size", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpContainerViewClass, set_preview_size), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, view_signals, LAST_SIGNAL); - - object_class->destroy = gimp_container_view_destroy; + object_class->destroy = gimp_container_view_destroy; klass->set_container = gimp_container_view_real_set_container; klass->insert_item = NULL; @@ -248,13 +246,17 @@ gimp_container_view_destroy (GtkObject *object) view = GIMP_CONTAINER_VIEW (object); - gimp_container_view_set_container (view, NULL); + if (view->container) + gimp_container_view_set_container (view, NULL); - gimp_container_view_set_context (view, NULL); + if (view->context) + gimp_container_view_set_context (view, NULL); - g_hash_table_destroy (view->hash_table); - - view->hash_table = NULL; + if (view->hash_table) + { + g_hash_table_destroy (view->hash_table); + view->hash_table = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -264,15 +266,14 @@ void gimp_container_view_set_container (GimpContainerView *view, GimpContainer *container) { - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); - g_return_if_fail (!container || GIMP_IS_CONTAINER (container)); + g_return_if_fail (! container || GIMP_IS_CONTAINER (container)); if (container == view->container) return; - gtk_signal_emit (GTK_OBJECT (view), view_signals[SET_CONTAINER], - container); + g_signal_emit (G_OBJECT (view), view_signals[SET_CONTAINER], 0, + container); } static void @@ -285,15 +286,15 @@ gimp_container_view_real_set_container (GimpContainerView *view, gimp_container_view_clear_items (view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->container), - gimp_container_view_add, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->container), - gimp_container_view_remove, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->container), - gimp_container_view_reorder, - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->container), + gimp_container_view_add, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->container), + gimp_container_view_remove, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->container), + gimp_container_view_reorder, + view); g_hash_table_destroy (view->hash_table); @@ -301,9 +302,9 @@ gimp_container_view_real_set_container (GimpContainerView *view, if (view->context) { - gtk_signal_disconnect_by_func (GTK_OBJECT (view->context), - gimp_container_view_context_changed, - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->context), + gimp_container_view_context_changed, + view); gtk_drag_dest_unset (GTK_WIDGET (view)); gimp_dnd_viewable_dest_unset (GTK_WIDGET (view), @@ -334,17 +335,20 @@ gimp_container_view_real_set_container (GimpContainerView *view, (GFunc) gimp_container_view_add_foreach, view); - gtk_signal_connect_object (GTK_OBJECT (view->container), "add", - GTK_SIGNAL_FUNC (gimp_container_view_add), - GTK_OBJECT (view)); + g_signal_connect_object (G_OBJECT (view->container), "add", + G_CALLBACK (gimp_container_view_add), + G_OBJECT (view), + G_CONNECT_SWAPPED); - gtk_signal_connect_object (GTK_OBJECT (view->container), "remove", - GTK_SIGNAL_FUNC (gimp_container_view_remove), - GTK_OBJECT (view)); + g_signal_connect_object (G_OBJECT (view->container), "remove", + G_CALLBACK (gimp_container_view_remove), + G_OBJECT (view), + G_CONNECT_SWAPPED); - gtk_signal_connect_object (GTK_OBJECT (view->container), "reorder", - GTK_SIGNAL_FUNC (gimp_container_view_reorder), - GTK_OBJECT (view)); + g_signal_connect_object (G_OBJECT (view->container), "reorder", + G_CALLBACK (gimp_container_view_reorder), + G_OBJECT (view), + G_CONNECT_SWAPPED); if (view->context) { @@ -354,10 +358,10 @@ gimp_container_view_real_set_container (GimpContainerView *view, signal_name = gimp_context_type_to_signal_name (view->container->children_type); - gtk_signal_connect - (GTK_OBJECT (view->context), signal_name, - GTK_SIGNAL_FUNC (gimp_container_view_context_changed), - view); + g_signal_connect_object (G_OBJECT (view->context), signal_name, + G_CALLBACK (gimp_container_view_context_changed), + G_OBJECT (view), + 0); object = gimp_context_get_by_type (view->context, view->container->children_type); @@ -381,7 +385,6 @@ void gimp_container_view_set_context (GimpContainerView *view, GimpContext *context) { - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); g_return_if_fail (! context || GIMP_IS_CONTEXT (context)); @@ -390,9 +393,9 @@ gimp_container_view_set_context (GimpContainerView *view, if (view->context && view->container) { - gtk_signal_disconnect_by_func (GTK_OBJECT (view->context), - gimp_container_view_context_changed, - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->context), + gimp_container_view_context_changed, + view); gtk_drag_dest_unset (GTK_WIDGET (view)); gimp_dnd_viewable_dest_unset (GTK_WIDGET (view), @@ -409,9 +412,10 @@ gimp_container_view_set_context (GimpContainerView *view, signal_name = gimp_context_type_to_signal_name (view->container->children_type); - gtk_signal_connect (GTK_OBJECT (view->context), signal_name, - GTK_SIGNAL_FUNC (gimp_container_view_context_changed), - view); + g_signal_connect_object (G_OBJECT (view->context), signal_name, + G_CALLBACK (gimp_container_view_context_changed), + G_OBJECT (view), + 0); object = gimp_context_get_by_type (view->context, view->container->children_type); @@ -434,20 +438,18 @@ void gimp_container_view_set_preview_size (GimpContainerView *view, gint preview_size) { - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); g_return_if_fail (preview_size > 0 && preview_size <= 256 /* FIXME: 64 */); view->preview_size = preview_size; - gtk_signal_emit (GTK_OBJECT (view), view_signals[SET_PREVIEW_SIZE]); + g_signal_emit (G_OBJECT (view), view_signals[SET_PREVIEW_SIZE], 0); } void gimp_container_view_set_name_func (GimpContainerView *view, GimpItemGetNameFunc get_name_func) { - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); if (view->get_name_func != get_name_func) @@ -462,14 +464,13 @@ gimp_container_view_select_item (GimpContainerView *view, { gpointer insert_data; - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); g_return_if_fail (! viewable || GIMP_IS_VIEWABLE (viewable)); insert_data = g_hash_table_lookup (view->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (view), view_signals[SELECT_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (view), view_signals[SELECT_ITEM], 0, + viewable, insert_data); } void @@ -478,15 +479,13 @@ gimp_container_view_activate_item (GimpContainerView *view, { gpointer insert_data; - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); - g_return_if_fail (viewable != NULL); g_return_if_fail (GIMP_IS_VIEWABLE (viewable)); insert_data = g_hash_table_lookup (view->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (view), view_signals[ACTIVATE_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (view), view_signals[ACTIVATE_ITEM], 0, + viewable, insert_data); } void @@ -495,24 +494,20 @@ gimp_container_view_context_item (GimpContainerView *view, { gpointer insert_data; - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); - g_return_if_fail (viewable != NULL); g_return_if_fail (GIMP_IS_VIEWABLE (viewable)); insert_data = g_hash_table_lookup (view->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (view), view_signals[CONTEXT_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (view), view_signals[CONTEXT_ITEM], 0, + viewable, insert_data); } void gimp_container_view_item_selected (GimpContainerView *view, GimpViewable *viewable) { - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); - g_return_if_fail (viewable != NULL); g_return_if_fail (GIMP_IS_VIEWABLE (viewable)); if (view->container && view->context) @@ -529,9 +524,7 @@ void gimp_container_view_item_activated (GimpContainerView *view, GimpViewable *viewable) { - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); - g_return_if_fail (viewable != NULL); g_return_if_fail (GIMP_IS_VIEWABLE (viewable)); gimp_container_view_activate_item (view, viewable); @@ -541,9 +534,7 @@ void gimp_container_view_item_context (GimpContainerView *view, GimpViewable *viewable) { - g_return_if_fail (view != NULL); g_return_if_fail (GIMP_IS_CONTAINER_VIEW (view)); - g_return_if_fail (viewable != NULL); g_return_if_fail (GIMP_IS_VIEWABLE (viewable)); gimp_container_view_context_item (view, viewable); @@ -552,7 +543,7 @@ gimp_container_view_item_context (GimpContainerView *view, static void gimp_container_view_clear_items (GimpContainerView *view) { - gtk_signal_emit (GTK_OBJECT (view), view_signals[CLEAR_ITEMS]); + g_signal_emit (G_OBJECT (view), view_signals[CLEAR_ITEMS], 0); } static void @@ -569,8 +560,8 @@ gimp_container_view_add_foreach (GimpViewable *viewable, { gpointer insert_data = NULL; - gtk_signal_emit (GTK_OBJECT (view), view_signals[INSERT_ITEM], - viewable, -1, &insert_data); + g_signal_emit (G_OBJECT (view), view_signals[INSERT_ITEM], 0, + viewable, -1, &insert_data); g_hash_table_insert (view->hash_table, viewable, insert_data); } @@ -586,8 +577,8 @@ gimp_container_view_add (GimpContainerView *view, index = gimp_container_get_child_index (container, GIMP_OBJECT (viewable)); - gtk_signal_emit (GTK_OBJECT (view), view_signals[INSERT_ITEM], - viewable, index, &insert_data); + g_signal_emit (G_OBJECT (view), view_signals[INSERT_ITEM], 0, + viewable, index, &insert_data); g_hash_table_insert (view->hash_table, viewable, insert_data); } @@ -605,8 +596,8 @@ gimp_container_view_remove (GimpContainerView *view, { g_hash_table_remove (view->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (view), view_signals[REMOVE_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (view), view_signals[REMOVE_ITEM], 0, + viewable, insert_data); } } @@ -622,8 +613,8 @@ gimp_container_view_reorder (GimpContainerView *view, if (insert_data) { - gtk_signal_emit (GTK_OBJECT (view), view_signals[REORDER_ITEM], - viewable, new_index, insert_data); + g_signal_emit (G_OBJECT (view), view_signals[REORDER_ITEM], 0, + viewable, new_index, insert_data); } } @@ -636,8 +627,8 @@ gimp_container_view_context_changed (GimpContext *context, insert_data = g_hash_table_lookup (view->hash_table, viewable); - gtk_signal_emit (GTK_OBJECT (view), view_signals[SELECT_ITEM], - viewable, insert_data); + g_signal_emit (G_OBJECT (view), view_signals[SELECT_ITEM], 0, + viewable, insert_data); } static void diff --git a/app/widgets/gimpcontainerview.h b/app/widgets/gimpcontainerview.h index a7fd85761d..111c2be6fa 100644 --- a/app/widgets/gimpcontainerview.h +++ b/app/widgets/gimpcontainerview.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_CONTAINER_VIEW (gimp_container_view_get_type ()) -#define GIMP_CONTAINER_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CONTAINER_VIEW, GimpContainerView)) -#define GIMP_CONTAINER_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_VIEW, GimpContainerViewClass)) -#define GIMP_IS_CONTAINER_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CONTAINER_VIEW)) -#define GIMP_IS_CONTAINER_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_VIEW)) +#define GIMP_CONTAINER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTAINER_VIEW, GimpContainerView)) +#define GIMP_CONTAINER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CONTAINER_VIEW, GimpContainerViewClass)) +#define GIMP_IS_CONTAINER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CONTAINER_VIEW)) +#define GIMP_IS_CONTAINER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CONTAINER_VIEW)) typedef struct _GimpContainerViewClass GimpContainerViewClass; diff --git a/app/widgets/gimpdatafactoryview.c b/app/widgets/gimpdatafactoryview.c index ec8f59635c..64c7d1bb6d 100644 --- a/app/widgets/gimpdatafactoryview.c +++ b/app/widgets/gimpdatafactoryview.c @@ -130,31 +130,31 @@ gimp_data_factory_view_init (GimpDataFactoryView *view) gimp_container_editor_add_button (editor, new_xpm, _("New"), NULL, - gimp_data_factory_view_new_clicked); + G_CALLBACK (gimp_data_factory_view_new_clicked)); view->duplicate_button = gimp_container_editor_add_button (editor, duplicate_xpm, _("Duplicate"), NULL, - gimp_data_factory_view_duplicate_clicked); + G_CALLBACK (gimp_data_factory_view_duplicate_clicked)); view->edit_button = gimp_container_editor_add_button (editor, edit_xpm, _("Edit"), NULL, - gimp_data_factory_view_edit_clicked); + G_CALLBACK (gimp_data_factory_view_edit_clicked)); view->delete_button = gimp_container_editor_add_button (editor, delete_xpm, _("Delete"), NULL, - gimp_data_factory_view_delete_clicked); + G_CALLBACK (gimp_data_factory_view_delete_clicked)); view->refresh_button = gimp_container_editor_add_button (editor, refresh_xpm, _("Refresh"), NULL, - gimp_data_factory_view_refresh_clicked); + G_CALLBACK (gimp_data_factory_view_refresh_clicked)); gtk_widget_set_sensitive (view->duplicate_button, FALSE); gtk_widget_set_sensitive (view->edit_button, FALSE); @@ -417,9 +417,9 @@ gimp_data_factory_view_delete_clicked (GtkWidget *widget, gimp_data_factory_view_delete_callback, delete_data); - gtk_signal_connect_object (GTK_OBJECT (dialog), "destroy", - GTK_SIGNAL_FUNC (g_free), - (GtkObject *) delete_data); + g_signal_connect_swapped (G_OBJECT (dialog), "destroy", + G_CALLBACK (g_free), + delete_data); g_free (str); @@ -453,8 +453,7 @@ gimp_data_factory_view_select_item (GimpContainerEditor *editor, if (viewable && gimp_container_have (view->factory->container, GIMP_OBJECT (viewable))) { - duplicate_sensitive = - (GIMP_DATA_CLASS (GTK_OBJECT (viewable)->klass)->duplicate != NULL); + duplicate_sensitive = (GIMP_DATA_GET_CLASS (viewable)->duplicate != NULL); edit_sensitive = (view->data_edit_func != NULL); delete_sensitive = TRUE; /* TODO: check permissions */ diff --git a/app/widgets/gimpdatafactoryview.h b/app/widgets/gimpdatafactoryview.h index 943e8dde7f..764a464eae 100644 --- a/app/widgets/gimpdatafactoryview.h +++ b/app/widgets/gimpdatafactoryview.h @@ -30,10 +30,10 @@ typedef void (* GimpDataEditFunc) (GimpData *data); #define GIMP_TYPE_DATA_FACTORY_VIEW (gimp_data_factory_view_get_type ()) -#define GIMP_DATA_FACTORY_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DATA_FACTORY_VIEW, GimpDataFactoryView)) -#define GIMP_DATA_FACTORY_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DATA_FACTORY_VIEW, GimpDataFactoryViewClass)) -#define GIMP_IS_DATA_FACTORY_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DATA_FACTORY_VIEW)) -#define GIMP_IS_DATA_FACTORY_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DATA_FACTORY_VIEW)) +#define GIMP_DATA_FACTORY_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DATA_FACTORY_VIEW, GimpDataFactoryView)) +#define GIMP_DATA_FACTORY_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DATA_FACTORY_VIEW, GimpDataFactoryViewClass)) +#define GIMP_IS_DATA_FACTORY_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DATA_FACTORY_VIEW)) +#define GIMP_IS_DATA_FACTORY_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DATA_FACTORY_VIEW)) typedef struct _GimpDataFactoryViewClass GimpDataFactoryViewClass; diff --git a/app/widgets/gimpdeviceinfo.c b/app/widgets/gimpdeviceinfo.c index 9eaa27bcbf..eae85ed401 100644 --- a/app/widgets/gimpdeviceinfo.c +++ b/app/widgets/gimpdeviceinfo.c @@ -63,33 +63,33 @@ typedef struct _DeviceInfo DeviceInfo; struct _DeviceInfo { - guint32 device; /* device ID */ - gchar *name; + GdkDevice *device; + gchar *name; - gshort is_present; /* is the device currently present */ + gshort is_present; /* is the device currently present */ /* gdk_input options - for not present devices */ - GdkInputMode mode; - gint num_axes; - GdkAxisUse *axes; - gint num_keys; - GdkDeviceKey *keys; + GdkInputMode mode; + gint num_axes; + GdkAxisUse *axes; + gint num_keys; + GdkDeviceKey *keys; - GimpContext *context; + GimpContext *context; }; typedef struct _DeviceInfoDialog DeviceInfoDialog; struct _DeviceInfoDialog { - gint num_devices; + gint num_devices; - guint32 current; - guint32 *ids; + GdkDevice *current; + GdkDevice **devices; - GtkWidget *shell; - GtkWidget *table; + GtkWidget *shell; + GtkWidget *table; GtkWidget **frames; GtkWidget **tools; @@ -103,7 +103,7 @@ struct _DeviceInfoDialog /* local functions */ static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data); static void devices_write_rc_device (DeviceInfo *device_info, @@ -114,7 +114,7 @@ static void device_status_destroy_callback (void); static void devices_close_callback (GtkWidget *widget, gpointer data); -static void device_status_update (guint32 deviceid); +static void device_status_update (GdkDevice *device); static void device_status_update_current (void); static void device_status_drop_tool (GtkWidget *widget, @@ -139,11 +139,11 @@ static void device_status_data_changed (GimpContext *context, gpointer data); static void device_status_context_connect (GimpContext *context, - guint32 deviceid); + GdkDevice *device); /* global data */ -gint current_device = GDK_CORE_POINTER; +GdkDevice *current_device = NULL; /* local data */ static GList *device_info_list = NULL; @@ -153,36 +153,19 @@ static DeviceInfoDialog *deviceD = NULL; static gboolean suppress_update = FALSE; -/* utility functions for the device lists */ - -static GdkDeviceInfo * -gdk_device_info_get_by_id (guint32 deviceid) -{ - GdkDeviceInfo *info; - GList *list; - - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) - { - info = (GdkDeviceInfo *) list->data; - - if (info->deviceid == deviceid) - return info; - } - - return NULL; -} +/* utility functions for the device_info_list */ static DeviceInfo * -device_info_get_by_id (guint32 deviceid) +device_info_get_by_device (GdkDevice *device) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { info = (DeviceInfo *) list->data; - if (info->device == deviceid) + if (info->device == device) return info; } @@ -193,7 +176,7 @@ static DeviceInfo * device_info_get_by_name (gchar *name) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { @@ -269,34 +252,40 @@ input_dialog_create (void) static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data) { - device_status_update (deviceid); + device_status_update (device); } void devices_init (void) { - GdkDeviceInfo *gdk_info; - DeviceInfo *device_info; - GList *list; + GdkDevice *device; + DeviceInfo *device_info; + GList *list; + + current_device = gdk_core_pointer; /* create device info structures for present devices */ - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - gdk_info = (GdkDeviceInfo *) list->data; + device = (GdkDevice *) list->data; device_info = g_new (DeviceInfo, 1); - device_info->device = gdk_info->deviceid; - device_info->name = g_strdup (gdk_info->name); + device_info->device = device; + device_info->name = g_strdup (device->name); + device_info->mode = device->mode; + device_info->is_present = TRUE; - device_info->mode = gdk_info->mode; - device_info->num_axes = gdk_info->num_axes; + device_info->num_axes = device->num_axes; device_info->axes = NULL; + device_info->num_keys = device->num_axes; + device_info->keys = NULL; + device_info->context = gimp_create_context (the_gimp, device_info->name, NULL); gimp_context_define_args (device_info->context, @@ -305,7 +294,8 @@ devices_init (void) gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } @@ -323,7 +313,7 @@ devices_restore (void) gimprc_parse_file (filename); g_free (filename); - if ((device_info = device_info_get_by_id (current_device)) == NULL) + if ((device_info = device_info_get_by_device (current_device)) == NULL) return; suppress_update = TRUE; @@ -356,10 +346,12 @@ devices_rc_update (gchar *name, /* Find device if we have it */ device_info = device_info_get_by_name (name); - if (!device_info) + if (! device_info) { device_info = g_new (DeviceInfo, 1); - device_info->name = g_strdup (name); + + device_info->device = NULL; + device_info->name = g_strdup (name); device_info->is_present = FALSE; if (values & DEVICE_AXES) @@ -371,7 +363,7 @@ devices_rc_update (gchar *name, else { device_info->num_axes = 0; - device_info->axes = NULL; + device_info->axes = NULL; } if (values & DEVICE_KEYS) @@ -380,6 +372,11 @@ devices_rc_update (gchar *name, device_info->keys = g_new (GdkDeviceKey, num_keys); memcpy (device_info->keys, axes, num_keys * sizeof (GdkDeviceKey)); } + else + { + device_info->num_keys = 0; + device_info->keys = NULL; + } if (values & DEVICE_MODE) device_info->mode = mode; @@ -394,31 +391,44 @@ devices_rc_update (gchar *name, gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } else { - GdkDeviceInfo *gdk_info; + GdkDevice *device; - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; - if (gdk_info != NULL) + if (device) { if (values & DEVICE_MODE) - gdk_input_set_mode (gdk_info->deviceid, mode); + { + gdk_device_set_mode (device, mode); + } - if ((values & DEVICE_AXES) && num_axes >= gdk_info->num_axes) - gdk_input_set_axes (gdk_info->deviceid, axes); - - if ((values & DEVICE_KEYS) && num_keys >= gdk_info->num_keys) + if ((values & DEVICE_AXES) && num_axes >= device->num_axes) { gint i; - - for (i=0; inum_keys); i++) - gdk_input_set_key (gdk_info->deviceid, i, - keys[i].keyval, keys[i].modifiers); + + for (i = 0; i < MIN (num_axes, device->num_axes); i++) + { + gdk_device_set_axis_use (device, i, axes[i]); + } + } + + if ((values & DEVICE_KEYS) && num_keys >= device->num_keys) + { + gint i; + + for (i = 0; i < MIN (num_keys, device->num_keys); i++) + { + gdk_device_set_key (device, i, + keys[i].keyval, + keys[i].modifiers); + } } } else @@ -517,18 +527,18 @@ devices_rc_update (gchar *name, } void -select_device (guint32 new_device) +select_device (GdkDevice *new_device) { - DeviceInfo *device_info; + DeviceInfo *device_info; GimpContext *context; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); gimp_context_unset_parent (device_info->context); suppress_update = TRUE; - device_info = device_info_get_by_id (new_device); + device_info = device_info_get_by_device (new_device); current_device = new_device; @@ -542,22 +552,22 @@ select_device (guint32 new_device) device_status_update_current (); } -gint +gboolean devices_check_change (GdkEvent *event) { - guint32 device; + GdkDevice *device; switch (event->type) { case GDK_MOTION_NOTIFY: - device = ((GdkEventMotion *)event)->deviceid; + device = ((GdkEventMotion *) event)->device; break; case GDK_BUTTON_PRESS: case GDK_BUTTON_RELEASE: - device = ((GdkEventButton *)event)->deviceid; + device = ((GdkEventButton *) event)->device; break; case GDK_PROXIMITY_OUT: - device = ((GdkEventProximity *)event)->deviceid; + device = ((GdkEventProximity *) event)->device; break; default: device = current_device; @@ -568,26 +578,24 @@ devices_check_change (GdkEvent *event) select_device (device); return TRUE; } - else - { - return FALSE; - } + + return FALSE; } static void devices_write_rc_device (DeviceInfo *device_info, FILE *fp) { - GdkDeviceInfo *gdk_info = NULL; - gchar *mode = NULL; - gint i; + GdkDevice *device = NULL; + gchar *mode = NULL; + gint i; if (device_info->is_present) - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; fprintf (fp, "(device \"%s\"", device_info->name); - switch (gdk_info ? gdk_info->mode : device_info->mode) + switch (device ? device->mode : device_info->mode) { case GDK_MODE_DISABLED: mode = "disabled"; @@ -603,13 +611,13 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp, "\n (mode %s)", mode); fprintf (fp, "\n (axes %d", - gdk_info ? gdk_info->num_axes : device_info->num_axes); + device ? device->num_axes : device_info->num_axes); - for (i=0; i< (gdk_info ? gdk_info->num_axes : device_info->num_axes); i++) + for (i = 0; i < (device ? device->num_axes : device_info->num_axes); i++) { gchar *axis_type = NULL; - switch (gdk_info ? gdk_info->axes[i] : device_info->axes[i]) + switch (device ? device->axes[i].use : device_info->axes[i]) { case GDK_AXIS_IGNORE: axis_type = "ignore"; @@ -635,14 +643,14 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp,")"); fprintf (fp, "\n (keys %d", - gdk_info ? gdk_info->num_keys : device_info->num_keys); + device ? device->num_keys : device_info->num_keys); - for (i = 0; i < (gdk_info ? gdk_info->num_keys : device_info->num_keys); i++) + for (i = 0; i < (device ? device->num_keys : device_info->num_keys); i++) { - GdkModifierType modifiers = gdk_info ? gdk_info->keys[i].modifiers : - device_info->keys[i].modifiers; - guint keyval = gdk_info ? gdk_info->keys[i].keyval : - device_info->keys[i].keyval; + GdkModifierType modifiers = (device ? device->keys[i].modifiers : + device_info->keys[i].modifiers); + guint keyval = (device ? device->keys[i].keyval : + device_info->keys[i].keyval); if (keyval) { @@ -716,7 +724,7 @@ devices_write_rc (void) gchar *filename; FILE *fp; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); filename = gimp_personal_rc_file ("devicerc"); fp = fopen (filename, "wb"); @@ -773,7 +781,7 @@ device_status_create (void) gtk_widget_realize (deviceD->table); gtk_widget_show (deviceD->table); - deviceD->ids = g_new (guint32, deviceD->num_devices); + deviceD->devices = g_new (GdkDevice *, deviceD->num_devices); deviceD->frames = g_new (GtkWidget *, deviceD->num_devices); deviceD->tools = g_new (GtkWidget *, deviceD->num_devices); deviceD->foregrounds = g_new (GtkWidget *, deviceD->num_devices); @@ -789,7 +797,7 @@ device_status_create (void) device_info = (DeviceInfo *) list->data; - deviceD->ids[i] = device_info->device; + deviceD->devices[i] = device_info->device; /* the device name */ @@ -811,11 +819,10 @@ device_status_create (void) gimp_preview_new_full (GIMP_VIEWABLE (gimp_context_get_tool (device_info->context)), CELL_SIZE, CELL_SIZE, 0, FALSE, FALSE, TRUE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (device_info->context), - "tool_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (deviceD->tools[i])); + gtk_signal_connect_object_while_alive (GTK_OBJECT (device_info->context), + "tool_changed", + GTK_SIGNAL_FUNC (gimp_preview_set_viewable), + GTK_OBJECT (deviceD->tools[i])); gimp_gtk_drag_dest_set_by_type (deviceD->tools[i], GTK_DEST_DEFAULT_ALL, GIMP_TYPE_TOOL_INFO, @@ -823,7 +830,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->tools[i], GIMP_TYPE_TOOL_INFO, device_status_drop_tool, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->tools[i], 1, 2, i, i+1, 0, 0, 2, 2); @@ -838,7 +845,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->foregrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_foreground_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->foregrounds[i], 2, 3, i, i+1, @@ -854,7 +861,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->backgrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_background_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->backgrounds[i], 3, 4, i, i+1, @@ -878,7 +885,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->brushes[i], GIMP_TYPE_BRUSH, device_status_drop_brush, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->brushes[i], 4, 5, i, i+1, 0, 0, 2, 2); @@ -901,7 +908,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->patterns[i], GIMP_TYPE_PATTERN, device_status_drop_pattern, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->patterns[i], 5, 6, i, i+1, 0, 0, 2, 2); @@ -924,7 +931,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->gradients[i], GIMP_TYPE_GRADIENT, device_status_drop_gradient, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->gradients[i], 6, 7, i, i+1, 0, 0, 2, 2); @@ -932,7 +939,8 @@ device_status_create (void) device_status_update (device_info->device); } - deviceD->current = 0xffffffff; /* random, but doesn't matter */ + deviceD->current = NULL; + device_status_update_current (); gtk_signal_connect (GTK_OBJECT (deviceD->shell), "destroy", @@ -945,7 +953,7 @@ device_status_create (void) static void device_status_destroy_callback (void) { - g_free (deviceD->ids); + g_free (deviceD->devices); g_free (deviceD->frames); g_free (deviceD->tools); g_free (deviceD->foregrounds); @@ -985,10 +993,10 @@ device_status_update_current (void) { for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceD->current) + if (deviceD->devices[i] == deviceD->current) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_OUT); - else if (deviceD->ids[i] == current_device) + else if (deviceD->devices[i] == current_device) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_IN); } @@ -998,9 +1006,8 @@ device_status_update_current (void) } void -device_status_update (guint32 deviceid) +device_status_update (GdkDevice *device) { - GdkDeviceInfo *gdk_info; DeviceInfo *device_info; GimpRGB color; guchar red, green, blue; @@ -1010,21 +1017,18 @@ device_status_update (guint32 deviceid) if (!deviceD || suppress_update) return; - if ((device_info = device_info_get_by_id (deviceid)) == NULL) - return; - - if ((gdk_info = gdk_device_info_get_by_id (deviceid)) == NULL) + if ((device_info = device_info_get_by_device (device)) == NULL) return; for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceid) + if (deviceD->devices[i] == device) break; } g_return_if_fail (i < deviceD->num_devices); - if (gdk_info->mode == GDK_MODE_DISABLED) + if (device->mode == GDK_MODE_DISABLED) { gtk_widget_hide (deviceD->frames[i]); gtk_widget_hide (deviceD->tools[i]); @@ -1097,7 +1101,7 @@ device_status_drop_tool (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1112,7 +1116,7 @@ device_status_foreground_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1128,7 +1132,7 @@ device_status_background_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1144,7 +1148,7 @@ device_status_drop_brush (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1159,7 +1163,7 @@ device_status_drop_pattern (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1174,7 +1178,7 @@ device_status_drop_gradient (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1189,33 +1193,29 @@ device_status_data_changed (GimpContext *context, gpointer dummy, gpointer data) { - DeviceInfo *device_info; - - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); - - device_status_update (device_info->device); + device_status_update ((GdkDevice *) data); } static void device_status_context_connect (GimpContext *context, - guint32 deviceid) + GdkDevice *device) { gtk_signal_connect (GTK_OBJECT (context), "foreground_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "background_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "tool_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "brush_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "pattern_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "gradient_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); } diff --git a/app/widgets/gimpdevices.c b/app/widgets/gimpdevices.c index 9eaa27bcbf..eae85ed401 100644 --- a/app/widgets/gimpdevices.c +++ b/app/widgets/gimpdevices.c @@ -63,33 +63,33 @@ typedef struct _DeviceInfo DeviceInfo; struct _DeviceInfo { - guint32 device; /* device ID */ - gchar *name; + GdkDevice *device; + gchar *name; - gshort is_present; /* is the device currently present */ + gshort is_present; /* is the device currently present */ /* gdk_input options - for not present devices */ - GdkInputMode mode; - gint num_axes; - GdkAxisUse *axes; - gint num_keys; - GdkDeviceKey *keys; + GdkInputMode mode; + gint num_axes; + GdkAxisUse *axes; + gint num_keys; + GdkDeviceKey *keys; - GimpContext *context; + GimpContext *context; }; typedef struct _DeviceInfoDialog DeviceInfoDialog; struct _DeviceInfoDialog { - gint num_devices; + gint num_devices; - guint32 current; - guint32 *ids; + GdkDevice *current; + GdkDevice **devices; - GtkWidget *shell; - GtkWidget *table; + GtkWidget *shell; + GtkWidget *table; GtkWidget **frames; GtkWidget **tools; @@ -103,7 +103,7 @@ struct _DeviceInfoDialog /* local functions */ static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data); static void devices_write_rc_device (DeviceInfo *device_info, @@ -114,7 +114,7 @@ static void device_status_destroy_callback (void); static void devices_close_callback (GtkWidget *widget, gpointer data); -static void device_status_update (guint32 deviceid); +static void device_status_update (GdkDevice *device); static void device_status_update_current (void); static void device_status_drop_tool (GtkWidget *widget, @@ -139,11 +139,11 @@ static void device_status_data_changed (GimpContext *context, gpointer data); static void device_status_context_connect (GimpContext *context, - guint32 deviceid); + GdkDevice *device); /* global data */ -gint current_device = GDK_CORE_POINTER; +GdkDevice *current_device = NULL; /* local data */ static GList *device_info_list = NULL; @@ -153,36 +153,19 @@ static DeviceInfoDialog *deviceD = NULL; static gboolean suppress_update = FALSE; -/* utility functions for the device lists */ - -static GdkDeviceInfo * -gdk_device_info_get_by_id (guint32 deviceid) -{ - GdkDeviceInfo *info; - GList *list; - - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) - { - info = (GdkDeviceInfo *) list->data; - - if (info->deviceid == deviceid) - return info; - } - - return NULL; -} +/* utility functions for the device_info_list */ static DeviceInfo * -device_info_get_by_id (guint32 deviceid) +device_info_get_by_device (GdkDevice *device) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { info = (DeviceInfo *) list->data; - if (info->device == deviceid) + if (info->device == device) return info; } @@ -193,7 +176,7 @@ static DeviceInfo * device_info_get_by_name (gchar *name) { DeviceInfo *info; - GList *list; + GList *list; for (list = device_info_list; list; list = g_list_next (list)) { @@ -269,34 +252,40 @@ input_dialog_create (void) static void input_dialog_able_callback (GtkWidget *widget, - guint32 deviceid, + GdkDevice *device, gpointer data) { - device_status_update (deviceid); + device_status_update (device); } void devices_init (void) { - GdkDeviceInfo *gdk_info; - DeviceInfo *device_info; - GList *list; + GdkDevice *device; + DeviceInfo *device_info; + GList *list; + + current_device = gdk_core_pointer; /* create device info structures for present devices */ - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - gdk_info = (GdkDeviceInfo *) list->data; + device = (GdkDevice *) list->data; device_info = g_new (DeviceInfo, 1); - device_info->device = gdk_info->deviceid; - device_info->name = g_strdup (gdk_info->name); + device_info->device = device; + device_info->name = g_strdup (device->name); + device_info->mode = device->mode; + device_info->is_present = TRUE; - device_info->mode = gdk_info->mode; - device_info->num_axes = gdk_info->num_axes; + device_info->num_axes = device->num_axes; device_info->axes = NULL; + device_info->num_keys = device->num_axes; + device_info->keys = NULL; + device_info->context = gimp_create_context (the_gimp, device_info->name, NULL); gimp_context_define_args (device_info->context, @@ -305,7 +294,8 @@ devices_init (void) gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } @@ -323,7 +313,7 @@ devices_restore (void) gimprc_parse_file (filename); g_free (filename); - if ((device_info = device_info_get_by_id (current_device)) == NULL) + if ((device_info = device_info_get_by_device (current_device)) == NULL) return; suppress_update = TRUE; @@ -356,10 +346,12 @@ devices_rc_update (gchar *name, /* Find device if we have it */ device_info = device_info_get_by_name (name); - if (!device_info) + if (! device_info) { device_info = g_new (DeviceInfo, 1); - device_info->name = g_strdup (name); + + device_info->device = NULL; + device_info->name = g_strdup (name); device_info->is_present = FALSE; if (values & DEVICE_AXES) @@ -371,7 +363,7 @@ devices_rc_update (gchar *name, else { device_info->num_axes = 0; - device_info->axes = NULL; + device_info->axes = NULL; } if (values & DEVICE_KEYS) @@ -380,6 +372,11 @@ devices_rc_update (gchar *name, device_info->keys = g_new (GdkDeviceKey, num_keys); memcpy (device_info->keys, axes, num_keys * sizeof (GdkDeviceKey)); } + else + { + device_info->num_keys = 0; + device_info->keys = NULL; + } if (values & DEVICE_MODE) device_info->mode = mode; @@ -394,31 +391,44 @@ devices_rc_update (gchar *name, gimp_context_copy_args (gimp_get_user_context (the_gimp), device_info->context, DEVICE_CONTEXT_MASK); - device_status_context_connect (device_info->context, device_info->device); + device_status_context_connect (device_info->context, + device_info->device); device_info_list = g_list_append (device_info_list, device_info); } else { - GdkDeviceInfo *gdk_info; + GdkDevice *device; - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; - if (gdk_info != NULL) + if (device) { if (values & DEVICE_MODE) - gdk_input_set_mode (gdk_info->deviceid, mode); + { + gdk_device_set_mode (device, mode); + } - if ((values & DEVICE_AXES) && num_axes >= gdk_info->num_axes) - gdk_input_set_axes (gdk_info->deviceid, axes); - - if ((values & DEVICE_KEYS) && num_keys >= gdk_info->num_keys) + if ((values & DEVICE_AXES) && num_axes >= device->num_axes) { gint i; - - for (i=0; inum_keys); i++) - gdk_input_set_key (gdk_info->deviceid, i, - keys[i].keyval, keys[i].modifiers); + + for (i = 0; i < MIN (num_axes, device->num_axes); i++) + { + gdk_device_set_axis_use (device, i, axes[i]); + } + } + + if ((values & DEVICE_KEYS) && num_keys >= device->num_keys) + { + gint i; + + for (i = 0; i < MIN (num_keys, device->num_keys); i++) + { + gdk_device_set_key (device, i, + keys[i].keyval, + keys[i].modifiers); + } } } else @@ -517,18 +527,18 @@ devices_rc_update (gchar *name, } void -select_device (guint32 new_device) +select_device (GdkDevice *new_device) { - DeviceInfo *device_info; + DeviceInfo *device_info; GimpContext *context; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); gimp_context_unset_parent (device_info->context); suppress_update = TRUE; - device_info = device_info_get_by_id (new_device); + device_info = device_info_get_by_device (new_device); current_device = new_device; @@ -542,22 +552,22 @@ select_device (guint32 new_device) device_status_update_current (); } -gint +gboolean devices_check_change (GdkEvent *event) { - guint32 device; + GdkDevice *device; switch (event->type) { case GDK_MOTION_NOTIFY: - device = ((GdkEventMotion *)event)->deviceid; + device = ((GdkEventMotion *) event)->device; break; case GDK_BUTTON_PRESS: case GDK_BUTTON_RELEASE: - device = ((GdkEventButton *)event)->deviceid; + device = ((GdkEventButton *) event)->device; break; case GDK_PROXIMITY_OUT: - device = ((GdkEventProximity *)event)->deviceid; + device = ((GdkEventProximity *) event)->device; break; default: device = current_device; @@ -568,26 +578,24 @@ devices_check_change (GdkEvent *event) select_device (device); return TRUE; } - else - { - return FALSE; - } + + return FALSE; } static void devices_write_rc_device (DeviceInfo *device_info, FILE *fp) { - GdkDeviceInfo *gdk_info = NULL; - gchar *mode = NULL; - gint i; + GdkDevice *device = NULL; + gchar *mode = NULL; + gint i; if (device_info->is_present) - gdk_info = gdk_device_info_get_by_id (device_info->device); + device = device_info->device; fprintf (fp, "(device \"%s\"", device_info->name); - switch (gdk_info ? gdk_info->mode : device_info->mode) + switch (device ? device->mode : device_info->mode) { case GDK_MODE_DISABLED: mode = "disabled"; @@ -603,13 +611,13 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp, "\n (mode %s)", mode); fprintf (fp, "\n (axes %d", - gdk_info ? gdk_info->num_axes : device_info->num_axes); + device ? device->num_axes : device_info->num_axes); - for (i=0; i< (gdk_info ? gdk_info->num_axes : device_info->num_axes); i++) + for (i = 0; i < (device ? device->num_axes : device_info->num_axes); i++) { gchar *axis_type = NULL; - switch (gdk_info ? gdk_info->axes[i] : device_info->axes[i]) + switch (device ? device->axes[i].use : device_info->axes[i]) { case GDK_AXIS_IGNORE: axis_type = "ignore"; @@ -635,14 +643,14 @@ devices_write_rc_device (DeviceInfo *device_info, fprintf (fp,")"); fprintf (fp, "\n (keys %d", - gdk_info ? gdk_info->num_keys : device_info->num_keys); + device ? device->num_keys : device_info->num_keys); - for (i = 0; i < (gdk_info ? gdk_info->num_keys : device_info->num_keys); i++) + for (i = 0; i < (device ? device->num_keys : device_info->num_keys); i++) { - GdkModifierType modifiers = gdk_info ? gdk_info->keys[i].modifiers : - device_info->keys[i].modifiers; - guint keyval = gdk_info ? gdk_info->keys[i].keyval : - device_info->keys[i].keyval; + GdkModifierType modifiers = (device ? device->keys[i].modifiers : + device_info->keys[i].modifiers); + guint keyval = (device ? device->keys[i].keyval : + device_info->keys[i].keyval); if (keyval) { @@ -716,7 +724,7 @@ devices_write_rc (void) gchar *filename; FILE *fp; - device_info = device_info_get_by_id (current_device); + device_info = device_info_get_by_device (current_device); filename = gimp_personal_rc_file ("devicerc"); fp = fopen (filename, "wb"); @@ -773,7 +781,7 @@ device_status_create (void) gtk_widget_realize (deviceD->table); gtk_widget_show (deviceD->table); - deviceD->ids = g_new (guint32, deviceD->num_devices); + deviceD->devices = g_new (GdkDevice *, deviceD->num_devices); deviceD->frames = g_new (GtkWidget *, deviceD->num_devices); deviceD->tools = g_new (GtkWidget *, deviceD->num_devices); deviceD->foregrounds = g_new (GtkWidget *, deviceD->num_devices); @@ -789,7 +797,7 @@ device_status_create (void) device_info = (DeviceInfo *) list->data; - deviceD->ids[i] = device_info->device; + deviceD->devices[i] = device_info->device; /* the device name */ @@ -811,11 +819,10 @@ device_status_create (void) gimp_preview_new_full (GIMP_VIEWABLE (gimp_context_get_tool (device_info->context)), CELL_SIZE, CELL_SIZE, 0, FALSE, FALSE, TRUE); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (device_info->context), - "tool_changed", - GTK_SIGNAL_FUNC (gimp_preview_set_viewable), - GTK_OBJECT (deviceD->tools[i])); + gtk_signal_connect_object_while_alive (GTK_OBJECT (device_info->context), + "tool_changed", + GTK_SIGNAL_FUNC (gimp_preview_set_viewable), + GTK_OBJECT (deviceD->tools[i])); gimp_gtk_drag_dest_set_by_type (deviceD->tools[i], GTK_DEST_DEFAULT_ALL, GIMP_TYPE_TOOL_INFO, @@ -823,7 +830,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->tools[i], GIMP_TYPE_TOOL_INFO, device_status_drop_tool, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->tools[i], 1, 2, i, i+1, 0, 0, 2, 2); @@ -838,7 +845,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->foregrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_foreground_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->foregrounds[i], 2, 3, i, i+1, @@ -854,7 +861,7 @@ device_status_create (void) gtk_signal_connect (GTK_OBJECT (deviceD->backgrounds[i]), "color_changed", GTK_SIGNAL_FUNC (device_status_background_changed), - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->backgrounds[i], 3, 4, i, i+1, @@ -878,7 +885,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->brushes[i], GIMP_TYPE_BRUSH, device_status_drop_brush, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE (deviceD->table), deviceD->brushes[i], 4, 5, i, i+1, 0, 0, 2, 2); @@ -901,7 +908,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->patterns[i], GIMP_TYPE_PATTERN, device_status_drop_pattern, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->patterns[i], 5, 6, i, i+1, 0, 0, 2, 2); @@ -924,7 +931,7 @@ device_status_create (void) gimp_dnd_viewable_dest_set (deviceD->gradients[i], GIMP_TYPE_GRADIENT, device_status_drop_gradient, - GUINT_TO_POINTER (device_info->device)); + device_info); gtk_table_attach (GTK_TABLE(deviceD->table), deviceD->gradients[i], 6, 7, i, i+1, 0, 0, 2, 2); @@ -932,7 +939,8 @@ device_status_create (void) device_status_update (device_info->device); } - deviceD->current = 0xffffffff; /* random, but doesn't matter */ + deviceD->current = NULL; + device_status_update_current (); gtk_signal_connect (GTK_OBJECT (deviceD->shell), "destroy", @@ -945,7 +953,7 @@ device_status_create (void) static void device_status_destroy_callback (void) { - g_free (deviceD->ids); + g_free (deviceD->devices); g_free (deviceD->frames); g_free (deviceD->tools); g_free (deviceD->foregrounds); @@ -985,10 +993,10 @@ device_status_update_current (void) { for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceD->current) + if (deviceD->devices[i] == deviceD->current) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_OUT); - else if (deviceD->ids[i] == current_device) + else if (deviceD->devices[i] == current_device) gtk_frame_set_shadow_type (GTK_FRAME(deviceD->frames[i]), GTK_SHADOW_IN); } @@ -998,9 +1006,8 @@ device_status_update_current (void) } void -device_status_update (guint32 deviceid) +device_status_update (GdkDevice *device) { - GdkDeviceInfo *gdk_info; DeviceInfo *device_info; GimpRGB color; guchar red, green, blue; @@ -1010,21 +1017,18 @@ device_status_update (guint32 deviceid) if (!deviceD || suppress_update) return; - if ((device_info = device_info_get_by_id (deviceid)) == NULL) - return; - - if ((gdk_info = gdk_device_info_get_by_id (deviceid)) == NULL) + if ((device_info = device_info_get_by_device (device)) == NULL) return; for (i = 0; i < deviceD->num_devices; i++) { - if (deviceD->ids[i] == deviceid) + if (deviceD->devices[i] == device) break; } g_return_if_fail (i < deviceD->num_devices); - if (gdk_info->mode == GDK_MODE_DISABLED) + if (device->mode == GDK_MODE_DISABLED) { gtk_widget_hide (deviceD->frames[i]); gtk_widget_hide (deviceD->tools[i]); @@ -1097,7 +1101,7 @@ device_status_drop_tool (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1112,7 +1116,7 @@ device_status_foreground_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1128,7 +1132,7 @@ device_status_background_changed (GtkWidget *widget, DeviceInfo *device_info; GimpRGB color; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1144,7 +1148,7 @@ device_status_drop_brush (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1159,7 +1163,7 @@ device_status_drop_pattern (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1174,7 +1178,7 @@ device_status_drop_gradient (GtkWidget *widget, { DeviceInfo *device_info; - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); + device_info = (DeviceInfo *) data; if (device_info && device_info->is_present) { @@ -1189,33 +1193,29 @@ device_status_data_changed (GimpContext *context, gpointer dummy, gpointer data) { - DeviceInfo *device_info; - - device_info = device_info_get_by_id (GPOINTER_TO_UINT (data)); - - device_status_update (device_info->device); + device_status_update ((GdkDevice *) data); } static void device_status_context_connect (GimpContext *context, - guint32 deviceid) + GdkDevice *device) { gtk_signal_connect (GTK_OBJECT (context), "foreground_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "background_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "tool_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "brush_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "pattern_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); gtk_signal_connect (GTK_OBJECT (context), "gradient_changed", GTK_SIGNAL_FUNC (device_status_data_changed), - (gpointer) deviceid); + device); } diff --git a/app/widgets/gimpdevices.h b/app/widgets/gimpdevices.h index fcd1a52ace..e3fe0b13a9 100644 --- a/app/widgets/gimpdevices.h +++ b/app/widgets/gimpdevices.h @@ -51,7 +51,7 @@ GtkWidget * device_status_create (void); gint devices_check_change (GdkEvent *event); /* Loads stored device settings (tool, cursor, ...) */ -void select_device (guint32 device); +void select_device (GdkDevice *device); /* Add information about one tool from rc file */ void devices_rc_update (gchar *name, @@ -72,8 +72,8 @@ void devices_rc_update (gchar *name, void device_status_free (void); -/* Current device id */ -extern gint current_device; +/* Current device */ +extern GdkDevice *current_device; #endif /* __DEVICES_H__ */ diff --git a/app/widgets/gimpdialogfactory.c b/app/widgets/gimpdialogfactory.c index 1e55e5b65f..fa552fee9a 100644 --- a/app/widgets/gimpdialogfactory.c +++ b/app/widgets/gimpdialogfactory.c @@ -122,7 +122,7 @@ gimp_dialog_factory_class_init (GimpDialogFactoryClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_OBJECT); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_dialog_factory_destroy; @@ -147,7 +147,7 @@ gimp_dialog_factory_destroy (GtkObject *object) factory = GIMP_DIALOG_FACTORY (object); - g_hash_table_remove (GIMP_DIALOG_FACTORY_CLASS (object->klass)->factories, + g_hash_table_remove (GIMP_DIALOG_FACTORY_GET_CLASS (object)->factories, GIMP_OBJECT (factory)->name); for (list = factory->registered_dialogs; list; list = g_list_next (list)) diff --git a/app/widgets/gimpdialogfactory.h b/app/widgets/gimpdialogfactory.h index 457acde830..c0192fada2 100644 --- a/app/widgets/gimpdialogfactory.h +++ b/app/widgets/gimpdialogfactory.h @@ -68,10 +68,11 @@ struct _GimpSessionInfo #define GIMP_TYPE_DIALOG_FACTORY (gimp_dialog_factory_get_type ()) -#define GIMP_DIALOG_FACTORY(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DIALOG_FACTORY, GimpDialogFactory)) -#define GIMP_DIALOG_FACTORY_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DIALOG_FACTORY, GimpDialogFactoryClass)) -#define GIMP_IS_DIALOG_FACTORY(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DIALOG_FACTORY)) -#define GIMP_IS_DIALOG_FACTORY_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DIALOG_FACTORY)) +#define GIMP_DIALOG_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DIALOG_FACTORY, GimpDialogFactory)) +#define GIMP_DIALOG_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DIALOG_FACTORY, GimpDialogFactoryClass)) +#define GIMP_IS_DIALOG_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DIALOG_FACTORY)) +#define GIMP_IS_DIALOG_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DIALOG_FACTORY)) +#define GIMP_DIALOG_FACTORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_DIALOG_FACTORY, GimpDialogFactoryClass)) typedef struct _GimpDialogFactoryClass GimpDialogFactoryClass; diff --git a/app/widgets/gimpdock.c b/app/widgets/gimpdock.c index 0cc79e2b00..4d16688a5f 100644 --- a/app/widgets/gimpdock.c +++ b/app/widgets/gimpdock.c @@ -79,10 +79,10 @@ static guint n_dialog_targets = (sizeof (dialog_target_table) / sizeof (dialog_target_table[0])); -GtkType +GType gimp_dock_get_type (void) { - static GtkType dock_type = 0; + static GType dock_type = 0; if (! dock_type) { @@ -111,7 +111,7 @@ gimp_dock_class_init (GimpDockClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_WINDOW); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_dock_destroy; } @@ -150,10 +150,16 @@ gimp_dock_destroy (GtkObject *object) dock = GIMP_DOCK (object); + g_print ("gimp_dock_destroy()\n"); + while (dock->dockbooks) gimp_dock_remove_book (dock, GIMP_DOCKBOOK (dock->dockbooks->data)); - gtk_object_unref (GTK_OBJECT (dock->context)); + if (dock->context) + { + g_object_unref (G_OBJECT (dock->context)); + dock->context = NULL; + } if (GTK_OBJECT_CLASS (parent_class)) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -177,16 +183,16 @@ gimp_dock_separator_new (GimpDock *dock) GTK_DEST_DEFAULT_ALL, dialog_target_table, n_dialog_targets, GDK_ACTION_MOVE); - gtk_signal_connect (GTK_OBJECT (event_box), "drag_drop", - GTK_SIGNAL_FUNC (gimp_dock_separator_drag_drop), - dock); + g_signal_connect (G_OBJECT (event_box), "drag_drop", + GTK_SIGNAL_FUNC (gimp_dock_separator_drag_drop), + dock); - gtk_signal_connect (GTK_OBJECT (event_box), "button_press_event", - GTK_SIGNAL_FUNC (gimp_dock_separator_button_press), - dock); - gtk_signal_connect (GTK_OBJECT (event_box), "button_release_event", - GTK_SIGNAL_FUNC (gimp_dock_separator_button_release), - dock); + g_signal_connect (G_OBJECT (event_box), "button_press_event", + G_CALLBACK (gimp_dock_separator_button_press), + dock); + g_signal_connect (G_OBJECT (event_box), "button_release_event", + G_CALLBACK (gimp_dock_separator_button_release), + dock); return event_box; } @@ -199,10 +205,7 @@ gimp_dock_add (GimpDock *dock, { GimpDockbook *dockbook; - g_return_if_fail (dock != NULL); g_return_if_fail (GIMP_IS_DOCK (dock)); - - g_return_if_fail (dockable != NULL); g_return_if_fail (GIMP_IS_DOCKABLE (dockable)); g_return_if_fail (dockable->dockbook == NULL); @@ -216,10 +219,7 @@ void gimp_dock_remove (GimpDock *dock, GimpDockable *dockable) { - g_return_if_fail (dock != NULL); g_return_if_fail (GIMP_IS_DOCK (dock)); - - g_return_if_fail (dockable != NULL); g_return_if_fail (GIMP_IS_DOCKABLE (dockable)); g_return_if_fail (dockable->dockbook != NULL); @@ -237,10 +237,7 @@ gimp_dock_add_book (GimpDock *dock, GtkWidget *separator; gint length; - g_return_if_fail (dock != NULL); g_return_if_fail (GIMP_IS_DOCK (dock)); - - g_return_if_fail (dockbook != NULL); g_return_if_fail (GIMP_IS_DOCKBOOK (dockbook)); g_return_if_fail (dockbook->dock == NULL); @@ -250,7 +247,7 @@ gimp_dock_add_book (GimpDock *dock, if (index >= length || index < 0) index = length; - dockbook->dock = dock; + dockbook->dock = dock; dock->dockbooks = g_list_insert (dock->dockbooks, dockbook, index); index *= 2; @@ -266,6 +263,14 @@ gimp_dock_add_book (GimpDock *dock, gtk_widget_show (separator); } +gboolean +gimp_dock_idle_destroy (gpointer data) +{ + gtk_widget_destroy (GTK_WIDGET (data)); + + return FALSE; +} + void gimp_dock_remove_book (GimpDock *dock, GimpDockbook *dockbook) @@ -275,10 +280,7 @@ gimp_dock_remove_book (GimpDock *dock, gint index; gint book_index; - g_return_if_fail (dock != NULL); g_return_if_fail (GIMP_IS_DOCK (dock)); - - g_return_if_fail (dockbook != NULL); g_return_if_fail (GIMP_IS_DOCKBOOK (dockbook)); g_return_if_fail (dockbook->dock == dock); @@ -286,7 +288,7 @@ gimp_dock_remove_book (GimpDock *dock, length = g_list_length (dock->dockbooks); index = g_list_index (dock->dockbooks, dockbook); - dockbook->dock = NULL; + dockbook->dock = NULL; dock->dockbooks = g_list_remove (dock->dockbooks, dockbook); children = gtk_container_children (GTK_CONTAINER (dock->vbox)); @@ -312,8 +314,7 @@ gimp_dock_remove_book (GimpDock *dock, if (length == 1) { - gtk_widget_destroy (GTK_WIDGET (dock)); - return; + g_idle_add (gimp_dock_idle_destroy, dock); } } diff --git a/app/widgets/gimpdock.h b/app/widgets/gimpdock.h index fc9b866042..e41dad2c20 100644 --- a/app/widgets/gimpdock.h +++ b/app/widgets/gimpdock.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_DOCK (gimp_dock_get_type ()) -#define GIMP_DOCK(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DOCK, GimpDock)) -#define GIMP_DOCK_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DOCK, GimpDockClass)) -#define GIMP_IS_DOCK(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DOCK)) -#define GIMP_IS_DOCK_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DOCK)) +#define GIMP_DOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DOCK, GimpDock)) +#define GIMP_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DOCK, GimpDockClass)) +#define GIMP_IS_DOCK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DOCK)) +#define GIMP_IS_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DOCK)) typedef struct _GimpDockClass GimpDockClass; diff --git a/app/widgets/gimpdockable.c b/app/widgets/gimpdockable.c index 67acd5511d..310111c61f 100644 --- a/app/widgets/gimpdockable.c +++ b/app/widgets/gimpdockable.c @@ -37,13 +37,13 @@ static void gimp_dockable_init (GimpDockable *dockable); static void gimp_dockable_destroy (GtkObject *object); -static GtkVBoxClass *parent_class = NULL; +static GtkBinClass *parent_class = NULL; -GtkType +GType gimp_dockable_get_type (void) { - static GtkType dockable_type = 0; + static GType dockable_type = 0; if (! dockable_type) { @@ -72,7 +72,7 @@ gimp_dockable_class_init (GimpDockableClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_VBOX); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_dockable_destroy; } @@ -83,6 +83,7 @@ gimp_dockable_init (GimpDockable *dockable) dockable->name = NULL; dockable->short_name = NULL; dockable->dockbook = NULL; + dockable->context = NULL; dockable->get_tab_func = NULL; dockable->set_context_func = NULL; } @@ -94,10 +95,22 @@ gimp_dockable_destroy (GtkObject *object) dockable = GIMP_DOCKABLE (object); - gimp_dockable_set_context (dockable, NULL); + g_print ("gimp_dockable_destroy()\n"); - g_free (dockable->name); - g_free (dockable->short_name); + if (dockable->context) + gimp_dockable_set_context (dockable, NULL); + + if (dockable->name) + { + g_free (dockable->name); + dockable->name = NULL; + } + + if (dockable->short_name) + { + g_free (dockable->short_name); + dockable->short_name = NULL; + } if (GTK_OBJECT_CLASS (parent_class)) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -130,12 +143,8 @@ gimp_dockable_get_tab_widget (GimpDockable *dockable, GimpDockbook *dockbook, gint size) { - g_return_val_if_fail (dockable != NULL, NULL); g_return_val_if_fail (GIMP_IS_DOCKABLE (dockable), NULL); - - g_return_val_if_fail (dockbook != NULL, NULL); g_return_val_if_fail (GIMP_IS_DOCKBOOK (dockbook), NULL); - g_return_val_if_fail (size >= -1 && size < 64, NULL); if (dockable->get_tab_func) @@ -150,13 +159,16 @@ void gimp_dockable_set_context (GimpDockable *dockable, GimpContext *context) { - g_return_if_fail (dockable != NULL); g_return_if_fail (GIMP_IS_DOCKABLE (dockable)); - g_return_if_fail (! context || GIMP_IS_CONTEXT (context)); - if (dockable->set_context_func) + if (context != dockable->context) { - dockable->set_context_func (dockable, context); + if (dockable->set_context_func) + { + dockable->set_context_func (dockable, context); + } + + dockable->context = context; } } diff --git a/app/widgets/gimpdockable.h b/app/widgets/gimpdockable.h index b82b4ff885..9238281948 100644 --- a/app/widgets/gimpdockable.h +++ b/app/widgets/gimpdockable.h @@ -23,7 +23,7 @@ #define __GIMP_DOCKABLE_H__ -#include +#include typedef GtkWidget * (* GimpDockableGetTabFunc) (GimpDockable *dockable, @@ -34,10 +34,11 @@ typedef void (* GimpDockableSetContextFunc) (GimpDockable *dockable, #define GIMP_TYPE_DOCKABLE (gimp_dockable_get_type ()) -#define GIMP_DOCKABLE(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DOCKABLE, GimpDockable)) -#define GIMP_DOCKABLE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DOCKABLE, GimpDockableClass)) -#define GIMP_IS_DOCKABLE(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DOCKABLE)) -#define GIMP_IS_DOCKABLE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DOCKABLE)) +#define GIMP_DOCKABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DOCKABLE, GimpDockable)) +#define GIMP_DOCKABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DOCKABLE, GimpDockableClass)) +#define GIMP_IS_DOCKABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DOCKABLE)) +#define GIMP_IS_DOCKABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DOCKABLE)) +#define GIMP_DOCKABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_DOCKABLE, GimpDockableClass)) typedef struct _GimpDockableClass GimpDockableClass; @@ -52,6 +53,8 @@ struct _GimpDockable GimpDockbook *dockbook; + GimpContext *context; + GimpDockableGetTabFunc get_tab_func; GimpDockableSetContextFunc set_context_func; }; @@ -62,7 +65,8 @@ struct _GimpDockableClass }; -GtkType gimp_dockable_get_type (void); +GType gimp_dockable_get_type (void); + GtkWidget * gimp_dockable_new (const gchar *name, const gchar *short_name, GimpDockableGetTabFunc get_tab_func, diff --git a/app/widgets/gimpdockbook.c b/app/widgets/gimpdockbook.c index acca5b094d..f241517099 100644 --- a/app/widgets/gimpdockbook.c +++ b/app/widgets/gimpdockbook.c @@ -81,10 +81,10 @@ static guint n_dialog_targets = (sizeof (dialog_target_table) / sizeof (dialog_target_table[0])); -GtkType +GType gimp_dockbook_get_type (void) { - static GtkType dockbook_type = 0; + static GType dockbook_type = 0; if (! dockbook_type) { @@ -115,7 +115,7 @@ gimp_dockbook_class_init (GimpDockbookClass *klass) object_class = (GtkObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_NOTEBOOK); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_dockbook_destroy; @@ -129,7 +129,7 @@ gimp_dockbook_init (GimpDockbook *dockbook) gtk_notebook_set_tab_border (GTK_NOTEBOOK (dockbook), 0); gtk_notebook_popup_enable (GTK_NOTEBOOK (dockbook)); - gtk_notebook_set_scrollable (GTK_NOTEBOOK (dockbook), TRUE); + //gtk_notebook_set_scrollable (GTK_NOTEBOOK (dockbook), TRUE); gtk_drag_dest_set (GTK_WIDGET (dockbook), GTK_DEST_DEFAULT_ALL, @@ -165,22 +165,22 @@ gimp_dockbook_drag_drop (GtkWidget *widget, { GimpDockable *dockable; - dockable = (GimpDockable *) gtk_object_get_data (GTK_OBJECT (source), - "gimp-dockable"); + dockable = (GimpDockable *) g_object_get_data (G_OBJECT (source), + "gimp-dockable"); if (dockable) { - gtk_object_set_data (GTK_OBJECT (dockable), - "gimp-dock-drag-widget", NULL); + g_object_set_data (G_OBJECT (dockable), + "gimp-dock-drag-widget", NULL); if (dockable->dockbook != GIMP_DOCKBOOK (widget)) { - gtk_object_ref (GTK_OBJECT (dockable)); + g_object_ref (G_OBJECT (dockable)); gimp_dockbook_remove (dockable->dockbook, dockable); gimp_dockbook_add (GIMP_DOCKBOOK (widget), dockable, -1); - gtk_object_unref (GTK_OBJECT (dockable)); + g_object_unref (G_OBJECT (dockable)); return TRUE; } @@ -198,19 +198,16 @@ gimp_dockbook_add (GimpDockbook *dockbook, GtkWidget *tab_widget; GtkWidget *menu_widget; - g_return_if_fail (dockbook != NULL); g_return_if_fail (GIMP_IS_DOCKBOOK (dockbook)); - g_return_if_fail (dockbook->dock != NULL); - - g_return_if_fail (dockable != NULL); g_return_if_fail (GIMP_IS_DOCKABLE (dockable)); - g_return_if_fail (dockable->dockbook == NULL); tab_widget = gimp_dockable_get_tab_widget (dockable, dockbook, TAB_WIDGET_SIZE); + g_return_if_fail (GTK_IS_WIDGET (tab_widget)); + if (GTK_IS_LABEL (tab_widget)) { GtkWidget *event_box; @@ -224,15 +221,17 @@ gimp_dockbook_add (GimpDockbook *dockbook, gimp_help_set_help_data (tab_widget, dockable->name, NULL); - gtk_object_set_data (GTK_OBJECT (tab_widget), "gimp-dockable", dockable); + g_object_set_data (G_OBJECT (tab_widget), "gimp-dockable", dockable); - gtk_signal_connect (GTK_OBJECT (tab_widget), "button_press_event", - GTK_SIGNAL_FUNC (gimp_dockbook_tab_button_press), - dockable); + g_signal_connect (G_OBJECT (tab_widget), "button_press_event", + G_CALLBACK (gimp_dockbook_tab_button_press), + dockable); menu_widget = gimp_dockable_get_tab_widget (dockable, dockbook, MENU_WIDGET_SIZE); + g_return_if_fail (GTK_IS_WIDGET (menu_widget)); + if (! GTK_IS_LABEL (menu_widget)) { GtkWidget *hbox; @@ -275,25 +274,31 @@ gimp_dockbook_add (GimpDockbook *dockbook, { GtkWidget *menu_item; - GList *list; + GList *widget_list; + GList *page_list; menu_item = menu_widget->parent; - for (list = GTK_NOTEBOOK (dockbook)->children; - list; - list = g_list_next (list)) + /* EEK: we rely a 1:1 and left-to-right mapping of gtk_container_children() + * and notebook->children + */ + for (widget_list = gtk_container_children (GTK_CONTAINER (dockbook)), + page_list = GTK_NOTEBOOK (dockbook)->children; + widget_list && page_list; + widget_list = g_list_next (widget_list), + page_list = g_list_next (page_list)) { GtkNotebookPage *page; - page = (GtkNotebookPage *) list->data; + page = (GtkNotebookPage *) page_list->data; - if (page->child == (GtkWidget *) dockable) + if ((GtkWidget *) widget_list->data == (GtkWidget *) dockable) { gtk_signal_disconnect_by_data (GTK_OBJECT (menu_item), page); - gtk_signal_connect (GTK_OBJECT (menu_item), "activate", - GTK_SIGNAL_FUNC (gimp_dockbook_menu_switch_page), - dockable); + g_signal_connect (G_OBJECT (menu_item), "activate", + G_CALLBACK (gimp_dockbook_menu_switch_page), + dockable); break; } @@ -306,20 +311,20 @@ gimp_dockbook_add (GimpDockbook *dockbook, GDK_BUTTON1_MASK | GDK_BUTTON2_MASK, dialog_target_table, n_dialog_targets, GDK_ACTION_MOVE); - gtk_signal_connect (GTK_OBJECT (tab_widget), "drag_begin", - GTK_SIGNAL_FUNC (gimp_dockbook_tab_drag_begin), - dockable); - gtk_signal_connect (GTK_OBJECT (tab_widget), "drag_end", - GTK_SIGNAL_FUNC (gimp_dockbook_tab_drag_end), - dockable); + g_signal_connect (G_OBJECT (tab_widget), "drag_begin", + G_CALLBACK (gimp_dockbook_tab_drag_begin), + dockable); + g_signal_connect (G_OBJECT (tab_widget), "drag_end", + G_CALLBACK (gimp_dockbook_tab_drag_end), + dockable); gtk_drag_dest_set (GTK_WIDGET (tab_widget), GTK_DEST_DEFAULT_ALL, dialog_target_table, n_dialog_targets, GDK_ACTION_MOVE); - gtk_signal_connect (GTK_OBJECT (tab_widget), "drag_drop", - GTK_SIGNAL_FUNC (gimp_dockbook_tab_drag_drop), - dockbook); + g_signal_connect (G_OBJECT (tab_widget), "drag_drop", + G_CALLBACK (gimp_dockbook_tab_drag_drop), + dockbook); dockable->dockbook = dockbook; @@ -330,10 +335,7 @@ void gimp_dockbook_remove (GimpDockbook *dockbook, GimpDockable *dockable) { - g_return_if_fail (dockbook != NULL); g_return_if_fail (GIMP_IS_DOCKBOOK (dockbook)); - - g_return_if_fail (dockable != NULL); g_return_if_fail (GIMP_IS_DOCKABLE (dockable)); g_return_if_fail (dockable->dockbook != NULL); @@ -370,17 +372,18 @@ gimp_dockbook_menu_end (GimpDockbook *dockbook) notebook_menu = GTK_NOTEBOOK (dockbook)->menu; - gtk_object_ref (GTK_OBJECT (notebook_menu)); + g_object_ref (G_OBJECT (notebook_menu)); + gtk_menu_detach (GTK_MENU (notebook_menu)); gtk_menu_attach_to_widget (GTK_MENU (notebook_menu), GTK_WIDGET (dockbook), gimp_dockbook_menu_detacher); - gtk_object_unref (GTK_OBJECT (notebook_menu)); + g_object_unref (G_OBJECT (notebook_menu)); /* release gimp_dockbook_tab_button_press()'s reference */ - gtk_object_unref (GTK_OBJECT (dockbook)); + g_object_unref (G_OBJECT (dockbook)); } static void @@ -389,10 +392,10 @@ gimp_dockbook_menu_detacher (GtkWidget *widget, { GtkNotebook *notebook; - g_return_if_fail (widget != NULL); g_return_if_fail (GTK_IS_NOTEBOOK (widget)); notebook = GTK_NOTEBOOK (widget); + g_return_if_fail (notebook->menu == (GtkWidget*) menu); notebook->menu = NULL; @@ -548,15 +551,15 @@ gimp_dockbook_tab_drag_end (GtkWidget *widget, dockable = GIMP_DOCKABLE (data); - drag_widget = gtk_object_get_data (GTK_OBJECT (dockable), - "gimp-dock-drag-widget"); + drag_widget = g_object_get_data (G_OBJECT (dockable), + "gimp-dock-drag-widget"); if (drag_widget) { GtkWidget *dock; GtkWidget *dockbook; - gtk_object_set_data (GTK_OBJECT (dockable), "gimp-dock-drag-widget", NULL); + g_object_set_data (G_OBJECT (dockable), "gimp-dock-drag-widget", NULL); dock = gimp_dialog_factory_dock_new (dockable->dockbook->dock->factory); @@ -588,8 +591,8 @@ gimp_dockbook_tab_drag_drop (GtkWidget *widget, GimpDockable *dest_dockable; GtkWidget *source; - dest_dockable = (GimpDockable *) gtk_object_get_data (GTK_OBJECT (widget), - "gimp-dockable"); + dest_dockable = g_object_get_data (G_OBJECT (widget), + "gimp-dockable"); source = gtk_drag_get_source_widget (context); @@ -597,8 +600,8 @@ gimp_dockbook_tab_drag_drop (GtkWidget *widget, { GimpDockable *src_dockable; - src_dockable = (GimpDockable *) gtk_object_get_data (GTK_OBJECT (source), - "gimp-dockable"); + src_dockable = g_object_get_data (G_OBJECT (source), + "gimp-dockable"); if (src_dockable) { @@ -608,18 +611,18 @@ gimp_dockbook_tab_drag_drop (GtkWidget *widget, gtk_notebook_page_num (GTK_NOTEBOOK (dest_dockable->dockbook), GTK_WIDGET (dest_dockable)); - gtk_object_set_data (GTK_OBJECT (src_dockable), - "gimp-dock-drag-widget", NULL); + g_object_set_data (G_OBJECT (src_dockable), + "gimp-dock-drag-widget", NULL); if (src_dockable->dockbook != dest_dockable->dockbook) { - gtk_object_ref (GTK_OBJECT (src_dockable)); + g_object_ref (G_OBJECT (src_dockable)); gimp_dockbook_remove (src_dockable->dockbook, src_dockable); gimp_dockbook_add (dest_dockable->dockbook, src_dockable, dest_index); - gtk_object_unref (GTK_OBJECT (src_dockable)); + g_object_unref (G_OBJECT (src_dockable)); return TRUE; } diff --git a/app/widgets/gimpdockbook.h b/app/widgets/gimpdockbook.h index 918472197e..b092fc9006 100644 --- a/app/widgets/gimpdockbook.h +++ b/app/widgets/gimpdockbook.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_DOCKBOOK (gimp_dockbook_get_type ()) -#define GIMP_DOCKBOOK(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DOCKBOOK, GimpDockbook)) -#define GIMP_DOCKBOOK_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DOCKBOOK, GimpDockbookClass)) -#define GIMP_IS_DOCKBOOK(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DOCKBOOK)) -#define GIMP_IS_DOCKBOOK_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DOCKBOOK)) +#define GIMP_DOCKBOOK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DOCKBOOK, GimpDockbook)) +#define GIMP_DOCKBOOK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DOCKBOOK, GimpDockbookClass)) +#define GIMP_IS_DOCKBOOK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DOCKBOOK)) +#define GIMP_IS_DOCKBOOK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DOCKBOOK)) typedef struct _GimpDockbookClass GimpDockbookClass; diff --git a/app/widgets/gimpdrawablelistitem.c b/app/widgets/gimpdrawablelistitem.c index 6a293268b2..d4195f96fa 100644 --- a/app/widgets/gimpdrawablelistitem.c +++ b/app/widgets/gimpdrawablelistitem.c @@ -94,15 +94,13 @@ gimp_drawable_list_item_get_type (void) static void gimp_drawable_list_item_class_init (GimpDrawableListItemClass *klass) { - GtkObjectClass *object_class; GtkWidgetClass *widget_class; GimpListItemClass *list_item_class; - object_class = (GtkObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; list_item_class = (GimpListItemClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_LIST_ITEM); + parent_class = g_type_class_peek_parent (klass); widget_class->drag_motion = gimp_drawable_list_item_drag_motion; widget_class->drag_drop = gimp_drawable_list_item_drag_drop; @@ -126,13 +124,13 @@ gimp_drawable_list_item_init (GimpDrawableListItem *list_item) gtk_container_add (GTK_CONTAINER (abox), list_item->eye_button); gtk_widget_show (list_item->eye_button); - gtk_signal_connect (GTK_OBJECT (list_item->eye_button), "realize", - GTK_SIGNAL_FUNC (gimp_list_item_button_realize), - list_item); + g_signal_connect (G_OBJECT (list_item->eye_button), "realize", + G_CALLBACK (gimp_list_item_button_realize), + list_item); - gtk_signal_connect (GTK_OBJECT (list_item->eye_button), "state_changed", - GTK_SIGNAL_FUNC (gimp_list_item_button_state_changed), - list_item); + g_signal_connect (G_OBJECT (list_item->eye_button), "state_changed", + G_CALLBACK (gimp_list_item_button_state_changed), + list_item); pixmap = gimp_pixmap_new (eye_xpm); gtk_container_add (GTK_CONTAINER (list_item->eye_button), pixmap); @@ -171,15 +169,14 @@ gimp_drawable_list_item_set_viewable (GimpListItem *list_item, gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (drawable_item->eye_button), visible); - gtk_signal_connect (GTK_OBJECT (drawable_item->eye_button), "toggled", - GTK_SIGNAL_FUNC (gimp_drawable_list_item_eye_toggled), - list_item); + g_signal_connect (G_OBJECT (drawable_item->eye_button), "toggled", + G_CALLBACK (gimp_drawable_list_item_eye_toggled), + list_item); - gtk_signal_connect_while_alive - (GTK_OBJECT (viewable), "visibility_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_item_visibility_changed), - list_item, - GTK_OBJECT (list_item)); + g_signal_connect_object (G_OBJECT (viewable), "visibility_changed", + G_CALLBACK (gimp_drawable_list_item_visibility_changed), + G_OBJECT (list_item), + 0); } static gboolean @@ -294,15 +291,15 @@ gimp_drawable_list_item_eye_toggled (GtkWidget *widget, gtk_widget_set_usize (GTK_WIDGET (widget), -1, -1); } - gtk_signal_handler_block_by_func (GTK_OBJECT (drawable), - gimp_drawable_list_item_visibility_changed, - list_item); + g_signal_handlers_block_by_func (G_OBJECT (drawable), + gimp_drawable_list_item_visibility_changed, + list_item); gimp_drawable_set_visible (drawable, visible); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (drawable), - gimp_drawable_list_item_visibility_changed, - list_item); + g_signal_handlers_unblock_by_func (G_OBJECT (drawable), + gimp_drawable_list_item_visibility_changed, + list_item); gdisplays_flush (); } @@ -335,14 +332,14 @@ gimp_drawable_list_item_visibility_changed (GimpDrawable *drawable, gtk_widget_set_usize (GTK_WIDGET (toggle), -1, -1); } - gtk_signal_handler_block_by_func (GTK_OBJECT (toggle), - gimp_drawable_list_item_eye_toggled, - list_item); + g_signal_handlers_block_by_func (G_OBJECT (toggle), + gimp_drawable_list_item_eye_toggled, + list_item); gtk_toggle_button_set_active (toggle, visible); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (toggle), - gimp_drawable_list_item_eye_toggled, - list_item); + g_signal_handlers_unblock_by_func (G_OBJECT (toggle), + gimp_drawable_list_item_eye_toggled, + list_item); } } diff --git a/app/widgets/gimpdrawablelistitem.h b/app/widgets/gimpdrawablelistitem.h index 563e8d75b5..72d51d4701 100644 --- a/app/widgets/gimpdrawablelistitem.h +++ b/app/widgets/gimpdrawablelistitem.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_DRAWABLE_LIST_ITEM (gimp_drawable_list_item_get_type ()) -#define GIMP_DRAWABLE_LIST_ITEM(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_ITEM, GimpDrawableListItem)) -#define GIMP_DRAWABLE_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_ITEM, GimpDrawableListItemClass)) -#define GIMP_IS_DRAWABLE_LIST_ITEM(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_ITEM)) -#define GIMP_IS_DRAWABLE_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_ITEM)) +#define GIMP_DRAWABLE_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_ITEM, GimpDrawableListItem)) +#define GIMP_DRAWABLE_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_ITEM, GimpDrawableListItemClass)) +#define GIMP_IS_DRAWABLE_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_ITEM)) +#define GIMP_IS_DRAWABLE_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_ITEM)) typedef struct _GimpDrawableListItemClass GimpDrawableListItemClass; diff --git a/app/widgets/gimpdrawablelistview.c b/app/widgets/gimpdrawablelistview.c index 8c602cdb7c..e35e6064fb 100644 --- a/app/widgets/gimpdrawablelistview.c +++ b/app/widgets/gimpdrawablelistview.c @@ -140,10 +140,10 @@ static guint view_signals[LAST_SIGNAL] = { 0 }; static GimpContainerListViewClass *parent_class = NULL; -GtkType +GType gimp_drawable_list_view_get_type (void) { - static guint view_type = 0; + static GType view_type = 0; if (! view_type) { @@ -174,19 +174,17 @@ gimp_drawable_list_view_class_init (GimpDrawableListViewClass *klass) object_class = (GtkObjectClass *) klass; container_view_class = (GimpContainerViewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CONTAINER_LIST_VIEW); + parent_class = g_type_class_peek_parent (klass); view_signals[SET_IMAGE] = - gtk_signal_new ("set_image", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDrawableListViewClass, - set_image), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_OBJECT); - - gtk_object_class_add_signals (object_class, view_signals, LAST_SIGNAL); + g_signal_new ("set_image", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpDrawableListViewClass, set_image), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_OBJECT); object_class->destroy = gimp_drawable_list_view_destroy; @@ -222,9 +220,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->new_button, _("New"), NULL); - gtk_signal_connect (GTK_OBJECT (view->new_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_new_clicked), - view); + g_signal_connect (G_OBJECT (view->new_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_new_clicked), + view); pixmap = gimp_pixmap_new (new_xpm); gtk_container_add (GTK_CONTAINER (view->new_button), pixmap); @@ -240,12 +238,12 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->raise_button, _("Raise \n" " To Top"), NULL); - gtk_signal_connect (GTK_OBJECT (view->raise_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_raise_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->raise_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_raise_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->raise_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_raise_clicked), + view); + g_signal_connect (G_OBJECT (view->raise_button), "extended_clicked", + G_CALLBACK (gimp_drawable_list_view_raise_extended_clicked), + view); pixmap = gimp_pixmap_new (raise_xpm); gtk_container_add (GTK_CONTAINER (view->raise_button), pixmap); @@ -261,12 +259,12 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->lower_button, _("Lower \n" " To Bottom"), NULL); - gtk_signal_connect (GTK_OBJECT (view->lower_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_lower_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->lower_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_lower_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->lower_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_lower_clicked), + view); + g_signal_connect (G_OBJECT (view->lower_button), "extended_clicked", + G_CALLBACK (gimp_drawable_list_view_lower_extended_clicked), + view); pixmap = gimp_pixmap_new (lower_xpm); gtk_container_add (GTK_CONTAINER (view->lower_button), pixmap); @@ -281,9 +279,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->duplicate_button, _("Duplicate"), NULL); - gtk_signal_connect (GTK_OBJECT (view->duplicate_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_duplicate_clicked), - view); + g_signal_connect (G_OBJECT (view->duplicate_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_duplicate_clicked), + view); pixmap = gimp_pixmap_new (duplicate_xpm); gtk_container_add (GTK_CONTAINER (view->duplicate_button), pixmap); @@ -298,9 +296,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->edit_button, _("Edit"), NULL); - gtk_signal_connect (GTK_OBJECT (view->edit_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_edit_clicked), - view); + g_signal_connect (G_OBJECT (view->edit_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_edit_clicked), + view); pixmap = gimp_pixmap_new (edit_xpm); gtk_container_add (GTK_CONTAINER (view->edit_button), pixmap); @@ -315,9 +313,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->delete_button, _("Delete"), NULL); - gtk_signal_connect (GTK_OBJECT (view->delete_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_delete_clicked), - view); + g_signal_connect (G_OBJECT (view->delete_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_delete_clicked), + view); pixmap = gimp_pixmap_new (delete_xpm); gtk_container_add (GTK_CONTAINER (view->delete_button), pixmap); @@ -338,10 +336,14 @@ gimp_drawable_list_view_destroy (GtkObject *object) view = GIMP_DRAWABLE_LIST_VIEW (object); - gimp_drawable_list_view_set_image (view, NULL); + if (view->gimage) + gimp_drawable_list_view_set_image (view, NULL); - g_free (view->signal_name); - view->signal_name = NULL; + if (view->signal_name) + { + g_free (view->signal_name); + view->signal_name = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -463,7 +465,8 @@ gimp_drawable_list_view_set_image (GimpDrawableListView *view, g_return_if_fail (GIMP_IS_DRAWABLE_LIST_VIEW (view)); g_return_if_fail (! gimage || GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (view), view_signals[SET_IMAGE], gimage); + g_signal_emit (G_OBJECT (view), view_signals[SET_IMAGE], 0, + gimage); } static void @@ -479,15 +482,15 @@ gimp_drawable_list_view_real_set_image (GimpDrawableListView *view, if (view->gimage) { - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_drawable_changed, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_size_changed, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_floating_selection_changed, - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_drawable_changed, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_size_changed, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_floating_selection_changed, + view); gimp_container_view_set_container (GIMP_CONTAINER_VIEW (view), NULL); } @@ -502,15 +505,15 @@ gimp_drawable_list_view_real_set_image (GimpDrawableListView *view, gimp_container_view_set_container (GIMP_CONTAINER_VIEW (view), container); - gtk_signal_connect (GTK_OBJECT (view->gimage), view->signal_name, - GTK_SIGNAL_FUNC (gimp_drawable_list_view_drawable_changed), - view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "size_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_size_changed), - view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "floating_selection_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_floating_selection_changed), - view); + g_signal_connect (G_OBJECT (view->gimage), view->signal_name, + G_CALLBACK (gimp_drawable_list_view_drawable_changed), + view); + g_signal_connect (G_OBJECT (view->gimage), "size_changed", + G_CALLBACK (gimp_drawable_list_view_size_changed), + view); + g_signal_connect (G_OBJECT (view->gimage), "floating_selection_changed", + G_CALLBACK (gimp_drawable_list_view_floating_selection_changed), + view); gimp_drawable_list_view_drawable_changed (view->gimage, view); diff --git a/app/widgets/gimpdrawablelistview.h b/app/widgets/gimpdrawablelistview.h index a70f127f6b..d0696742d1 100644 --- a/app/widgets/gimpdrawablelistview.h +++ b/app/widgets/gimpdrawablelistview.h @@ -48,10 +48,10 @@ typedef void (* GimpDrawableContextFunc) (GimpImage *gimage); #define GIMP_TYPE_DRAWABLE_LIST_VIEW (gimp_drawable_list_view_get_type ()) -#define GIMP_DRAWABLE_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListView)) -#define GIMP_DRAWABLE_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListViewClass)) -#define GIMP_IS_DRAWABLE_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW)) -#define GIMP_IS_DRAWABLE_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW)) +#define GIMP_DRAWABLE_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListView)) +#define GIMP_DRAWABLE_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListViewClass)) +#define GIMP_IS_DRAWABLE_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW)) +#define GIMP_IS_DRAWABLE_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW)) typedef struct _GimpDrawableListViewClass GimpDrawableListViewClass; diff --git a/app/widgets/gimpdrawablepreview.h b/app/widgets/gimpdrawablepreview.h index 9a3e7e8b0f..22f6d0796b 100644 --- a/app/widgets/gimpdrawablepreview.h +++ b/app/widgets/gimpdrawablepreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_DRAWABLE_PREVIEW (gimp_drawable_preview_get_type ()) -#define GIMP_DRAWABLE_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreview)) -#define GIMP_DRAWABLE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreviewClass)) -#define GIMP_IS_DRAWABLE_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_DRAWABLE_PREVIEW)) -#define GIMP_IS_DRAWABLE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_PREVIEW)) +#define GIMP_DRAWABLE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreview)) +#define GIMP_DRAWABLE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreviewClass)) +#define GIMP_IS_DRAWABLE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_DRAWABLE_PREVIEW)) +#define GIMP_IS_DRAWABLE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_PREVIEW)) typedef struct _GimpDrawablePreviewClass GimpDrawablePreviewClass; diff --git a/app/widgets/gimpdrawabletreeview.c b/app/widgets/gimpdrawabletreeview.c index 8c602cdb7c..e35e6064fb 100644 --- a/app/widgets/gimpdrawabletreeview.c +++ b/app/widgets/gimpdrawabletreeview.c @@ -140,10 +140,10 @@ static guint view_signals[LAST_SIGNAL] = { 0 }; static GimpContainerListViewClass *parent_class = NULL; -GtkType +GType gimp_drawable_list_view_get_type (void) { - static guint view_type = 0; + static GType view_type = 0; if (! view_type) { @@ -174,19 +174,17 @@ gimp_drawable_list_view_class_init (GimpDrawableListViewClass *klass) object_class = (GtkObjectClass *) klass; container_view_class = (GimpContainerViewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CONTAINER_LIST_VIEW); + parent_class = g_type_class_peek_parent (klass); view_signals[SET_IMAGE] = - gtk_signal_new ("set_image", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDrawableListViewClass, - set_image), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_OBJECT); - - gtk_object_class_add_signals (object_class, view_signals, LAST_SIGNAL); + g_signal_new ("set_image", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpDrawableListViewClass, set_image), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_OBJECT); object_class->destroy = gimp_drawable_list_view_destroy; @@ -222,9 +220,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->new_button, _("New"), NULL); - gtk_signal_connect (GTK_OBJECT (view->new_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_new_clicked), - view); + g_signal_connect (G_OBJECT (view->new_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_new_clicked), + view); pixmap = gimp_pixmap_new (new_xpm); gtk_container_add (GTK_CONTAINER (view->new_button), pixmap); @@ -240,12 +238,12 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->raise_button, _("Raise \n" " To Top"), NULL); - gtk_signal_connect (GTK_OBJECT (view->raise_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_raise_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->raise_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_raise_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->raise_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_raise_clicked), + view); + g_signal_connect (G_OBJECT (view->raise_button), "extended_clicked", + G_CALLBACK (gimp_drawable_list_view_raise_extended_clicked), + view); pixmap = gimp_pixmap_new (raise_xpm); gtk_container_add (GTK_CONTAINER (view->raise_button), pixmap); @@ -261,12 +259,12 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->lower_button, _("Lower \n" " To Bottom"), NULL); - gtk_signal_connect (GTK_OBJECT (view->lower_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_lower_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->lower_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_lower_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->lower_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_lower_clicked), + view); + g_signal_connect (G_OBJECT (view->lower_button), "extended_clicked", + G_CALLBACK (gimp_drawable_list_view_lower_extended_clicked), + view); pixmap = gimp_pixmap_new (lower_xpm); gtk_container_add (GTK_CONTAINER (view->lower_button), pixmap); @@ -281,9 +279,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->duplicate_button, _("Duplicate"), NULL); - gtk_signal_connect (GTK_OBJECT (view->duplicate_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_duplicate_clicked), - view); + g_signal_connect (G_OBJECT (view->duplicate_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_duplicate_clicked), + view); pixmap = gimp_pixmap_new (duplicate_xpm); gtk_container_add (GTK_CONTAINER (view->duplicate_button), pixmap); @@ -298,9 +296,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->edit_button, _("Edit"), NULL); - gtk_signal_connect (GTK_OBJECT (view->edit_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_edit_clicked), - view); + g_signal_connect (G_OBJECT (view->edit_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_edit_clicked), + view); pixmap = gimp_pixmap_new (edit_xpm); gtk_container_add (GTK_CONTAINER (view->edit_button), pixmap); @@ -315,9 +313,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->delete_button, _("Delete"), NULL); - gtk_signal_connect (GTK_OBJECT (view->delete_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_delete_clicked), - view); + g_signal_connect (G_OBJECT (view->delete_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_delete_clicked), + view); pixmap = gimp_pixmap_new (delete_xpm); gtk_container_add (GTK_CONTAINER (view->delete_button), pixmap); @@ -338,10 +336,14 @@ gimp_drawable_list_view_destroy (GtkObject *object) view = GIMP_DRAWABLE_LIST_VIEW (object); - gimp_drawable_list_view_set_image (view, NULL); + if (view->gimage) + gimp_drawable_list_view_set_image (view, NULL); - g_free (view->signal_name); - view->signal_name = NULL; + if (view->signal_name) + { + g_free (view->signal_name); + view->signal_name = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -463,7 +465,8 @@ gimp_drawable_list_view_set_image (GimpDrawableListView *view, g_return_if_fail (GIMP_IS_DRAWABLE_LIST_VIEW (view)); g_return_if_fail (! gimage || GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (view), view_signals[SET_IMAGE], gimage); + g_signal_emit (G_OBJECT (view), view_signals[SET_IMAGE], 0, + gimage); } static void @@ -479,15 +482,15 @@ gimp_drawable_list_view_real_set_image (GimpDrawableListView *view, if (view->gimage) { - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_drawable_changed, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_size_changed, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_floating_selection_changed, - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_drawable_changed, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_size_changed, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_floating_selection_changed, + view); gimp_container_view_set_container (GIMP_CONTAINER_VIEW (view), NULL); } @@ -502,15 +505,15 @@ gimp_drawable_list_view_real_set_image (GimpDrawableListView *view, gimp_container_view_set_container (GIMP_CONTAINER_VIEW (view), container); - gtk_signal_connect (GTK_OBJECT (view->gimage), view->signal_name, - GTK_SIGNAL_FUNC (gimp_drawable_list_view_drawable_changed), - view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "size_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_size_changed), - view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "floating_selection_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_floating_selection_changed), - view); + g_signal_connect (G_OBJECT (view->gimage), view->signal_name, + G_CALLBACK (gimp_drawable_list_view_drawable_changed), + view); + g_signal_connect (G_OBJECT (view->gimage), "size_changed", + G_CALLBACK (gimp_drawable_list_view_size_changed), + view); + g_signal_connect (G_OBJECT (view->gimage), "floating_selection_changed", + G_CALLBACK (gimp_drawable_list_view_floating_selection_changed), + view); gimp_drawable_list_view_drawable_changed (view->gimage, view); diff --git a/app/widgets/gimpdrawabletreeview.h b/app/widgets/gimpdrawabletreeview.h index a70f127f6b..d0696742d1 100644 --- a/app/widgets/gimpdrawabletreeview.h +++ b/app/widgets/gimpdrawabletreeview.h @@ -48,10 +48,10 @@ typedef void (* GimpDrawableContextFunc) (GimpImage *gimage); #define GIMP_TYPE_DRAWABLE_LIST_VIEW (gimp_drawable_list_view_get_type ()) -#define GIMP_DRAWABLE_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListView)) -#define GIMP_DRAWABLE_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListViewClass)) -#define GIMP_IS_DRAWABLE_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW)) -#define GIMP_IS_DRAWABLE_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW)) +#define GIMP_DRAWABLE_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListView)) +#define GIMP_DRAWABLE_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListViewClass)) +#define GIMP_IS_DRAWABLE_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW)) +#define GIMP_IS_DRAWABLE_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW)) typedef struct _GimpDrawableListViewClass GimpDrawableListViewClass; diff --git a/app/widgets/gimpgradienteditor.c b/app/widgets/gimpgradienteditor.c index 3962576bcd..13f441edb4 100644 --- a/app/widgets/gimpgradienteditor.c +++ b/app/widgets/gimpgradienteditor.c @@ -819,7 +819,7 @@ gradient_editor_name_activate (GtkWidget *widget, GradientEditor *gradient_editor) { GimpGradient *gradient; - gchar *entry_text; + const gchar *entry_text; gradient = gimp_context_get_gradient (gradient_editor->context); @@ -2382,7 +2382,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", (GtkSignalFunc) cpopup_set_left_color_callback, gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2402,7 +2402,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) 'F', GDK_CONTROL_MASK); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), gradient_editor->control_left_load_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Save to")); @@ -2413,12 +2413,12 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) GTK_SIGNAL_FUNC (cpopup_save_left_callback)); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_left_save_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Right endpoint */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = cpopup_create_color_item (&gradient_editor->right_color_preview, @@ -2427,7 +2427,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", (GtkSignalFunc) cpopup_set_right_color_callback, gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2447,7 +2447,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) 'F', GDK_MOD1_MASK); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_right_load_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Save to")); @@ -2458,12 +2458,12 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) GTK_SIGNAL_FUNC (cpopup_save_right_callback)); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_right_save_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Blending function */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = cpopup_create_menu_item_with_label ("", &gradient_editor->control_blending_label); @@ -2471,7 +2471,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) cpopup_create_blending_menu (gradient_editor); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_blending_popup); - gtk_menu_append (GTK_MENU(menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Coloring type */ @@ -2480,12 +2480,12 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) cpopup_create_coloring_menu (gradient_editor); gtk_menu_item_set_submenu (GTK_MENU_ITEM(menuitem), gradient_editor->control_coloring_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Operations */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Split at midpoint */ @@ -2493,7 +2493,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_split_midpoint_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator(menuitem, "activate", accel_group, @@ -2505,7 +2505,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_split_uniform_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2517,7 +2517,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_delete_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gradient_editor->control_delete_menu_item = menuitem; gtk_widget_add_accelerator (menuitem, "activate", @@ -2530,7 +2530,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_recenter_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2542,7 +2542,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_redistribute_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -2551,7 +2551,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) /* Selection ops */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Selection operations")); @@ -2559,7 +2559,7 @@ cpopup_create_main_menu (GradientEditor *gradient_editor) cpopup_create_sel_ops_menu (gradient_editor); gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), gradient_editor->control_sel_ops_popup); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); /* Done */ @@ -2990,7 +2990,7 @@ cpopup_create_load_menu (GradientEditor *gradient_editor, { /* Insert separator between "to fetch" and "saved" colors */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); } @@ -3000,7 +3000,7 @@ cpopup_create_load_menu (GradientEditor *gradient_editor, gtk_signal_connect (GTK_OBJECT (menuitem), "activate", callback, gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); switch (i) @@ -3059,7 +3059,7 @@ cpopup_create_save_menu (GradientEditor *gradient_editor, gtk_signal_connect (GTK_OBJECT (menuitem), "activate", callback, gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); } @@ -3322,7 +3322,7 @@ cpopup_set_left_color_callback (GtkWidget *widget, color_notebook_new (_("Left Endpoint Color"), &gradient_editor->control_sel_l->left_color, - (GtkSignalFunc) cpopup_left_color_changed, + (ColorNotebookCallback) cpopup_left_color_changed, gradient_editor, gradient_editor->instant_update, TRUE); @@ -3343,7 +3343,7 @@ cpopup_set_right_color_callback (GtkWidget *widget, color_notebook_new (_("Right Endpoint Color"), &gradient_editor->control_sel_l->right_color, - (GtkSignalFunc) cpopup_right_color_changed, + (ColorNotebookCallback) cpopup_right_color_changed, gradient_editor, gradient_editor->instant_update, TRUE); @@ -3487,7 +3487,7 @@ cpopup_create_blending_menu (GradientEditor *gradient_editor) GTK_SIGNAL_FUNC (cpopup_blending_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gradient_editor->control_blending_items[i] = menuitem; @@ -3570,7 +3570,7 @@ cpopup_create_coloring_menu (GradientEditor *gradient_editor) GTK_SIGNAL_FUNC (cpopup_coloring_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gradient_editor->control_coloring_items[i] = menuitem; @@ -4082,7 +4082,7 @@ cpopup_create_sel_ops_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_flip_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -4095,7 +4095,7 @@ cpopup_create_sel_ops_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_replicate_callback), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, @@ -4104,14 +4104,14 @@ cpopup_create_sel_ops_menu (GradientEditor *gradient_editor) /* Blend colors / opacity */ menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("Blend endpoints' colors")); gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_blend_colors), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gradient_editor->control_blend_colors_menu_item = menuitem; gtk_widget_add_accelerator (menuitem, "activate", @@ -4123,7 +4123,7 @@ cpopup_create_sel_ops_menu (GradientEditor *gradient_editor) gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (cpopup_blend_opacity), gradient_editor); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); gtk_widget_add_accelerator (menuitem, "activate", accel_group, diff --git a/app/widgets/gimpgradientpreview.h b/app/widgets/gimpgradientpreview.h index 7aeeaf49f7..0cdc38c19a 100644 --- a/app/widgets/gimpgradientpreview.h +++ b/app/widgets/gimpgradientpreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_GRADIENT_PREVIEW (gimp_gradient_preview_get_type ()) -#define GIMP_GRADIENT_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_GRADIENT_PREVIEW, GimpGradientPreview)) -#define GIMP_GRADIENT_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_GRADIENT_PREVIEW, GimpGradientPreviewClass)) -#define GIMP_IS_GRADIENT_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_GRADIENT_PREVIEW)) -#define GIMP_IS_GRADIENT_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_GRADIENT_PREVIEW)) +#define GIMP_GRADIENT_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_GRADIENT_PREVIEW, GimpGradientPreview)) +#define GIMP_GRADIENT_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_GRADIENT_PREVIEW, GimpGradientPreviewClass)) +#define GIMP_IS_GRADIENT_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_GRADIENT_PREVIEW)) +#define GIMP_IS_GRADIENT_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_GRADIENT_PREVIEW)) typedef struct _GimpGradientPreviewClass GimpGradientPreviewClass; diff --git a/app/widgets/gimphistogramview.c b/app/widgets/gimphistogramview.c index 5e3f4ad2b0..ba26d5c87c 100644 --- a/app/widgets/gimphistogramview.c +++ b/app/widgets/gimphistogramview.c @@ -26,6 +26,8 @@ #include "base/gimphistogram.h" +#include "core/gimpmarshal.h" + #include "gimphistogramview.h" @@ -91,17 +93,15 @@ histogram_widget_class_init (HistogramWidgetClass *klass) object_class = GTK_OBJECT_CLASS (klass); histogram_widget_signals[RANGE_CHANGED] = - gtk_signal_new ("range_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (HistogramWidgetClass, range_changed), - gtk_marshal_NONE__INT_INT, - GTK_TYPE_NONE, 2, - GTK_TYPE_INT, - GTK_TYPE_INT); - - gtk_object_class_add_signals (GTK_OBJECT_CLASS (klass), - histogram_widget_signals, LAST_SIGNAL); + g_signal_new ("range_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (HistogramWidgetClass, range_changed), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT, + G_TYPE_NONE, 2, + G_TYPE_INT, + G_TYPE_INT); klass->range_changed = NULL; } diff --git a/app/widgets/gimphistogramview.h b/app/widgets/gimphistogramview.h index 3f5149835e..d8de71d6ec 100644 --- a/app/widgets/gimphistogramview.h +++ b/app/widgets/gimphistogramview.h @@ -24,9 +24,9 @@ #define HISTOGRAM_WIDGET_TYPE (histogram_widget_get_type ()) -#define HISTOGRAM_WIDGET(obj) GTK_CHECK_CAST (obj, histogram_widget_get_type (), HistogramWidget) -#define IS_HISTOGRAM_WIDGET(obj) GTK_CHECK_TYPE (obj, histogram_widget_get_type ()) -#define HISTOGRAM_WIDGET_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, histogram_widget_get_type (), HistogramWidget) +#define HISTOGRAM_WIDGET(obj) G_TYPE_CHECK_INSTANCE_CAST (obj, histogram_widget_get_type (), HistogramWidget) +#define IS_HISTOGRAM_WIDGET(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, histogram_widget_get_type ()) +#define HISTOGRAM_WIDGET_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, histogram_widget_get_type (), HistogramWidget) typedef struct _HistogramWidgetClass HistogramWidgetClass; diff --git a/app/widgets/gimpimagedock.c b/app/widgets/gimpimagedock.c index 37865c8469..b6f4d76cb3 100644 --- a/app/widgets/gimpimagedock.c +++ b/app/widgets/gimpimagedock.c @@ -61,10 +61,10 @@ static void gimp_image_dock_auto_clicked (GtkWidget *widget, static GimpDockClass *parent_class = NULL; -GtkType +GType gimp_image_dock_get_type (void) { - static GtkType dock_type = 0; + static GType dock_type = 0; if (! dock_type) { @@ -93,7 +93,7 @@ gimp_image_dock_class_init (GimpImageDockClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DOCK); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_image_dock_destroy; } @@ -117,15 +117,19 @@ gimp_image_dock_init (GimpImageDock *dock) gtk_box_pack_start (GTK_BOX (hbox), dock->option_menu, TRUE, TRUE, 0); gtk_widget_show (dock->option_menu); + g_signal_connect (G_OBJECT (dock->option_menu), "destroy", + G_CALLBACK (gtk_widget_destroyed), + &dock->option_menu); + dock->auto_button = gtk_toggle_button_new_with_label (_("Auto")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (dock->auto_button), dock->auto_follow_active); gtk_box_pack_start (GTK_BOX (hbox), dock->auto_button, FALSE, FALSE, 0); gtk_widget_show (dock->auto_button); - gtk_signal_connect (GTK_OBJECT (dock->auto_button), "clicked", - GTK_SIGNAL_FUNC (gimp_image_dock_auto_clicked), - dock); + g_signal_connect (G_OBJECT (dock->auto_button), "clicked", + G_CALLBACK (gimp_image_dock_auto_clicked), + dock); } static void @@ -138,8 +142,13 @@ gimp_image_dock_destroy (GtkObject *object) /* remove the image menu and the auto button manually here because * of weird cross-connections with GimpDock's context */ - gtk_container_remove (GTK_CONTAINER (GIMP_DOCK (dock)->main_vbox), - dock->option_menu->parent); + if (GIMP_DOCK (dock)->main_vbox && + dock->option_menu && + dock->option_menu->parent) + { + gtk_container_remove (GTK_CONTAINER (GIMP_DOCK (dock)->main_vbox), + dock->option_menu->parent); + } if (GTK_OBJECT_CLASS (parent_class)) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -152,10 +161,7 @@ gimp_image_dock_new (GimpDialogFactory *factory, GimpImageDock *image_dock; GimpDock *dock; - g_return_val_if_fail (factory != NULL, NULL); g_return_val_if_fail (GIMP_IS_DIALOG_FACTORY (factory), NULL); - - g_return_val_if_fail (image_container != NULL, NULL); g_return_val_if_fail (GIMP_IS_CONTAINER (image_container), NULL); image_dock = gtk_type_new (GIMP_TYPE_IMAGE_DOCK); @@ -179,17 +185,15 @@ gimp_image_dock_new (GimpDialogFactory *factory, gimp_context_copy_arg (factory->context, dock->context, GIMP_CONTEXT_ARG_IMAGE); - gtk_signal_connect_while_alive - (GTK_OBJECT (factory->context), "image_changed", - GTK_SIGNAL_FUNC (gimp_image_dock_factory_image_changed), - dock, - GTK_OBJECT (dock)); + g_signal_connect_object (G_OBJECT (factory->context), "image_changed", + G_CALLBACK (gimp_image_dock_factory_image_changed), + G_OBJECT (dock), + 0); - gtk_signal_connect_while_alive - (GTK_OBJECT (dock->context), "image_changed", - GTK_SIGNAL_FUNC (gimp_image_dock_image_changed), - dock, - GTK_OBJECT (dock)); + g_signal_connect_object (G_OBJECT (dock->context), "image_changed", + G_CALLBACK (gimp_image_dock_image_changed), + G_OBJECT (dock), + 0); image_dock->menu = gimp_container_menu_new (image_container, dock->context, 24); @@ -204,7 +208,6 @@ void gimp_image_dock_set_auto_follow_active (GimpImageDock *image_dock, gboolean auto_follow_active) { - g_return_if_fail (image_dock != NULL); g_return_if_fail (GIMP_IS_IMAGE_DOCK (image_dock)); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (image_dock->auto_button), @@ -215,7 +218,6 @@ void gimp_image_dock_set_show_image_menu (GimpImageDock *image_dock, gboolean show) { - g_return_if_fail (image_dock != NULL); g_return_if_fail (GIMP_IS_IMAGE_DOCK (image_dock)); if (show) @@ -268,7 +270,7 @@ gimp_image_dock_image_changed (GimpContext *context, /* stop the emission of the original signal (the emission of * the recursive signal is finished) */ - gtk_signal_emit_stop_by_name (GTK_OBJECT (context), "image_changed"); + g_signal_stop_emission_by_name (G_OBJECT (context), "image_changed"); } } } diff --git a/app/widgets/gimpimagedock.h b/app/widgets/gimpimagedock.h index ed5f68fe65..8f9d32d7ed 100644 --- a/app/widgets/gimpimagedock.h +++ b/app/widgets/gimpimagedock.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_IMAGE_DOCK (gimp_image_dock_get_type ()) -#define GIMP_IMAGE_DOCK(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_IMAGE_DOCK, GimpImageDock)) -#define GIMP_IMAGE_DOCK_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_DOCK, GimpImageDockClass)) -#define GIMP_IS_IMAGE_DOCK(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_IMAGE_DOCK)) -#define GIMP_IS_IMAGE_DOCK_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_DOCK)) +#define GIMP_IMAGE_DOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_IMAGE_DOCK, GimpImageDock)) +#define GIMP_IMAGE_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_DOCK, GimpImageDockClass)) +#define GIMP_IS_IMAGE_DOCK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_IMAGE_DOCK)) +#define GIMP_IS_IMAGE_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_DOCK)) typedef struct _GimpImageDockClass GimpImageDockClass; diff --git a/app/widgets/gimpimagepreview.h b/app/widgets/gimpimagepreview.h index aa6202be0b..aebe3b11b1 100644 --- a/app/widgets/gimpimagepreview.h +++ b/app/widgets/gimpimagepreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_IMAGE_PREVIEW (gimp_image_preview_get_type ()) -#define GIMP_IMAGE_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreview)) -#define GIMP_IMAGE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreviewClass)) -#define GIMP_IS_IMAGE_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE_PREVIEW)) -#define GIMP_IS_IMAGE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_PREVIEW)) +#define GIMP_IMAGE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreview)) +#define GIMP_IMAGE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreviewClass)) +#define GIMP_IS_IMAGE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE_PREVIEW)) +#define GIMP_IS_IMAGE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_PREVIEW)) typedef struct _GimpImagePreviewClass GimpImagePreviewClass; diff --git a/app/widgets/gimpitemfactory.c b/app/widgets/gimpitemfactory.c index 173c9cd075..d520eec191 100644 --- a/app/widgets/gimpitemfactory.c +++ b/app/widgets/gimpitemfactory.c @@ -1634,7 +1634,7 @@ menus_filters_subdirs_to_top (GtkMenu *menu) GtkWidget *separator; separator = gtk_menu_item_new (); - gtk_menu_insert (menu, separator, pos); + gtk_menu_shell_insert (GTK_MENU_SHELL (menu), separator, pos); gtk_widget_show (separator); } } @@ -2473,7 +2473,7 @@ menus_init (void) if (menu_item && menu_item->parent) { separator = gtk_menu_item_new (); - gtk_menu_insert (GTK_MENU (menu_item->parent), separator, pos); + gtk_menu_shell_insert (GTK_MENU_SHELL (menu_item->parent), separator, pos); gtk_widget_show (separator); } } diff --git a/app/widgets/gimpitemlistview.c b/app/widgets/gimpitemlistview.c index 8c602cdb7c..e35e6064fb 100644 --- a/app/widgets/gimpitemlistview.c +++ b/app/widgets/gimpitemlistview.c @@ -140,10 +140,10 @@ static guint view_signals[LAST_SIGNAL] = { 0 }; static GimpContainerListViewClass *parent_class = NULL; -GtkType +GType gimp_drawable_list_view_get_type (void) { - static guint view_type = 0; + static GType view_type = 0; if (! view_type) { @@ -174,19 +174,17 @@ gimp_drawable_list_view_class_init (GimpDrawableListViewClass *klass) object_class = (GtkObjectClass *) klass; container_view_class = (GimpContainerViewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CONTAINER_LIST_VIEW); + parent_class = g_type_class_peek_parent (klass); view_signals[SET_IMAGE] = - gtk_signal_new ("set_image", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDrawableListViewClass, - set_image), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_OBJECT); - - gtk_object_class_add_signals (object_class, view_signals, LAST_SIGNAL); + g_signal_new ("set_image", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpDrawableListViewClass, set_image), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_OBJECT); object_class->destroy = gimp_drawable_list_view_destroy; @@ -222,9 +220,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->new_button, _("New"), NULL); - gtk_signal_connect (GTK_OBJECT (view->new_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_new_clicked), - view); + g_signal_connect (G_OBJECT (view->new_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_new_clicked), + view); pixmap = gimp_pixmap_new (new_xpm); gtk_container_add (GTK_CONTAINER (view->new_button), pixmap); @@ -240,12 +238,12 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->raise_button, _("Raise \n" " To Top"), NULL); - gtk_signal_connect (GTK_OBJECT (view->raise_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_raise_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->raise_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_raise_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->raise_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_raise_clicked), + view); + g_signal_connect (G_OBJECT (view->raise_button), "extended_clicked", + G_CALLBACK (gimp_drawable_list_view_raise_extended_clicked), + view); pixmap = gimp_pixmap_new (raise_xpm); gtk_container_add (GTK_CONTAINER (view->raise_button), pixmap); @@ -261,12 +259,12 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->lower_button, _("Lower \n" " To Bottom"), NULL); - gtk_signal_connect (GTK_OBJECT (view->lower_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_lower_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->lower_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_lower_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->lower_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_lower_clicked), + view); + g_signal_connect (G_OBJECT (view->lower_button), "extended_clicked", + G_CALLBACK (gimp_drawable_list_view_lower_extended_clicked), + view); pixmap = gimp_pixmap_new (lower_xpm); gtk_container_add (GTK_CONTAINER (view->lower_button), pixmap); @@ -281,9 +279,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->duplicate_button, _("Duplicate"), NULL); - gtk_signal_connect (GTK_OBJECT (view->duplicate_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_duplicate_clicked), - view); + g_signal_connect (G_OBJECT (view->duplicate_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_duplicate_clicked), + view); pixmap = gimp_pixmap_new (duplicate_xpm); gtk_container_add (GTK_CONTAINER (view->duplicate_button), pixmap); @@ -298,9 +296,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->edit_button, _("Edit"), NULL); - gtk_signal_connect (GTK_OBJECT (view->edit_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_edit_clicked), - view); + g_signal_connect (G_OBJECT (view->edit_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_edit_clicked), + view); pixmap = gimp_pixmap_new (edit_xpm); gtk_container_add (GTK_CONTAINER (view->edit_button), pixmap); @@ -315,9 +313,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->delete_button, _("Delete"), NULL); - gtk_signal_connect (GTK_OBJECT (view->delete_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_delete_clicked), - view); + g_signal_connect (G_OBJECT (view->delete_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_delete_clicked), + view); pixmap = gimp_pixmap_new (delete_xpm); gtk_container_add (GTK_CONTAINER (view->delete_button), pixmap); @@ -338,10 +336,14 @@ gimp_drawable_list_view_destroy (GtkObject *object) view = GIMP_DRAWABLE_LIST_VIEW (object); - gimp_drawable_list_view_set_image (view, NULL); + if (view->gimage) + gimp_drawable_list_view_set_image (view, NULL); - g_free (view->signal_name); - view->signal_name = NULL; + if (view->signal_name) + { + g_free (view->signal_name); + view->signal_name = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -463,7 +465,8 @@ gimp_drawable_list_view_set_image (GimpDrawableListView *view, g_return_if_fail (GIMP_IS_DRAWABLE_LIST_VIEW (view)); g_return_if_fail (! gimage || GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (view), view_signals[SET_IMAGE], gimage); + g_signal_emit (G_OBJECT (view), view_signals[SET_IMAGE], 0, + gimage); } static void @@ -479,15 +482,15 @@ gimp_drawable_list_view_real_set_image (GimpDrawableListView *view, if (view->gimage) { - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_drawable_changed, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_size_changed, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_floating_selection_changed, - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_drawable_changed, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_size_changed, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_floating_selection_changed, + view); gimp_container_view_set_container (GIMP_CONTAINER_VIEW (view), NULL); } @@ -502,15 +505,15 @@ gimp_drawable_list_view_real_set_image (GimpDrawableListView *view, gimp_container_view_set_container (GIMP_CONTAINER_VIEW (view), container); - gtk_signal_connect (GTK_OBJECT (view->gimage), view->signal_name, - GTK_SIGNAL_FUNC (gimp_drawable_list_view_drawable_changed), - view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "size_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_size_changed), - view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "floating_selection_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_floating_selection_changed), - view); + g_signal_connect (G_OBJECT (view->gimage), view->signal_name, + G_CALLBACK (gimp_drawable_list_view_drawable_changed), + view); + g_signal_connect (G_OBJECT (view->gimage), "size_changed", + G_CALLBACK (gimp_drawable_list_view_size_changed), + view); + g_signal_connect (G_OBJECT (view->gimage), "floating_selection_changed", + G_CALLBACK (gimp_drawable_list_view_floating_selection_changed), + view); gimp_drawable_list_view_drawable_changed (view->gimage, view); diff --git a/app/widgets/gimpitemlistview.h b/app/widgets/gimpitemlistview.h index a70f127f6b..d0696742d1 100644 --- a/app/widgets/gimpitemlistview.h +++ b/app/widgets/gimpitemlistview.h @@ -48,10 +48,10 @@ typedef void (* GimpDrawableContextFunc) (GimpImage *gimage); #define GIMP_TYPE_DRAWABLE_LIST_VIEW (gimp_drawable_list_view_get_type ()) -#define GIMP_DRAWABLE_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListView)) -#define GIMP_DRAWABLE_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListViewClass)) -#define GIMP_IS_DRAWABLE_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW)) -#define GIMP_IS_DRAWABLE_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW)) +#define GIMP_DRAWABLE_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListView)) +#define GIMP_DRAWABLE_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListViewClass)) +#define GIMP_IS_DRAWABLE_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW)) +#define GIMP_IS_DRAWABLE_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW)) typedef struct _GimpDrawableListViewClass GimpDrawableListViewClass; diff --git a/app/widgets/gimpitemtreeview.c b/app/widgets/gimpitemtreeview.c index 8c602cdb7c..e35e6064fb 100644 --- a/app/widgets/gimpitemtreeview.c +++ b/app/widgets/gimpitemtreeview.c @@ -140,10 +140,10 @@ static guint view_signals[LAST_SIGNAL] = { 0 }; static GimpContainerListViewClass *parent_class = NULL; -GtkType +GType gimp_drawable_list_view_get_type (void) { - static guint view_type = 0; + static GType view_type = 0; if (! view_type) { @@ -174,19 +174,17 @@ gimp_drawable_list_view_class_init (GimpDrawableListViewClass *klass) object_class = (GtkObjectClass *) klass; container_view_class = (GimpContainerViewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_CONTAINER_LIST_VIEW); + parent_class = g_type_class_peek_parent (klass); view_signals[SET_IMAGE] = - gtk_signal_new ("set_image", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpDrawableListViewClass, - set_image), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_OBJECT); - - gtk_object_class_add_signals (object_class, view_signals, LAST_SIGNAL); + g_signal_new ("set_image", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpDrawableListViewClass, set_image), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_OBJECT); object_class->destroy = gimp_drawable_list_view_destroy; @@ -222,9 +220,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->new_button, _("New"), NULL); - gtk_signal_connect (GTK_OBJECT (view->new_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_new_clicked), - view); + g_signal_connect (G_OBJECT (view->new_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_new_clicked), + view); pixmap = gimp_pixmap_new (new_xpm); gtk_container_add (GTK_CONTAINER (view->new_button), pixmap); @@ -240,12 +238,12 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->raise_button, _("Raise \n" " To Top"), NULL); - gtk_signal_connect (GTK_OBJECT (view->raise_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_raise_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->raise_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_raise_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->raise_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_raise_clicked), + view); + g_signal_connect (G_OBJECT (view->raise_button), "extended_clicked", + G_CALLBACK (gimp_drawable_list_view_raise_extended_clicked), + view); pixmap = gimp_pixmap_new (raise_xpm); gtk_container_add (GTK_CONTAINER (view->raise_button), pixmap); @@ -261,12 +259,12 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->lower_button, _("Lower \n" " To Bottom"), NULL); - gtk_signal_connect (GTK_OBJECT (view->lower_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_lower_clicked), - view); - gtk_signal_connect (GTK_OBJECT (view->lower_button), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_lower_extended_clicked), - view); + g_signal_connect (G_OBJECT (view->lower_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_lower_clicked), + view); + g_signal_connect (G_OBJECT (view->lower_button), "extended_clicked", + G_CALLBACK (gimp_drawable_list_view_lower_extended_clicked), + view); pixmap = gimp_pixmap_new (lower_xpm); gtk_container_add (GTK_CONTAINER (view->lower_button), pixmap); @@ -281,9 +279,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->duplicate_button, _("Duplicate"), NULL); - gtk_signal_connect (GTK_OBJECT (view->duplicate_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_duplicate_clicked), - view); + g_signal_connect (G_OBJECT (view->duplicate_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_duplicate_clicked), + view); pixmap = gimp_pixmap_new (duplicate_xpm); gtk_container_add (GTK_CONTAINER (view->duplicate_button), pixmap); @@ -298,9 +296,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->edit_button, _("Edit"), NULL); - gtk_signal_connect (GTK_OBJECT (view->edit_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_edit_clicked), - view); + g_signal_connect (G_OBJECT (view->edit_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_edit_clicked), + view); pixmap = gimp_pixmap_new (edit_xpm); gtk_container_add (GTK_CONTAINER (view->edit_button), pixmap); @@ -315,9 +313,9 @@ gimp_drawable_list_view_init (GimpDrawableListView *view) gimp_help_set_help_data (view->delete_button, _("Delete"), NULL); - gtk_signal_connect (GTK_OBJECT (view->delete_button), "clicked", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_delete_clicked), - view); + g_signal_connect (G_OBJECT (view->delete_button), "clicked", + G_CALLBACK (gimp_drawable_list_view_delete_clicked), + view); pixmap = gimp_pixmap_new (delete_xpm); gtk_container_add (GTK_CONTAINER (view->delete_button), pixmap); @@ -338,10 +336,14 @@ gimp_drawable_list_view_destroy (GtkObject *object) view = GIMP_DRAWABLE_LIST_VIEW (object); - gimp_drawable_list_view_set_image (view, NULL); + if (view->gimage) + gimp_drawable_list_view_set_image (view, NULL); - g_free (view->signal_name); - view->signal_name = NULL; + if (view->signal_name) + { + g_free (view->signal_name); + view->signal_name = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -463,7 +465,8 @@ gimp_drawable_list_view_set_image (GimpDrawableListView *view, g_return_if_fail (GIMP_IS_DRAWABLE_LIST_VIEW (view)); g_return_if_fail (! gimage || GIMP_IS_IMAGE (gimage)); - gtk_signal_emit (GTK_OBJECT (view), view_signals[SET_IMAGE], gimage); + g_signal_emit (G_OBJECT (view), view_signals[SET_IMAGE], 0, + gimage); } static void @@ -479,15 +482,15 @@ gimp_drawable_list_view_real_set_image (GimpDrawableListView *view, if (view->gimage) { - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_drawable_changed, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_size_changed, - view); - gtk_signal_disconnect_by_func (GTK_OBJECT (view->gimage), - gimp_drawable_list_view_floating_selection_changed, - view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_drawable_changed, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_size_changed, + view); + g_signal_handlers_disconnect_by_func (G_OBJECT (view->gimage), + gimp_drawable_list_view_floating_selection_changed, + view); gimp_container_view_set_container (GIMP_CONTAINER_VIEW (view), NULL); } @@ -502,15 +505,15 @@ gimp_drawable_list_view_real_set_image (GimpDrawableListView *view, gimp_container_view_set_container (GIMP_CONTAINER_VIEW (view), container); - gtk_signal_connect (GTK_OBJECT (view->gimage), view->signal_name, - GTK_SIGNAL_FUNC (gimp_drawable_list_view_drawable_changed), - view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "size_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_size_changed), - view); - gtk_signal_connect (GTK_OBJECT (view->gimage), "floating_selection_changed", - GTK_SIGNAL_FUNC (gimp_drawable_list_view_floating_selection_changed), - view); + g_signal_connect (G_OBJECT (view->gimage), view->signal_name, + G_CALLBACK (gimp_drawable_list_view_drawable_changed), + view); + g_signal_connect (G_OBJECT (view->gimage), "size_changed", + G_CALLBACK (gimp_drawable_list_view_size_changed), + view); + g_signal_connect (G_OBJECT (view->gimage), "floating_selection_changed", + G_CALLBACK (gimp_drawable_list_view_floating_selection_changed), + view); gimp_drawable_list_view_drawable_changed (view->gimage, view); diff --git a/app/widgets/gimpitemtreeview.h b/app/widgets/gimpitemtreeview.h index a70f127f6b..d0696742d1 100644 --- a/app/widgets/gimpitemtreeview.h +++ b/app/widgets/gimpitemtreeview.h @@ -48,10 +48,10 @@ typedef void (* GimpDrawableContextFunc) (GimpImage *gimage); #define GIMP_TYPE_DRAWABLE_LIST_VIEW (gimp_drawable_list_view_get_type ()) -#define GIMP_DRAWABLE_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListView)) -#define GIMP_DRAWABLE_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListViewClass)) -#define GIMP_IS_DRAWABLE_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW)) -#define GIMP_IS_DRAWABLE_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW)) +#define GIMP_DRAWABLE_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListView)) +#define GIMP_DRAWABLE_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW, GimpDrawableListViewClass)) +#define GIMP_IS_DRAWABLE_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DRAWABLE_LIST_VIEW)) +#define GIMP_IS_DRAWABLE_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_LIST_VIEW)) typedef struct _GimpDrawableListViewClass GimpDrawableListViewClass; diff --git a/app/widgets/gimplayerlistitem.c b/app/widgets/gimplayerlistitem.c index 4d7d50a872..3442ffe2ca 100644 --- a/app/widgets/gimplayerlistitem.c +++ b/app/widgets/gimplayerlistitem.c @@ -158,13 +158,13 @@ gimp_layer_list_item_init (GimpLayerListItem *list_item) gtk_container_add (GTK_CONTAINER (abox), list_item->linked_button); gtk_widget_show (list_item->linked_button); - gtk_signal_connect (GTK_OBJECT (list_item->linked_button), "realize", - GTK_SIGNAL_FUNC (gimp_list_item_button_realize), - list_item); + g_signal_connect (G_OBJECT (list_item->linked_button), "realize", + G_CALLBACK (gimp_list_item_button_realize), + list_item); - gtk_signal_connect (GTK_OBJECT (list_item->linked_button), "state_changed", - GTK_SIGNAL_FUNC (gimp_list_item_button_state_changed), - list_item); + g_signal_connect (G_OBJECT (list_item->linked_button), "state_changed", + G_CALLBACK (gimp_list_item_button_state_changed), + list_item); pixmap = gimp_pixmap_new (linked_xpm); gtk_container_add (GTK_CONTAINER (list_item->linked_button), pixmap); @@ -206,30 +206,28 @@ gimp_layer_list_item_set_viewable (GimpListItem *list_item, gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (layer_item->linked_button), linked); - gtk_signal_connect (GTK_OBJECT (layer_item->linked_button), "toggled", - GTK_SIGNAL_FUNC (gimp_layer_list_item_linked_toggled), - list_item); + g_signal_connect (G_OBJECT (layer_item->linked_button), "toggled", + G_CALLBACK (gimp_layer_list_item_linked_toggled), + list_item); - gtk_signal_connect_while_alive - (GTK_OBJECT (viewable), "linked_changed", - GTK_SIGNAL_FUNC (gimp_layer_list_item_linked_changed), - list_item, - GTK_OBJECT (list_item)); + g_signal_connect_object (G_OBJECT (viewable), "linked_changed", + G_CALLBACK (gimp_layer_list_item_linked_changed), + G_OBJECT (list_item), + 0); - gtk_signal_connect (GTK_OBJECT (list_item->preview), "clicked", - GTK_SIGNAL_FUNC (gimp_layer_list_item_layer_clicked), - layer); + g_signal_connect (G_OBJECT (list_item->preview), "clicked", + G_CALLBACK (gimp_layer_list_item_layer_clicked), + layer); if (gimp_layer_get_mask (layer)) { gimp_layer_list_item_mask_changed (layer, layer_item); } - gtk_signal_connect_while_alive - (GTK_OBJECT (layer), "mask_changed", - GTK_SIGNAL_FUNC (gimp_layer_list_item_mask_changed), - list_item, - GTK_OBJECT (list_item)); + g_signal_connect_object (G_OBJECT (layer), "mask_changed", + G_CALLBACK (gimp_layer_list_item_mask_changed), + G_OBJECT (list_item), + 0); } static void @@ -380,15 +378,15 @@ gimp_layer_list_item_linked_toggled (GtkWidget *widget, gtk_widget_set_usize (GTK_WIDGET (widget), -1, -1); } - gtk_signal_handler_block_by_func (GTK_OBJECT (layer), - gimp_layer_list_item_linked_changed, - list_item); + g_signal_handlers_block_by_func (G_OBJECT (layer), + gimp_layer_list_item_linked_changed, + list_item); gimp_layer_set_linked (layer, linked); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (layer), - gimp_layer_list_item_linked_changed, - list_item); + g_signal_handlers_unblock_by_func (G_OBJECT (layer), + gimp_layer_list_item_linked_changed, + list_item); } } @@ -419,15 +417,15 @@ gimp_layer_list_item_linked_changed (GimpLayer *layer, gtk_widget_set_usize (GTK_WIDGET (toggle), -1, -1); } - gtk_signal_handler_block_by_func (GTK_OBJECT (toggle), - gimp_layer_list_item_linked_toggled, - list_item); + g_signal_handlers_block_by_func (G_OBJECT (toggle), + gimp_layer_list_item_linked_toggled, + list_item); gtk_toggle_button_set_active (toggle, linked); - gtk_signal_handler_unblock_by_func (GTK_OBJECT (toggle), - gimp_layer_list_item_linked_toggled, - list_item); + g_signal_handlers_unblock_by_func (G_OBJECT (toggle), + gimp_layer_list_item_linked_toggled, + list_item); } } @@ -455,27 +453,27 @@ gimp_layer_list_item_mask_changed (GimpLayer *layer, layer_item->mask_preview, 3); gtk_widget_show (layer_item->mask_preview); - gtk_signal_connect (GTK_OBJECT (layer_item->mask_preview), "clicked", - GTK_SIGNAL_FUNC (gimp_layer_list_item_mask_clicked), - mask); - gtk_signal_connect (GTK_OBJECT (layer_item->mask_preview), "extended_clicked", - GTK_SIGNAL_FUNC (gimp_layer_list_item_mask_extended_clicked), - mask); + g_signal_connect (G_OBJECT (layer_item->mask_preview), "clicked", + G_CALLBACK (gimp_layer_list_item_mask_clicked), + mask); + g_signal_connect (G_OBJECT (layer_item->mask_preview), "extended_clicked", + G_CALLBACK (gimp_layer_list_item_mask_extended_clicked), + mask); - gtk_signal_connect_object - (GTK_OBJECT (mask), "apply_changed", - GTK_SIGNAL_FUNC (gimp_layer_list_item_update_state), - GTK_OBJECT (layer_item)); + g_signal_connect_object (G_OBJECT (mask), "apply_changed", + G_CALLBACK (gimp_layer_list_item_update_state), + G_OBJECT (layer_item), + G_CONNECT_SWAPPED); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (mask), "edit_changed", - GTK_SIGNAL_FUNC (gimp_layer_list_item_update_state), - GTK_OBJECT (layer_item)); + g_signal_connect_object (G_OBJECT (mask), "edit_changed", + G_CALLBACK (gimp_layer_list_item_update_state), + G_OBJECT (layer_item), + G_CONNECT_SWAPPED); - gtk_signal_connect_object_while_alive - (GTK_OBJECT (mask), "show_changed", - GTK_SIGNAL_FUNC (gimp_layer_list_item_update_state), - GTK_OBJECT (layer_item)); + g_signal_connect_object (G_OBJECT (mask), "show_changed", + G_CALLBACK (gimp_layer_list_item_update_state), + G_OBJECT (layer_item), + G_CONNECT_SWAPPED); } else if (! mask && layer_item->mask_preview) { diff --git a/app/widgets/gimplayerlistitem.h b/app/widgets/gimplayerlistitem.h index 750338ea80..6f2688827c 100644 --- a/app/widgets/gimplayerlistitem.h +++ b/app/widgets/gimplayerlistitem.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_LAYER_LIST_ITEM (gimp_layer_list_item_get_type ()) -#define GIMP_LAYER_LIST_ITEM(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LAYER_LIST_ITEM, GimpLayerListItem)) -#define GIMP_LAYER_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_LIST_ITEM, GimpLayerListItemClass)) -#define GIMP_IS_LAYER_LIST_ITEM(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_LAYER_LIST_ITEM)) -#define GIMP_IS_LAYER_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER_LIST_ITEM)) +#define GIMP_LAYER_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LAYER_LIST_ITEM, GimpLayerListItem)) +#define GIMP_LAYER_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_LIST_ITEM, GimpLayerListItemClass)) +#define GIMP_IS_LAYER_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LAYER_LIST_ITEM)) +#define GIMP_IS_LAYER_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER_LIST_ITEM)) typedef struct _GimpLayerListItemClass GimpLayerListItemClass; diff --git a/app/widgets/gimplayerlistview.c b/app/widgets/gimplayerlistview.c index f4d723573d..1609bac020 100644 --- a/app/widgets/gimplayerlistview.c +++ b/app/widgets/gimplayerlistview.c @@ -154,8 +154,10 @@ gimp_layer_list_view_init (GimpLayerListView *view) gtk_widget_show (label); view->paint_mode_menu = - gimp_paint_mode_menu_new (gimp_layer_list_view_paint_mode_menu_callback, - view, FALSE, NORMAL_MODE); + gimp_paint_mode_menu_new (G_CALLBACK (gimp_layer_list_view_paint_mode_menu_callback), + view, + FALSE, + NORMAL_MODE); gtk_box_pack_start (GTK_BOX (hbox), view->paint_mode_menu, FALSE, FALSE, 0); gtk_widget_show (view->paint_mode_menu); @@ -173,9 +175,9 @@ gimp_layer_list_view_init (GimpLayerListView *view) gtk_container_add (GTK_CONTAINER (abox), view->preserve_trans_toggle); gtk_widget_show (view->preserve_trans_toggle); - gtk_signal_connect (GTK_OBJECT (view->preserve_trans_toggle), "toggled", - GTK_SIGNAL_FUNC (gimp_layer_list_view_preserve_button_toggled), - view); + g_signal_connect (G_OBJECT (view->preserve_trans_toggle), "toggled", + G_CALLBACK (gimp_layer_list_view_preserve_button_toggled), + view); gimp_help_set_help_data (view->preserve_trans_toggle, _("Keep Transparency"), "#keep_trans_button"); @@ -193,9 +195,9 @@ gimp_layer_list_view_init (GimpLayerListView *view) view->opacity_adjustment = GTK_ADJUSTMENT (gtk_adjustment_new (100.0, 0.0, 100.0, 1.0, 1.0, 0.0)); - gtk_signal_connect (GTK_OBJECT (view->opacity_adjustment), "value_changed", - GTK_SIGNAL_FUNC (gimp_layer_list_view_opacity_scale_changed), - view); + g_signal_connect (G_OBJECT (view->opacity_adjustment), "value_changed", + G_CALLBACK (gimp_layer_list_view_opacity_scale_changed), + view); slider = gtk_hscale_new (view->opacity_adjustment); gtk_scale_set_value_pos (GTK_SCALE (slider), GTK_POS_RIGHT); @@ -215,9 +217,9 @@ gimp_layer_list_view_init (GimpLayerListView *view) gimp_help_set_help_data (view->anchor_button, _("Anchor"), NULL); - gtk_signal_connect (GTK_OBJECT (view->anchor_button), "clicked", - GTK_SIGNAL_FUNC (gimp_layer_list_view_anchor_clicked), - view); + g_signal_connect (G_OBJECT (view->anchor_button), "clicked", + G_CALLBACK (gimp_layer_list_view_anchor_clicked), + view); pixmap = gimp_pixmap_new (anchor_xpm); gtk_container_add (GTK_CONTAINER (view->anchor_button), pixmap); @@ -279,15 +281,15 @@ gimp_layer_list_view_set_container (GimpContainerView *view, { layer_view->mode_changed_handler_id = gimp_container_add_handler (view->container, "mode_changed", - gimp_layer_list_view_layer_signal_handler, + G_CALLBACK (gimp_layer_list_view_layer_signal_handler), view); layer_view->opacity_changed_handler_id = gimp_container_add_handler (view->container, "opacity_changed", - gimp_layer_list_view_layer_signal_handler, + G_CALLBACK (gimp_layer_list_view_layer_signal_handler), view); layer_view->preserve_trans_changed_handler_id = gimp_container_add_handler (view->container, "preserve_trans_changed", - gimp_layer_list_view_layer_signal_handler, + G_CALLBACK (gimp_layer_list_view_layer_signal_handler), view); } } @@ -393,11 +395,11 @@ gimp_layer_list_view_anchor_dropped (GtkWidget *widget, /* Paint Mode, Opacity and Preserve trans. callbacks */ #define BLOCK() \ - gtk_signal_handler_block_by_func (GTK_OBJECT (layer), \ + g_signal_handlers_block_by_func (G_OBJECT (layer), \ gimp_layer_list_view_layer_signal_handler, view) #define UNBLOCK() \ - gtk_signal_handler_unblock_by_func (GTK_OBJECT (layer), \ + g_signal_handlers_unblock_by_func (G_OBJECT (layer), \ gimp_layer_list_view_layer_signal_handler, view) @@ -417,7 +419,7 @@ gimp_layer_list_view_paint_mode_menu_callback (GtkWidget *widget, LayerModeEffects mode; mode = (LayerModeEffects) - GPOINTER_TO_INT (gtk_object_get_user_data (GTK_OBJECT (widget))); + GPOINTER_TO_INT (g_object_get_data (G_OBJECT (widget), "user_data")); if (gimp_layer_get_mode (layer) != mode) { @@ -505,12 +507,12 @@ gimp_layer_list_view_layer_signal_handler (GimpLayer *layer, #define BLOCK(object,function) \ - gtk_signal_handler_block_by_func (GTK_OBJECT (object), \ - (function), view) + g_signal_handlers_block_by_func (G_OBJECT (object), \ + (function), view) #define UNBLOCK(object,function) \ - gtk_signal_handler_unblock_by_func (GTK_OBJECT (object), \ - (function), view) + g_signal_handlers_unblock_by_func (G_OBJECT (object), \ + (function), view) static void gimp_layer_list_view_update_options (GimpLayerListView *view, diff --git a/app/widgets/gimplayerlistview.h b/app/widgets/gimplayerlistview.h index ad2bd2620d..5bc025147a 100644 --- a/app/widgets/gimplayerlistview.h +++ b/app/widgets/gimplayerlistview.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_LAYER_LIST_VIEW (gimp_layer_list_view_get_type ()) -#define GIMP_LAYER_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LAYER_LIST_VIEW, GimpLayerListView)) -#define GIMP_LAYER_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_LIST_VIEW, GimpLayerListViewClass)) -#define GIMP_IS_LAYER_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_LAYER_LIST_VIEW)) -#define GIMP_IS_LAYER_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER_LIST_VIEW)) +#define GIMP_LAYER_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LAYER_LIST_VIEW, GimpLayerListView)) +#define GIMP_LAYER_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_LIST_VIEW, GimpLayerListViewClass)) +#define GIMP_IS_LAYER_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LAYER_LIST_VIEW)) +#define GIMP_IS_LAYER_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER_LIST_VIEW)) typedef struct _GimpLayerListViewClass GimpLayerListViewClass; diff --git a/app/widgets/gimplayertreeview.c b/app/widgets/gimplayertreeview.c index f4d723573d..1609bac020 100644 --- a/app/widgets/gimplayertreeview.c +++ b/app/widgets/gimplayertreeview.c @@ -154,8 +154,10 @@ gimp_layer_list_view_init (GimpLayerListView *view) gtk_widget_show (label); view->paint_mode_menu = - gimp_paint_mode_menu_new (gimp_layer_list_view_paint_mode_menu_callback, - view, FALSE, NORMAL_MODE); + gimp_paint_mode_menu_new (G_CALLBACK (gimp_layer_list_view_paint_mode_menu_callback), + view, + FALSE, + NORMAL_MODE); gtk_box_pack_start (GTK_BOX (hbox), view->paint_mode_menu, FALSE, FALSE, 0); gtk_widget_show (view->paint_mode_menu); @@ -173,9 +175,9 @@ gimp_layer_list_view_init (GimpLayerListView *view) gtk_container_add (GTK_CONTAINER (abox), view->preserve_trans_toggle); gtk_widget_show (view->preserve_trans_toggle); - gtk_signal_connect (GTK_OBJECT (view->preserve_trans_toggle), "toggled", - GTK_SIGNAL_FUNC (gimp_layer_list_view_preserve_button_toggled), - view); + g_signal_connect (G_OBJECT (view->preserve_trans_toggle), "toggled", + G_CALLBACK (gimp_layer_list_view_preserve_button_toggled), + view); gimp_help_set_help_data (view->preserve_trans_toggle, _("Keep Transparency"), "#keep_trans_button"); @@ -193,9 +195,9 @@ gimp_layer_list_view_init (GimpLayerListView *view) view->opacity_adjustment = GTK_ADJUSTMENT (gtk_adjustment_new (100.0, 0.0, 100.0, 1.0, 1.0, 0.0)); - gtk_signal_connect (GTK_OBJECT (view->opacity_adjustment), "value_changed", - GTK_SIGNAL_FUNC (gimp_layer_list_view_opacity_scale_changed), - view); + g_signal_connect (G_OBJECT (view->opacity_adjustment), "value_changed", + G_CALLBACK (gimp_layer_list_view_opacity_scale_changed), + view); slider = gtk_hscale_new (view->opacity_adjustment); gtk_scale_set_value_pos (GTK_SCALE (slider), GTK_POS_RIGHT); @@ -215,9 +217,9 @@ gimp_layer_list_view_init (GimpLayerListView *view) gimp_help_set_help_data (view->anchor_button, _("Anchor"), NULL); - gtk_signal_connect (GTK_OBJECT (view->anchor_button), "clicked", - GTK_SIGNAL_FUNC (gimp_layer_list_view_anchor_clicked), - view); + g_signal_connect (G_OBJECT (view->anchor_button), "clicked", + G_CALLBACK (gimp_layer_list_view_anchor_clicked), + view); pixmap = gimp_pixmap_new (anchor_xpm); gtk_container_add (GTK_CONTAINER (view->anchor_button), pixmap); @@ -279,15 +281,15 @@ gimp_layer_list_view_set_container (GimpContainerView *view, { layer_view->mode_changed_handler_id = gimp_container_add_handler (view->container, "mode_changed", - gimp_layer_list_view_layer_signal_handler, + G_CALLBACK (gimp_layer_list_view_layer_signal_handler), view); layer_view->opacity_changed_handler_id = gimp_container_add_handler (view->container, "opacity_changed", - gimp_layer_list_view_layer_signal_handler, + G_CALLBACK (gimp_layer_list_view_layer_signal_handler), view); layer_view->preserve_trans_changed_handler_id = gimp_container_add_handler (view->container, "preserve_trans_changed", - gimp_layer_list_view_layer_signal_handler, + G_CALLBACK (gimp_layer_list_view_layer_signal_handler), view); } } @@ -393,11 +395,11 @@ gimp_layer_list_view_anchor_dropped (GtkWidget *widget, /* Paint Mode, Opacity and Preserve trans. callbacks */ #define BLOCK() \ - gtk_signal_handler_block_by_func (GTK_OBJECT (layer), \ + g_signal_handlers_block_by_func (G_OBJECT (layer), \ gimp_layer_list_view_layer_signal_handler, view) #define UNBLOCK() \ - gtk_signal_handler_unblock_by_func (GTK_OBJECT (layer), \ + g_signal_handlers_unblock_by_func (G_OBJECT (layer), \ gimp_layer_list_view_layer_signal_handler, view) @@ -417,7 +419,7 @@ gimp_layer_list_view_paint_mode_menu_callback (GtkWidget *widget, LayerModeEffects mode; mode = (LayerModeEffects) - GPOINTER_TO_INT (gtk_object_get_user_data (GTK_OBJECT (widget))); + GPOINTER_TO_INT (g_object_get_data (G_OBJECT (widget), "user_data")); if (gimp_layer_get_mode (layer) != mode) { @@ -505,12 +507,12 @@ gimp_layer_list_view_layer_signal_handler (GimpLayer *layer, #define BLOCK(object,function) \ - gtk_signal_handler_block_by_func (GTK_OBJECT (object), \ - (function), view) + g_signal_handlers_block_by_func (G_OBJECT (object), \ + (function), view) #define UNBLOCK(object,function) \ - gtk_signal_handler_unblock_by_func (GTK_OBJECT (object), \ - (function), view) + g_signal_handlers_unblock_by_func (G_OBJECT (object), \ + (function), view) static void gimp_layer_list_view_update_options (GimpLayerListView *view, diff --git a/app/widgets/gimplayertreeview.h b/app/widgets/gimplayertreeview.h index ad2bd2620d..5bc025147a 100644 --- a/app/widgets/gimplayertreeview.h +++ b/app/widgets/gimplayertreeview.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_LAYER_LIST_VIEW (gimp_layer_list_view_get_type ()) -#define GIMP_LAYER_LIST_VIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LAYER_LIST_VIEW, GimpLayerListView)) -#define GIMP_LAYER_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_LIST_VIEW, GimpLayerListViewClass)) -#define GIMP_IS_LAYER_LIST_VIEW(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_LAYER_LIST_VIEW)) -#define GIMP_IS_LAYER_LIST_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER_LIST_VIEW)) +#define GIMP_LAYER_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LAYER_LIST_VIEW, GimpLayerListView)) +#define GIMP_LAYER_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_LIST_VIEW, GimpLayerListViewClass)) +#define GIMP_IS_LAYER_LIST_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LAYER_LIST_VIEW)) +#define GIMP_IS_LAYER_LIST_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER_LIST_VIEW)) typedef struct _GimpLayerListViewClass GimpLayerListViewClass; diff --git a/app/widgets/gimplistitem.c b/app/widgets/gimplistitem.c index 784f8370a7..3c7f4c1b3e 100644 --- a/app/widgets/gimplistitem.c +++ b/app/widgets/gimplistitem.c @@ -54,8 +54,8 @@ static void gimp_list_item_real_set_viewable (GimpListItem *list_item GimpViewable *viewable); static void gimp_list_item_real_set_preview_size (GimpListItem *list_item); -static void gimp_list_item_draw (GtkWidget *widget, - GdkRectangle *area); +static gboolean gimp_list_item_expose_event (GtkWidget *widget, + GdkEventExpose *eevent); static void gimp_list_item_drag_leave (GtkWidget *widget, GdkDragContext *context, guint time); @@ -115,31 +115,32 @@ gimp_list_item_class_init (GimpListItemClass *klass) object_class = (GtkObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_LIST_ITEM); + parent_class = g_type_class_peek_parent (klass); list_item_signals[SET_VIEWABLE] = - gtk_signal_new ("set_viewable", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpListItemClass, - set_viewable), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_VIEWABLE); + g_signal_new ("set_viewable", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpListItemClass, set_viewable), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_VIEWABLE); list_item_signals[SET_PREVIEW_SIZE] = - gtk_signal_new ("set_preview_size", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpListItemClass, - set_preview_size), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 0); + g_signal_new ("set_preview_size", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpListItemClass, set_preview_size), + NULL, NULL, + g_cclosure_marshal_VOID__INT, + G_TYPE_NONE, 1, + G_TYPE_INT); - widget_class->draw = gimp_list_item_draw; - widget_class->drag_leave = gimp_list_item_drag_leave; - widget_class->drag_motion = gimp_list_item_drag_motion; - widget_class->drag_drop = gimp_list_item_drag_drop; + widget_class->expose_event = gimp_list_item_expose_event; + widget_class->drag_leave = gimp_list_item_drag_leave; + widget_class->drag_motion = gimp_list_item_drag_motion; + widget_class->drag_drop = gimp_list_item_drag_drop; klass->set_viewable = gimp_list_item_real_set_viewable; klass->set_preview_size = gimp_list_item_real_set_preview_size; @@ -164,16 +165,16 @@ gimp_list_item_init (GimpListItem *list_item) list_item->get_name_func = NULL; } -static void -gimp_list_item_draw (GtkWidget *widget, - GdkRectangle *area) +static gboolean +gimp_list_item_expose_event (GtkWidget *widget, + GdkEventExpose *eevent) { GimpListItem *list_item; list_item = GIMP_LIST_ITEM (widget); - if (GTK_WIDGET_CLASS (parent_class)->draw) - GTK_WIDGET_CLASS (parent_class)->draw (widget, area); + if (GTK_WIDGET_CLASS (parent_class)->expose_event) + GTK_WIDGET_CLASS (parent_class)->expose_event (widget, eevent); if (list_item->drop_type != GIMP_DROP_NONE) { @@ -187,13 +188,19 @@ gimp_list_item_draw (GtkWidget *widget, gdk_gc_set_line_attributes (widget->style->black_gc, 5, GDK_LINE_SOLID, GDK_CAP_BUTT, GDK_JOIN_MITER); + gdk_gc_set_clip_rectangle (widget->style->black_gc, &eevent->area); + gdk_draw_line (widget->window, widget->style->black_gc, x, y, widget->allocation.width - 3, y); + gdk_gc_set_clip_rectangle (widget->style->black_gc, NULL); + gdk_gc_set_line_attributes (widget->style->black_gc, 0, GDK_LINE_SOLID, GDK_CAP_BUTT, GDK_JOIN_MITER); } + + return FALSE; } static void @@ -341,10 +348,10 @@ gimp_list_item_real_set_viewable (GimpListItem *list_item, gimp_gtk_drag_source_set_by_type (GTK_WIDGET (list_item), GDK_BUTTON1_MASK | GDK_BUTTON2_MASK, - GTK_OBJECT (viewable)->klass->type, + G_TYPE_FROM_INSTANCE (viewable), GDK_ACTION_MOVE | GDK_ACTION_COPY); gimp_dnd_viewable_source_set (GTK_WIDGET (list_item), - GTK_OBJECT (viewable)->klass->type, + G_TYPE_FROM_INSTANCE (viewable), gimp_list_item_drag_viewable, NULL); } diff --git a/app/widgets/gimplistitem.h b/app/widgets/gimplistitem.h index 0f2d9a7a62..9d320ec9f9 100644 --- a/app/widgets/gimplistitem.h +++ b/app/widgets/gimplistitem.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_LIST_ITEM (gimp_list_item_get_type ()) -#define GIMP_LIST_ITEM(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LIST_ITEM, GimpListItem)) -#define GIMP_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LIST_ITEM, GimpListItemClass)) -#define GIMP_IS_LIST_ITEM(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_LIST_ITEM)) -#define GIMP_IS_LIST_ITEM_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LIST_ITEM)) +#define GIMP_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_LIST_ITEM, GimpListItem)) +#define GIMP_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LIST_ITEM, GimpListItemClass)) +#define GIMP_IS_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_LIST_ITEM)) +#define GIMP_IS_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LIST_ITEM)) typedef struct _GimpListItemClass GimpListItemClass; diff --git a/app/widgets/gimpmenudock.c b/app/widgets/gimpmenudock.c index 37865c8469..b6f4d76cb3 100644 --- a/app/widgets/gimpmenudock.c +++ b/app/widgets/gimpmenudock.c @@ -61,10 +61,10 @@ static void gimp_image_dock_auto_clicked (GtkWidget *widget, static GimpDockClass *parent_class = NULL; -GtkType +GType gimp_image_dock_get_type (void) { - static GtkType dock_type = 0; + static GType dock_type = 0; if (! dock_type) { @@ -93,7 +93,7 @@ gimp_image_dock_class_init (GimpImageDockClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_DOCK); + parent_class = g_type_class_peek_parent (klass); object_class->destroy = gimp_image_dock_destroy; } @@ -117,15 +117,19 @@ gimp_image_dock_init (GimpImageDock *dock) gtk_box_pack_start (GTK_BOX (hbox), dock->option_menu, TRUE, TRUE, 0); gtk_widget_show (dock->option_menu); + g_signal_connect (G_OBJECT (dock->option_menu), "destroy", + G_CALLBACK (gtk_widget_destroyed), + &dock->option_menu); + dock->auto_button = gtk_toggle_button_new_with_label (_("Auto")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (dock->auto_button), dock->auto_follow_active); gtk_box_pack_start (GTK_BOX (hbox), dock->auto_button, FALSE, FALSE, 0); gtk_widget_show (dock->auto_button); - gtk_signal_connect (GTK_OBJECT (dock->auto_button), "clicked", - GTK_SIGNAL_FUNC (gimp_image_dock_auto_clicked), - dock); + g_signal_connect (G_OBJECT (dock->auto_button), "clicked", + G_CALLBACK (gimp_image_dock_auto_clicked), + dock); } static void @@ -138,8 +142,13 @@ gimp_image_dock_destroy (GtkObject *object) /* remove the image menu and the auto button manually here because * of weird cross-connections with GimpDock's context */ - gtk_container_remove (GTK_CONTAINER (GIMP_DOCK (dock)->main_vbox), - dock->option_menu->parent); + if (GIMP_DOCK (dock)->main_vbox && + dock->option_menu && + dock->option_menu->parent) + { + gtk_container_remove (GTK_CONTAINER (GIMP_DOCK (dock)->main_vbox), + dock->option_menu->parent); + } if (GTK_OBJECT_CLASS (parent_class)) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -152,10 +161,7 @@ gimp_image_dock_new (GimpDialogFactory *factory, GimpImageDock *image_dock; GimpDock *dock; - g_return_val_if_fail (factory != NULL, NULL); g_return_val_if_fail (GIMP_IS_DIALOG_FACTORY (factory), NULL); - - g_return_val_if_fail (image_container != NULL, NULL); g_return_val_if_fail (GIMP_IS_CONTAINER (image_container), NULL); image_dock = gtk_type_new (GIMP_TYPE_IMAGE_DOCK); @@ -179,17 +185,15 @@ gimp_image_dock_new (GimpDialogFactory *factory, gimp_context_copy_arg (factory->context, dock->context, GIMP_CONTEXT_ARG_IMAGE); - gtk_signal_connect_while_alive - (GTK_OBJECT (factory->context), "image_changed", - GTK_SIGNAL_FUNC (gimp_image_dock_factory_image_changed), - dock, - GTK_OBJECT (dock)); + g_signal_connect_object (G_OBJECT (factory->context), "image_changed", + G_CALLBACK (gimp_image_dock_factory_image_changed), + G_OBJECT (dock), + 0); - gtk_signal_connect_while_alive - (GTK_OBJECT (dock->context), "image_changed", - GTK_SIGNAL_FUNC (gimp_image_dock_image_changed), - dock, - GTK_OBJECT (dock)); + g_signal_connect_object (G_OBJECT (dock->context), "image_changed", + G_CALLBACK (gimp_image_dock_image_changed), + G_OBJECT (dock), + 0); image_dock->menu = gimp_container_menu_new (image_container, dock->context, 24); @@ -204,7 +208,6 @@ void gimp_image_dock_set_auto_follow_active (GimpImageDock *image_dock, gboolean auto_follow_active) { - g_return_if_fail (image_dock != NULL); g_return_if_fail (GIMP_IS_IMAGE_DOCK (image_dock)); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (image_dock->auto_button), @@ -215,7 +218,6 @@ void gimp_image_dock_set_show_image_menu (GimpImageDock *image_dock, gboolean show) { - g_return_if_fail (image_dock != NULL); g_return_if_fail (GIMP_IS_IMAGE_DOCK (image_dock)); if (show) @@ -268,7 +270,7 @@ gimp_image_dock_image_changed (GimpContext *context, /* stop the emission of the original signal (the emission of * the recursive signal is finished) */ - gtk_signal_emit_stop_by_name (GTK_OBJECT (context), "image_changed"); + g_signal_stop_emission_by_name (G_OBJECT (context), "image_changed"); } } } diff --git a/app/widgets/gimpmenudock.h b/app/widgets/gimpmenudock.h index ed5f68fe65..8f9d32d7ed 100644 --- a/app/widgets/gimpmenudock.h +++ b/app/widgets/gimpmenudock.h @@ -27,10 +27,10 @@ #define GIMP_TYPE_IMAGE_DOCK (gimp_image_dock_get_type ()) -#define GIMP_IMAGE_DOCK(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_IMAGE_DOCK, GimpImageDock)) -#define GIMP_IMAGE_DOCK_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_DOCK, GimpImageDockClass)) -#define GIMP_IS_IMAGE_DOCK(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_IMAGE_DOCK)) -#define GIMP_IS_IMAGE_DOCK_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_DOCK)) +#define GIMP_IMAGE_DOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_IMAGE_DOCK, GimpImageDock)) +#define GIMP_IMAGE_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_DOCK, GimpImageDockClass)) +#define GIMP_IS_IMAGE_DOCK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_IMAGE_DOCK)) +#define GIMP_IS_IMAGE_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_DOCK)) typedef struct _GimpImageDockClass GimpImageDockClass; diff --git a/app/widgets/gimpmenuitem.c b/app/widgets/gimpmenuitem.c index e3306e8f35..a4816c631a 100644 --- a/app/widgets/gimpmenuitem.c +++ b/app/widgets/gimpmenuitem.c @@ -92,17 +92,17 @@ gimp_menu_item_class_init (GimpMenuItemClass *klass) object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_MENU_ITEM); + parent_class = g_type_class_peek_parent (klass); menu_item_signals[SET_VIEWABLE] = - gtk_signal_new ("set_viewable", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpMenuItemClass, - set_viewable), - gtk_marshal_NONE__OBJECT, - GTK_TYPE_NONE, 1, - GIMP_TYPE_VIEWABLE); + g_signal_new ("set_viewable", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpMenuItemClass, set_viewable), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, 1, + GIMP_TYPE_VIEWABLE); klass->set_viewable = gimp_menu_item_real_set_viewable; } @@ -172,10 +172,10 @@ gimp_menu_item_real_set_viewable (GimpMenuItem *menu_item, gimp_gtk_drag_source_set_by_type (GTK_WIDGET (menu_item), GDK_BUTTON1_MASK | GDK_BUTTON2_MASK, - GTK_OBJECT (viewable)->klass->type, + G_TYPE_FROM_INSTANCE (viewable), GDK_ACTION_MOVE | GDK_ACTION_COPY); gimp_dnd_viewable_source_set (GTK_WIDGET (menu_item), - GTK_OBJECT (viewable)->klass->type, + G_TYPE_FROM_INSTANCE (viewable), gimp_menu_item_drag_viewable, NULL); } diff --git a/app/widgets/gimpmenuitem.h b/app/widgets/gimpmenuitem.h index 3e79a0cf51..5fbfdeaa96 100644 --- a/app/widgets/gimpmenuitem.h +++ b/app/widgets/gimpmenuitem.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_MENU_ITEM (gimp_menu_item_get_type ()) -#define GIMP_MENU_ITEM(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_MENU_ITEM, GimpMenuItem)) -#define GIMP_MENU_ITEM_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_MENU_ITEM, GimpMenuItemClass)) -#define GIMP_IS_MENU_ITEM(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_MENU_ITEM)) -#define GIMP_IS_MENU_ITEM_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_MENU_ITEM)) +#define GIMP_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_MENU_ITEM, GimpMenuItem)) +#define GIMP_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_MENU_ITEM, GimpMenuItemClass)) +#define GIMP_IS_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_MENU_ITEM)) +#define GIMP_IS_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_MENU_ITEM)) typedef struct _GimpMenuItemClass GimpMenuItemClass; diff --git a/app/widgets/gimpnavigationpreview.c b/app/widgets/gimpnavigationpreview.c index b5df6f0b0a..92df36ebe7 100644 --- a/app/widgets/gimpnavigationpreview.c +++ b/app/widgets/gimpnavigationpreview.c @@ -31,6 +31,7 @@ #include "base/temp-buf.h" #include "core/gimpimage.h" +#include "core/gimpmarshal.h" #include "gimpnavigationpreview.h" @@ -106,20 +107,18 @@ gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass) widget_class = (GtkWidgetClass *) klass; preview_class = (GimpPreviewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_IMAGE_PREVIEW); + parent_class = g_type_class_peek_parent (klass); preview_signals[MARKER_CHANGED] = - gtk_signal_new ("marker_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpNavigationPreviewClass, - marker_changed), - gtk_marshal_NONE__INT_INT, - GTK_TYPE_NONE, 2, - GTK_TYPE_INT, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, preview_signals, LAST_SIGNAL); + g_signal_new ("marker_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpNavigationPreviewClass, marker_changed), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT, + G_TYPE_NONE, 2, + G_TYPE_INT, + G_TYPE_INT); object_class->destroy = gimp_navigation_preview_destroy; diff --git a/app/widgets/gimpnavigationpreview.h b/app/widgets/gimpnavigationpreview.h index cf04b166c1..fde9cc2a35 100644 --- a/app/widgets/gimpnavigationpreview.h +++ b/app/widgets/gimpnavigationpreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_NAVIGATION_PREVIEW (gimp_navigation_preview_get_type ()) -#define GIMP_NAVIGATION_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_NAVIGATION_PREVIEW, GimpNavigationPreview)) -#define GIMP_NAVIGATION_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_NAVIGATION_PREVIEW, GimpNavigationPreviewClass)) -#define GIMP_IS_NAVIGATION_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_NAVIGATION_PREVIEW)) -#define GIMP_IS_NAVIGATION_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_NAVIGATION_PREVIEW)) +#define GIMP_NAVIGATION_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_NAVIGATION_PREVIEW, GimpNavigationPreview)) +#define GIMP_NAVIGATION_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_NAVIGATION_PREVIEW, GimpNavigationPreviewClass)) +#define GIMP_IS_NAVIGATION_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_NAVIGATION_PREVIEW)) +#define GIMP_IS_NAVIGATION_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_NAVIGATION_PREVIEW)) typedef struct _GimpNavigationPreviewClass GimpNavigationPreviewClass; diff --git a/app/widgets/gimpnavigationview.c b/app/widgets/gimpnavigationview.c index b5df6f0b0a..92df36ebe7 100644 --- a/app/widgets/gimpnavigationview.c +++ b/app/widgets/gimpnavigationview.c @@ -31,6 +31,7 @@ #include "base/temp-buf.h" #include "core/gimpimage.h" +#include "core/gimpmarshal.h" #include "gimpnavigationpreview.h" @@ -106,20 +107,18 @@ gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass) widget_class = (GtkWidgetClass *) klass; preview_class = (GimpPreviewClass *) klass; - parent_class = gtk_type_class (GIMP_TYPE_IMAGE_PREVIEW); + parent_class = g_type_class_peek_parent (klass); preview_signals[MARKER_CHANGED] = - gtk_signal_new ("marker_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpNavigationPreviewClass, - marker_changed), - gtk_marshal_NONE__INT_INT, - GTK_TYPE_NONE, 2, - GTK_TYPE_INT, - GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, preview_signals, LAST_SIGNAL); + g_signal_new ("marker_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpNavigationPreviewClass, marker_changed), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_INT, + G_TYPE_NONE, 2, + G_TYPE_INT, + G_TYPE_INT); object_class->destroy = gimp_navigation_preview_destroy; diff --git a/app/widgets/gimpnavigationview.h b/app/widgets/gimpnavigationview.h index cf04b166c1..fde9cc2a35 100644 --- a/app/widgets/gimpnavigationview.h +++ b/app/widgets/gimpnavigationview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_NAVIGATION_PREVIEW (gimp_navigation_preview_get_type ()) -#define GIMP_NAVIGATION_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_NAVIGATION_PREVIEW, GimpNavigationPreview)) -#define GIMP_NAVIGATION_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_NAVIGATION_PREVIEW, GimpNavigationPreviewClass)) -#define GIMP_IS_NAVIGATION_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_NAVIGATION_PREVIEW)) -#define GIMP_IS_NAVIGATION_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_NAVIGATION_PREVIEW)) +#define GIMP_NAVIGATION_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_NAVIGATION_PREVIEW, GimpNavigationPreview)) +#define GIMP_NAVIGATION_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_NAVIGATION_PREVIEW, GimpNavigationPreviewClass)) +#define GIMP_IS_NAVIGATION_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_NAVIGATION_PREVIEW)) +#define GIMP_IS_NAVIGATION_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_NAVIGATION_PREVIEW)) typedef struct _GimpNavigationPreviewClass GimpNavigationPreviewClass; diff --git a/app/widgets/gimppaletteeditor.c b/app/widgets/gimppaletteeditor.c index add46fbc29..0e8bf6c470 100644 --- a/app/widgets/gimppaletteeditor.c +++ b/app/widgets/gimppaletteeditor.c @@ -397,7 +397,7 @@ palette_editor_name_activate (GtkWidget *widget, PaletteEditor *palette_editor) { GimpPalette *palette; - gchar *entry_text; + const gchar *entry_text; palette = gimp_context_get_palette (palette_editor->context); @@ -425,14 +425,14 @@ palette_editor_create_popup_menu (PaletteEditor *palette_editor) palette_editor->popup_menu = menu = gtk_menu_new (); menu_item = gtk_menu_item_new_with_label (_("New")); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_signal_connect (GTK_OBJECT (menu_item), "activate", GTK_SIGNAL_FUNC (palette_editor_new_entry_callback), palette_editor); gtk_widget_show (menu_item); menu_item = gtk_menu_item_new_with_label (_("Edit")); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_signal_connect (GTK_OBJECT (menu_item), "activate", GTK_SIGNAL_FUNC (palette_editor_edit_entry_callback), @@ -445,7 +445,7 @@ palette_editor_create_popup_menu (PaletteEditor *palette_editor) gtk_signal_connect (GTK_OBJECT (menu_item), "activate", GTK_SIGNAL_FUNC (palette_editor_delete_entry_callback), palette_editor); - gtk_menu_append (GTK_MENU (menu), menu_item); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item); gtk_widget_show (menu_item); palette_editor->delete_menu_item = menu_item; diff --git a/app/widgets/gimppalettepreview.h b/app/widgets/gimppalettepreview.h index 5c92f7c95e..a0e50c21d6 100644 --- a/app/widgets/gimppalettepreview.h +++ b/app/widgets/gimppalettepreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_PALETTE_PREVIEW (gimp_palette_preview_get_type ()) -#define GIMP_PALETTE_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PALETTE_PREVIEW, GimpPalettePreview)) -#define GIMP_PALETTE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PALETTE_PREVIEW, GimpPalettePreviewClass)) -#define GIMP_IS_PALETTE_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_PALETTE_PREVIEW)) -#define GIMP_IS_PALETTE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PALETTE_PREVIEW)) +#define GIMP_PALETTE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PALETTE_PREVIEW, GimpPalettePreview)) +#define GIMP_PALETTE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PALETTE_PREVIEW, GimpPalettePreviewClass)) +#define GIMP_IS_PALETTE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_PALETTE_PREVIEW)) +#define GIMP_IS_PALETTE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PALETTE_PREVIEW)) typedef struct _GimpPalettePreviewClass GimpPalettePreviewClass; diff --git a/app/widgets/gimppatternpreview.h b/app/widgets/gimppatternpreview.h index 84276abc3c..4b0a3d415e 100644 --- a/app/widgets/gimppatternpreview.h +++ b/app/widgets/gimppatternpreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_PATTERN_PREVIEW (gimp_pattern_preview_get_type ()) -#define GIMP_PATTERN_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PATTERN_PREVIEW, GimpPatternPreview)) -#define GIMP_PATTERN_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PATTERN_PREVIEW, GimpPatternPreviewClass)) -#define GIMP_IS_PATTERN_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_PATTERN_PREVIEW)) -#define GIMP_IS_PATTERN_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PATTERN_PREVIEW)) +#define GIMP_PATTERN_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PATTERN_PREVIEW, GimpPatternPreview)) +#define GIMP_PATTERN_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PATTERN_PREVIEW, GimpPatternPreviewClass)) +#define GIMP_IS_PATTERN_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_PATTERN_PREVIEW)) +#define GIMP_IS_PATTERN_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PATTERN_PREVIEW)) typedef struct _GimpPatternPreviewClass GimpPatternPreviewClass; diff --git a/app/widgets/gimppreview.c b/app/widgets/gimppreview.c index 98b1f4a482..5ef4584671 100644 --- a/app/widgets/gimppreview.c +++ b/app/widgets/gimppreview.c @@ -158,85 +158,83 @@ gimp_preview_class_init (GimpPreviewClass *klass) object_class = (GtkObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_PREVIEW); + parent_class = g_type_class_peek_parent (klass); preview_signals[CLICKED] = - gtk_signal_new ("clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - clicked), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, clicked), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[DOUBLE_CLICKED] = - gtk_signal_new ("double_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - double_clicked), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("double_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, double_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[EXTENDED_CLICKED] = - gtk_signal_new ("extended_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - extended_clicked), - gtk_marshal_NONE__UINT, - GTK_TYPE_NONE, 1, - GTK_TYPE_UINT); + g_signal_new ("extended_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, extended_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__UINT, + G_TYPE_NONE, 1, + G_TYPE_UINT); preview_signals[CONTEXT] = - gtk_signal_new ("context", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - context), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("context", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, context), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[RENDER] = - gtk_signal_new ("render", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - render), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("render", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, render), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[GET_SIZE] = - gtk_signal_new ("get_size", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - get_size), - gimp_marshal_NONE__INT_POINTER_POINTER, - GTK_TYPE_NONE, 3, - GTK_TYPE_INT, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("get_size", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, get_size), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_POINTER_POINTER, + G_TYPE_NONE, 3, + G_TYPE_INT, + G_TYPE_POINTER, + G_TYPE_POINTER); preview_signals[NEEDS_POPUP] = - gtk_signal_new ("needs_popup", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - needs_popup), - gtk_marshal_BOOL__NONE, - GTK_TYPE_BOOL, 0); + g_signal_new ("needs_popup", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, needs_popup), + NULL, NULL, + gimp_cclosure_marshal_BOOLEAN__VOID, + G_TYPE_BOOLEAN, 0); preview_signals[CREATE_POPUP] = - gtk_signal_new ("create_popup", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - create_popup), - gimp_marshal_POINTER__NONE, - GTK_TYPE_POINTER, 0); - - gtk_object_class_add_signals (object_class, preview_signals, LAST_SIGNAL); + g_signal_new ("create_popup", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, create_popup), + NULL, NULL, + gimp_cclosure_marshal_POINTER__VOID, + G_TYPE_POINTER, 0); object_class->destroy = gimp_preview_destroy; @@ -418,12 +416,9 @@ gimp_preview_set_viewable (GimpPreview *preview, { if (! preview->is_popup) { - GtkType type; - - type = GTK_OBJECT (preview->viewable)->klass->type; - gtk_drag_source_unset (GTK_WIDGET (preview)); - gimp_dnd_viewable_source_unset (GTK_WIDGET (preview), type); + gimp_dnd_viewable_source_unset (GTK_WIDGET (preview), + G_TYPE_FROM_INSTANCE (preview->viewable)); } gtk_signal_disconnect_by_func (GTK_OBJECT (preview->viewable), @@ -446,16 +441,12 @@ gimp_preview_set_viewable (GimpPreview *preview, { if (! preview->is_popup) { - GtkType type; - - type = GTK_OBJECT (preview->viewable)->klass->type; - gimp_gtk_drag_source_set_by_type (GTK_WIDGET (preview), GDK_BUTTON1_MASK | GDK_BUTTON2_MASK, - type, + G_TYPE_FROM_INSTANCE (preview->viewable), GDK_ACTION_COPY); gimp_dnd_viewable_source_set (GTK_WIDGET (preview), - type, + G_TYPE_FROM_INSTANCE (preview->viewable), gimp_preview_drag_viewable, NULL); } @@ -846,7 +837,8 @@ gimp_preview_popup_timeout (GimpPreview *preview) x = (x + popup_width > scr_width) ? scr_width - popup_width : x; y = (y + popup_height > scr_height) ? scr_height - popup_height : y; - gtk_widget_popup (window, x, y); + gtk_widget_set_uposition (window, x, y); + gtk_widget_show (window); gtk_object_set_data_full (GTK_OBJECT (preview), "preview_popup_window", window, (GtkDestroyNotify) gtk_widget_destroy); diff --git a/app/widgets/gimppreview.h b/app/widgets/gimppreview.h index 0265a33ad9..9395bb1dac 100644 --- a/app/widgets/gimppreview.h +++ b/app/widgets/gimppreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_PREVIEW (gimp_preview_get_type ()) -#define GIMP_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PREVIEW, GimpPreview)) -#define GIMP_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, GimpPreviewClass)) -#define GIMP_IS_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_PREVIEW)) -#define GIMP_IS_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW)) +#define GIMP_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PREVIEW, GimpPreview)) +#define GIMP_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, GimpPreviewClass)) +#define GIMP_IS_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_PREVIEW)) +#define GIMP_IS_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW)) typedef struct _GimpPreviewClass GimpPreviewClass; diff --git a/app/widgets/gimppreviewrenderer.c b/app/widgets/gimppreviewrenderer.c index 98b1f4a482..5ef4584671 100644 --- a/app/widgets/gimppreviewrenderer.c +++ b/app/widgets/gimppreviewrenderer.c @@ -158,85 +158,83 @@ gimp_preview_class_init (GimpPreviewClass *klass) object_class = (GtkObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_PREVIEW); + parent_class = g_type_class_peek_parent (klass); preview_signals[CLICKED] = - gtk_signal_new ("clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - clicked), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, clicked), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[DOUBLE_CLICKED] = - gtk_signal_new ("double_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - double_clicked), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("double_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, double_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[EXTENDED_CLICKED] = - gtk_signal_new ("extended_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - extended_clicked), - gtk_marshal_NONE__UINT, - GTK_TYPE_NONE, 1, - GTK_TYPE_UINT); + g_signal_new ("extended_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, extended_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__UINT, + G_TYPE_NONE, 1, + G_TYPE_UINT); preview_signals[CONTEXT] = - gtk_signal_new ("context", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - context), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("context", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, context), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[RENDER] = - gtk_signal_new ("render", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - render), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("render", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, render), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[GET_SIZE] = - gtk_signal_new ("get_size", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - get_size), - gimp_marshal_NONE__INT_POINTER_POINTER, - GTK_TYPE_NONE, 3, - GTK_TYPE_INT, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("get_size", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, get_size), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_POINTER_POINTER, + G_TYPE_NONE, 3, + G_TYPE_INT, + G_TYPE_POINTER, + G_TYPE_POINTER); preview_signals[NEEDS_POPUP] = - gtk_signal_new ("needs_popup", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - needs_popup), - gtk_marshal_BOOL__NONE, - GTK_TYPE_BOOL, 0); + g_signal_new ("needs_popup", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, needs_popup), + NULL, NULL, + gimp_cclosure_marshal_BOOLEAN__VOID, + G_TYPE_BOOLEAN, 0); preview_signals[CREATE_POPUP] = - gtk_signal_new ("create_popup", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - create_popup), - gimp_marshal_POINTER__NONE, - GTK_TYPE_POINTER, 0); - - gtk_object_class_add_signals (object_class, preview_signals, LAST_SIGNAL); + g_signal_new ("create_popup", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, create_popup), + NULL, NULL, + gimp_cclosure_marshal_POINTER__VOID, + G_TYPE_POINTER, 0); object_class->destroy = gimp_preview_destroy; @@ -418,12 +416,9 @@ gimp_preview_set_viewable (GimpPreview *preview, { if (! preview->is_popup) { - GtkType type; - - type = GTK_OBJECT (preview->viewable)->klass->type; - gtk_drag_source_unset (GTK_WIDGET (preview)); - gimp_dnd_viewable_source_unset (GTK_WIDGET (preview), type); + gimp_dnd_viewable_source_unset (GTK_WIDGET (preview), + G_TYPE_FROM_INSTANCE (preview->viewable)); } gtk_signal_disconnect_by_func (GTK_OBJECT (preview->viewable), @@ -446,16 +441,12 @@ gimp_preview_set_viewable (GimpPreview *preview, { if (! preview->is_popup) { - GtkType type; - - type = GTK_OBJECT (preview->viewable)->klass->type; - gimp_gtk_drag_source_set_by_type (GTK_WIDGET (preview), GDK_BUTTON1_MASK | GDK_BUTTON2_MASK, - type, + G_TYPE_FROM_INSTANCE (preview->viewable), GDK_ACTION_COPY); gimp_dnd_viewable_source_set (GTK_WIDGET (preview), - type, + G_TYPE_FROM_INSTANCE (preview->viewable), gimp_preview_drag_viewable, NULL); } @@ -846,7 +837,8 @@ gimp_preview_popup_timeout (GimpPreview *preview) x = (x + popup_width > scr_width) ? scr_width - popup_width : x; y = (y + popup_height > scr_height) ? scr_height - popup_height : y; - gtk_widget_popup (window, x, y); + gtk_widget_set_uposition (window, x, y); + gtk_widget_show (window); gtk_object_set_data_full (GTK_OBJECT (preview), "preview_popup_window", window, (GtkDestroyNotify) gtk_widget_destroy); diff --git a/app/widgets/gimppreviewrenderer.h b/app/widgets/gimppreviewrenderer.h index 0265a33ad9..9395bb1dac 100644 --- a/app/widgets/gimppreviewrenderer.h +++ b/app/widgets/gimppreviewrenderer.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_PREVIEW (gimp_preview_get_type ()) -#define GIMP_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PREVIEW, GimpPreview)) -#define GIMP_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, GimpPreviewClass)) -#define GIMP_IS_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_PREVIEW)) -#define GIMP_IS_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW)) +#define GIMP_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PREVIEW, GimpPreview)) +#define GIMP_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, GimpPreviewClass)) +#define GIMP_IS_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_PREVIEW)) +#define GIMP_IS_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW)) typedef struct _GimpPreviewClass GimpPreviewClass; diff --git a/app/widgets/gimppreviewrendererbrush.h b/app/widgets/gimppreviewrendererbrush.h index 7207f724f4..0121548743 100644 --- a/app/widgets/gimppreviewrendererbrush.h +++ b/app/widgets/gimppreviewrendererbrush.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_BRUSH_PREVIEW (gimp_brush_preview_get_type ()) -#define GIMP_BRUSH_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreview)) -#define GIMP_BRUSH_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreviewClass)) -#define GIMP_IS_BRUSH_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_BRUSH_PREVIEW)) -#define GIMP_IS_BRUSH_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_PREVIEW)) +#define GIMP_BRUSH_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreview)) +#define GIMP_BRUSH_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreviewClass)) +#define GIMP_IS_BRUSH_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_BRUSH_PREVIEW)) +#define GIMP_IS_BRUSH_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_PREVIEW)) typedef struct _GimpBrushPreviewClass GimpBrushPreviewClass; diff --git a/app/widgets/gimppreviewrendererdrawable.h b/app/widgets/gimppreviewrendererdrawable.h index 9a3e7e8b0f..22f6d0796b 100644 --- a/app/widgets/gimppreviewrendererdrawable.h +++ b/app/widgets/gimppreviewrendererdrawable.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_DRAWABLE_PREVIEW (gimp_drawable_preview_get_type ()) -#define GIMP_DRAWABLE_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreview)) -#define GIMP_DRAWABLE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreviewClass)) -#define GIMP_IS_DRAWABLE_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_DRAWABLE_PREVIEW)) -#define GIMP_IS_DRAWABLE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_PREVIEW)) +#define GIMP_DRAWABLE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreview)) +#define GIMP_DRAWABLE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreviewClass)) +#define GIMP_IS_DRAWABLE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_DRAWABLE_PREVIEW)) +#define GIMP_IS_DRAWABLE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_PREVIEW)) typedef struct _GimpDrawablePreviewClass GimpDrawablePreviewClass; diff --git a/app/widgets/gimppreviewrendererimage.h b/app/widgets/gimppreviewrendererimage.h index aa6202be0b..aebe3b11b1 100644 --- a/app/widgets/gimppreviewrendererimage.h +++ b/app/widgets/gimppreviewrendererimage.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_IMAGE_PREVIEW (gimp_image_preview_get_type ()) -#define GIMP_IMAGE_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreview)) -#define GIMP_IMAGE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreviewClass)) -#define GIMP_IS_IMAGE_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE_PREVIEW)) -#define GIMP_IS_IMAGE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_PREVIEW)) +#define GIMP_IMAGE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreview)) +#define GIMP_IMAGE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreviewClass)) +#define GIMP_IS_IMAGE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE_PREVIEW)) +#define GIMP_IS_IMAGE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_PREVIEW)) typedef struct _GimpImagePreviewClass GimpImagePreviewClass; diff --git a/app/widgets/gimptoolbox.c b/app/widgets/gimptoolbox.c index 2697953a80..66ecc341db 100644 --- a/app/widgets/gimptoolbox.c +++ b/app/widgets/gimptoolbox.c @@ -362,9 +362,9 @@ toolbox_create (void) * device would change to that and not change back. So we check * manually that all devices have a cursor, before establishing the check. */ - for (list = gdk_input_list_devices (); list; list = g_list_next (list)) + for (list = gdk_devices_list (); list; list = g_list_next (list)) { - if (! ((GdkDeviceInfo *) (list->data))->has_cursor) + if (! ((GdkDevice *) (list->data))->has_cursor) break; } @@ -401,7 +401,6 @@ toolbox_create (void) gtk_wrap_box_set_line_justify (GTK_WRAP_BOX (wbox), GTK_JUSTIFY_LEFT); /* magic number to set a default 5x5 layout */ gtk_wrap_box_set_aspect_ratio (GTK_WRAP_BOX (wbox), 5.0 / 5.9); - gtk_container_set_border_width (GTK_CONTAINER (wbox), 0); gtk_box_pack_start (GTK_BOX (main_vbox), wbox, TRUE, TRUE, 0); gtk_widget_show (wbox); @@ -456,17 +455,13 @@ toolbox_style_set_callback (GtkWidget *window, { GdkGeometry geometry; GtkStyle *style; - gint xthickness; - gint ythickness; style = gtk_widget_get_style (window); - xthickness = ((GtkStyleClass *) style->klass)->xthickness; - ythickness = ((GtkStyleClass *) style->klass)->ythickness; - - geometry.min_width = 2 + 24 + 2 * xthickness; - geometry.min_height = 80 + 24 + 2 * ythickness; - geometry.width_inc = 24 + 2 * xthickness; - geometry.height_inc = 24 + 2 * ythickness; + + geometry.min_width = 2 + 26 + 2 * style->xthickness; + geometry.min_height = 80 + 26 + 2 * style->ythickness; + geometry.width_inc = 26 + 2 * style->xthickness; + geometry.height_inc = 26 + 2 * style->ythickness; gtk_window_set_geometry_hints (GTK_WINDOW (window), NULL, diff --git a/app/widgets/gimptoolinfopreview.h b/app/widgets/gimptoolinfopreview.h index 1ce0831b8c..b44d19c8bf 100644 --- a/app/widgets/gimptoolinfopreview.h +++ b/app/widgets/gimptoolinfopreview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_TOOL_INFO_PREVIEW (gimp_tool_info_preview_get_type ()) -#define GIMP_TOOL_INFO_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_TOOL_INFO_PREVIEW, GimpToolInfoPreview)) -#define GIMP_TOOL_INFO_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TOOL_INFO_PREVIEW, GimpToolInfoPreviewClass)) -#define GIMP_IS_TOOL_INFO_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_TOOL_INFO_PREVIEW)) -#define GIMP_IS_TOOL_INFO_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TOOL_INFO_PREVIEW)) +#define GIMP_TOOL_INFO_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_TOOL_INFO_PREVIEW, GimpToolInfoPreview)) +#define GIMP_TOOL_INFO_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_TOOL_INFO_PREVIEW, GimpToolInfoPreviewClass)) +#define GIMP_IS_TOOL_INFO_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_TOOL_INFO_PREVIEW)) +#define GIMP_IS_TOOL_INFO_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_TOOL_INFO_PREVIEW)) typedef struct _GimpToolInfoPreviewClass GimpToolInfoPreviewClass; diff --git a/app/widgets/gimptooloptionseditor.c b/app/widgets/gimptooloptionseditor.c index 11d9e78543..2b4e34f061 100644 --- a/app/widgets/gimptooloptionseditor.c +++ b/app/widgets/gimptooloptionseditor.c @@ -295,7 +295,7 @@ tool_options_dialog_reset_callback (GtkWidget *widget, { g_warning ("%s(): no tool info registered for %s", G_GNUC_FUNCTION, - gtk_type_name (GTK_OBJECT (active_tool)->klass->type)); + g_type_name (G_TYPE_FROM_INSTANCE (active_tool))); } if (tool_info->tool_options->reset_func) diff --git a/app/widgets/gimpview.c b/app/widgets/gimpview.c index 98b1f4a482..5ef4584671 100644 --- a/app/widgets/gimpview.c +++ b/app/widgets/gimpview.c @@ -158,85 +158,83 @@ gimp_preview_class_init (GimpPreviewClass *klass) object_class = (GtkObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_PREVIEW); + parent_class = g_type_class_peek_parent (klass); preview_signals[CLICKED] = - gtk_signal_new ("clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - clicked), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, clicked), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[DOUBLE_CLICKED] = - gtk_signal_new ("double_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - double_clicked), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("double_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, double_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[EXTENDED_CLICKED] = - gtk_signal_new ("extended_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - extended_clicked), - gtk_marshal_NONE__UINT, - GTK_TYPE_NONE, 1, - GTK_TYPE_UINT); + g_signal_new ("extended_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, extended_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__UINT, + G_TYPE_NONE, 1, + G_TYPE_UINT); preview_signals[CONTEXT] = - gtk_signal_new ("context", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - context), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("context", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, context), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[RENDER] = - gtk_signal_new ("render", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - render), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("render", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, render), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[GET_SIZE] = - gtk_signal_new ("get_size", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - get_size), - gimp_marshal_NONE__INT_POINTER_POINTER, - GTK_TYPE_NONE, 3, - GTK_TYPE_INT, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("get_size", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, get_size), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_POINTER_POINTER, + G_TYPE_NONE, 3, + G_TYPE_INT, + G_TYPE_POINTER, + G_TYPE_POINTER); preview_signals[NEEDS_POPUP] = - gtk_signal_new ("needs_popup", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - needs_popup), - gtk_marshal_BOOL__NONE, - GTK_TYPE_BOOL, 0); + g_signal_new ("needs_popup", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, needs_popup), + NULL, NULL, + gimp_cclosure_marshal_BOOLEAN__VOID, + G_TYPE_BOOLEAN, 0); preview_signals[CREATE_POPUP] = - gtk_signal_new ("create_popup", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - create_popup), - gimp_marshal_POINTER__NONE, - GTK_TYPE_POINTER, 0); - - gtk_object_class_add_signals (object_class, preview_signals, LAST_SIGNAL); + g_signal_new ("create_popup", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, create_popup), + NULL, NULL, + gimp_cclosure_marshal_POINTER__VOID, + G_TYPE_POINTER, 0); object_class->destroy = gimp_preview_destroy; @@ -418,12 +416,9 @@ gimp_preview_set_viewable (GimpPreview *preview, { if (! preview->is_popup) { - GtkType type; - - type = GTK_OBJECT (preview->viewable)->klass->type; - gtk_drag_source_unset (GTK_WIDGET (preview)); - gimp_dnd_viewable_source_unset (GTK_WIDGET (preview), type); + gimp_dnd_viewable_source_unset (GTK_WIDGET (preview), + G_TYPE_FROM_INSTANCE (preview->viewable)); } gtk_signal_disconnect_by_func (GTK_OBJECT (preview->viewable), @@ -446,16 +441,12 @@ gimp_preview_set_viewable (GimpPreview *preview, { if (! preview->is_popup) { - GtkType type; - - type = GTK_OBJECT (preview->viewable)->klass->type; - gimp_gtk_drag_source_set_by_type (GTK_WIDGET (preview), GDK_BUTTON1_MASK | GDK_BUTTON2_MASK, - type, + G_TYPE_FROM_INSTANCE (preview->viewable), GDK_ACTION_COPY); gimp_dnd_viewable_source_set (GTK_WIDGET (preview), - type, + G_TYPE_FROM_INSTANCE (preview->viewable), gimp_preview_drag_viewable, NULL); } @@ -846,7 +837,8 @@ gimp_preview_popup_timeout (GimpPreview *preview) x = (x + popup_width > scr_width) ? scr_width - popup_width : x; y = (y + popup_height > scr_height) ? scr_height - popup_height : y; - gtk_widget_popup (window, x, y); + gtk_widget_set_uposition (window, x, y); + gtk_widget_show (window); gtk_object_set_data_full (GTK_OBJECT (preview), "preview_popup_window", window, (GtkDestroyNotify) gtk_widget_destroy); diff --git a/app/widgets/gimpview.h b/app/widgets/gimpview.h index 0265a33ad9..9395bb1dac 100644 --- a/app/widgets/gimpview.h +++ b/app/widgets/gimpview.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_PREVIEW (gimp_preview_get_type ()) -#define GIMP_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PREVIEW, GimpPreview)) -#define GIMP_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, GimpPreviewClass)) -#define GIMP_IS_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_PREVIEW)) -#define GIMP_IS_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW)) +#define GIMP_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PREVIEW, GimpPreview)) +#define GIMP_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, GimpPreviewClass)) +#define GIMP_IS_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_PREVIEW)) +#define GIMP_IS_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW)) typedef struct _GimpPreviewClass GimpPreviewClass; diff --git a/app/widgets/gimpviewrenderer.c b/app/widgets/gimpviewrenderer.c index 98b1f4a482..5ef4584671 100644 --- a/app/widgets/gimpviewrenderer.c +++ b/app/widgets/gimpviewrenderer.c @@ -158,85 +158,83 @@ gimp_preview_class_init (GimpPreviewClass *klass) object_class = (GtkObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_PREVIEW); + parent_class = g_type_class_peek_parent (klass); preview_signals[CLICKED] = - gtk_signal_new ("clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - clicked), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, clicked), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[DOUBLE_CLICKED] = - gtk_signal_new ("double_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - double_clicked), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("double_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, double_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[EXTENDED_CLICKED] = - gtk_signal_new ("extended_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - extended_clicked), - gtk_marshal_NONE__UINT, - GTK_TYPE_NONE, 1, - GTK_TYPE_UINT); + g_signal_new ("extended_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, extended_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__UINT, + G_TYPE_NONE, 1, + G_TYPE_UINT); preview_signals[CONTEXT] = - gtk_signal_new ("context", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - context), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("context", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPreviewClass, context), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[RENDER] = - gtk_signal_new ("render", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - render), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, 0); + g_signal_new ("render", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, render), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); preview_signals[GET_SIZE] = - gtk_signal_new ("get_size", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - get_size), - gimp_marshal_NONE__INT_POINTER_POINTER, - GTK_TYPE_NONE, 3, - GTK_TYPE_INT, - GTK_TYPE_POINTER, - GTK_TYPE_POINTER); + g_signal_new ("get_size", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, get_size), + NULL, NULL, + gimp_cclosure_marshal_VOID__INT_POINTER_POINTER, + G_TYPE_NONE, 3, + G_TYPE_INT, + G_TYPE_POINTER, + G_TYPE_POINTER); preview_signals[NEEDS_POPUP] = - gtk_signal_new ("needs_popup", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - needs_popup), - gtk_marshal_BOOL__NONE, - GTK_TYPE_BOOL, 0); + g_signal_new ("needs_popup", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, needs_popup), + NULL, NULL, + gimp_cclosure_marshal_BOOLEAN__VOID, + G_TYPE_BOOLEAN, 0); preview_signals[CREATE_POPUP] = - gtk_signal_new ("create_popup", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPreviewClass, - create_popup), - gimp_marshal_POINTER__NONE, - GTK_TYPE_POINTER, 0); - - gtk_object_class_add_signals (object_class, preview_signals, LAST_SIGNAL); + g_signal_new ("create_popup", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GimpPreviewClass, create_popup), + NULL, NULL, + gimp_cclosure_marshal_POINTER__VOID, + G_TYPE_POINTER, 0); object_class->destroy = gimp_preview_destroy; @@ -418,12 +416,9 @@ gimp_preview_set_viewable (GimpPreview *preview, { if (! preview->is_popup) { - GtkType type; - - type = GTK_OBJECT (preview->viewable)->klass->type; - gtk_drag_source_unset (GTK_WIDGET (preview)); - gimp_dnd_viewable_source_unset (GTK_WIDGET (preview), type); + gimp_dnd_viewable_source_unset (GTK_WIDGET (preview), + G_TYPE_FROM_INSTANCE (preview->viewable)); } gtk_signal_disconnect_by_func (GTK_OBJECT (preview->viewable), @@ -446,16 +441,12 @@ gimp_preview_set_viewable (GimpPreview *preview, { if (! preview->is_popup) { - GtkType type; - - type = GTK_OBJECT (preview->viewable)->klass->type; - gimp_gtk_drag_source_set_by_type (GTK_WIDGET (preview), GDK_BUTTON1_MASK | GDK_BUTTON2_MASK, - type, + G_TYPE_FROM_INSTANCE (preview->viewable), GDK_ACTION_COPY); gimp_dnd_viewable_source_set (GTK_WIDGET (preview), - type, + G_TYPE_FROM_INSTANCE (preview->viewable), gimp_preview_drag_viewable, NULL); } @@ -846,7 +837,8 @@ gimp_preview_popup_timeout (GimpPreview *preview) x = (x + popup_width > scr_width) ? scr_width - popup_width : x; y = (y + popup_height > scr_height) ? scr_height - popup_height : y; - gtk_widget_popup (window, x, y); + gtk_widget_set_uposition (window, x, y); + gtk_widget_show (window); gtk_object_set_data_full (GTK_OBJECT (preview), "preview_popup_window", window, (GtkDestroyNotify) gtk_widget_destroy); diff --git a/app/widgets/gimpviewrenderer.h b/app/widgets/gimpviewrenderer.h index 0265a33ad9..9395bb1dac 100644 --- a/app/widgets/gimpviewrenderer.h +++ b/app/widgets/gimpviewrenderer.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_PREVIEW (gimp_preview_get_type ()) -#define GIMP_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PREVIEW, GimpPreview)) -#define GIMP_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, GimpPreviewClass)) -#define GIMP_IS_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_PREVIEW)) -#define GIMP_IS_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW)) +#define GIMP_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PREVIEW, GimpPreview)) +#define GIMP_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PREVIEW, GimpPreviewClass)) +#define GIMP_IS_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_PREVIEW)) +#define GIMP_IS_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PREVIEW)) typedef struct _GimpPreviewClass GimpPreviewClass; diff --git a/app/widgets/gimpviewrendererbrush.h b/app/widgets/gimpviewrendererbrush.h index 7207f724f4..0121548743 100644 --- a/app/widgets/gimpviewrendererbrush.h +++ b/app/widgets/gimpviewrendererbrush.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_BRUSH_PREVIEW (gimp_brush_preview_get_type ()) -#define GIMP_BRUSH_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreview)) -#define GIMP_BRUSH_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreviewClass)) -#define GIMP_IS_BRUSH_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_BRUSH_PREVIEW)) -#define GIMP_IS_BRUSH_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_PREVIEW)) +#define GIMP_BRUSH_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreview)) +#define GIMP_BRUSH_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BRUSH_PREVIEW, GimpBrushPreviewClass)) +#define GIMP_IS_BRUSH_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_BRUSH_PREVIEW)) +#define GIMP_IS_BRUSH_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BRUSH_PREVIEW)) typedef struct _GimpBrushPreviewClass GimpBrushPreviewClass; diff --git a/app/widgets/gimpviewrendererdrawable.h b/app/widgets/gimpviewrendererdrawable.h index 9a3e7e8b0f..22f6d0796b 100644 --- a/app/widgets/gimpviewrendererdrawable.h +++ b/app/widgets/gimpviewrendererdrawable.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_DRAWABLE_PREVIEW (gimp_drawable_preview_get_type ()) -#define GIMP_DRAWABLE_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreview)) -#define GIMP_DRAWABLE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreviewClass)) -#define GIMP_IS_DRAWABLE_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_DRAWABLE_PREVIEW)) -#define GIMP_IS_DRAWABLE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_PREVIEW)) +#define GIMP_DRAWABLE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreview)) +#define GIMP_DRAWABLE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DRAWABLE_PREVIEW, GimpDrawablePreviewClass)) +#define GIMP_IS_DRAWABLE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_DRAWABLE_PREVIEW)) +#define GIMP_IS_DRAWABLE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DRAWABLE_PREVIEW)) typedef struct _GimpDrawablePreviewClass GimpDrawablePreviewClass; diff --git a/app/widgets/gimpviewrendererimage.h b/app/widgets/gimpviewrendererimage.h index aa6202be0b..aebe3b11b1 100644 --- a/app/widgets/gimpviewrendererimage.h +++ b/app/widgets/gimpviewrendererimage.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_IMAGE_PREVIEW (gimp_image_preview_get_type ()) -#define GIMP_IMAGE_PREVIEW(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreview)) -#define GIMP_IMAGE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreviewClass)) -#define GIMP_IS_IMAGE_PREVIEW(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_IMAGE_PREVIEW)) -#define GIMP_IS_IMAGE_PREVIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_PREVIEW)) +#define GIMP_IMAGE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreview)) +#define GIMP_IMAGE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE_PREVIEW, GimpImagePreviewClass)) +#define GIMP_IS_IMAGE_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_IMAGE_PREVIEW)) +#define GIMP_IS_IMAGE_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_IMAGE_PREVIEW)) typedef struct _GimpImagePreviewClass GimpImagePreviewClass; diff --git a/app/widgets/gtkhwrapbox.h b/app/widgets/gtkhwrapbox.h index b6d9fd99c0..0afea9d45a 100644 --- a/app/widgets/gtkhwrapbox.h +++ b/app/widgets/gtkhwrapbox.h @@ -33,10 +33,10 @@ extern "C" { /* --- type macros --- */ #define GTK_TYPE_HWRAP_BOX (gtk_hwrap_box_get_type ()) -#define GTK_HWRAP_BOX(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_HWRAP_BOX, GtkHWrapBox)) -#define GTK_HWRAP_BOX_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_HWRAP_BOX, GtkHWrapBoxClass)) -#define GTK_IS_HWRAP_BOX(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_HWRAP_BOX)) -#define GTK_IS_HWRAP_BOX_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_HWRAP_BOX)) +#define GTK_HWRAP_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_HWRAP_BOX, GtkHWrapBox)) +#define GTK_HWRAP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_HWRAP_BOX, GtkHWrapBoxClass)) +#define GTK_IS_HWRAP_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_HWRAP_BOX)) +#define GTK_IS_HWRAP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_HWRAP_BOX)) #define GTK_HWRAP_BOX_GET_CLASS(obj) (GTK_HWRAP_BOX_CLASS (((GtkObject*) (obj))->klass)) diff --git a/app/widgets/gtkvwrapbox.h b/app/widgets/gtkvwrapbox.h index 83b0a95f70..0b626e1a17 100644 --- a/app/widgets/gtkvwrapbox.h +++ b/app/widgets/gtkvwrapbox.h @@ -33,10 +33,10 @@ extern "C" { /* --- type macros --- */ #define GTK_TYPE_VWRAP_BOX (gtk_vwrap_box_get_type ()) -#define GTK_VWRAP_BOX(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_VWRAP_BOX, GtkVWrapBox)) -#define GTK_VWRAP_BOX_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_VWRAP_BOX, GtkVWrapBoxClass)) -#define GTK_IS_VWRAP_BOX(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_VWRAP_BOX)) -#define GTK_IS_VWRAP_BOX_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_VWRAP_BOX)) +#define GTK_VWRAP_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_VWRAP_BOX, GtkVWrapBox)) +#define GTK_VWRAP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_VWRAP_BOX, GtkVWrapBoxClass)) +#define GTK_IS_VWRAP_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_VWRAP_BOX)) +#define GTK_IS_VWRAP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_VWRAP_BOX)) #define GTK_VWRAP_BOX_GET_CLASS(obj) (GTK_VWRAP_BOX_CLASS (((GtkObject*) (obj))->klass)) diff --git a/app/widgets/gtkwrapbox.c b/app/widgets/gtkwrapbox.c index 90da770add..46586c0c6a 100644 --- a/app/widgets/gtkwrapbox.c +++ b/app/widgets/gtkwrapbox.c @@ -37,48 +37,48 @@ enum { ARG_CHILD_LIMIT }; enum { - CHILD_ARG_0, - CHILD_ARG_POSITION, - CHILD_ARG_HEXPAND, - CHILD_ARG_HFILL, - CHILD_ARG_VEXPAND, - CHILD_ARG_VFILL, - CHILD_ARG_FORCED_BREAK + CHILD_PROP_0, + CHILD_PROP_POSITION, + CHILD_PROP_HEXPAND, + CHILD_PROP_HFILL, + CHILD_PROP_VEXPAND, + CHILD_PROP_VFILL, + CHILD_PROP_FORCED_BREAK }; /* --- prototypes --- */ -static void gtk_wrap_box_class_init (GtkWrapBoxClass *klass); -static void gtk_wrap_box_init (GtkWrapBox *wbox); -static void gtk_wrap_box_get_arg (GtkObject *object, - GtkArg *arg, - guint arg_id); -static void gtk_wrap_box_set_arg (GtkObject *object, - GtkArg *arg, - guint arg_id); -static void gtk_wrap_box_set_child_arg (GtkContainer *container, - GtkWidget *child, - GtkArg *arg, - guint arg_id); -static void gtk_wrap_box_get_child_arg (GtkContainer *container, - GtkWidget *child, - GtkArg *arg, - guint arg_id); -static void gtk_wrap_box_map (GtkWidget *widget); -static void gtk_wrap_box_unmap (GtkWidget *widget); -static void gtk_wrap_box_draw (GtkWidget *widget, - GdkRectangle *area); -static gint gtk_wrap_box_expose (GtkWidget *widget, - GdkEventExpose *event); -static void gtk_wrap_box_add (GtkContainer *container, - GtkWidget *widget); -static void gtk_wrap_box_remove (GtkContainer *container, - GtkWidget *widget); -static void gtk_wrap_box_forall (GtkContainer *container, - gboolean include_internals, - GtkCallback callback, - gpointer callback_data); -static GtkType gtk_wrap_box_child_type (GtkContainer *container); +static void gtk_wrap_box_class_init (GtkWrapBoxClass *klass); +static void gtk_wrap_box_init (GtkWrapBox *wbox); +static void gtk_wrap_box_get_arg (GtkObject *object, + GtkArg *arg, + guint arg_id); +static void gtk_wrap_box_set_arg (GtkObject *object, + GtkArg *arg, + guint arg_id); +static void gtk_wrap_box_set_child_property (GtkContainer *container, + GtkWidget *child, + guint property_id, + const GValue *value, + GParamSpec *pspec); +static void gtk_wrap_box_get_child_property (GtkContainer *container, + GtkWidget *child, + guint property_id, + GValue *value, + GParamSpec *pspec); +static void gtk_wrap_box_map (GtkWidget *widget); +static void gtk_wrap_box_unmap (GtkWidget *widget); +static gint gtk_wrap_box_expose (GtkWidget *widget, + GdkEventExpose *event); +static void gtk_wrap_box_add (GtkContainer *container, + GtkWidget *widget); +static void gtk_wrap_box_remove (GtkContainer *container, + GtkWidget *widget); +static void gtk_wrap_box_forall (GtkContainer *container, + gboolean include_internals, + GtkCallback callback, + gpointer callback_data); +static GtkType gtk_wrap_box_child_type (GtkContainer *container); /* --- variables --- */ @@ -129,15 +129,14 @@ gtk_wrap_box_class_init (GtkWrapBoxClass *class) widget_class->map = gtk_wrap_box_map; widget_class->unmap = gtk_wrap_box_unmap; - widget_class->draw = gtk_wrap_box_draw; widget_class->expose_event = gtk_wrap_box_expose; container_class->add = gtk_wrap_box_add; container_class->remove = gtk_wrap_box_remove; container_class->forall = gtk_wrap_box_forall; container_class->child_type = gtk_wrap_box_child_type; - container_class->set_child_arg = gtk_wrap_box_set_child_arg; - container_class->get_child_arg = gtk_wrap_box_get_child_arg; + container_class->set_child_property = gtk_wrap_box_set_child_property; + container_class->get_child_property = gtk_wrap_box_get_child_property; class->rlist_line_children = NULL; @@ -157,18 +156,43 @@ gtk_wrap_box_class_init (GtkWrapBoxClass *class) GTK_TYPE_FLOAT, GTK_ARG_READABLE, ARG_CURRENT_RATIO); gtk_object_add_arg_type ("GtkWrapBox::max_children_per_line", GTK_TYPE_UINT, GTK_ARG_READWRITE, ARG_CHILD_LIMIT); - gtk_container_add_child_arg_type ("GtkWrapBox::position", - GTK_TYPE_INT, GTK_ARG_READWRITE, CHILD_ARG_POSITION); - gtk_container_add_child_arg_type ("GtkWrapBox::hexpand", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, CHILD_ARG_HEXPAND); - gtk_container_add_child_arg_type ("GtkWrapBox::hfill", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, CHILD_ARG_HFILL); - gtk_container_add_child_arg_type ("GtkWrapBox::vexpand", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, CHILD_ARG_VEXPAND); - gtk_container_add_child_arg_type ("GtkWrapBox::vfill", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, CHILD_ARG_VFILL); - gtk_container_add_child_arg_type ("GtkWrapBox::forcebreak", - GTK_TYPE_BOOL, GTK_ARG_READWRITE, CHILD_ARG_FORCED_BREAK); + + gtk_container_class_install_child_property (container_class, + CHILD_PROP_POSITION, + g_param_spec_int ("position", + NULL, NULL, + -1, G_MAXINT, 0, + G_PARAM_READWRITE)); + gtk_container_class_install_child_property (container_class, + CHILD_PROP_HEXPAND, + g_param_spec_boolean ("hexpand", + NULL, NULL, + FALSE, + G_PARAM_READWRITE)); + gtk_container_class_install_child_property (container_class, + CHILD_PROP_HFILL, + g_param_spec_boolean ("hfill", + NULL, NULL, + TRUE, + G_PARAM_READWRITE)); + gtk_container_class_install_child_property (container_class, + CHILD_PROP_VEXPAND, + g_param_spec_boolean ("vexpand", + NULL, NULL, + FALSE, + G_PARAM_READWRITE)); + gtk_container_class_install_child_property (container_class, + CHILD_PROP_VFILL, + g_param_spec_boolean ("vfill", + NULL, NULL, + TRUE, + G_PARAM_READWRITE)); + gtk_container_class_install_child_property (container_class, + CHILD_PROP_FORCED_BREAK, + g_param_spec_boolean ("forcebreak", + NULL, NULL, + FALSE, + G_PARAM_READWRITE)); } static void @@ -266,91 +290,94 @@ gtk_wrap_box_get_arg (GtkObject *object, } static void -gtk_wrap_box_set_child_arg (GtkContainer *container, - GtkWidget *child, - GtkArg *arg, - guint arg_id) +gtk_wrap_box_set_child_property (GtkContainer *container, + GtkWidget *child, + guint property_id, + const GValue *value, + GParamSpec *pspec) { GtkWrapBox *wbox = GTK_WRAP_BOX (container); gboolean hexpand = FALSE, hfill = FALSE, vexpand = FALSE, vfill = FALSE; - if (arg_id != CHILD_ARG_POSITION) + if (property_id != CHILD_PROP_POSITION) gtk_wrap_box_query_child_packing (wbox, child, &hexpand, &hfill, &vexpand, &vfill); - - switch (arg_id) + + switch (property_id) { - case CHILD_ARG_POSITION: - gtk_wrap_box_reorder_child (wbox, child, GTK_VALUE_INT (*arg)); + case CHILD_PROP_POSITION: + gtk_wrap_box_reorder_child (wbox, child, g_value_get_int (value)); break; - case CHILD_ARG_HEXPAND: + case CHILD_PROP_HEXPAND: gtk_wrap_box_set_child_packing (wbox, child, - GTK_VALUE_BOOL (*arg), hfill, + g_value_get_boolean (value), hfill, vexpand, vfill); break; - case CHILD_ARG_HFILL: + case CHILD_PROP_HFILL: gtk_wrap_box_set_child_packing (wbox, child, - hexpand, GTK_VALUE_BOOL (*arg), + hexpand, g_value_get_boolean (value), vexpand, vfill); break; - case CHILD_ARG_VEXPAND: + case CHILD_PROP_VEXPAND: gtk_wrap_box_set_child_packing (wbox, child, hexpand, hfill, - GTK_VALUE_BOOL (*arg), vfill); + g_value_get_boolean (value), vfill); break; - case CHILD_ARG_VFILL: + case CHILD_PROP_VFILL: gtk_wrap_box_set_child_packing (wbox, child, hexpand, hfill, - vexpand, GTK_VALUE_BOOL (*arg)); + vexpand, g_value_get_boolean (value)); break; - case CHILD_ARG_FORCED_BREAK: + case CHILD_PROP_FORCED_BREAK: gtk_wrap_box_set_child_forced_break (wbox, child, - GTK_VALUE_BOOL (*arg)); + g_value_get_boolean (value)); break; default: + GTK_CONTAINER_WARN_INVALID_CHILD_PROPERTY_ID (container, property_id, pspec); break; } } static void -gtk_wrap_box_get_child_arg (GtkContainer *container, - GtkWidget *child, - GtkArg *arg, - guint arg_id) +gtk_wrap_box_get_child_property (GtkContainer *container, + GtkWidget *child, + guint property_id, + GValue *value, + GParamSpec *pspec) { GtkWrapBox *wbox = GTK_WRAP_BOX (container); gboolean hexpand = FALSE, hfill = FALSE, vexpand = FALSE, vfill = FALSE; - if (arg_id != CHILD_ARG_POSITION) + if (property_id != CHILD_PROP_POSITION) gtk_wrap_box_query_child_packing (wbox, child, &hexpand, &hfill, &vexpand, &vfill); - switch (arg_id) + switch (property_id) { GtkWrapBoxChild *child_info; - case CHILD_ARG_POSITION: - GTK_VALUE_INT (*arg) = 0; + gint i; + case CHILD_PROP_POSITION: + i = 0; for (child_info = wbox->children; child_info; child_info = child_info->next) { if (child_info->widget == child) break; - GTK_VALUE_INT (*arg)++; + i++; } - if (!child_info) - GTK_VALUE_INT (*arg) = -1; + g_value_set_int (value, child_info ? i : -1); break; - case CHILD_ARG_HEXPAND: - GTK_VALUE_BOOL (*arg) = hexpand; + case CHILD_PROP_HEXPAND: + g_value_set_boolean (value, hexpand); break; - case CHILD_ARG_HFILL: - GTK_VALUE_BOOL (*arg) = hfill; + case CHILD_PROP_HFILL: + g_value_set_boolean (value, hfill); break; - case CHILD_ARG_VEXPAND: - GTK_VALUE_BOOL (*arg) = vexpand; + case CHILD_PROP_VEXPAND: + g_value_set_boolean (value, vexpand); break; - case CHILD_ARG_VFILL: - GTK_VALUE_BOOL (*arg) = vfill; + case CHILD_PROP_VFILL: + g_value_set_boolean (value, vfill); break; default: - arg->type = GTK_TYPE_INVALID; + GTK_CONTAINER_WARN_INVALID_CHILD_PROPERTY_ID (container, property_id, pspec); break; } } @@ -732,37 +759,24 @@ gtk_wrap_box_unmap (GtkWidget *widget) gtk_widget_unmap (child->widget); } -static void -gtk_wrap_box_draw (GtkWidget *widget, - GdkRectangle *area) -{ - GtkWrapBox *wbox = GTK_WRAP_BOX (widget); - GtkWrapBoxChild *child; - GdkRectangle child_area; - - if (GTK_WIDGET_DRAWABLE (widget)) - for (child = wbox->children; child; child = child->next) - if (GTK_WIDGET_DRAWABLE (child->widget) && - gtk_widget_intersect (child->widget, area, &child_area)) - gtk_widget_draw (child->widget, &child_area); -} - static gint gtk_wrap_box_expose (GtkWidget *widget, GdkEventExpose *event) { - GtkWrapBox *wbox = GTK_WRAP_BOX (widget); + GtkWrapBox *wbox = GTK_WRAP_BOX (widget); GtkWrapBoxChild *child; - GdkEventExpose child_event = *event; g_return_val_if_fail (event != NULL, FALSE); if (GTK_WIDGET_DRAWABLE (widget)) - for (child = wbox->children; child; child = child->next) - if (GTK_WIDGET_DRAWABLE (child->widget) && - GTK_WIDGET_NO_WINDOW (child->widget) && - gtk_widget_intersect (child->widget, &event->area, &child_event.area)) - gtk_widget_event (child->widget, (GdkEvent*) &child_event); + { + for (child = wbox->children; child; child = child->next) + { + gtk_container_propagate_expose (GTK_CONTAINER (widget), + child->widget, + event); + } + } return TRUE; } diff --git a/app/widgets/gtkwrapbox.h b/app/widgets/gtkwrapbox.h index 6b2266b83c..6beb278150 100644 --- a/app/widgets/gtkwrapbox.h +++ b/app/widgets/gtkwrapbox.h @@ -34,11 +34,11 @@ extern "C" { /* --- type macros --- */ #define GTK_TYPE_WRAP_BOX (gtk_wrap_box_get_type ()) -#define GTK_WRAP_BOX(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_WRAP_BOX, GtkWrapBox)) -#define GTK_WRAP_BOX_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_WRAP_BOX, GtkWrapBoxClass)) -#define GTK_IS_WRAP_BOX(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_WRAP_BOX)) -#define GTK_IS_WRAP_BOX_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_WRAP_BOX)) -#define GTK_WRAP_BOX_GET_CLASS(obj) (GTK_WRAP_BOX_CLASS (((GtkObject*) (obj))->klass)) +#define GTK_WRAP_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_WRAP_BOX, GtkWrapBox)) +#define GTK_WRAP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_WRAP_BOX, GtkWrapBoxClass)) +#define GTK_IS_WRAP_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_WRAP_BOX)) +#define GTK_IS_WRAP_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_WRAP_BOX)) +#define GTK_WRAP_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_WRAP_BOX, GtkWrapBoxClass)) /* --- typedefs --- */ diff --git a/configure.in b/configure.in index 22e0a9a28b..0decdaaf43 100644 --- a/configure.in +++ b/configure.in @@ -92,17 +92,9 @@ ALL_LINGUAS="ca cs da de en_GB es fi fr ga gl hu hr it ja ko nl no pl pt_BR ro r AM_GNU_GETTEXT dnl Check for GTK+ -AM_PATH_GTK(1.2.8,, +AM_PATH_GTK_2_0(1.3.7,, AC_MSG_ERROR(Test for GTK failed. See the file 'INSTALL' for help.)) -dnl Quick hack to deny non GTK 1.2 -if (expr $gtk_config_major_version \> 1) > /dev/null; then - AC_MSG_ERROR(GIMP does not work with versions of GTK > 1.2) -fi -if (expr $gtk_config_minor_version \> 2) > /dev/null; then - AC_MSG_ERROR(GIMP does not work with versions of GTK > 1.2) -fi - changequote(,)dnl dnl Evil stuff to extract GLIB stuff from gtk-config output @@ -490,45 +482,45 @@ if test "$have_glib_inline" = "no"; then fi dnl This is for the help browser -AC_PATH_PROG(GNOME_CONFIG,gnome-config,no) -if test "$GNOME_CONFIG" = "no"; then - dnl Test for standalone GtkXMHTML widget - HELPBROWSER= - if test -n "$LIBPNG" && test -n "$LIBJPEG" && test -n "$LIBXPM"; then - helpbrowser_save_LIBS=$LIBS - LIBS="$LIBS $LIBPNG $LIBJPEG $LIBXPM" - AC_CHECK_LIB(gtkxmhtml, gtk_xmhtml_new, - GTKXMHTML_CFLAGS=$GTK_CFLAGS - GTKXMHTML_LIBS="-lgtkxmhtml $LIBPNG $LIBJPEG $LIBXPM $GTK_LIBS" - HELPBROWSER=helpbrowser, - AC_MSG_WARN(*** Help browser plug-in will not be built (GtkXMHTML library not found) ***)) - LIBS=$helpbrowser_save_LIBS - else - AC_MSG_WARN(*** Help browser plug-in will not be built (PNG, JPEG or XPM libraries not found) ***) - fi -else - GTKXMHTML_CFLAGS=`$GNOME_CONFIG --cflags gnomeui` - GTKXMHTML_LIBS=`$GNOME_CONFIG --libs gtkxmhtml` - HELPBROWSER=helpbrowser -fi +dnl AC_PATH_PROG(GNOME_CONFIG,gnome-config,no) +dnl if test "$GNOME_CONFIG" = "no"; then +dnl dnl Test for standalone GtkXMHTML widget +dnl HELPBROWSER= +dnl if test -n "$LIBPNG" && test -n "$LIBJPEG" && test -n "$LIBXPM"; then +dnl helpbrowser_save_LIBS=$LIBS +dnl LIBS="$LIBS $LIBPNG $LIBJPEG $LIBXPM" +dnl AC_CHECK_LIB(gtkxmhtml, gtk_xmhtml_new, +dnl GTKXMHTML_CFLAGS=$GTK_CFLAGS +dnl GTKXMHTML_LIBS="-lgtkxmhtml $LIBPNG $LIBJPEG $LIBXPM $GTK_LIBS" +dnl HELPBROWSER=helpbrowser, +dnl AC_MSG_WARN(*** Help browser plug-in will not be built (GtkXMHTML library not found) ***)) +dnl LIBS=$helpbrowser_save_LIBS +dnl else +dnl AC_MSG_WARN(*** Help browser plug-in will not be built (PNG, JPEG or XPM libraries not found) ***) +dnl fi +dnl else +dnl GTKXMHTML_CFLAGS=`$GNOME_CONFIG --cflags gnomeui` +dnl GTKXMHTML_LIBS=`$GNOME_CONFIG --libs gtkxmhtml` +dnl HELPBROWSER=helpbrowser +dnl fi dnl Sanity check to make sure the headers are there too and that gnome-config dnl didn't lie to us -if test -n "$HELPBROWSER"; then - CPPFLAGS="$CPPFLAGS $GTKXMHTML_CFLAGS" - LDFLAGS="$LDFLAGS `echo $GTKXMHTML_LIBS | sed 's/\(.*\)\(-lgtkxmhtml.*\)/\1/'`" - LIBS="$LIBS $GTKXMHTML_LIBS" +dnl if test -n "$HELPBROWSER"; then +dnl CPPFLAGS="$CPPFLAGS $GTKXMHTML_CFLAGS" +dnl LDFLAGS="$LDFLAGS `echo $GTKXMHTML_LIBS | sed 's/\(.*\)\(-lgtkxmhtml.*\)/\1/'`" +dnl LIBS="$LIBS $GTKXMHTML_LIBS" - AC_MSG_CHECKING([to see if we can build with GtkXMHTML]) - AC_TRY_LINK([#include ], [return 0;], - gtkxmhtml_ok=yes, gtkxmhtml_ok=no) - AC_MSG_RESULT($gtkxmhtml_ok) - - if test "$gtkxmhtml_ok" = no; then - AC_MSG_WARN(*** Help browser plug-in will not be built (GtkXMHTML setup busted) ***) - HELPBROWSER= - fi -fi +dnl AC_MSG_CHECKING([to see if we can build with GtkXMHTML]) +dnl AC_TRY_LINK([#include ], [return 0;], +dnl gtkxmhtml_ok=yes, gtkxmhtml_ok=no) +dnl AC_MSG_RESULT($gtkxmhtml_ok) +dnl +dnl if test "$gtkxmhtml_ok" = no; then +dnl AC_MSG_WARN(*** Help browser plug-in will not be built (GtkXMHTML setup busted) ***) +dnl HELPBROWSER= +dnl fi +dnl fi CPPFLAGS="$gimp_save_CPPFLAGS" LDFLAGS="$gimp_save_LDFLAGS" @@ -731,7 +723,7 @@ rm -f confauthorsgen AM_CONDITIONAL(STATICLIBS, test x$enable_static = xyes) -CPPFLAGS="${CPPFLAGS} -DGTK_DISABLE_COMPAT_H" +dnl CPPFLAGS="${CPPFLAGS} -DGTK_DISABLE_COMPAT_H" AC_SUBST(GIMP_MAJOR_VERSION) AC_SUBST(GIMP_MINOR_VERSION) diff --git a/libgimp/gimpbrushmenu.c b/libgimp/gimpbrushmenu.c index 3ce0e9ab00..61b3039504 100644 --- a/libgimp/gimpbrushmenu.c +++ b/libgimp/gimpbrushmenu.c @@ -112,7 +112,8 @@ brush_popup_open (gint x, y = (y + bsel->height > scr_h) ? scr_h - bsel->height : y; gtk_preview_size (GTK_PREVIEW (bsel->device_brushpreview), bsel->width, bsel->height); - gtk_widget_popup (bsel->device_brushpopup, x, y); + gtk_widget_set_uposition (bsel->device_brushpopup, x, y); + gtk_widget_show (bsel->device_brushpopup); /* Draw the brush */ buf = g_new (gchar, bsel->width); diff --git a/libgimp/gimpmenu.c b/libgimp/gimpmenu.c index 0be6404ba8..010493ac2a 100644 --- a/libgimp/gimpmenu.c +++ b/libgimp/gimpmenu.c @@ -136,7 +136,7 @@ gimp_image_menu_new (GimpConstraintFunc constraint, gtk_signal_connect (GTK_OBJECT (menuitem), "activate", (GtkSignalFunc) gimp_menu_callback, &images[i]); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); g_free (label); @@ -151,7 +151,7 @@ gimp_image_menu_new (GimpConstraintFunc constraint, { menuitem = gtk_menu_item_new_with_label ("none"); gtk_widget_set_sensitive (menuitem, FALSE); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); } @@ -244,7 +244,7 @@ gimp_layer_menu_new (GimpConstraintFunc constraint, gtk_box_pack_start (GTK_BOX (hbox), wlabel, TRUE, TRUE, 4); gtk_widget_show (wlabel); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); g_free (label); @@ -268,7 +268,7 @@ gimp_layer_menu_new (GimpConstraintFunc constraint, { menuitem = gtk_menu_item_new_with_label ("none"); gtk_widget_set_sensitive (menuitem, FALSE); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); } @@ -357,7 +357,7 @@ gimp_channel_menu_new (GimpConstraintFunc constraint, gtk_box_pack_start (GTK_BOX (hbox), wlabel, TRUE, TRUE, 4); gtk_widget_show (wlabel); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); g_free (label); @@ -381,7 +381,7 @@ gimp_channel_menu_new (GimpConstraintFunc constraint, { menuitem = gtk_menu_item_new_with_label ("none"); gtk_widget_set_sensitive (menuitem, FALSE); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); } @@ -473,7 +473,7 @@ gimp_drawable_menu_new (GimpConstraintFunc constraint, gtk_box_pack_start (GTK_BOX (hbox), wlabel, TRUE, TRUE, 4); gtk_widget_show (wlabel); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); g_free (label); @@ -537,7 +537,7 @@ gimp_drawable_menu_new (GimpConstraintFunc constraint, gtk_box_pack_start (GTK_BOX (hbox), wlabel, TRUE, TRUE, 4); gtk_widget_show (wlabel); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); g_free (label); @@ -561,7 +561,7 @@ gimp_drawable_menu_new (GimpConstraintFunc constraint, { menuitem = gtk_menu_item_new_with_label ("none"); gtk_widget_set_sensitive (menuitem, FALSE); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_show (menuitem); } diff --git a/libgimp/gimppatternmenu.c b/libgimp/gimppatternmenu.c index 59db1f69a3..802a7c7d18 100644 --- a/libgimp/gimppatternmenu.c +++ b/libgimp/gimppatternmenu.c @@ -108,7 +108,8 @@ pattern_popup_open (gint x, gtk_preview_size (GTK_PREVIEW (psel->device_patpreview), psel->width, psel->height); - gtk_widget_popup (psel->device_patpopup, x, y); + gtk_widget_set_uposition (psel->device_patpopup, x, y); + gtk_widget_show (psel->device_patpopup); /* Draw the pattern */ buf = g_new (gchar, psel->width * 3); diff --git a/libgimp/gimpui.c b/libgimp/gimpui.c index 4c348fa9f8..99c903e0ce 100644 --- a/libgimp/gimpui.c +++ b/libgimp/gimpui.c @@ -71,7 +71,6 @@ gimp_ui_init (const gchar *prog_name, gdk_rgb_set_min_colors (gimp_min_colors ()); gdk_rgb_set_install (gimp_install_cmap ()); - gtk_widget_set_default_visual (gdk_rgb_get_visual ()); gtk_widget_set_default_colormap (gdk_rgb_get_cmap ()); /* Set the gamma after installing the colormap because diff --git a/libgimpbase/gimpenv.c b/libgimpbase/gimpenv.c index 22a96679d8..9f6c255e6c 100644 --- a/libgimpbase/gimpenv.c +++ b/libgimpbase/gimpenv.c @@ -83,9 +83,10 @@ const gchar * gimp_directory (void) { static gchar *gimp_dir = NULL; - gchar *env_gimp_dir; - gchar *home_dir; - gchar *home_dir_sep; + + const gchar *env_gimp_dir; + const gchar *home_dir; + gchar *home_dir_sep; if (gimp_dir != NULL) return gimp_dir; @@ -188,7 +189,8 @@ const gchar * gimp_data_directory (void) { static gchar *gimp_data_dir = NULL; - gchar *env_gimp_data_dir = NULL; + + const gchar *env_gimp_data_dir; if (gimp_data_dir != NULL) return gimp_data_dir; @@ -264,7 +266,8 @@ const gchar * gimp_sysconf_directory (void) { static gchar *gimp_sysconf_dir = NULL; - gchar *env_gimp_sysconf_dir = NULL; + + const gchar *env_gimp_sysconf_dir; if (gimp_sysconf_dir != NULL) return gimp_sysconf_dir; @@ -365,11 +368,11 @@ gimp_path_parse (const gchar *path, gboolean check, GList **check_failed) { - gchar *home; - gchar **patharray; - GList *list = NULL; - GList *fail_list = NULL; - gint i; + const gchar *home; + gchar **patharray; + GList *list = NULL; + GList *fail_list = NULL; + gint i; struct stat filestat; gint err = FALSE; @@ -385,7 +388,7 @@ gimp_path_parse (const gchar *path, { GString *dir; - if (!patharray[i]) + if (! patharray[i]) break; #ifndef G_OS_WIN32 @@ -523,12 +526,15 @@ gimp_path_get_user_writable_dir (GList *path) /* ugly hack to handle paths with an extra G_DIR_SEPARATOR * attached. The stat() in MSVCRT doesn't like that. */ - gchar *dir = g_strdup ((gchar *) list->data); - gchar *p = dir; - gint pl; + gchar *dir; + gchar *p; + gint pl; + + p = dir = g_strdup ((gchar *) list->data); if (g_path_is_absolute (dir)) - p = g_path_skip_root (dir); + p = (gchar *) g_path_skip_root (dir); + pl = strlen (p); if (pl > 0 && p[pl-1] == G_DIR_SEPARATOR) p[pl-1] = '\0'; diff --git a/libgimpwidgets/gimpbutton.c b/libgimpwidgets/gimpbutton.c index cb48660403..3c5c873f20 100644 --- a/libgimpwidgets/gimpbutton.c +++ b/libgimpwidgets/gimpbutton.c @@ -78,25 +78,23 @@ gimp_button_get_type (void) static void gimp_button_class_init (GimpButtonClass *klass) { - GtkObjectClass *object_class; + GObjectClass *object_class; GtkWidgetClass *widget_class; - object_class = (GtkObjectClass *) klass; + object_class = (GObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (GTK_TYPE_BUTTON); + parent_class = g_type_class_peek_parent (klass); button_signals[EXTENDED_CLICKED] = - gtk_signal_new ("extended_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpButtonClass, - extended_clicked), - gtk_marshal_NONE__UINT, - GTK_TYPE_NONE, 1, - GTK_TYPE_UINT); - - gtk_object_class_add_signals (object_class, button_signals, LAST_SIGNAL); + g_signal_new ("extended_clicked", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpButtonClass, extended_clicked), + NULL, NULL, + g_cclosure_marshal_VOID__UINT, + G_TYPE_NONE, 1, + G_TYPE_UINT); widget_class->button_press_event = gimp_button_button_press; widget_class->button_release_event = gimp_button_button_release; diff --git a/libgimpwidgets/gimpbutton.h b/libgimpwidgets/gimpbutton.h index bdbedb2e88..45f6179f30 100644 --- a/libgimpwidgets/gimpbutton.h +++ b/libgimpwidgets/gimpbutton.h @@ -31,10 +31,10 @@ extern "C" { #define GIMP_TYPE_BUTTON (gimp_button_get_type ()) -#define GIMP_BUTTON(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_BUTTON, GimpButton)) -#define GIMP_BUTTON_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUTTON, GimpButtonClass)) -#define GIMP_IS_BUTTON(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_BUTTON)) -#define GIMP_IS_BUTTON_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUTTON)) +#define GIMP_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_BUTTON, GimpButton)) +#define GIMP_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_BUTTON, GimpButtonClass)) +#define GIMP_IS_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_BUTTON)) +#define GIMP_IS_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_BUTTON)) typedef struct _GimpButtonClass GimpButtonClass; diff --git a/libgimpwidgets/gimpchainbutton.c b/libgimpwidgets/gimpchainbutton.c index 5d9834fe62..1929d9acb4 100644 --- a/libgimpwidgets/gimpchainbutton.c +++ b/libgimpwidgets/gimpchainbutton.c @@ -28,6 +28,24 @@ #include "pixmaps/chain.xpm" +enum +{ + TOGGLED, + LAST_SIGNAL +}; + +static void gimp_chain_button_class_init (GimpChainButtonClass *klass); +static void gimp_chain_button_init (GimpChainButton *gcb); +static void gimp_chain_button_destroy (GtkObject *object); +static void gimp_chain_button_realize (GtkWidget *widget); + +static void gimp_chain_button_clicked_callback (GtkWidget *widget, + GimpChainButton *gcb); +static gint gimp_chain_button_draw_lines (GtkWidget *widget, + GdkEventExpose *eevent, + GimpChainButton *gcb); + + static gchar **gimp_chain_xpm[] = { chain_hor_xpm, @@ -52,74 +70,62 @@ static guint gimp_chain_height[] = 24 }; -static void gimp_chain_button_destroy (GtkObject *object); -static void gimp_chain_button_realize (GtkWidget *widget); - -static void gimp_chain_button_clicked_callback (GtkWidget *widget, - GimpChainButton *gcb); -static gint gimp_chain_button_draw_lines (GtkWidget *widget, - GdkEventExpose *eevent, - GimpChainButton *gcb); - -enum -{ - TOGGLED, - LAST_SIGNAL -}; static guint gimp_chain_button_signals[LAST_SIGNAL] = { 0 }; static GtkTableClass *parent_class = NULL; -static void -gimp_chain_button_destroy (GtkObject *object) +GType +gimp_chain_button_get_type (void) { - GimpChainButton *gcb = GIMP_CHAIN_BUTTON (object); + static GType gcb_type = 0; - g_return_if_fail (gcb != NULL); + if (! gcb_type) + { + GtkTypeInfo gcb_info = + { + "GimpChainButton", + sizeof (GimpChainButton), + sizeof (GimpChainButtonClass), + (GtkClassInitFunc) gimp_chain_button_class_init, + (GtkObjectInitFunc) gimp_chain_button_init, + /* reserved_1 */ NULL, + /* reserved_2 */ NULL, + (GtkClassInitFunc) NULL + }; - if (gcb->broken) - gdk_pixmap_unref (gcb->broken); - if (gcb->broken_mask) - gdk_bitmap_unref (gcb->broken_mask); + gcb_type = gtk_type_unique (gtk_table_get_type (), &gcb_info); + } - if (gcb->chain) - gdk_pixmap_unref (gcb->chain); - if (gcb->chain_mask) - gdk_bitmap_unref (gcb->chain_mask); - - if (GTK_OBJECT_CLASS (parent_class)->destroy) - (* GTK_OBJECT_CLASS (parent_class)->destroy) (object); + return gcb_type; } static void -gimp_chain_button_class_init (GimpChainButtonClass *class) +gimp_chain_button_class_init (GimpChainButtonClass *klass) { GtkObjectClass *object_class; GtkWidgetClass *widget_class; - object_class = (GtkObjectClass*) class; - widget_class = (GtkWidgetClass *) class; + object_class = (GtkObjectClass *) klass; + widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (gtk_table_get_type ()); + parent_class = g_type_class_peek_parent (klass); + + gimp_chain_button_signals[TOGGLED] = + g_signal_new ("toggled", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpChainButtonClass, toggled), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = gimp_chain_button_destroy; - gimp_chain_button_signals[TOGGLED] = - gtk_signal_new ("toggled", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpChainButtonClass, - toggled), - gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, gimp_chain_button_signals, - LAST_SIGNAL); - - class->toggled = NULL; - widget_class->realize = gimp_chain_button_realize; + + klass->toggled = NULL; } static void @@ -151,29 +157,41 @@ gimp_chain_button_init (GimpChainButton *gcb) gcb); } -GtkType -gimp_chain_button_get_type (void) +static void +gimp_chain_button_destroy (GtkObject *object) { - static guint gcb_type = 0; + GimpChainButton *gcb; - if (!gcb_type) + g_return_if_fail (GIMP_IS_CHAIN_BUTTON (object)); + + gcb = GIMP_CHAIN_BUTTON (object); + + if (gcb->broken) { - GtkTypeInfo gcb_info = - { - "GimpChainButton", - sizeof (GimpChainButton), - sizeof (GimpChainButtonClass), - (GtkClassInitFunc) gimp_chain_button_class_init, - (GtkObjectInitFunc) gimp_chain_button_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL - }; - - gcb_type = gtk_type_unique (gtk_table_get_type (), &gcb_info); + gdk_pixmap_unref (gcb->broken); + gcb->broken = NULL; } - return gcb_type; + if (gcb->broken_mask) + { + gdk_bitmap_unref (gcb->broken_mask); + gcb->broken_mask = NULL; + } + + if (gcb->chain) + { + gdk_pixmap_unref (gcb->chain); + gcb->chain = NULL; + } + + if (gcb->chain_mask) + { + gdk_bitmap_unref (gcb->chain_mask); + gcb->chain_mask = NULL; + } + + if (GTK_OBJECT_CLASS (parent_class)->destroy) + GTK_OBJECT_CLASS (parent_class)->destroy (object); } /** diff --git a/libgimpwidgets/gimpchainbutton.h b/libgimpwidgets/gimpchainbutton.h index b8449c8705..00eff176ab 100644 --- a/libgimpwidgets/gimpchainbutton.h +++ b/libgimpwidgets/gimpchainbutton.h @@ -37,10 +37,10 @@ extern "C" { #define GIMP_TYPE_CHAIN_BUTTON (gimp_chain_button_get_type ()) -#define GIMP_CHAIN_BUTTON(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_CHAIN_BUTTON, GimpChainButton)) -#define GIMP_CHAIN_BUTTON_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHAIN_BUTTON, GimpChainButtonClass)) -#define GIMP_IS_CHAIN_BUTTON(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_CHAIN_BUTTON)) -#define GIMP_IS_CHAIN_BUTTON_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHAIN_BUTTON)) +#define GIMP_CHAIN_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CHAIN_BUTTON, GimpChainButton)) +#define GIMP_CHAIN_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_CHAIN_BUTTON, GimpChainButtonClass)) +#define GIMP_IS_CHAIN_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_CHAIN_BUTTON)) +#define GIMP_IS_CHAIN_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_CHAIN_BUTTON)) typedef struct _GimpChainButtonClass GimpChainButtonClass; diff --git a/libgimpwidgets/gimpcolorarea.c b/libgimpwidgets/gimpcolorarea.c index 04955001a0..edae7cd308 100644 --- a/libgimpwidgets/gimpcolorarea.c +++ b/libgimpwidgets/gimpcolorarea.c @@ -111,24 +111,20 @@ gimp_color_area_class_init (GimpColorAreaClass *klass) object_class = (GtkObjectClass*) klass; widget_class = (GtkWidgetClass*) klass; - parent_class = gtk_type_class (gtk_preview_get_type ()); + parent_class = g_type_class_peek_parent (klass); gimp_color_area_signals[COLOR_CHANGED] = - gtk_signal_new ("color_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpColorAreaClass, - color_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, - 0); + g_signal_new ("color_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpColorAreaClass, color_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, gimp_color_area_signals, - LAST_SIGNAL); + klass->color_changed = NULL; - klass->color_changed = NULL; - - object_class->destroy = gimp_color_area_destroy; + object_class->destroy = gimp_color_area_destroy; widget_class->realize = gimp_color_area_realize; widget_class->size_allocate = gimp_color_area_size_allocate; diff --git a/libgimpwidgets/gimpcolorarea.h b/libgimpwidgets/gimpcolorarea.h index f3535d31d1..5f20807c53 100644 --- a/libgimpwidgets/gimpcolorarea.h +++ b/libgimpwidgets/gimpcolorarea.h @@ -38,10 +38,10 @@ extern "C" { #define GIMP_TYPE_COLOR_AREA (gimp_color_area_get_type ()) -#define GIMP_COLOR_AREA(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_COLOR_AREA, GimpColorArea)) -#define GIMP_COLOR_AREA_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_AREA, GimpColorAreaClass)) -#define GIMP_IS_COLOR_AREA(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_COLOR_AREA)) -#define GIMP_IS_COLOR_AREA_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_AREA)) +#define GIMP_COLOR_AREA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_COLOR_AREA, GimpColorArea)) +#define GIMP_COLOR_AREA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_AREA, GimpColorAreaClass)) +#define GIMP_IS_COLOR_AREA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_COLOR_AREA)) +#define GIMP_IS_COLOR_AREA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_AREA)) typedef enum diff --git a/libgimpwidgets/gimpcolorbutton.c b/libgimpwidgets/gimpcolorbutton.c index 96e0cd59cd..559a9b4b29 100644 --- a/libgimpwidgets/gimpcolorbutton.c +++ b/libgimpwidgets/gimpcolorbutton.c @@ -116,25 +116,23 @@ gimp_color_button_class_init (GimpColorButtonClass *klass) widget_class = (GtkWidgetClass *) klass; button_class = (GtkButtonClass *) klass; - parent_class = gtk_type_class (gtk_widget_get_type ()); + parent_class = g_type_class_peek_parent (klass); gimp_color_button_signals[COLOR_CHANGED] = - gtk_signal_new ("color_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpColorButtonClass, - color_changed), - gtk_signal_default_marshaller, - GTK_TYPE_NONE, - 0); - - gtk_object_class_add_signals (object_class, gimp_color_button_signals, - LAST_SIGNAL); + g_signal_new ("color_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpColorButtonClass, color_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); klass->color_changed = NULL; object_class->destroy = gimp_color_button_destroy; + widget_class->state_changed = gimp_color_button_state_changed; + button_class->clicked = gimp_color_button_clicked; } @@ -148,9 +146,9 @@ gimp_color_button_init (GimpColorButton *gcb) gimp_rgba_set (&color, 0.0, 0.0, 0.0, 1.0); gcb->color_area = gimp_color_area_new (&color, FALSE, GDK_BUTTON2_MASK); - gtk_signal_connect (GTK_OBJECT (gcb->color_area), "color_changed", - gimp_color_button_color_changed, - gcb); + g_signal_connect (G_OBJECT (gcb->color_area), "color_changed", + G_CALLBACK (gimp_color_button_color_changed), + gcb); gtk_container_add (GTK_CONTAINER (gcb), gcb->color_area); gtk_widget_show (gcb->color_area); @@ -361,7 +359,7 @@ gimp_color_button_clicked (GtkButton *button) { gcb->dialog = gtk_color_selection_dialog_new (gcb->title); - gtk_color_selection_set_opacity (GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (gcb->dialog)->colorsel), gimp_color_button_has_alpha (gcb)); + gtk_color_selection_set_current_alpha (GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (gcb->dialog)->colorsel), gimp_color_button_has_alpha (gcb)); gtk_color_selection_set_color (GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (gcb->dialog)->colorsel), dcolor); gtk_widget_destroy (GTK_COLOR_SELECTION_DIALOG (gcb->dialog)->help_button); diff --git a/libgimpwidgets/gimpcolorbutton.h b/libgimpwidgets/gimpcolorbutton.h index 3dd330b916..13d7966a21 100644 --- a/libgimpwidgets/gimpcolorbutton.h +++ b/libgimpwidgets/gimpcolorbutton.h @@ -39,10 +39,10 @@ extern "C" { #define GIMP_TYPE_COLOR_BUTTON (gimp_color_button_get_type ()) -#define GIMP_COLOR_BUTTON(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_COLOR_BUTTON, GimpColorButton)) -#define GIMP_COLOR_BUTTON_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_BUTTON, GimpColorButtonClass)) -#define GIMP_IS_COLOR_BUTTON(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_COLOR_BUTTON)) -#define GIMP_IS_COLOR_BUTTON_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_BUTTON)) +#define GIMP_COLOR_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_COLOR_BUTTON, GimpColorButton)) +#define GIMP_COLOR_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_COLOR_BUTTON, GimpColorButtonClass)) +#define GIMP_IS_COLOR_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_COLOR_BUTTON)) +#define GIMP_IS_COLOR_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_COLOR_BUTTON)) typedef struct _GimpColorButtonClass GimpColorButtonClass; diff --git a/libgimpwidgets/gimpdialog.c b/libgimpwidgets/gimpdialog.c index 74cb8a8000..9848148e90 100644 --- a/libgimpwidgets/gimpdialog.c +++ b/libgimpwidgets/gimpdialog.c @@ -34,25 +34,32 @@ #include "pixmaps/wilber.xpm" +typedef void (* GimpDialogCancelCallback) (GtkWidget *widget, + gpointer data); + + /* local callbacks of gimp_dialog_new () */ static gint gimp_dialog_delete_callback (GtkWidget *widget, GdkEvent *event, gpointer data) { - GtkSignalFunc cancel_callback; - GtkWidget *cancel_widget; + GimpDialogCancelCallback cancel_callback; + GtkWidget *cancel_widget; - cancel_callback = - (GtkSignalFunc) gtk_object_get_data (GTK_OBJECT (widget), - "gimp_dialog_cancel_callback"); - cancel_widget = - (GtkWidget*) gtk_object_get_data (GTK_OBJECT (widget), - "gimp_dialog_cancel_widget"); + cancel_callback = (GimpDialogCancelCallback) + g_object_get_data (G_OBJECT (widget), + "gimp_dialog_cancel_callback"); + + cancel_widget = (GtkWidget *) + g_object_get_data (G_OBJECT (widget), + "gimp_dialog_cancel_widget"); /* the cancel callback has to destroy the dialog */ if (cancel_callback) - (* cancel_callback) (cancel_widget, data); + { + cancel_callback (cancel_widget, data); + } return TRUE; } @@ -348,15 +355,14 @@ gimp_dialog_create_action_areav (GtkDialog *dialog, /* otherwise just create the requested button. */ else { - if (hbbox == NULL) + if (! hbbox) { - /* prepare the action_area */ - gtk_container_set_border_width (GTK_CONTAINER (dialog->action_area), 2); gtk_box_set_homogeneous (GTK_BOX (dialog->action_area), FALSE); hbbox = gtk_hbutton_box_new (); gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbbox), 4); - gtk_box_pack_end (GTK_BOX (dialog->action_area), hbbox, FALSE, FALSE, 0); + gtk_box_pack_end (GTK_BOX (dialog->action_area), hbbox, + FALSE, FALSE, 0); gtk_widget_show (hbbox); } diff --git a/libgimpwidgets/gimpfileentry.c b/libgimpwidgets/gimpfileentry.c index dcf0df3b89..ed8b94b4f3 100644 --- a/libgimpwidgets/gimpfileentry.c +++ b/libgimpwidgets/gimpfileentry.c @@ -80,57 +80,76 @@ gimp_file_selection_destroy (GtkObject *object) { GimpFileSelection *gfs; - g_return_if_fail (object != NULL); g_return_if_fail (GIMP_IS_FILE_SELECTION (object)); gfs = GIMP_FILE_SELECTION (object); if (gfs->file_selection) - gtk_widget_destroy (gfs->file_selection); + { + gtk_widget_destroy (gfs->file_selection); + gfs->file_selection = NULL; + } if (gfs->title) - g_free (gfs->title); + { + g_free (gfs->title); + gfs->title = NULL; + } if (gfs->yes_pixmap) - gdk_pixmap_unref (gfs->yes_pixmap); + { + gdk_pixmap_unref (gfs->yes_pixmap); + gfs->yes_pixmap = NULL; + } + if (gfs->yes_mask) - gdk_bitmap_unref (gfs->yes_mask); + { + gdk_bitmap_unref (gfs->yes_mask); + gfs->yes_mask = NULL; + } if (gfs->no_pixmap) - gdk_pixmap_unref (gfs->no_pixmap); + { + gdk_pixmap_unref (gfs->no_pixmap); + gfs->no_pixmap = NULL; + } + if (gfs->no_mask) - gdk_bitmap_unref (gfs->no_mask); + { + gdk_bitmap_unref (gfs->no_mask); + gfs->no_mask = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); } static void -gimp_file_selection_class_init (GimpFileSelectionClass *class) +gimp_file_selection_class_init (GimpFileSelectionClass *klass) { GtkObjectClass *object_class; GtkWidgetClass *widget_class; - object_class = (GtkObjectClass *) class; - widget_class = (GtkWidgetClass *) class; + object_class = (GtkObjectClass *) klass; + widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (gtk_hbox_get_type ()); + parent_class = g_type_class_peek_parent (klass); gimp_file_selection_signals[FILENAME_CHANGED] = - gtk_signal_new ("filename_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpFileSelectionClass, - filename_changed), - gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); + g_signal_new ("filename_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpFileSelectionClass, + filename_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, gimp_file_selection_signals, - LAST_SIGNAL); + object_class->destroy = gimp_file_selection_destroy; - class->filename_changed = NULL; + widget_class->realize = gimp_file_selection_realize; - object_class->destroy = gimp_file_selection_destroy; - widget_class->realize = gimp_file_selection_realize; + klass->filename_changed = NULL; } static void @@ -212,7 +231,7 @@ gimp_file_selection_new (const gchar *title, { GimpFileSelection *gfs; - gfs = gtk_type_new (gimp_file_selection_get_type ()); + gfs = gtk_type_new (GIMP_TYPE_FILE_SELECTION); gfs->title = g_strdup (title); gfs->dir_only = dir_only; @@ -234,8 +253,7 @@ gimp_file_selection_new (const gchar *title, gchar * gimp_file_selection_get_filename (GimpFileSelection *gfs) { - g_return_val_if_fail (gfs != NULL, g_strdup ("")); - g_return_val_if_fail (GIMP_IS_FILE_SELECTION (gfs), g_strdup ("")); + g_return_val_if_fail (GIMP_IS_FILE_SELECTION (gfs), NULL); return gtk_editable_get_chars (GTK_EDITABLE (gfs->entry), 0, -1); } @@ -254,7 +272,6 @@ void gimp_file_selection_set_filename (GimpFileSelection *gfs, const gchar *filename) { - g_return_if_fail (gfs != NULL); g_return_if_fail (GIMP_IS_FILE_SELECTION (gfs)); gtk_entry_set_text (GTK_ENTRY (gfs->entry), filename ? filename : ""); @@ -275,7 +292,7 @@ gimp_file_selection_realize (GtkWidget *widget) return; if (GTK_WIDGET_CLASS (parent_class)->realize) - (* GTK_WIDGET_CLASS (parent_class)->realize) (widget); + GTK_WIDGET_CLASS (parent_class)->realize (widget); style = gtk_widget_get_style (widget); @@ -348,7 +365,7 @@ gimp_file_selection_filesel_ok_callback (GtkWidget *widget, gpointer data) { GimpFileSelection *gfs; - gchar *filename; + const gchar *filename; gfs = GIMP_FILE_SELECTION (data); filename = diff --git a/libgimpwidgets/gimpfileentry.h b/libgimpwidgets/gimpfileentry.h index 34b6565f43..6a46d6a08c 100644 --- a/libgimpwidgets/gimpfileentry.h +++ b/libgimpwidgets/gimpfileentry.h @@ -31,10 +31,10 @@ extern "C" { #define GIMP_TYPE_FILE_SELECTION (gimp_file_selection_get_type ()) -#define GIMP_FILE_SELECTION(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_FILE_SELECTION, GimpFileSelection)) -#define GIMP_FILE_SELECTION_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FILE_SELECTION, GimpFileSelectionClass)) -#define GIMP_IS_FILE_SELECTION(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_FILE_SELECTION)) -#define GIMP_IS_FILE_SELECTION_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FILE_SELECTION)) +#define GIMP_FILE_SELECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_FILE_SELECTION, GimpFileSelection)) +#define GIMP_FILE_SELECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FILE_SELECTION, GimpFileSelectionClass)) +#define GIMP_IS_FILE_SELECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_FILE_SELECTION)) +#define GIMP_IS_FILE_SELECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FILE_SELECTION)) typedef struct _GimpFileSelectionClass GimpFileSelectionClass; diff --git a/libgimpwidgets/gimpfileselection.c b/libgimpwidgets/gimpfileselection.c index dcf0df3b89..ed8b94b4f3 100644 --- a/libgimpwidgets/gimpfileselection.c +++ b/libgimpwidgets/gimpfileselection.c @@ -80,57 +80,76 @@ gimp_file_selection_destroy (GtkObject *object) { GimpFileSelection *gfs; - g_return_if_fail (object != NULL); g_return_if_fail (GIMP_IS_FILE_SELECTION (object)); gfs = GIMP_FILE_SELECTION (object); if (gfs->file_selection) - gtk_widget_destroy (gfs->file_selection); + { + gtk_widget_destroy (gfs->file_selection); + gfs->file_selection = NULL; + } if (gfs->title) - g_free (gfs->title); + { + g_free (gfs->title); + gfs->title = NULL; + } if (gfs->yes_pixmap) - gdk_pixmap_unref (gfs->yes_pixmap); + { + gdk_pixmap_unref (gfs->yes_pixmap); + gfs->yes_pixmap = NULL; + } + if (gfs->yes_mask) - gdk_bitmap_unref (gfs->yes_mask); + { + gdk_bitmap_unref (gfs->yes_mask); + gfs->yes_mask = NULL; + } if (gfs->no_pixmap) - gdk_pixmap_unref (gfs->no_pixmap); + { + gdk_pixmap_unref (gfs->no_pixmap); + gfs->no_pixmap = NULL; + } + if (gfs->no_mask) - gdk_bitmap_unref (gfs->no_mask); + { + gdk_bitmap_unref (gfs->no_mask); + gfs->no_mask = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); } static void -gimp_file_selection_class_init (GimpFileSelectionClass *class) +gimp_file_selection_class_init (GimpFileSelectionClass *klass) { GtkObjectClass *object_class; GtkWidgetClass *widget_class; - object_class = (GtkObjectClass *) class; - widget_class = (GtkWidgetClass *) class; + object_class = (GtkObjectClass *) klass; + widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (gtk_hbox_get_type ()); + parent_class = g_type_class_peek_parent (klass); gimp_file_selection_signals[FILENAME_CHANGED] = - gtk_signal_new ("filename_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpFileSelectionClass, - filename_changed), - gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); + g_signal_new ("filename_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpFileSelectionClass, + filename_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, gimp_file_selection_signals, - LAST_SIGNAL); + object_class->destroy = gimp_file_selection_destroy; - class->filename_changed = NULL; + widget_class->realize = gimp_file_selection_realize; - object_class->destroy = gimp_file_selection_destroy; - widget_class->realize = gimp_file_selection_realize; + klass->filename_changed = NULL; } static void @@ -212,7 +231,7 @@ gimp_file_selection_new (const gchar *title, { GimpFileSelection *gfs; - gfs = gtk_type_new (gimp_file_selection_get_type ()); + gfs = gtk_type_new (GIMP_TYPE_FILE_SELECTION); gfs->title = g_strdup (title); gfs->dir_only = dir_only; @@ -234,8 +253,7 @@ gimp_file_selection_new (const gchar *title, gchar * gimp_file_selection_get_filename (GimpFileSelection *gfs) { - g_return_val_if_fail (gfs != NULL, g_strdup ("")); - g_return_val_if_fail (GIMP_IS_FILE_SELECTION (gfs), g_strdup ("")); + g_return_val_if_fail (GIMP_IS_FILE_SELECTION (gfs), NULL); return gtk_editable_get_chars (GTK_EDITABLE (gfs->entry), 0, -1); } @@ -254,7 +272,6 @@ void gimp_file_selection_set_filename (GimpFileSelection *gfs, const gchar *filename) { - g_return_if_fail (gfs != NULL); g_return_if_fail (GIMP_IS_FILE_SELECTION (gfs)); gtk_entry_set_text (GTK_ENTRY (gfs->entry), filename ? filename : ""); @@ -275,7 +292,7 @@ gimp_file_selection_realize (GtkWidget *widget) return; if (GTK_WIDGET_CLASS (parent_class)->realize) - (* GTK_WIDGET_CLASS (parent_class)->realize) (widget); + GTK_WIDGET_CLASS (parent_class)->realize (widget); style = gtk_widget_get_style (widget); @@ -348,7 +365,7 @@ gimp_file_selection_filesel_ok_callback (GtkWidget *widget, gpointer data) { GimpFileSelection *gfs; - gchar *filename; + const gchar *filename; gfs = GIMP_FILE_SELECTION (data); filename = diff --git a/libgimpwidgets/gimpfileselection.h b/libgimpwidgets/gimpfileselection.h index 34b6565f43..6a46d6a08c 100644 --- a/libgimpwidgets/gimpfileselection.h +++ b/libgimpwidgets/gimpfileselection.h @@ -31,10 +31,10 @@ extern "C" { #define GIMP_TYPE_FILE_SELECTION (gimp_file_selection_get_type ()) -#define GIMP_FILE_SELECTION(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_FILE_SELECTION, GimpFileSelection)) -#define GIMP_FILE_SELECTION_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FILE_SELECTION, GimpFileSelectionClass)) -#define GIMP_IS_FILE_SELECTION(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_FILE_SELECTION)) -#define GIMP_IS_FILE_SELECTION_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FILE_SELECTION)) +#define GIMP_FILE_SELECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_FILE_SELECTION, GimpFileSelection)) +#define GIMP_FILE_SELECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_FILE_SELECTION, GimpFileSelectionClass)) +#define GIMP_IS_FILE_SELECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_FILE_SELECTION)) +#define GIMP_IS_FILE_SELECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_FILE_SELECTION)) typedef struct _GimpFileSelectionClass GimpFileSelectionClass; diff --git a/libgimpwidgets/gimphelpui.c b/libgimpwidgets/gimphelpui.c index c6a6729699..881c9ec2c4 100644 --- a/libgimpwidgets/gimphelpui.c +++ b/libgimpwidgets/gimphelpui.c @@ -143,9 +143,9 @@ gimp_help_connect_help_accel (GtkWidget *widget, "GtkTipsQuery::emit_always", TRUE, NULL); - gtk_signal_connect (GTK_OBJECT (tips_query), "widget_selected", - GTK_SIGNAL_FUNC (gimp_help_tips_query_widget_selected), - NULL); + g_signal_connect (G_OBJECT (tips_query), "widget_selected", + G_CALLBACK (gimp_help_tips_query_widget_selected), + NULL); /* FIXME: EEEEEEEEEEEEEEEEEEEEK, this is very ugly and forbidden... * does anyone know a way to do this tips query stuff without @@ -155,27 +155,32 @@ gimp_help_connect_help_accel (GtkWidget *widget, gtk_widget_realize (tips_query); } - if (! gtk_signal_lookup ("tips_query", GTK_OBJECT (widget)->klass->type)) + g_print ("FIXME: gimp_help_connect_help_accel\n"); + + /* + if (! gtk_signal_lookup ("tips_query", G_TYPE_FROM_INSTANCE (widget))) { gtk_object_class_user_signal_new (GTK_OBJECT (widget)->klass, "tips_query", GTK_RUN_LAST, - gtk_signal_default_marshaller, - GTK_TYPE_NONE, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0, NULL); gtk_object_class_user_signal_new (GTK_OBJECT (widget)->klass, "help", GTK_RUN_LAST, - gtk_signal_default_marshaller, - GTK_TYPE_NONE, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0, NULL); } + */ gimp_help_set_help_data (widget, NULL, help_data); + /* gtk_signal_connect (GTK_OBJECT (widget), "help", GTK_SIGNAL_FUNC (gimp_help_callback), (gpointer) help_func); @@ -183,10 +188,15 @@ gimp_help_connect_help_accel (GtkWidget *widget, gtk_signal_connect (GTK_OBJECT (widget), "tips_query", GTK_SIGNAL_FUNC (gimp_help_tips_query_start), (gpointer) tips_query); + */ gtk_widget_add_events (widget, GDK_BUTTON_PRESS_MASK); /* a new accelerator group for this widget */ +#ifdef __GNUC__ +#warning FIXME: fix help +#endif +#if 0 accel_group = gtk_accel_group_new (); /* FIXME: does not work for some reason... @@ -203,6 +213,7 @@ gimp_help_connect_help_accel (GtkWidget *widget, GTK_OBJECT (widget), "tips_query"); gtk_accel_group_attach (accel_group, GTK_OBJECT (widget)); +#endif } /** diff --git a/libgimpwidgets/gimpoffsetarea.c b/libgimpwidgets/gimpoffsetarea.c index 63fe4802fa..85d3ba146d 100644 --- a/libgimpwidgets/gimpoffsetarea.c +++ b/libgimpwidgets/gimpoffsetarea.c @@ -38,6 +38,7 @@ enum LAST_SIGNAL }; + static void gimp_offset_area_destroy (GtkObject *object); static void gimp_offset_area_resize (GimpOffsetArea *offset_area); static gboolean gimp_offset_area_event (GtkWidget *widget, @@ -62,30 +63,29 @@ gimp_offset_area_destroy (GtkObject *object) } static void -gimp_offset_area_class_init (GimpOffsetAreaClass *class) +gimp_offset_area_class_init (GimpOffsetAreaClass *klass) { GtkObjectClass *object_class; GtkWidgetClass *widget_class; - object_class = (GtkObjectClass *) class; - widget_class = (GtkWidgetClass *) class; + object_class = (GtkObjectClass *) klass; + widget_class = (GtkWidgetClass *) klass; - parent_class = gtk_type_class (gtk_drawing_area_get_type ()); + parent_class = g_type_class_peek_parent (klass); gimp_offset_area_signals[OFFSETS_CHANGED] = - gtk_signal_new ("offsets_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpOffsetAreaClass, - offsets_changed), - gtk_marshal_NONE__INT_INT, - GTK_TYPE_NONE, 2, - GTK_TYPE_INT, GTK_TYPE_INT); - - gtk_object_class_add_signals (object_class, gimp_offset_area_signals, - LAST_SIGNAL); + g_signal_new ("offsets_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpOffsetAreaClass, offsets_changed), + NULL, NULL, + gtk_marshal_VOID__INT_INT, + G_TYPE_NONE, 2, + G_TYPE_INT, + G_TYPE_INT); object_class->destroy = gimp_offset_area_destroy; + widget_class->event = gimp_offset_area_event; } diff --git a/libgimpwidgets/gimpoffsetarea.h b/libgimpwidgets/gimpoffsetarea.h index ba07c8e29e..d5f58a06b5 100644 --- a/libgimpwidgets/gimpoffsetarea.h +++ b/libgimpwidgets/gimpoffsetarea.h @@ -30,10 +30,10 @@ extern "C" { /* For information look into the C source or the html documentation */ #define GIMP_TYPE_OFFSET_AREA (gimp_offset_area_get_type ()) -#define GIMP_OFFSET_AREA(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_OFFSET_AREA, GimpOffsetArea)) -#define GIMP_OFFSET_AREA_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_OFFSET_AREA, GimpOffsetAreaClass)) -#define GIMP_IS_OFFSET_AREA(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_OFFSET_AREA)) -#define GIMP_IS_OFFSET_AREA_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_OFFSET_AREA)) +#define GIMP_OFFSET_AREA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_OFFSET_AREA, GimpOffsetArea)) +#define GIMP_OFFSET_AREA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_OFFSET_AREA, GimpOffsetAreaClass)) +#define GIMP_IS_OFFSET_AREA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_OFFSET_AREA)) +#define GIMP_IS_OFFSET_AREA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_OFFSET_AREA)) typedef struct _GimpOffsetAreaClass GimpOffsetAreaClass; diff --git a/libgimpwidgets/gimppatheditor.c b/libgimpwidgets/gimppatheditor.c index 71f4d51504..f41f89daff 100644 --- a/libgimpwidgets/gimppatheditor.c +++ b/libgimpwidgets/gimppatheditor.c @@ -38,51 +38,79 @@ #include "pixmaps/lower.xpm" -/* forward declaration */ -static void gimp_path_editor_select_callback (GtkWidget *widget, - gpointer data); -static void gimp_path_editor_deselect_callback (GtkWidget *widget, - gpointer data); -static void gimp_path_editor_new_callback (GtkWidget *widget, - gpointer data); -static void gimp_path_editor_move_callback (GtkWidget *widget, - gpointer data); -static void gimp_path_editor_filesel_callback (GtkWidget *widget, - gpointer data); -static void gimp_path_editor_delete_callback (GtkWidget *widget, - gpointer data); - enum { PATH_CHANGED, LAST_SIGNAL }; + +static void gimp_path_editor_class_init (GimpPathEditorClass *klass); +static void gimp_path_editor_init (GimpPathEditor *gpe); + +static void gimp_path_editor_select_callback (GtkWidget *widget, + gpointer data); +static void gimp_path_editor_deselect_callback (GtkWidget *widget, + gpointer data); +static void gimp_path_editor_new_callback (GtkWidget *widget, + gpointer data); +static void gimp_path_editor_move_callback (GtkWidget *widget, + gpointer data); +static void gimp_path_editor_filesel_callback (GtkWidget *widget, + gpointer data); +static void gimp_path_editor_delete_callback (GtkWidget *widget, + gpointer data); + + static guint gimp_path_editor_signals[LAST_SIGNAL] = { 0 }; static GtkVBoxClass *parent_class = NULL; + +GType +gimp_path_editor_get_type (void) +{ + static GType gpe_type = 0; + + if (! gpe_type) + { + GtkTypeInfo gpe_info = + { + "GimpPathEditor", + sizeof (GimpPathEditor), + sizeof (GimpPathEditorClass), + (GtkClassInitFunc) gimp_path_editor_class_init, + (GtkObjectInitFunc) gimp_path_editor_init, + /* reserved_1 */ NULL, + /* reserved_2 */ NULL, + (GtkClassInitFunc) NULL + }; + + gpe_type = gtk_type_unique (gtk_vbox_get_type (), &gpe_info); + } + + return gpe_type; +} + static void -gimp_path_editor_class_init (GimpPathEditorClass *class) +gimp_path_editor_class_init (GimpPathEditorClass *klass) { GtkObjectClass *object_class; - object_class = (GtkObjectClass *) class; + object_class = (GtkObjectClass *) klass; - parent_class = gtk_type_class (gtk_vbox_get_type ()); + parent_class = g_type_class_peek_parent (klass); gimp_path_editor_signals[PATH_CHANGED] = - gtk_signal_new ("path_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpPathEditorClass, - path_changed), - gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); + g_signal_new ("path_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpPathEditorClass, path_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, gimp_path_editor_signals, - LAST_SIGNAL); - - class->path_changed = NULL; + klass->path_changed = NULL; } static void @@ -149,31 +177,6 @@ gimp_path_editor_init (GimpPathEditor *gpe) gtk_widget_show (gpe->dir_list); } -GtkType -gimp_path_editor_get_type (void) -{ - static GtkType gpe_type = 0; - - if (!gpe_type) - { - GtkTypeInfo gpe_info = - { - "GimpPathEditor", - sizeof (GimpPathEditor), - sizeof (GimpPathEditorClass), - (GtkClassInitFunc) gimp_path_editor_class_init, - (GtkObjectInitFunc) gimp_path_editor_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL - }; - - gpe_type = gtk_type_unique (gtk_vbox_get_type (), &gpe_info); - } - - return gpe_type; -} - /** * gimp_path_editor_new: * @filesel_title: The title of the #GtkFileSelection dialog which can be diff --git a/libgimpwidgets/gimppatheditor.h b/libgimpwidgets/gimppatheditor.h index 7187667bc7..4963d15205 100644 --- a/libgimpwidgets/gimppatheditor.h +++ b/libgimpwidgets/gimppatheditor.h @@ -31,10 +31,11 @@ extern "C" { #define GIMP_TYPE_PATH_EDITOR (gimp_path_editor_get_type ()) -#define GIMP_PATH_EDITOR(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PATH_EDITOR, GimpPathEditor)) -#define GIMP_PATH_EDITOR_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PATH_EDITOR, GimpPathEditorClass)) -#define GIMP_IS_PATH_EDITOR(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_PATH_EDITOR)) -#define GIMP_IS_PATH_EDITOR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PATH_EDITOR)) +#define GIMP_PATH_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PATH_EDITOR, GimpPathEditor)) +#define GIMP_PATH_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PATH_EDITOR, GimpPathEditorClass)) +#define GIMP_IS_PATH_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_PATH_EDITOR)) +#define GIMP_IS_PATH_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PATH_EDITOR)) + typedef struct _GimpPathEditorClass GimpPathEditorClass; @@ -64,9 +65,10 @@ struct _GimpPathEditorClass void (* path_changed) (GimpPathEditor *gpe); }; + /* For information look into the C source or the html documentation */ -GtkType gimp_path_editor_get_type (void); +GType gimp_path_editor_get_type (void); GtkWidget * gimp_path_editor_new (const gchar *filesel_title, const gchar *path); diff --git a/libgimpwidgets/gimppixmap.c b/libgimpwidgets/gimppixmap.c index 0d0573cb11..d216f70c39 100644 --- a/libgimpwidgets/gimppixmap.c +++ b/libgimpwidgets/gimppixmap.c @@ -29,35 +29,20 @@ #include "gimppixmap.h" -static void gimp_pixmap_realize (GtkWidget *widget); -static void gimp_pixmap_create_from_xpm_d (GimpPixmap *pixmap); +static void gimp_pixmap_class_init (GimpPixmapClass *klass); +static void gimp_pixmap_init (GimpPixmap *pixmap); + +static void gimp_pixmap_realize (GtkWidget *widget); +static void gimp_pixmap_create_from_xpm_d (GimpPixmap *pixmap); static GtkPixmapClass *parent_class = NULL; -static void -gimp_pixmap_class_init (GimpPixmapClass *class) -{ - GtkWidgetClass *widget_class; - - widget_class = (GtkWidgetClass *) class; - - parent_class = gtk_type_class (gtk_pixmap_get_type ()); - - widget_class->realize = gimp_pixmap_realize; -} - -static void -gimp_pixmap_init (GimpPixmap *pixmap) -{ - pixmap->xpm_data = NULL; -} - -GtkType +GType gimp_pixmap_get_type (void) { - static guint pixmap_type = 0; + static GType pixmap_type = 0; if (!pixmap_type) { @@ -79,6 +64,24 @@ gimp_pixmap_get_type (void) return pixmap_type; } +static void +gimp_pixmap_class_init (GimpPixmapClass *klass) +{ + GtkWidgetClass *widget_class; + + widget_class = (GtkWidgetClass *) klass; + + parent_class = g_type_class_peek_parent (klass); + + widget_class->realize = gimp_pixmap_realize; +} + +static void +gimp_pixmap_init (GimpPixmap *pixmap) +{ + pixmap->xpm_data = NULL; +} + /** * gimp_pixmap_new: * @xpm_data: A pointer to a XPM data structure as found in XPM files. diff --git a/libgimpwidgets/gimppixmap.h b/libgimpwidgets/gimppixmap.h index 806cb65078..d73ef6bbb0 100644 --- a/libgimpwidgets/gimppixmap.h +++ b/libgimpwidgets/gimppixmap.h @@ -31,10 +31,10 @@ extern "C" { #define GIMP_TYPE_PIXMAP (gimp_pixmap_get_type ()) -#define GIMP_PIXMAP(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_PIXMAP, GimpPixmap)) -#define GIMP_PIXMAP_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PIXMAP, GimpPixmapClass)) -#define GIMP_IS_PIXMAP(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_PIXMAP)) -#define GIMP_IS_PIXMAP_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PIXMAP)) +#define GIMP_PIXMAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PIXMAP, GimpPixmap)) +#define GIMP_PIXMAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PIXMAP, GimpPixmapClass)) +#define GIMP_IS_PIXMAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PIXMAP)) +#define GIMP_IS_PIXMAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_PIXMAP)) typedef struct _GimpPixmapClass GimpPixmapClass; diff --git a/libgimpwidgets/gimpquerybox.c b/libgimpwidgets/gimpquerybox.c index d8e51bf7c9..3670e98bb2 100644 --- a/libgimpwidgets/gimpquerybox.c +++ b/libgimpwidgets/gimpquerybox.c @@ -51,7 +51,7 @@ struct _QueryBox GtkWidget *vbox; GtkWidget *entry; GtkObject *object; - GtkSignalFunc callback; + GCallback callback; gpointer data; }; @@ -59,14 +59,14 @@ struct _QueryBox static QueryBox * create_query_box (const gchar *title, GimpHelpFunc help_func, const gchar *help_data, - GtkSignalFunc ok_callback, - GtkSignalFunc cancel_callback, + GCallback ok_callback, + GCallback cancel_callback, const gchar *message, const gchar *ok_button, const gchar *cancel_button, GtkObject *object, const gchar *signal, - GtkSignalFunc callback, + GCallback callback, gpointer data); static QueryBox * query_box_disconnect (gpointer data); @@ -96,14 +96,14 @@ static QueryBox * create_query_box (const gchar *title, GimpHelpFunc help_func, const gchar *help_data, - GtkSignalFunc ok_callback, - GtkSignalFunc cancel_callback, + GCallback ok_callback, + GCallback cancel_callback, const gchar *message, const gchar *ok_button, const gchar *cancel_button, GtkObject *object, const gchar *signal, - GtkSignalFunc callback, + GCallback callback, gpointer data) { QueryBox *query_box; @@ -202,12 +202,12 @@ gimp_query_string_box (const gchar *title, GtkWidget *entry; query_box = create_query_box (title, help_func, help_data, - string_query_box_ok_callback, - query_box_cancel_callback, + G_CALLBACK (string_query_box_ok_callback), + G_CALLBACK (query_box_cancel_callback), message, _("OK"), _("Cancel"), object, signal, - callback, data); + G_CALLBACK (callback), data); if (! query_box) return NULL; @@ -258,12 +258,12 @@ gimp_query_int_box (const gchar *title, GtkObject *adjustment; query_box = create_query_box (title, help_func, help_data, - int_query_box_ok_callback, - query_box_cancel_callback, + G_CALLBACK (int_query_box_ok_callback), + G_CALLBACK (query_box_cancel_callback), message, _("OK"), _("Cancel"), object, signal, - callback, data); + G_CALLBACK (callback), data); if (! query_box) return NULL; @@ -316,12 +316,12 @@ gimp_query_double_box (const gchar *title, GtkObject *adjustment; query_box = create_query_box (title, help_func, help_data, - double_query_box_ok_callback, - query_box_cancel_callback, + G_CALLBACK (double_query_box_ok_callback), + G_CALLBACK (query_box_cancel_callback), message, _("OK"), _("Cancel"), object, signal, - callback, data); + G_CALLBACK (callback), data); if (! query_box) return NULL; @@ -381,12 +381,12 @@ gimp_query_size_box (const gchar *title, GtkWidget *sizeentry; query_box = create_query_box (title, help_func, help_data, - size_query_box_ok_callback, - query_box_cancel_callback, + G_CALLBACK (size_query_box_ok_callback), + G_CALLBACK (query_box_cancel_callback), message, _("OK"), _("Cancel"), object, signal, - callback, data); + G_CALLBACK (callback), data); if (! query_box) return NULL; @@ -448,12 +448,12 @@ gimp_query_boolean_box (const gchar *title, GtkWidget *label; query_box = create_query_box (title, help_func, help_data, - boolean_query_box_true_callback, - boolean_query_box_false_callback, + G_CALLBACK (boolean_query_box_true_callback), + G_CALLBACK (boolean_query_box_false_callback), eek ? NULL : message, true_button, false_button, object, signal, - callback, data); + G_CALLBACK (callback), data); if (! query_box) return NULL; @@ -511,8 +511,9 @@ string_query_box_ok_callback (GtkWidget *widget, string = g_strdup (gtk_entry_get_text (GTK_ENTRY (query_box->entry))); /* Call the user defined callback */ - (* query_box->callback) (query_box->qbox, string, - query_box->data); + (* (GimpQueryStringCallback) query_box->callback) (query_box->qbox, + string, + query_box->data); /* Destroy the box */ if (query_box->qbox) @@ -535,8 +536,9 @@ int_query_box_ok_callback (GtkWidget *widget, gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (query_box->entry)); /* Call the user defined callback */ - (* query_box->callback) (query_box->qbox, value, - query_box->data); + (* (GimpQueryIntCallback) query_box->callback) (query_box->qbox, + value, + query_box->data); /* Destroy the box */ if (query_box->qbox) @@ -559,8 +561,9 @@ double_query_box_ok_callback (GtkWidget *widget, gtk_spin_button_get_value_as_float (GTK_SPIN_BUTTON (query_box->entry)); /* Call the user defined callback */ - (* query_box->callback) (query_box->qbox, value, - query_box->data); + (* (GimpQueryDoubleCallback) query_box->callback) (query_box->qbox, + value, + query_box->data); /* Destroy the box */ if (query_box->qbox) @@ -584,8 +587,10 @@ size_query_box_ok_callback (GtkWidget *widget, unit = gimp_size_entry_get_unit (GIMP_SIZE_ENTRY (query_box->entry)); /* Call the user defined callback */ - (* query_box->callback) (query_box->qbox, size, unit, - query_box->data); + (* (GimpQuerySizeCallback) query_box->callback) (query_box->qbox, + size, + unit, + query_box->data); /* Destroy the box */ if (query_box->qbox) @@ -603,8 +608,9 @@ boolean_query_box_true_callback (GtkWidget *widget, query_box = query_box_disconnect (data); /* Call the user defined callback */ - (* query_box->callback) (query_box->qbox, TRUE, - query_box->data); + (* (GimpQueryBooleanCallback) query_box->callback) (query_box->qbox, + TRUE, + query_box->data); /* Destroy the box */ if (query_box->qbox) @@ -622,8 +628,9 @@ boolean_query_box_false_callback (GtkWidget *widget, query_box = query_box_disconnect (data); /* Call the user defined callback */ - (* query_box->callback) (query_box->qbox, FALSE, - query_box->data); + (* (GimpQueryBooleanCallback) query_box->callback) (query_box->qbox, + FALSE, + query_box->data); /* Destroy the box */ if (query_box->qbox) diff --git a/libgimpwidgets/gimpsizeentry.c b/libgimpwidgets/gimpsizeentry.c index e0586e69a1..bfa9cf3002 100644 --- a/libgimpwidgets/gimpsizeentry.c +++ b/libgimpwidgets/gimpsizeentry.c @@ -46,6 +46,7 @@ enum LAST_SIGNAL }; + struct _GimpSizeEntryField { GimpSizeEntry *gse; @@ -93,21 +94,22 @@ static guint gimp_size_entry_signals[LAST_SIGNAL] = { 0 }; static GtkTableClass *parent_class = NULL; + static void gimp_size_entry_destroy (GtkObject *object) { GimpSizeEntry *gse; - GSList *list; - g_return_if_fail (object != NULL); g_return_if_fail (GIMP_IS_SIZE_ENTRY (object)); gse = GIMP_SIZE_ENTRY (object); - for (list = gse->fields; list; list = g_slist_next (list)) - g_free (list->data); - - g_slist_free (gse->fields); + if (gse->fields) + { + g_slist_foreach (gse->fields, (GFunc) g_free, NULL); + g_slist_free (gse->fields); + gse->fields = NULL; + } if (GTK_OBJECT_CLASS (parent_class)->destroy) GTK_OBJECT_CLASS (parent_class)->destroy (object); @@ -120,40 +122,40 @@ gimp_size_entry_class_init (GimpSizeEntryClass *klass) object_class = (GtkObjectClass*) klass; - parent_class = gtk_type_class (GTK_TYPE_TABLE); + parent_class = g_type_class_peek_parent (klass); - gimp_size_entry_signals[VALUE_CHANGED] = - gtk_signal_new ("value_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpSizeEntryClass, - value_changed), - gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); + gimp_size_entry_signals[VALUE_CHANGED] = + g_signal_new ("value_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpSizeEntryClass, value_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gimp_size_entry_signals[REFVAL_CHANGED] = - gtk_signal_new ("refval_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpSizeEntryClass, - refval_changed), - gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); + gimp_size_entry_signals[REFVAL_CHANGED] = + g_signal_new ("refval_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpSizeEntryClass, refval_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); - gimp_size_entry_signals[UNIT_CHANGED] = - gtk_signal_new ("unit_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpSizeEntryClass, - unit_changed), - gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, gimp_size_entry_signals, - LAST_SIGNAL); + gimp_size_entry_signals[UNIT_CHANGED] = + g_signal_new ("unit_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpSizeEntryClass, unit_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); object_class->destroy = gimp_size_entry_destroy; - klass->value_changed = NULL; + klass->value_changed = NULL; klass->refval_changed = NULL; - klass->unit_changed = NULL; + klass->unit_changed = NULL; } static void @@ -169,10 +171,10 @@ gimp_size_entry_init (GimpSizeEntry *gse) gse->update_policy = GIMP_SIZE_ENTRY_UPDATE_NONE; } -GtkType +GType gimp_size_entry_get_type (void) { - static guint gse_type = 0; + static GType gse_type = 0; if (! gse_type) { @@ -314,8 +316,6 @@ gimp_size_entry_new (gint number_of_fields, (unit == GIMP_UNIT_PIXEL) ? gsef->refval_digits : (unit == GIMP_UNIT_PERCENT) ? 2 : GIMP_SIZE_ENTRY_DIGITS (unit)); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON(gsef->value_spinbutton), - GTK_SHADOW_NONE); gtk_widget_set_usize (gsef->value_spinbutton, spinbutton_usize, 0); gtk_table_attach_defaults (GTK_TABLE (gse), gsef->value_spinbutton, i+1, i+2, @@ -336,8 +336,6 @@ gimp_size_entry_new (gint number_of_fields, gtk_spin_button_new (GTK_ADJUSTMENT (gsef->refval_adjustment), 1.0, gsef->refval_digits); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (gsef->refval_spinbutton), - GTK_SHADOW_NONE); gtk_widget_set_usize (gsef->refval_spinbutton, spinbutton_usize, 0); gtk_table_attach_defaults (GTK_TABLE (gse), gsef->refval_spinbutton, i + 1, i + 2, 1, 2); diff --git a/libgimpwidgets/gimpsizeentry.h b/libgimpwidgets/gimpsizeentry.h index 23f34cc11e..3c85baa65f 100644 --- a/libgimpwidgets/gimpsizeentry.h +++ b/libgimpwidgets/gimpsizeentry.h @@ -32,10 +32,10 @@ extern "C" { #define GIMP_TYPE_SIZE_ENTRY (gimp_size_entry_get_type ()) -#define GIMP_SIZE_ENTRY(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_SIZE_ENTRY, GimpSizeEntry)) -#define GIMP_SIZE_ENTRY_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SIZE_ENTRY, GimpSizeEntryClass)) -#define GIMP_IS_SIZE_ENTRY(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_SIZE_ENTRY)) -#define GIMP_IS_SIZE_ENTRY_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SIZE_ENTRY)) +#define GIMP_SIZE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_SIZE_ENTRY, GimpSizeEntry)) +#define GIMP_SIZE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SIZE_ENTRY, GimpSizeEntryClass)) +#define GIMP_IS_SIZE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_SIZE_ENTRY)) +#define GIMP_IS_SIZE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SIZE_ENTRY)) typedef struct _GimpSizeEntryClass GimpSizeEntryClass; diff --git a/libgimpwidgets/gimpunitmenu.c b/libgimpwidgets/gimpunitmenu.c index fe0b5e3115..f1650c9a16 100644 --- a/libgimpwidgets/gimpunitmenu.c +++ b/libgimpwidgets/gimpunitmenu.c @@ -35,81 +35,35 @@ #include "libgimp/libgimp-intl.h" -/* private functions */ -static const gchar * gimp_unit_menu_build_string (const gchar *format, - GimpUnit unit); -static void gimp_unit_menu_callback (GtkWidget *widget, - gpointer data); - enum { UNIT_CHANGED, LAST_SIGNAL }; + +static void gimp_unit_menu_class_init (GimpUnitMenuClass *klass); +static void gimp_unit_menu_init (GimpUnitMenu *gum); + +static void gimp_unit_menu_destroy (GtkObject *object); + +static const gchar * gimp_unit_menu_build_string (const gchar *format, + GimpUnit unit); +static void gimp_unit_menu_callback (GtkWidget *widget, + gpointer data); + + static guint gimp_unit_menu_signals[LAST_SIGNAL] = { 0 }; static GtkOptionMenuClass *parent_class = NULL; -static void -gimp_unit_menu_destroy (GtkObject *object) -{ - GimpUnitMenu *gum; - g_return_if_fail (object != NULL); - g_return_if_fail (GIMP_IS_UNIT_MENU (object)); - - gum = GIMP_UNIT_MENU (object); - - if (gum->format) - g_free (gum->format); - - if (GTK_OBJECT_CLASS (parent_class)->destroy) - (* GTK_OBJECT_CLASS (parent_class)->destroy) (object); -} - -static void -gimp_unit_menu_class_init (GimpUnitMenuClass *klass) -{ - GtkObjectClass *object_class; - - object_class = (GtkObjectClass*) klass; - - parent_class = gtk_type_class (gtk_option_menu_get_type ()); - - gimp_unit_menu_signals[UNIT_CHANGED] = - gtk_signal_new ("unit_changed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (GimpUnitMenuClass, - unit_changed), - gtk_signal_default_marshaller, GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, gimp_unit_menu_signals, - LAST_SIGNAL); - - klass->unit_changed = NULL; - - object_class->destroy = gimp_unit_menu_destroy; -} - -static void -gimp_unit_menu_init (GimpUnitMenu *gum) -{ - gum->format = NULL; - gum->unit = GIMP_UNIT_PIXEL; - gum->show_pixels = FALSE; - gum->show_percent = FALSE; - gum->selection = NULL; - gum->clist = NULL; -} - -GtkType +GType gimp_unit_menu_get_type (void) { - static GtkType gum_type = 0; + static GType gum_type = 0; - if (!gum_type) + if (! gum_type) { GtkTypeInfo gum_info = { @@ -129,6 +83,59 @@ gimp_unit_menu_get_type (void) return gum_type; } +static void +gimp_unit_menu_class_init (GimpUnitMenuClass *klass) +{ + GtkObjectClass *object_class; + + object_class = (GtkObjectClass *) klass; + + parent_class = g_type_class_peek_parent (klass); + + gimp_unit_menu_signals[UNIT_CHANGED] = + g_signal_new ("unit_changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (GimpUnitMenuClass, unit_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); + + object_class->destroy = gimp_unit_menu_destroy; + + klass->unit_changed = NULL; +} + +static void +gimp_unit_menu_init (GimpUnitMenu *gum) +{ + gum->format = NULL; + gum->unit = GIMP_UNIT_PIXEL; + gum->show_pixels = FALSE; + gum->show_percent = FALSE; + gum->selection = NULL; + gum->clist = NULL; +} + +static void +gimp_unit_menu_destroy (GtkObject *object) +{ + GimpUnitMenu *gum; + + g_return_if_fail (GIMP_IS_UNIT_MENU (object)); + + gum = GIMP_UNIT_MENU (object); + + if (gum->format) + { + g_free (gum->format); + gum->format = NULL; + } + + if (GTK_OBJECT_CLASS (parent_class)->destroy) + GTK_OBJECT_CLASS (parent_class)->destroy (object); +} + /** * gimp_unit_menu_new: * @format: A printf-like format string which is used to create the unit @@ -187,7 +194,7 @@ gimp_unit_menu_new (const gchar *format, menuitem = gtk_menu_item_new_with_label (gimp_unit_menu_build_string (format, GIMP_UNIT_PERCENT)); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (gimp_unit_menu_callback), gum); @@ -199,7 +206,7 @@ gimp_unit_menu_new (const gchar *format, if (show_pixels || show_percent) { menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_set_sensitive (menuitem, FALSE); gtk_widget_show (menuitem); } @@ -207,7 +214,7 @@ gimp_unit_menu_new (const gchar *format, menuitem = gtk_menu_item_new_with_label (gimp_unit_menu_build_string (format, u)); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (gimp_unit_menu_callback), gum); @@ -220,13 +227,13 @@ gimp_unit_menu_new (const gchar *format, (unit != GIMP_UNIT_PERCENT)) { menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_set_sensitive (menuitem, FALSE); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (gimp_unit_menu_build_string (format, unit)); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (gimp_unit_menu_callback), gum); @@ -238,13 +245,13 @@ gimp_unit_menu_new (const gchar *format, if (show_custom) { menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_widget_set_sensitive (menuitem, FALSE); gtk_widget_show (menuitem); menuitem = gtk_menu_item_new_with_label (_("More...")); - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (gimp_unit_menu_callback), gum); @@ -310,7 +317,7 @@ gimp_unit_menu_set_unit (GimpUnitMenu *gum, } menuitem = gtk_menu_item_new (); - gtk_menu_append (GTK_MENU (GTK_OPTION_MENU (gum)->menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (GTK_OPTION_MENU (gum)->menu), menuitem); gtk_widget_set_sensitive (menuitem, FALSE); gtk_menu_reorder_child (GTK_MENU (GTK_OPTION_MENU (gum)->menu), menuitem, user_unit - 1); @@ -319,7 +326,8 @@ gimp_unit_menu_set_unit (GimpUnitMenu *gum, menuitem = gtk_menu_item_new_with_label (gimp_unit_menu_build_string (gum->format, unit)); - gtk_menu_append (GTK_MENU (GTK_OPTION_MENU (gum)->menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (GTK_OPTION_MENU (gum)->menu), + menuitem); gtk_signal_connect (GTK_OBJECT (menuitem), "activate", GTK_SIGNAL_FUNC (gimp_unit_menu_callback), gum); diff --git a/libgimpwidgets/gimpunitmenu.h b/libgimpwidgets/gimpunitmenu.h index 5a3b236c58..3a52310ab5 100644 --- a/libgimpwidgets/gimpunitmenu.h +++ b/libgimpwidgets/gimpunitmenu.h @@ -31,10 +31,10 @@ extern "C" { #define GIMP_TYPE_UNIT_MENU (gimp_unit_menu_get_type ()) -#define GIMP_UNIT_MENU(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_UNIT_MENU, GimpUnitMenu)) -#define GIMP_UNIT_MENU_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_UNIT_MENU, GimpUnitMenuClass)) -#define GIMP_IS_UNIT_MENU(obj) (GTK_CHECK_TYPE (obj, GIMP_TYPE_UNIT_MENU)) -#define GIMP_IS_UNIT_MENU_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_UNIT_MENU)) +#define GIMP_UNIT_MENU(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_UNIT_MENU, GimpUnitMenu)) +#define GIMP_UNIT_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_UNIT_MENU, GimpUnitMenuClass)) +#define GIMP_IS_UNIT_MENU(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GIMP_TYPE_UNIT_MENU)) +#define GIMP_IS_UNIT_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_UNIT_MENU)) typedef struct _GimpUnitMenuClass GimpUnitMenuClass; diff --git a/libgimpwidgets/gimpwidgets.c b/libgimpwidgets/gimpwidgets.c index 8755176df7..241e28f2a0 100644 --- a/libgimpwidgets/gimpwidgets.c +++ b/libgimpwidgets/gimpwidgets.c @@ -57,8 +57,8 @@ gimp_option_menu_new (gboolean menu_only, /* specify menu items as va_list: * const gchar *label, - * GtkSignalFunc callback, - * gpointer data, + * GCallback callback, + * gpointer callback_data, * gpointer user_data, * GtkWidget **widget_ptr, * gboolean active @@ -71,8 +71,8 @@ gimp_option_menu_new (gboolean menu_only, /* menu item variables */ const gchar *label; - GtkSignalFunc callback; - gpointer data; + GCallback callback; + gpointer callback_data; gpointer user_data; GtkWidget **widget_ptr; gboolean active; @@ -91,22 +91,22 @@ gimp_option_menu_new (gboolean menu_only, for (i = 0; label; i++) { - callback = va_arg (args, GtkSignalFunc); - data = va_arg (args, gpointer); - user_data = va_arg (args, gpointer); - widget_ptr = va_arg (args, GtkWidget **); - active = va_arg (args, gboolean); + callback = va_arg (args, GCallback); + callback_data = va_arg (args, gpointer); + user_data = va_arg (args, gpointer); + widget_ptr = va_arg (args, GtkWidget **); + active = va_arg (args, gboolean); if (strcmp (label, "---")) { menuitem = gtk_menu_item_new_with_label (label); - gtk_signal_connect (GTK_OBJECT (menuitem), "activate", - callback, - data); + g_signal_connect (G_OBJECT (menuitem), "activate", + callback, + callback_data); if (user_data) - gtk_object_set_user_data (GTK_OBJECT (menuitem), user_data); + g_object_set_data (G_OBJECT (menuitem), "user_data", user_data); } else { @@ -115,7 +115,7 @@ gimp_option_menu_new (gboolean menu_only, gtk_widget_set_sensitive (menuitem, FALSE); } - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); if (widget_ptr) *widget_ptr = menuitem; @@ -151,7 +151,7 @@ gimp_option_menu_new (gboolean menu_only, * @menu_only: #TRUE if the function should return a #GtkMenu only. * @menu_item_callback: The callback each menu item's "activate" signal will * be connected with. - * @data: The data which will be passed to gtk_signal_connect(). + * @callback_data: The data which will be passed to g_signal_connect(). * @initial: The @user_data of the initially selected menu item. * @...: A #NULL terminated @va_list describing the menu items. * @@ -159,8 +159,8 @@ gimp_option_menu_new (gboolean menu_only, **/ GtkWidget * gimp_option_menu_new2 (gboolean menu_only, - GtkSignalFunc menu_item_callback, - gpointer data, + GCallback menu_item_callback, + gpointer callback_data, gpointer initial, /* user_data */ /* specify menu items as va_list: @@ -200,12 +200,12 @@ gimp_option_menu_new2 (gboolean menu_only, { menuitem = gtk_menu_item_new_with_label (label); - gtk_signal_connect (GTK_OBJECT (menuitem), "activate", - menu_item_callback, - data); + g_signal_connect (G_OBJECT (menuitem), "activate", + menu_item_callback, + callback_data); if (user_data) - gtk_object_set_user_data (GTK_OBJECT (menuitem), user_data); + g_object_set_data (G_OBJECT (menuitem), "user_data", user_data); } else { @@ -214,7 +214,7 @@ gimp_option_menu_new2 (gboolean menu_only, gtk_widget_set_sensitive (menuitem, FALSE); } - gtk_menu_append (GTK_MENU (menu), menuitem); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem); if (widget_ptr) *widget_ptr = menuitem; @@ -269,7 +269,7 @@ gimp_option_menu_set_history (GtkOptionMenu *option_menu, menu_item = GTK_WIDGET (list->data); if (GTK_IS_LABEL (GTK_BIN (menu_item)->child) && - gtk_object_get_user_data (GTK_OBJECT (menu_item)) == user_data) + g_object_get_data (G_OBJECT (menu_item), "user_data") == user_data) { break; } @@ -295,8 +295,8 @@ gimp_radio_group_new (gboolean in_frame, /* specify radio buttons as va_list: * const gchar *label, - * GtkSignalFunc callback, - * gpointer data, + * GCallback callback, + * gpointer callback_data, * gpointer user_data, * GtkWidget **widget_ptr, * gboolean active, @@ -309,12 +309,12 @@ gimp_radio_group_new (gboolean in_frame, GSList *group; /* radio button variables */ - const gchar *label; - GtkSignalFunc callback; - gpointer data; - gpointer user_data; - GtkWidget **widget_ptr; - gboolean active; + const gchar *label; + GCallback callback; + gpointer callback_data; + gpointer user_data; + GtkWidget **widget_ptr; + gboolean active; va_list args; @@ -327,11 +327,11 @@ gimp_radio_group_new (gboolean in_frame, label = va_arg (args, const gchar *); while (label) { - callback = va_arg (args, GtkSignalFunc); - data = va_arg (args, gpointer); - user_data = va_arg (args, gpointer); - widget_ptr = va_arg (args, GtkWidget **); - active = va_arg (args, gboolean); + callback = va_arg (args, GCallback); + callback_data = va_arg (args, gpointer); + user_data = va_arg (args, gpointer); + widget_ptr = va_arg (args, GtkWidget **); + active = va_arg (args, gboolean); if (label != (gpointer) 1) button = gtk_radio_button_new_with_label (group, label); @@ -342,7 +342,7 @@ gimp_radio_group_new (gboolean in_frame, gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0); if (user_data) - gtk_object_set_user_data (GTK_OBJECT (button), user_data); + g_object_set_data (G_OBJECT (button), "user_data", user_data); if (widget_ptr) *widget_ptr = button; @@ -350,9 +350,9 @@ gimp_radio_group_new (gboolean in_frame, if (active) gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE); - gtk_signal_connect (GTK_OBJECT (button), "toggled", - callback, - data); + g_signal_connect (G_OBJECT (button), "toggled", + callback, + callback_data); gtk_widget_show (button); @@ -384,8 +384,8 @@ gimp_radio_group_new (gboolean in_frame, * a title. * @radio_button_callback: The callback each button's "toggled" signal will * be connected with. - * @data: The data which will be passed to - * gtk_signal_connect(). + * @callback_data: The data which will be passed to + * g_signal_connect(). * @initial: The @user_data of the initially pressed radio button. * @...: A #NULL terminated @va_list describing * the radio buttons. @@ -395,8 +395,8 @@ gimp_radio_group_new (gboolean in_frame, GtkWidget * gimp_radio_group_new2 (gboolean in_frame, const gchar *frame_title, - GtkSignalFunc radio_button_callback, - gpointer data, + GCallback radio_button_callback, + gpointer callback_data, gpointer initial, /* user_data */ /* specify radio buttons as va_list: @@ -440,7 +440,7 @@ gimp_radio_group_new2 (gboolean in_frame, gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0); if (user_data) - gtk_object_set_user_data (GTK_OBJECT (button), user_data); + g_object_set_data (G_OBJECT (button), "user_data", user_data); if (widget_ptr) *widget_ptr = button; @@ -448,9 +448,9 @@ gimp_radio_group_new2 (gboolean in_frame, if (initial == user_data) gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE); - gtk_signal_connect (GTK_OBJECT (button), "toggled", - radio_button_callback, - data); + g_signal_connect (G_OBJECT (button), "toggled", + radio_button_callback, + callback_data); gtk_widget_show (button); @@ -510,8 +510,6 @@ gimp_spin_button_new (GtkObject **adjustment, /* return value */ spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (*adjustment), climb_rate, digits); - gtk_spin_button_set_shadow_type (GTK_SPIN_BUTTON (spinbutton), - GTK_SHADOW_NONE); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (spinbutton), TRUE); gtk_widget_set_usize (spinbutton, 75, -1); @@ -522,11 +520,15 @@ static void gimp_scale_entry_unconstrained_adjustment_callback (GtkAdjustment *adjustment, GtkAdjustment *other_adj) { - gtk_signal_handler_block_by_data (GTK_OBJECT (other_adj), adjustment); + g_signal_handlers_block_by_func (G_OBJECT (other_adj), + gimp_scale_entry_unconstrained_adjustment_callback, + adjustment); gtk_adjustment_set_value (other_adj, adjustment->value); - gtk_signal_handler_unblock_by_data (GTK_OBJECT (other_adj), adjustment); + g_signal_handlers_unblock_by_func (G_OBJECT (other_adj), + gimp_scale_entry_unconstrained_adjustment_callback, + adjustment); } /** @@ -609,14 +611,14 @@ gimp_scale_entry_new (GtkTable *table, step_increment, page_increment, 0.0, 1.0, digits); - gtk_signal_connect - (GTK_OBJECT (constrained_adj), "value_changed", - GTK_SIGNAL_FUNC (gimp_scale_entry_unconstrained_adjustment_callback), + g_signal_connect + (G_OBJECT (constrained_adj), "value_changed", + G_CALLBACK (gimp_scale_entry_unconstrained_adjustment_callback), adjustment); - gtk_signal_connect - (GTK_OBJECT (adjustment), "value_changed", - GTK_SIGNAL_FUNC (gimp_scale_entry_unconstrained_adjustment_callback), + g_signal_connect + (G_OBJECT (adjustment), "value_changed", + G_CALLBACK (gimp_scale_entry_unconstrained_adjustment_callback), constrained_adj); return_adj = adjustment; @@ -656,9 +658,9 @@ gimp_scale_entry_new (GtkTable *table, gimp_help_set_help_data (spinbutton, tooltip, help_data); } - gtk_object_set_data (GTK_OBJECT (return_adj), "label", label); - gtk_object_set_data (GTK_OBJECT (return_adj), "scale", scale); - gtk_object_set_data (GTK_OBJECT (return_adj), "spinbutton", spinbutton); + g_object_set_data (G_OBJECT (return_adj), "label", label); + g_object_set_data (G_OBJECT (return_adj), "scale", scale); + g_object_set_data (G_OBJECT (return_adj), "spinbutton", spinbutton); return return_adj; } @@ -737,19 +739,19 @@ gimp_random_seed_new (gint *seed, "time - this guarantees a reasonable " "randomization"), NULL); - gtk_object_set_data (GTK_OBJECT (button), "time_true", - GINT_TO_POINTER (time_true)); - gtk_object_set_data (GTK_OBJECT (button), "time_false", - GINT_TO_POINTER (time_false)); + g_object_set_data (G_OBJECT (button), "time_true", + GINT_TO_POINTER (time_true)); + g_object_set_data (G_OBJECT (button), "time_false", + GINT_TO_POINTER (time_false)); - gtk_object_set_data (GTK_OBJECT (button), "inverse_sensitive", - spinbutton); + g_object_set_data (G_OBJECT (button), "inverse_sensitive", + spinbutton); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), *use_time == time_true); - gtk_object_set_data (GTK_OBJECT (hbox), "spinbutton", spinbutton); - gtk_object_set_data (GTK_OBJECT (hbox), "togglebutton", button); + g_object_set_data (G_OBJECT (hbox), "spinbutton", spinbutton); + g_object_set_data (G_OBJECT (hbox), "togglebutton", button); return hbox; } @@ -947,15 +949,15 @@ gimp_coordinates_new (GimpUnit unit, gcd->last_x = x; gcd->last_y = y; - gtk_signal_connect_object (GTK_OBJECT (sizeentry), "destroy", - GTK_SIGNAL_FUNC (g_free), - (GtkObject *) gcd); + g_signal_connect_swapped (G_OBJECT (sizeentry), "destroy", + G_CALLBACK (g_free), + gcd); - gtk_signal_connect (GTK_OBJECT (sizeentry), "value_changed", - GTK_SIGNAL_FUNC (gimp_coordinates_callback), - gcd); + g_signal_connect (G_OBJECT (sizeentry), "value_changed", + G_CALLBACK (gimp_coordinates_callback), + gcd); - gtk_object_set_data (GTK_OBJECT (sizeentry), "chainbutton", chainbutton); + g_object_set_data (G_OBJECT (sizeentry), "chainbutton", chainbutton); return sizeentry; } @@ -985,12 +987,13 @@ gimp_mem_size_unit_callback (GtkWidget *widget, gpointer data) { GimpMemSizeEntryData *gmsed; - guint divided_mem_size; - guint new_unit; + guint divided_mem_size; + guint new_unit; gmsed = (GimpMemSizeEntryData *)data; - new_unit = (guint) gtk_object_get_user_data (GTK_OBJECT (widget)); + new_unit = + GPOINTER_TO_UINT (g_object_get_data (G_OBJECT (widget), "user_data")); if (new_unit && new_unit != gmsed->mem_size_unit) { @@ -1043,7 +1046,7 @@ gimp_mem_size_entry_new (GtkAdjustment *adjustment) gtk_widget_show (spinbutton); optionmenu = - gimp_option_menu_new2 (FALSE, gimp_mem_size_unit_callback, + gimp_option_menu_new2 (FALSE, G_CALLBACK (gimp_mem_size_unit_callback), gmsed, (gpointer) mem_size_unit, _("Bytes"), (gpointer) 1, NULL, @@ -1054,19 +1057,19 @@ gimp_mem_size_entry_new (GtkAdjustment *adjustment) gtk_box_pack_start (GTK_BOX (hbox), optionmenu, FALSE, FALSE, 0); gtk_widget_show (optionmenu); - gtk_signal_connect_object (GTK_OBJECT (hbox), "destroy", - GTK_SIGNAL_FUNC (gtk_object_unref), - GTK_OBJECT (adjustment)); - gtk_signal_connect_object (GTK_OBJECT (hbox), "destroy", - GTK_SIGNAL_FUNC (g_free), - (GtkObject *) gmsed); + g_signal_connect_swapped (G_OBJECT (hbox), "destroy", + G_CALLBACK (gtk_object_unref), + adjustment); + g_signal_connect_swapped (G_OBJECT (hbox), "destroy", + G_CALLBACK (g_free), + gmsed); - gmsed->adjustment = adjustment; - gmsed->divided_adj = GTK_ADJUSTMENT (divided_adj); + gmsed->adjustment = adjustment; + gmsed->divided_adj = GTK_ADJUSTMENT (divided_adj); gmsed->mem_size_unit = mem_size_unit; - gtk_object_set_data (GTK_OBJECT (hbox), "spinbutton", spinbutton); - gtk_object_set_data (GTK_OBJECT (hbox), "optionmenu", optionmenu); + g_object_set_data (G_OBJECT (hbox), "spinbutton", spinbutton); + g_object_set_data (G_OBJECT (hbox), "optionmenu", optionmenu); return hbox; } @@ -1128,7 +1131,7 @@ gimp_pixmap_button_new (gchar **xpm_data, * @toggle_button: The #GtkToggleButton the "set_sensitive" and * "inverse_sensitive" lists are attached to. * - * If you attached a pointer to a #GtkWidget with gtk_object_set_data() and + * If you attached a pointer to a #GtkWidget with g_object_set_data() and * the "set_sensitive" key to the #GtkToggleButton, the sensitive state of * the attached widget will be set according to the toggle button's * "active" state. @@ -1209,8 +1212,8 @@ gimp_radio_button_update (GtkWidget *widget, { toggle_val = (gint *) data; - *toggle_val = - GPOINTER_TO_INT (gtk_object_get_user_data (GTK_OBJECT (widget))); + *toggle_val = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (widget), + "user_data")); } gimp_toggle_button_sensitive_update (GTK_TOGGLE_BUTTON (widget)); @@ -1230,7 +1233,8 @@ gimp_menu_item_update (GtkWidget *widget, item_val = (gint *) data; - *item_val = GPOINTER_TO_INT (gtk_object_get_user_data (GTK_OBJECT (widget))); + *item_val = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (widget), + "user_data")); } /** @@ -1311,7 +1315,7 @@ gimp_double_adjustment_update (GtkAdjustment *adjustment, * * This callback can set the number of decimal digits of an arbitrary number * of #GtkSpinButton's. To use this functionality, attach the spinbuttons - * as list of data pointers attached with gtk_object_set_data() with the + * as list of data pointers attached with g_object_set_data() with the * "set_digits" key. * * See gimp_toggle_button_sensitive_update() for a description of how diff --git a/libgimpwidgets/gimpwidgets.h b/libgimpwidgets/gimpwidgets.h index 7e84cad212..89e37e0037 100644 --- a/libgimpwidgets/gimpwidgets.h +++ b/libgimpwidgets/gimpwidgets.h @@ -55,7 +55,7 @@ GtkWidget * gimp_option_menu_new (gboolean menu_only, /* specify menu items as va_list: * gchar *label, - * GtkSignalFunc callback, + * GCallback callback, * gpointer data, * gpointer user_data, * GtkWidget **widget_ptr, @@ -65,7 +65,7 @@ GtkWidget * gimp_option_menu_new (gboolean menu_only, ...); GtkWidget * gimp_option_menu_new2 (gboolean menu_only, - GtkSignalFunc menu_item_callback, + GCallback menu_item_callback, gpointer data, gpointer initial, /* user_data */ @@ -85,7 +85,7 @@ GtkWidget * gimp_radio_group_new (gboolean in_frame, /* specify radio buttons as va_list: * const gchar *label, - * GtkSignalFunc callback, + * GCallback callback, * gpointer data, * gpointer user_data, * GtkWidget **widget_ptr, @@ -96,7 +96,7 @@ GtkWidget * gimp_radio_group_new (gboolean in_frame, GtkWidget * gimp_radio_group_new2 (gboolean in_frame, const gchar *frame_title, - GtkSignalFunc radio_button_callback, + GCallback radio_button_callback, gpointer data, gpointer initial, /* user_data */ diff --git a/modules/Makefile.am b/modules/Makefile.am index 3d96d9bd70..44fe0cd367 100644 --- a/modules/Makefile.am +++ b/modules/Makefile.am @@ -23,7 +23,8 @@ EXTRA_DIST = \ libexec_LTLIBRARIES = @STRIP_BEGIN@ \ libcolorsel_triangle.la \ - libcolorsel_water.la \ +## libcolorsel_gtk.la \ +## libcolorsel_water.la \ @STRIP_END@ EXTRA_LTLIBRARIES += @@ -36,9 +37,9 @@ libcolorsel_triangle_la_SOURCES = colorsel_triangle.c libcolorsel_triangle_la_LDFLAGS = -avoid-version -module libcolorsel_triangle_la_LIBADD = $(GTK_LIBS) -libcolorsel_water_la_SOURCES = colorsel_water.c -libcolorsel_water_la_LDFLAGS = -avoid-version -module -libcolorsel_water_la_LIBADD = $(GTK_LIBS) +## libcolorsel_water_la_SOURCES = colorsel_water.c +## libcolorsel_water_la_LDFLAGS = -avoid-version -module +## libcolorsel_water_la_LIBADD = $(GTK_LIBS) ## libcdisplay_gamma_la_SOURCES = cdisplay_gamma.c ## libcdisplay_gamma_la_LDFLAGS = -avoid-version -module diff --git a/plug-ins/Makefile.am b/plug-ins/Makefile.am index c438c33dbd..2c59e4f0c7 100644 --- a/plug-ins/Makefile.am +++ b/plug-ins/Makefile.am @@ -30,9 +30,9 @@ EXTRA_DIST = \ SUBDIRS = \ libgck \ - dbbrowser \ - script-fu \ - $(GIMP_PERL) \ +## dbbrowser \ +## script-fu \ +## $(GIMP_PERL) \ FractalExplorer \ Lighting \ MapObject \ @@ -41,15 +41,15 @@ SUBDIRS = \ fits \ flame \ fp \ - gap \ - gdyntext \ - gfig \ - gflare \ +## gap \ +## gdyntext \ +## gfig \ +## gflare \ gfli \ - gimpressionist \ +## gimpressionist \ $(HELPBROWSER) \ ifscompose \ - imagemap \ +## imagemap \ maze \ mosaic \ pagecurl \ diff --git a/plug-ins/common/.cvsignore b/plug-ins/common/.cvsignore index 9c5ff69f2b..673d460166 100644 --- a/plug-ins/common/.cvsignore +++ b/plug-ins/common/.cvsignore @@ -48,7 +48,6 @@ gbr gee gee_zoom gicon -gif gifload gih glasstile @@ -64,16 +63,13 @@ hrz illusion iwarp jigsaw -jpeg laplace lic -mail mapcolor max_rgb mblur mpeg newsprint -nlfilt noisify normalize nova @@ -84,7 +80,6 @@ pcx pix pixelize plasma -plugindetails png pnm polar diff --git a/plug-ins/common/Makefile.am b/plug-ins/common/Makefile.am index 405481066b..ebd4d5d51a 100644 --- a/plug-ins/common/Makefile.am +++ b/plug-ins/common/Makefile.am @@ -67,7 +67,6 @@ libexec_PROGRAMS = @STRIP_BEGIN@ \ gee \ gee_zoom \ gicon \ - gif \ gifload \ gih \ glasstile \ @@ -83,16 +82,13 @@ libexec_PROGRAMS = @STRIP_BEGIN@ \ illusion \ iwarp \ jigsaw \ - $(JPEG) \ laplace \ lic \ - mail \ mapcolor \ max_rgb \ mblur \ $(MPEG) \ newsprint \ - nlfilt \ noisify \ normalize \ nova \ @@ -103,7 +99,6 @@ libexec_PROGRAMS = @STRIP_BEGIN@ \ pix \ pixelize \ plasma \ - plugindetails \ $(PNG) \ pnm \ polar \ @@ -153,7 +148,6 @@ libexec_PROGRAMS = @STRIP_BEGIN@ \ EXTRA_PROGRAMS = \ aa \ - jpeg \ mpeg \ png \ psp \ @@ -803,20 +797,6 @@ gicon_LDADD = @STRIP_BEGIN@ \ $(INTLLIBS) \ @STRIP_END@ -gif_SOURCES = @STRIP_BEGIN@ \ - gif.c \ -@STRIP_END@ - -gif_LDADD = @STRIP_BEGIN@ \ - $(top_builddir)/libgimp/libgimpui-$(LT_RELEASE).la \ - $(top_builddir)/libgimp/libgimp-$(LT_RELEASE).la \ - $(top_builddir)/libgimpwidgets/libgimpwidgets-$(LT_RELEASE).la \ - $(top_builddir)/libgimpcolor/libgimpcolor-$(LT_RELEASE).la \ - $(top_builddir)/libgimpbase/libgimpbase-$(LT_RELEASE).la \ - $(GTK_LIBS) \ - $(INTLLIBS) \ -@STRIP_END@ - gifload_SOURCES = @STRIP_BEGIN@ \ gifload.c \ @STRIP_END@ @@ -1021,21 +1001,6 @@ jigsaw_LDADD = @STRIP_BEGIN@ \ $(INTLLIBS) \ @STRIP_END@ -jpeg_SOURCES = @STRIP_BEGIN@ \ - jpeg.c \ -@STRIP_END@ - -jpeg_LDADD = @STRIP_BEGIN@ \ - $(top_builddir)/libgimp/libgimpui-$(LT_RELEASE).la \ - $(top_builddir)/libgimp/libgimp-$(LT_RELEASE).la \ - $(top_builddir)/libgimpwidgets/libgimpwidgets-$(LT_RELEASE).la \ - $(top_builddir)/libgimpcolor/libgimpcolor-$(LT_RELEASE).la \ - $(top_builddir)/libgimpbase/libgimpbase-$(LT_RELEASE).la \ - $(LIBJPEG) \ - $(GTK_LIBS) \ - $(INTLLIBS) \ -@STRIP_END@ - laplace_SOURCES = @STRIP_BEGIN@ \ laplace.c \ @STRIP_END@ @@ -1064,20 +1029,6 @@ lic_LDADD = @STRIP_BEGIN@ \ $(INTLLIBS) \ @STRIP_END@ -mail_SOURCES = @STRIP_BEGIN@ \ - mail.c \ -@STRIP_END@ - -mail_LDADD = @STRIP_BEGIN@ \ - $(top_builddir)/libgimp/libgimpui-$(LT_RELEASE).la \ - $(top_builddir)/libgimp/libgimp-$(LT_RELEASE).la \ - $(top_builddir)/libgimpwidgets/libgimpwidgets-$(LT_RELEASE).la \ - $(top_builddir)/libgimpcolor/libgimpcolor-$(LT_RELEASE).la \ - $(top_builddir)/libgimpbase/libgimpbase-$(LT_RELEASE).la \ - $(GTK_LIBS) \ - $(INTLLIBS) \ -@STRIP_END@ - mapcolor_SOURCES = @STRIP_BEGIN@ \ mapcolor.c \ @STRIP_END@ @@ -1147,20 +1098,6 @@ newsprint_LDADD = @STRIP_BEGIN@ \ $(INTLLIBS) \ @STRIP_END@ -nlfilt_SOURCES = @STRIP_BEGIN@ \ - nlfilt.c \ -@STRIP_END@ - -nlfilt_LDADD = @STRIP_BEGIN@ \ - $(top_builddir)/libgimp/libgimpui-$(LT_RELEASE).la \ - $(top_builddir)/libgimp/libgimp-$(LT_RELEASE).la \ - $(top_builddir)/libgimpwidgets/libgimpwidgets-$(LT_RELEASE).la \ - $(top_builddir)/libgimpcolor/libgimpcolor-$(LT_RELEASE).la \ - $(top_builddir)/libgimpbase/libgimpbase-$(LT_RELEASE).la \ - $(GTK_LIBS) \ - $(INTLLIBS) \ -@STRIP_END@ - noisify_SOURCES = @STRIP_BEGIN@ \ noisify.c \ @STRIP_END@ @@ -1299,20 +1236,6 @@ plasma_LDADD = @STRIP_BEGIN@ \ $(INTLLIBS) \ @STRIP_END@ -plugindetails_SOURCES = @STRIP_BEGIN@ \ - plugindetails.c \ -@STRIP_END@ - -plugindetails_LDADD = @STRIP_BEGIN@ \ - $(top_builddir)/libgimp/libgimpui-$(LT_RELEASE).la \ - $(top_builddir)/libgimp/libgimp-$(LT_RELEASE).la \ - $(top_builddir)/libgimpwidgets/libgimpwidgets-$(LT_RELEASE).la \ - $(top_builddir)/libgimpcolor/libgimpcolor-$(LT_RELEASE).la \ - $(top_builddir)/libgimpbase/libgimpbase-$(LT_RELEASE).la \ - $(GTK_LIBS) \ - $(INTLLIBS) \ -@STRIP_END@ - png_SOURCES = @STRIP_BEGIN@ \ png.c \ @STRIP_END@ diff --git a/plug-ins/common/plugin-defs.pl b/plug-ins/common/plugin-defs.pl index e38e1daad3..801eb0e60c 100644 --- a/plug-ins/common/plugin-defs.pl +++ b/plug-ins/common/plugin-defs.pl @@ -45,7 +45,7 @@ 'gee' => { libdep => 'gtk', ui => 1 }, 'gee_zoom' => { libdep => 'gtk', ui => 1 }, 'gicon' => { libdep => 'gtk', ui => 1 }, - 'gif' => { libdep => 'gtk', ui => 1 }, +# 'gif' => { libdep => 'gtk', ui => 1 }, 'gifload' => { libdep => 'gtk' }, 'gih' => { libdep => 'gtk', ui => 1 }, 'glasstile' => { libdep => 'gtk', ui => 1 }, @@ -61,16 +61,16 @@ 'illusion' => { libdep => 'gtk', ui => 1 }, 'iwarp' => { libdep => 'gtk', ui => 1 }, 'jigsaw' => { libdep => 'gtk', ui => 1 }, - 'jpeg' => { libdep => 'gtk', ui => 1, optional => 1 }, +# 'jpeg' => { libdep => 'gtk', ui => 1, optional => 1 }, 'laplace' => { libdep => 'glib', ui => 1 }, 'lic' => { libdep => 'gtk', ui => 1 }, - 'mail' => { libdep => 'gtk', ui => 1 }, +# 'mail' => { libdep => 'gtk', ui => 1 }, 'mapcolor' => { libdep => 'gtk', ui => 1 }, 'max_rgb' => { libdep => 'gtk', ui => 1 }, 'mblur' => { libdep => 'gtk', ui => 1 }, 'mpeg' => { libdep => 'gtk', optional => 1 }, 'newsprint' => { libdep => 'gtk', ui => 1 }, - 'nlfilt' => { libdep => 'gtk', ui => 1 }, +# 'nlfilt' => { libdep => 'gtk', ui => 1 }, 'noisify' => { libdep => 'gtk', ui => 1 }, 'normalize' => { libdep => 'glib' }, 'nova' => { libdep => 'gtk', ui => 1 }, @@ -81,7 +81,7 @@ 'pix' => { libdep => 'gtk', ui => 1 }, 'pixelize' => { libdep => 'gtk', ui => 1 }, 'plasma' => { libdep => 'gtk', ui => 1 }, - 'plugindetails' => { libdep => 'gtk', ui => 1 }, +# 'plugindetails' => { libdep => 'gtk', ui => 1 }, 'png' => { libdep => 'gtk', ui => 1, optional => 1 }, 'pnm' => { libdep => 'gtk', ui => 1 }, 'polar' => { libdep => 'gtk', ui => 1 },