2001-10-17 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpchannellistview.c: added a handler for GimpImage's
"alpha_changed" signal (does nothing yet).
* app/widgets/[lots of files]: somehow my last perl torturing
removed my email address from the copyright notice. Another perl
hack brought it back now :)
2001-08-07 Michael Natterer <mitch@gimp.org>
* app/disp_callbacks.c: removed a gdk_pointer_ungrab(), it was
only there because of buggy gtk+ 1.2.x. Cosmetic changes.
* app/undo.c: use G_N_ELEMENTS() instead of
sizeof(array)/sizeof(element).
* app/gui/menus.c: more stock icons, moved the item_factory
creation into the menus_get_foo_factory() functions, use
G_N_ELEMENTS(). This file badly needs to be spit up...
* app/core/gimpviewable.[ch]
* app/widgets/gimpcontainermenu.[ch]
* app/widgets/gimpcontainerview.[ch]
* app/widgets/gimplistitem.[ch]
* app/widgets/gimpmenuitem.[ch]
* app/widgets/gimppreview.[ch]: replaced tons of signal emissions
by virtual functions which are *much* faster. Moreover, all of
them are private implementation bits of the specific class
hierarchy and are useless or even dangerous to be exposed as
signals.
* app/widgets/gimpdrawablelistitem.c: removed the drag_motion()
implementation as it's already done in the parent class.
* app/widgets/gimplistitem.[ch]
* app/widgets/gimplayerlistitem.c: redraw the widget when the
drop_type has changed. Fixes drop_indicator drawing.
2001-07-24 Michael Natterer <mitch@gimp.org>
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-05-06 Michael Natterer <mitch@gimp.org>
* app/gimpimage.[ch]: renamed the "resize" signal to "size_changed".
* app/gimage.c: changed accordingly.
* app/undo.c: renamed the "shrink_wrap" to "size_changed", call
gimp_image_size_changed() and let the handlers do the work.
* app/widgets/gimplistitem.[ch]: added a virtual set_preview_size()
method and a default implementation.
* app/widgets/gimplayerlistitem.c: added an inplementation of
set_preview_size() which set's the size of the mask preview.
* app/widgets/gimpchannellistview.c: implement set_preview_size()
and set the size of the component previews.
* app/widgets/gimpcontainerlistview.c: call
gimp_list_item_set_preview_size() instead of resizing the preview
manually.
* app/widgets/gimpcontainerview.c: emit "set_preview_size" even if
the size has not changed so we can use it to re-calculate the
preview size on image size change.
* app/widgets/gimpdrawablelistview.c: connect to the image's
"size_changed" signal and trigger preview size re-calculation in
the callback.
2001-05-03 Michael Natterer <mitch@gimp.org>
* app/apptypes.h: removed typedefs from the widgets/ subdir.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h: new file.
* app/widgets/gimpcontainermenu.[ch]
* app/widgets/gimpcontainerview.[ch]: synced them again and added a
"get_name_func"
* app/widgets/gimplistitem.[ch]
* app/widgets/gimpmenuitem.[ch]: add a "get_name_func" and use it
to get the item's name.
* app/widgets/gimpcontainerlistview.c
* app/widgets/gimpcontainermenuimpl.c: pass the get_name_func to
the created items.
* app/widgets/gimpchannellistview.c: gtk_widget_queue_resize() the
component frame after changing the image.
* app/widgets/gimpcomponentlistitem.c: set a custom
get_name_func() so the components are named Red, Green, ... again.
* app/widgets/gimpimagedock.c: set a custom get_name_func() which
returns names like in the old L&C dialog's image menu.
* tools/pdbgen/Makefile.am: don't scan apptypes.h for enums.
2001-05-03 Michael Natterer <mitch@gimp.org>
* app/app_procs.c: don't #include "gui/color-select.h"
* app/disp_callbacks.[ch]: renamed gdisplay_drop_viewable() to
gdisplay_drop_pattern().
* app/gimpimage.[ch]: added new signals
"component_visibility_changed" and "component_active_changed" and
emit them in the resp. accessors.
* app/interface.c: removed old GimpPreview test code.
* app/widgets/Makefile.am
* app/apptypes.h
* app/widgets/gimpchannellistview.[ch]
* app/widgets/gimpcomponentlistitem.[ch]: new (unfinished) widgets.
* app/widgets/gimpdockbook.c: switch to the right-clicked notebook
page before showing the menu.
* app/widgets/gimpdrawablelistitem.[ch]: removed the protected
functions which make the toggle buttons look nicer...
* app/widgets/gimplistitem.[ch]: ...and added them here.
* app/widgets/gimpdrawablelistview.[ch]: virtualized set_image()
so subclasses can properly (dis)connect on image change.
* app/widgets/gimpdrawablepreview.c
* app/widgets/gimpimagepreview.[ch]: removed the calc_size()
functions which calculate the preview's aspect ratio...
* app/widgets/gimppreview.[ch]: ...and added then here as
protected functions.
* app/widgets/gimplayerlistitem.c: flush displays after changing
the layer mask's "apply" or "show" state.
2001-04-22 Michael Natterer <mitch@gimp.org>
* app/Makefile.am: cleanup.
* app/interface.c: #include "gimpui.h"
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/menus.c
* app/gui/test-commands.[ch]: changes for the image menu below.
* app/apptypes.h
* app/widgets/Makefile.am
* app/widgets/gimpcontainermenu.[ch]
* app/widgets/gimpcontainermenuimpl.[ch]: new widgets. The actual
implemtation lives in a separate file because
gimpcontainermenu.c's code is identical to gimpcontainerview.c's
except for the base class. This will become an interface with Gtk 2.0.
* app/widgets/gimpimagedock.[ch]: a dock with an image menu. The
pages still don't follow the context correctly.
* app/widgets/gimpmenuitem.[ch]: a menu item with a preview.
* app/widgets/gimpdialogfactory.[ch]: pass a dock constructor to
the constructor and provide a method to create a new dock within
this factory's context.
* app/widgets/gimpdock.[ch]: removed the constructor because we
create only image docks now. Put the vbox into a main_vbox (which
also contains the image menu).
* app/widgets/gimpdockbook.[ch]: create new docks with the dialog
factory.
* app/gimpcontainer.[ch]
* app/gimpdata.[ch]
* app/gimpdatafactory.[ch]
* app/gimpdatalist.[ch]
* app/gimplist.[ch]
* app/gimpviewable.[ch]
* app/widgets/gimpbrushpreview.[ch]
* app/widgets/gimpcontainergridview.[ch]
* app/widgets/gimpcontainerlistview.[ch]
* app/widgets/gimpcontainerview.[ch]
* app/widgets/gimpdatafactoryview.[ch]
* app/widgets/gimpdockable.[ch]
* app/widgets/gimpdrawablelistitem.[ch]
* app/widgets/gimpdrawablelistview.[ch]
* app/widgets/gimpdrawablepreview.[ch]
* app/widgets/gimplayerlistitem.[ch]
* app/widgets/gimplayerlistview.[ch]
* app/widgets/gimplistitem.[ch]
* app/widgets/gimppalettepreview.[ch]
* app/widgets/gimppatternpreview.[ch]
* app/widgets/gimppreview.[ch]: ass-sign some copyrights.
2001-03-04 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/apptypes.h
* app/gimplayerlistitem.[ch]: new widget derived from
GimpDrawableListItem (additionally displays the layer mask),
* app/gimplistitem.[ch]: added the preview_size to the struct so
subclasses can create previews at arbitrary times. Removed the
"preview_size" parameter from "set_viewable".
* app/gimpimage.[ch]: removed the layer mask functions because
they belong to GimpLayer.
* app/gimplayer.[ch]: folded the layer mask code from GimpImage
into GimpLayer's layer mask functions. Added a "mask_changed"
signal which is emitted when a mask is added/removed. Added
"push_undo" parameters to the functions so we can use them from
the undo system.
* app/undo.c: instead of badly poking the GimpLayer struct, use
the accessors with push_undo = FALSE.
* app/gimage_mask.c
* app/gimpdrawablelistitem.c
* app/layers_dialog.c
* app/xcf.c
* app/pdb/image_cmds.c
* tools/pdbgen/pdb/image.pdb: changed accordingly.
2001-03-04 Michael Natterer <mitch@gimp.org>
* app/gimpdrawable.[ch]: new function gimp_drawable_set_visible().
Renamed gimp_drawable_visible() to gimp_drawable_get_visible().
Added a "visibility_changed" signal.
* app/gimplistitem.[ch]: new virtual function "set_viewable"
which allows subclasses to connect to the viewable's signals.
* app/gimpdrawablelistitem.[ch]: added an eye button. Implement
"set_viewable" to connect to the "visibility_changed" signal.
* app/gimpchannel.[ch]: removed unused function
gimp_channel_toggle_visibility().
* app/channels_dialog.c
* app/floating_sel.c
* app/gimage_mask.c
* app/gimpimage.c
* app/gimplayer.c
* app/layers_dialog.c
* app/xcf.c
* app/pdb/channel_cmds.c
* app/pdb/layer_cmds.c
* app/pdb/pdb_glue.h
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/layer.pdb: removed direct access of
drawable->visible and use the functions instead. Also makes PDB
code generation nicer.
* pixmaps/eye.xpm: cropped it a bit.
2001-03-04 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/apptypes.h
* app/gimpdrawablelistitem.[ch]
* app/gimplistitem.[ch]: new widgets capable of reordering
themselves using DND.
* app/gimpcontainerlistview.c: removed stuff which is now done
by the GimpListItem.
* app/gimpdnd.[ch]: new function gimp_dnd_get_drag_data(widget)
which returns a GimpViewable using the widget's drag callback.
* app/gimpdrawablelistview.c: implement GimpContainerView's
"insert_item" method and enable reordering for the created
GimpListItem.