- 07 Aug, 2005 1 commit
-
-
Michael Natterer authored
2005-08-07 Michael Natterer <mitch@gimp.org> * app/core/gimplayer.[ch] (gimp_layer_flatten): new function. * app/actions/layers-actions.c * app/actions/layers-commands.[ch] * app/widgets/gimphelp-ids.h * menus/image-menu.xml.in * menus/layers-menu.xml: added "Remove Alpha Channel" action, action callback, help ID and menu items. Fixes bug #309762.
-
- 11 Jul, 2005 2 commits
-
-
Michael Natterer authored
2005-07-11 Michael Natterer <mitch@gimp.org> * app/core/gimppickable.[ch]: added GimpPickable::get_opacity_at() * app/core/gimpchannel.[ch]: removed gimp_channel_value() and implement ::get_opacity_at() instead. * app/core/gimplayer.[ch]: removed gimp_layer_pick_correlate() and implement ::get_opacity_at() instead. * app/core/gimpselection.c: GimpChannel::value() doesn't exist any more. * app/core/gimpprojection.c: implement ::get_opacity_at(), always returns OPAQUE. * app/core/gimpimage.c * app/tools/gimpbucketfilltool.c * app/tools/gimpclonetool.c * app/tools/gimpfliptool.c * app/tools/gimpiscissorstool.c * app/tools/gimpnewrectselecttool.c * app/tools/gimprectangletool.c * app/tools/gimpselectiontool.c * app/tools/gimptransformtool.c * tools/pdbgen/pdb/selection.pdb: changed accordingly. * app/pdb/selection_cmds.c: regenerated.
-
Michael Natterer authored
2005-07-11 Michael Natterer <mitch@gimp.org> * app/core/gimplayer.c: added read-only properties "opacity", "mode" and "lock-alpha".
-
- 10 Jul, 2005 1 commit
-
-
Michael Natterer authored
2005-07-10 Michael Natterer <mitch@gimp.org> * app/actions/layers-actions.c * app/actions/layers-commands.[ch] * app/core/core-enums.[ch] * app/core/gimpimage-undo-push.[ch] * app/core/gimplayer-floating-sel.c * app/core/gimplayer.[ch] * app/text/gimptextlayer-xcf.c * app/widgets/gimphelp-ids.h * app/widgets/gimplayertreeview.[ch] * app/xcf/xcf-load.c * app/xcf/xcf-private.h * app/xcf/xcf-save.c * tools/pdbgen/pdb/layer.pdb * menus/image-menu.xml.in * libgimp/gimp.def: did a global s/preserve_trans/lock_alpha/ in preparation for more layer locking flags. * app/pdb/procedural_db.c * libgimp/gimplayer.[ch]: added compat stuff for preserve_trans. * app/pdb/layer_cmds.c * libgimp/gimplayer_pdb.[ch]: regenerated. * plug-ins/common/colortoalpha.c * plug-ins/common/iwarp.c * plug-ins/common/psd.c * plug-ins/common/psd_save.c * plug-ins/common/psp.c * plug-ins/common/rotate.c * plug-ins/common/threshold_alpha.c * plug-ins/common/vpropagate.c * plug-ins/script-fu/scripts/3d-outline.scm * plug-ins/script-fu/scripts/alien-glow-bar.scm * plug-ins/script-fu/scripts/alien-glow-bullet.scm * plug-ins/script-fu/scripts/alien-glow-logo.scm * plug-ins/script-fu/scripts/basic1-logo.scm * plug-ins/script-fu/scripts/basic2-logo.scm * plug-ins/script-fu/scripts/beveled-pattern-button.scm * plug-ins/script-fu/scripts/blend-anim.scm * plug-ins/script-fu/scripts/blended-logo.scm * plug-ins/script-fu/scripts/bovinated-logo.scm * plug-ins/script-fu/scripts/burn-in-anim.scm * plug-ins/script-fu/scripts/carved-logo.scm * plug-ins/script-fu/scripts/chalk.scm * plug-ins/script-fu/scripts/chip-away.scm * plug-ins/script-fu/scripts/comic-logo.scm * plug-ins/script-fu/scripts/coolmetal-logo.scm * plug-ins/script-fu/scripts/crystal-logo.scm * plug-ins/script-fu/scripts/drop-shadow.scm * plug-ins/script-fu/scripts/gimp-headers.scm * plug-ins/script-fu/scripts/gimp-labels.scm * plug-ins/script-fu/scripts/glowing-logo.scm * plug-ins/script-fu/scripts/gradient-bevel-logo.scm * plug-ins/script-fu/scripts/image-structure.scm * plug-ins/script-fu/scripts/neon-logo.scm * plug-ins/script-fu/scripts/perspective-shadow.scm * plug-ins/script-fu/scripts/starburst-logo.scm * plug-ins/script-fu/scripts/starscape-logo.scm * plug-ins/script-fu/scripts/textured-logo.scm * plug-ins/script-fu/scripts/title-header.scm * plug-ins/script-fu/scripts/waves-anim.scm * plug-ins/xjt/xjt.c: changed accordingly.
-
- 09 Jul, 2005 1 commit
-
-
Michael Natterer authored
2005-07-09 Michael Natterer <mitch@gimp.org> * app/core/gimplayer.c: removed if(image) checks where the image can't be NULL.
-
- 13 Jun, 2005 1 commit
-
-
Michael Natterer authored
2005-06-13 Michael Natterer <mitch@gimp.org> * app/core/gimplayer.c (gimp_layer_transform_color): copy the alpha channel from the correct source.
-
- 27 May, 2005 1 commit
-
-
Sven Neumann authored
2005-05-27 Sven Neumann <sven@gimp.org> * (lots of files): Use the canonical form for signal names in lots of places (but by far not all).
-
- 13 Apr, 2005 1 commit
-
-
Sven Neumann authored
2005-04-13 Sven Neumann <sven@gimp.org> * app/core/gimplayer.c: fixed gtk-doc comment.
-
- 09 Apr, 2005 1 commit
-
-
Michael Natterer authored
2005-04-09 Michael Natterer <mitch@gimp.org> Implement dragging and dropping in any GdkPixbuf supported format. Fixes bug #172794 and bug #172795. * app/core/gimplayer.[ch] (gimp_layer_new_from_region): new function which contains all stuff that was in gimp_layer_new_from_tiles(). (gimp_layer_new_from_tiles): use above function. (gimp_layer_new_from_pixbuf): new function. * app/widgets/Makefile.am * app/widgets/gimppixbuf.[ch]: new files containing GdkPixbuf utility functions for clipboard and DnD. * app/widgets/gimpselectiondata.[ch]: removed gimp_selection_data_set,get_pixbuf(), GTK+ provides the same API. Also removed GdkAtom parameters all over the place because it's always the same as selection_data->target. * app/widgets/gimpclipboard.c: use the new pixbuf utility functions and gtk_selection_data_set,get_pixbuf(). * app/widgets/widgets-enums.h * app/widgets/gimpdnd.[ch]: removed never-implemented GIMP_DND_TYPE_PNG and added a generic GIMP_DND_TYPE_PIXBUF instead. Added API to drag and drop GdkPixbufs which transparently converts from/to and GdkPixbuf-supported image format. Removed passing around of GdkAtoms, since they were always the same as selection_data->target. * app/widgets/gimpdnd-xds.[ch]: follow GdkAtom parameter removal. * app/widgets/gimpcontainertreeview.[ch]: added virtual function GimpContainerTreeView::drop_pixbuf(). * app/widgets/gimpcontainertreeview-dnd.c: dispatch drop_pixbuf(). * app/widgets/gimplayertreeview.c: implement drop_pixbuf(). * app/widgets/gimpdrawabletreeview.c: allow to drag all drawables as pixbufs. * app/display/gimpdisplayshell-dnd.c: allow dropping of pixbufs.
-
- 18 Feb, 2005 1 commit
-
-
Sven Neumann authored
2005-02-18 Sven Neumann <sven@gimp.org> * app/core/Makefile.am * app/core/gimpdrawable-convert.[ch]: new files holding gimp_drawable_convert_rgb() and gimp_drawable_convert_grayscale() moved out of gimpimage-convert.[ch]. * app/core/gimpchannel.c * app/core/gimpimage-convert.[ch] * app/core/gimplayer.c: changed accordingly.
-
- 15 Feb, 2005 1 commit
-
-
Sven Neumann authored
2005-02-16 Sven Neumann <sven@gimp.org> * app/core/gimplayer.c (gimp_layer_transform_color): code cleanup.
-
- 13 Jan, 2005 1 commit
-
-
Michael Natterer authored
2005-01-13 Michael Natterer <mitch@gimp.org> Splitting GimpItem::convert() into two virtual functions was apparently buggy over-engineering. Reverted that stuff and implement item conversion much simpler: * app/core/gimpitem.[ch]: have a single virtual function, GimpItem::convert(), which takes a newly duplicated item and the destination image. (gimp_item_convert): simply call GimpItem::convert() on the result of gimp_item_duplicate(). (gimp_item_real_convert): set the item's new image. * app/core/gimplayer.c (gimp_layer_convert) * app/vectors/gimpvectors.c (gimp_vectors_convert): changed accordingly and chain up after, not before doing our own stuff so the old image is still available as item->image for stuff like colormap conversion. Fixes bug #163879.
-
- 23 Dec, 2004 1 commit
-
-
Michael Natterer authored
2004-12-23 Michael Natterer <mitch@gimp.org> Item conversion depends on the old *and* the new item type, so it can't live in the old item's vtable only: * app/core/gimpitem.[ch]: split GimpItem::convert() into GimpItem::convert_from() (which is called on the old item and creates the new item) and GimpItem::convert_to() (which is called on the new item). This way functions from the old *and* new items' vtables are called and it's possible to convert between item types which live on different branches of the class hierarchy or to item types which live further down the class tree than the old item. (gimp_item_convert): call ::convert_to() on the new item created by ::convert_from(). * app/vectors/gimpvectors.c: changed ::convert() implementation to ::convert_from(). * app/core/gimplayer.c: changed ::convert() to ::convert_to(). Fixes bug #161877.
-
- 16 Nov, 2004 1 commit
-
-
Michael Natterer authored
2004-11-16 Michael Natterer <mitch@gimp.org> * app/core/gimpchannel-select.c * app/core/gimpchannel.c * app/core/gimpdrawable-desaturate.c * app/core/gimpdrawable-equalize.c * app/core/gimpdrawable-histogram.c * app/core/gimpdrawable-invert.c * app/core/gimpdrawable-levels.c * app/core/gimpdrawable-offset.c * app/core/gimpdrawable-stroke.c * app/core/gimpdrawable-transform.c * app/core/gimpdrawable.c * app/core/gimpitem-linked.c * app/core/gimpitem.c * app/core/gimplayer.c * app/core/gimpselection.c * app/paint/gimppaintcore-stroke.c * app/text/gimptextlayer.c: in all functions which somehow (explicitely or implicitely) touch undo, either g_return_if_fail() on gimp_item_is_attached() or simply don't push an undo step if feasible (e.g. for simple stuff like layer opacity). * tools/pdbgen/pdb/color.pdb * tools/pdbgen/pdb/drawable.pdb * tools/pdbgen/pdb/image.pdb * tools/pdbgen/pdb/layer.pdb * tools/pdbgen/pdb/paint_tools.pdb: let PDB wrappers fail accordingly so they don't run into the assertions added above. * app/pdb/color_cmds.c * app/pdb/drawable_cmds.c * app/pdb/image_cmds.c * app/pdb/layer_cmds.c * app/pdb/paint_tools_cmds.c: regenerated.
-
- 22 Sep, 2004 1 commit
-
-
Michael Natterer authored
2004-09-22 Michael Natterer <mitch@gimp.org> * app/widgets/gimplayertreeview.c (gimp_layer_tree_view_floating_selection_changed): removed the hack that was displaying "Floating Selection" instead of the floating layer's real name. * app/core/gimplayer.c: implement GimpViewable::get_description() instead and special case floating selections with a two-line text that contains "Floating Selection". * app/core/gimplayer-floating-sel.c * app/core/gimpimage-undo-push.c: emit "name_changed" on the layer when it changes its state from floating to normal or vice versa so the views can update accordingly. * app/core/gimpselection.c: s/"Selection"/"Floated Layer"/. * app/tools/gimpeditselectiontool.c: s/"Floating Layer"/"Floating Selection"/.
-
- 19 Sep, 2004 1 commit
-
-
Sven Neumann authored
2004-09-19 Sven Neumann <sven@gimp.org> Improved undo memory calculation for paint operations (bug #153035): * app/base/tile-manager.[ch] (tile_manager_get_memsize): added a "gboolean sparse" parameter to get more accurate results for sparse tile-managers. * app/core/gimpbuffer.c * app/core/gimpdrawable.c * app/core/gimpimage-undo-push.c * app/core/gimpimage.c * app/core/gimplayer.c * app/core/gimpprojection.c: changed accordingly.
-
- 10 Aug, 2004 1 commit
-
-
Michael Natterer authored
2004-08-10 Michael Natterer <mitch@gimp.org> Redid the whole internal progress stuff: don't pass around progress_callback and progress_data; instead, provide a pointer to a GimpProgressInterface which can be implemented by a variety of backends. Addresses (but not yet fixes) bugs #6010, #97266 and #135185. * app/display/Makefile.am * app/display/gimpprogress.[ch]: removed the old progress hack. * app/core/Makefile.am * app/core/core-types.h * app/core/gimpprogress.[ch]: implement GimpProgressInterface. * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/widgets/gimpprogressdialog.[ch]: the standalone progress dialog as widget implementing GimpProgressInterface. * app/display/gimpdisplay.c * app/display/gimpstatusbar.[ch] * app/widgets/gimpfiledialog.[ch] * app/widgets/gimpthumbbox.[ch]: added GimpProgressInterface implementation to these classes. * app/core/gimp-gui.[ch] * app/gui/gui-vtable.c: replaced the old progress vtable entries by two new to create and destroy a GimpProgressDialog in case no other progress is available. * app/pdb/procedural_db.[ch] * app/plug-in/plug-in-run.[ch] * tools/pdbgen/app.pl: pass a GimpProgress to all PDB wrappers and all plug-ins. * app/plug-in/plug-in.[ch] * app/plug-in/plug-ins.c * app/plug-in/plug-in-message.c * app/plug-in/plug-in-progress.c: handle the case there the plug-in was crated with a progress as well as the case where it wasn't. * app/app_procs.c * app/batch.c * app/xcf/xcf.c * app/file/file-open.[ch] * app/file/file-save.[ch] * app/widgets/gimphelp.c * app/widgets/gimpbrushselect.c * app/widgets/gimpfontselect.c * app/widgets/gimpgradientselect.c * app/widgets/gimppaletteselect.c * app/widgets/gimppatternselect.c: changed accordingly. * app/core/gimpimagefile.[ch] * app/display/gimpdisplayshell-dnd.c * app/gui/file-open-dialog.c * app/gui/file-open-location-dialog.c * app/gui/file-save-dialog.c * app/widgets/gimplayertreeview.c * app/widgets/gimptoolbox-dnd.c: pass a GimpProgress to all file related functions. Embed the progress in the file dialog where possible. * app/core/gimpdrawable-blend.[ch] * app/core/gimpdrawable-transform.[ch] * app/core/gimpimage-convert.[ch] * app/core/gimpimage-flip.[ch] * app/core/gimpimage-resize.[ch] * app/core/gimpimage-rotate.[ch] * app/core/gimpimage-scale.[ch] * app/core/gimpitem-linked.[ch] * app/core/gimpitem.[ch] * app/core/gimpchannel.c * app/core/gimpdrawable.c * app/core/gimplayer.c * app/core/gimpselection.c * app/vectors/gimpvectors.c: replaced callback/data by GimpProgress. * app/tools/gimpblendtool.c * app/tools/gimptransformtool.c * app/gui/convert-dialog.c * app/actions/documents-commands.c * app/actions/file-commands.c * app/actions/image-commands.c * app/actions/layers-commands.c * app/actions/plug-in-commands.c * app/actions/vectors-commands.c * tools/pdbgen/pdb/convert.pdb * tools/pdbgen/pdb/edit.pdb * tools/pdbgen/pdb/image.pdb * tools/pdbgen/pdb/layer.pdb: changed callers accordingly. * app/pdb/*_cmds.c: regenerated.
-
- 07 Jul, 2004 2 commits
-
-
Sven Neumann authored
-
Sven Neumann authored
2004-07-07 Sven Neumann <sven@gimp.org> * app/core/gimplayer.c (gimp_layer_new_from_tiles): add an alpha channel if the src tile-manager doesn't have one. Warn on unsupported type conversions instead of silently doing the wrong thing. Fixes bug #145482. * app/core/gimpbuffer.c: cosmetics.
-
- 07 Jun, 2004 1 commit
-
-
Michael Natterer authored
2004-06-07 Michael Natterer <mitch@gimp.org> * app/core/gimplayer.c (gimp_layer_set_tiles): don't set layer->mask's offsets. It is wrong because GimpDrawable::set_tiles() is a lowlevel function which is used by stuff like scale and resize which keep the mask in sync explicitely and don't expect it to be moved in the middle of chaining up. Fixes bug #143860.
-
- 24 May, 2004 1 commit
-
-
Michael Natterer authored
2004-05-24 Michael Natterer <mitch@gimp.org> Long overdue core container cleanup: * app/core/gimplist.[ch]: added "unique-names" and "sort-func" properties and merged the resp. code from GimpDataList into GimpList. Removed "policy" parameters from gimp_list_new() and added "unique_names". Added new constructor gimp_list_new_weak(). Made public function gimp_list_uniquefy_name() private. * app/core/Makefile.am * app/core/core-types.h * app/core/gimpdatalist.[ch]: removed. Its functionality is entirely in GimpList now. * app/core/gimpdata.[ch]: added gimp_data_name_compare() which used to live in GimpDataList. * app/core/gimp.c * app/core/gimpdatafactory.c * app/core/gimpimage.c * app/core/gimptoolinfo.c * app/core/gimpundostack.c * app/paint/gimp-paint.c * app/tools/gimp-tools.c * app/widgets/gimpdevices.c * app/widgets/gimptemplateeditor.c * app/widgets/gimpundoeditor.c: changed list creation accordingly. Made gimp->templates, gimp->named_buffers, tool_info->presets and the image's lists of layers, channels and vectors automatically ensure unique names. * app/widgets/gimptemplateview.c * app/actions/file-commands.c * app/actions/templates-commands.c * app/actions/tool-options-commands.c: removed calls to gimp_list_uniquefy_name(). * app/core/gimpitem.c: removed major insanity where the items themselves where ensuring their unique names. Bah! * app/core/gimplayer.c (gimp_layer_name_changed): chain up conditionally. * app/core/gimplayermask.c (gimp_layer_mask_name_changed): removed because there is no need any more to keep the parent implementation from being invoked.
-
- 14 Apr, 2004 1 commit
-
-
Michael Natterer authored
2004-04-15 Michael Natterer <mitch@gimp.org> Get rid of the "current_context" which was in fact just a bunch of global variables. Instead, pass the needed context all the way from the GUI and the PDB to the core. This is a prerequisite for macro recording and generally helps separating the various subsystems from each other. Work in progress... * app/core/gimp.[ch]: removed member "current_context" and gimp_[get|set]_current_context(). * app/core/gimp-edit.[ch] * app/core/gimpdrawable-blend.[ch] * app/core/gimpdrawable-bucket-fill.[ch] * app/core/gimpdrawable-offset.[ch] * app/core/gimpdrawable-transform.[ch] * app/core/gimpimage-crop.[ch] * app/core/gimpimage-flip.[ch] * app/core/gimpimage-merge.[ch] * app/core/gimpimage-resize.[ch] * app/core/gimpimage-rotate.[ch] * app/core/gimpimage.[ch] * app/core/gimpimagefile.[ch] * app/core/gimpitem-linked.[ch] * app/core/gimpitem.[ch] * app/core/gimplayer.[ch] * app/core/gimpselection.[ch] * app/core/gimptemplate.[ch] * app/file/file-open.[ch] * app/file/file-save.[ch] * app/pdb/procedural_db.[ch] * app/text/gimptext-compat.[ch] * app/text/gimptextlayer-transform.[ch] * app/gui/brush-select.[ch] * app/gui/font-select.[ch] * app/gui/gradient-select.[ch] * app/gui/palette-select.[ch] * app/gui/pattern-select.[ch]: added tons of "GimpContext *context" parameters and use the passed context instead of gimp_get_current_context(). * app/app_procs.c * app/batch.c * app/core/gimpchannel.c * app/core/gimpdrawable.c * app/paint/gimperaser.c * app/paint/gimppaintbrush.c * app/plug-in/plug-in-message.c * app/plug-in/plug-ins.c * app/text/gimptextlayer.c * app/tools/gimpblendtool.c * app/tools/gimpbucketfilltool.c * app/tools/gimpcroptool.c * app/tools/gimpeditselectiontool.c * app/tools/gimpfliptool.c * app/tools/gimpinktool.c * app/tools/gimptransformtool.c * app/vectors/gimpvectors.c * app/gui/convert-dialog.c * app/gui/drawable-commands.c * app/gui/edit-commands.c * app/gui/file-commands.c * app/gui/file-new-dialog.c * app/gui/file-open-dialog.c * app/gui/file-save-dialog.c * app/gui/image-commands.c * app/gui/layers-commands.c * app/gui/offset-dialog.c * app/gui/select-commands.c * app/gui/vectors-commands.c * app/widgets/gimpdnd.c * app/widgets/gimpdocumentview.c * app/widgets/gimphelp.c * app/widgets/gimpthumbbox.c: pass gimp_get_user_context() or GIMP_CONTEXT(tool_options) or whatever is the right context to the changed core functions. * tools/pdbgen/app.pl: pass "GimpContext *context" to all generated PDB invokers. * tools/pdbgen/pdb/brush_select.pdb * tools/pdbgen/pdb/brushes.pdb * tools/pdbgen/pdb/drawable.pdb * tools/pdbgen/pdb/edit.pdb * tools/pdbgen/pdb/font_select.pdb * tools/pdbgen/pdb/gradient_select.pdb * tools/pdbgen/pdb/gradients.pdb * tools/pdbgen/pdb/image.pdb * tools/pdbgen/pdb/layer.pdb * tools/pdbgen/pdb/paint_tools.pdb * tools/pdbgen/pdb/palette.pdb * tools/pdbgen/pdb/palette_select.pdb * tools/pdbgen/pdb/palettes.pdb * tools/pdbgen/pdb/paths.pdb * tools/pdbgen/pdb/pattern_select.pdb * tools/pdbgen/pdb/patterns.pdb * tools/pdbgen/pdb/selection.pdb * tools/pdbgen/pdb/text_tool.pdb * tools/pdbgen/pdb/transform_tools.pdb: pass the new context parameter to the changed core functions. * app/pdb/*_cmds.c: regenerated.
-
- 13 Apr, 2004 2 commits
-
-
Michael Natterer authored
2004-04-13 Michael Natterer <mitch@gimp.org> Moved the calls to floating_sel_relax()/rigor() from various places to two single spots in the core where they are actually needed. Fixes bug #138356 (which was caused by the projection being triggered in the middle of changing the floating selection's size or the size of the drawable it is attached to). This commit effectively removes floating selection fiddling from the core's public API. * app/core/gimpdrawable.[ch] (gimp_drawable_has_floating_sel): new function which returns TRUE if there is a floating selection attached to the drawable. * app/core/gimpdrawable.c (gimp_drawable_translate) (gimp_drawable_set_tiles_full): if the drawable *has* a floating selection, relax/rigor it before/after modifying the drawable. * app/core/gimplayer.c (gimp_layer_translate) (gimp_layer_set_tiles): if the layer *is* the floating selection, relax/rigor it before/after modifying it. * app/core/gimpdrawable-transform.c * app/core/gimpimage-convert.c * app/core/gimpimage-crop.c * app/core/gimpimage-flip.c * app/core/gimpimage-resize.c * app/core/gimpimage-rotate.c * app/core/gimpimage-scale.c * app/gui/layers-commands.c * app/tools/gimpeditselectiontool.c * tools/pdbgen/pdb/layer.pdb: removed calls to floating_sel_rigor()/relax() all over the place. Also removed lots of undo groups which are obsolete now. * app/pdb/layer_cmds.c: regenerated.
-
Michael Natterer authored
2004-04-13 Michael Natterer <mitch@gimp.org> GimpItem undo group cleanup in preparation of fixing bug #138356: * app/core/core-enums.[c]: renamed LAYER_SCALE and LAYER_RESIZE undo groups to ITEM_SCALE and ITEM_RESIZE. * app/core/gimpitem.[ch]: always push undo groups around GimpItem::translate(), scale(), resize(), flip(), rotate() and transform(). Added the resp. undo_desc strings to GimpItemClass. * app/core/gimpchannel.[ch] * app/core/gimpdrawable.[ch] * app/core/gimplayer.c: removed all undo groups from implementations of the above methods. Removed the undo_desc strings which were moved to GimpItemClass. * app/core/gimpimage-crop.c * app/core/gimpselection.c * app/gui/layers-commands.c * app/vectors/gimpvectors.c * tools/pdbgen/pdb/layer.pdb: changed accordingly. * app/pdb/layer_cmds.c: regenerated.
-
- 16 Mar, 2004 1 commit
-
-
Michael Natterer authored
2004-03-16 Michael Natterer <mitch@gimp.org> * app/core/gimpdrawable.c (gimp_drawable_set_tiles): ref new tiles before unrefing the old ones. * app/core/gimpimage-undo-push.c: keep undo memsize exact by adjusting undo->size when the stored data changes. * app/core/gimpchannel.[ch] (gimp_channel_new_from_alpha) * app/core/gimpchannel-select.[ch] (gimp_channel_select_alpha): replaced "layer" parameter by "drawable". * app/gui/layers-commands.c * tools/pdbgen/pdb/selection.pdb: changed accordingly. * app/pdb/selection_cmds.c: regenerated. * app/core/gimpchannel.c * app/core/gimplayer.c * app/core/gimplayermask.[ch] * app/core/gimpselection.c: remdom cleanup & code review.
-
- 15 Mar, 2004 5 commits
-
-
Michael Natterer authored
2004-03-15 Michael Natterer <mitch@gimp.org> * app/core/core-enums.[ch] (enum GimpUndoType): replaced GIMP_UNDO_LAYER_MOD and GIMP_UNDO_CHANNEL_MOD by GIMP_UNDO_DRAWABLE_MOD. * app/core/gimpimage-undo-push.[ch]: ditto: replaced gimp_image_undo_push_layer_mod() and gimp_image_undo_push_channel_mod() by gimp_image_undo_push_drawable_mod(). * app/core/gimpdrawable.[ch]: added undo_desc strings for "resize" and "scale" to the GimpDrawableClass struct. (gimp_drawable_scale) (gimp_drawable_resize): pass push_undo = TRUE to gimp_drawable_set_tiles_full() and use the undo_desc from the class. (gimp_drawable_real_set_tiles): push a GIMP_UNDO_DRAWABLE_MOD here... * app/core/gimpchannel.c * app/core/gimplayer.c: ...and don't push undos in GimpItem::scale(), GimpItem::resize(), GimpDrawable::set_tiles(). * app/core/gimpchannel.c: Removed even more bounds_known = FALSE assignments from functions which already call gimp_drawable_set_tiles().
-
Michael Natterer authored
2004-03-15 Michael Natterer <mitch@gimp.org> * app/core/gimpdrawable.[ch]: added "offset_x" and "offset_y" parameters to GimpDrawable::set_tiles(). (gimp_drawable_set_tiles): removed the "GimpImageType" parameter. (gimp_drawable_set_tiles_full): new function adding type, offset_x and offset_y parameters. (gimp_drawable_real_set_tiles): set the drawable's offsets from the offset parameters and its size from the passed TileManager's size. Emit "size_changed" accordingly. * app/core/gimpchannel.c * app/core/gimpdrawable-offset.c * app/core/gimpdrawable-transform.c * app/core/gimpimage-convert.c * app/core/gimpimage-undo-push.c * app/core/gimplayer.c * app/text/gimptextlayer.c * app/tools/gimptransformtool.c: changed accordingly: removed calls to gimp_viewable_size_changed() and all sorts of hackish assignments of the drawable's width/height/offset_x/offset_y properties.
-
Michael Natterer authored
2004-03-15 Michael Natterer <mitch@gimp.org> * app/text/gimptextlayer.c (gimp_text_layer_render): don't call gimp_image_flush(). * app/tools/gimpxttool.c (gimp_text_tool_apply): call it here instead. Now that we have a common place that exchanges drawable->tiles, we can abstract away boundary invalidation for this operation: * app/core/gimpdrawable.c (gimp_drawable_real_set_tiles): call gimp_drawable_invalidate_boundary() before setting the new tiles. * app/core/gimpchannel.c (gimp_channel_set_tiles) * app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste) * app/core/gimpimage-undo-push.c (undo_pop_layer_mod) * app/core/gimplayer.c (gimp_layer_scale) (gimp_layer_resize) (gimp_layer_flip) (gimp_layer_rotate) (gimp_layer_transform) * app/text/gimptextlayer.c (gimp_text_layer_render): removed calls to gimp_drawable_invalidate_boundary() from all functions which finally call gimp_drawable_real_set_tiles(). * app/tools/gimptransformtool.c (gimp_transform_tool_doit): no need to set channel->bounds_known to FALSE, because gimp_drawable_set_tiles() already did this.
-
Michael Natterer authored
2004-03-15 Michael Natterer <mitch@gimp.org> * app/core/gimpimage.[ch]: added "gboolean alpha_changed" to GimpImageFlushAccumulator. Install an "alpha_changed" handler on gimage->layers and set flush_accum.alpha_changed = TRUE whenever the image's *only* layer changed its alpha. * app/core/gimpimage-undo-push.c (undo_pop_layer_mod) * app/core/gimplayer.c (gimp_layer_add_alpha): removed explicit calls to gimp_image_alpha_changed().
-
Michael Natterer authored
2004-03-15 Michael Natterer <mitch@gimp.org> * app/core/gimpdrawable.c (gimp_drawable_real_set_tiles): emit "alpha_changed" if the drawable got/lost an alpha channel by setting the new tiles. * app/core/gimpimage-undo-push.c (undo_pop_layer_mod) * app/core/gimplayer.c (gimp_layer_add_alpha): removed explicit calls to gimp_drawable_alpha_changed().
-
- 14 Mar, 2004 1 commit
-
-
Michael Natterer authored
2004-03-14 Michael Natterer <mitch@gimp.org> * app/core/gimpdrawable-offset.c (gimp_drawable_offset) * app/core/gimpdrawable.c (gimp_drawable_scale) (gimp_drawable_resize) * app/core/gimplayer.c (gimp_layer_convert) (gimp_layer_add_alpha): use gimp_drawable_set_tiles() instead of fiddling with drawable->tiles, ->bytes etc. manually.
-
- 13 Mar, 2004 2 commits
-
-
Michael Natterer authored
2004-03-13 Michael Natterer <mitch@gimp.org> Completed the fix for bug #136702: * app/core/gimpitem.[ch]: added "gboolean supersample" and "gint recursion_level" to GimpItem::transform(). * app/core/gimpitem-linked.[ch] (gimp_item_linked_transform): ditto. * app/core/gimpdrawable-transform.[ch]: added "recursion_level" parameters and removed the RECURSION_LEVEL #define. * app/core/gimpchannel.c * app/core/gimpdrawable.c * app/core/gimplayer.c * app/vectors/gimpvectors.c: changed accordingly. * app/tools/gimptransformoptions.[ch]: added new property "recursion_level" which is not serializable and has no GUI. Pretty useless, but it's IMHO better to hardcode the default value here than in gimpdrawable-transform.c * app/tools/gimptransformtool.c: changed accordingly. * tools/pdbgen/pdb/transform_tools.pdb: hardcode "recursion_level" to 3. * app/pdb/transform_tools_cmds.c: regenerated.
-
Sven Neumann authored
2004-03-13 Sven Neumann <sven@gimp.org> * app/core/gimpdrawable.[ch]: added new virtual function GimpDrawable::set_tiles(). * app/core/gimpchannel.c * app/core/gimplayer.c: push an undo before chaining up in set_tiles(). * app/core/gimpdrawable-transform.c * app/core/gimpimage-convert.c * app/tools/gimptransformtool.c: use gimp_drawable_set_tiles() instead of fiddling with the drawable's tile manager directly.
-
- 28 Feb, 2004 1 commit
-
-
Michael Natterer authored
2004-02-28 Michael Natterer <mitch@gimp.org> * app/core/gimplayer.c (gimp_layer_apply_mask): when deleting the mask, use "Delete Layer Mask" instead of "Apply Layer Mask" as undo description.
-
- 17 Feb, 2004 1 commit
-
-
Michael Natterer authored
2004-02-17 Michael Natterer <mitch@gimp.org> Make sure each GimpItem emits "removed" when it is removed from the image so dialogs have a chance to close themselves: * app/core/gimplayer.c (gimp_layer_apply_mask): emit "removed" from the mask. (gimp_layer_removed): new function which emits "removed" from the layer's mask when the layer gets removed from the image. * app/core/gimpimage.c (gimp_image_dispose): emit "removed" from all layers, channels and vectors. * app/gui/layers-commands.c (layers_scale_layer_query) (layers_resize_layer_query): removed recently added connections to "removed" because GimpViewableDialog does this automatically.
-
- 09 Feb, 2004 1 commit
-
-
Sven Neumann authored
2004-02-09 Sven Neumann <sven@gimp.org> * app/core/gimpitem.[ch]: added progress callback pointers to gimp_item_scale() and its variants. * app/core/gimpchannel.c * app/core/gimpdrawable.c * app/core/gimpimage-scale.c * app/core/gimplayer.c * app/core/gimpselection.c * app/gui/layers-commands.c97999 * app/paint-funcs/paint-funcs.[ch] * app/vectors/gimpvectors.c * tools/pdbgen/pdb/layer.pdb: changed accordingly. Fixes bug #97999. * app/pdb/layer_cmds.c: regenerated.
-
- 01 Feb, 2004 1 commit
-
-
Michael Natterer authored
2004-02-01 Michael Natterer <mitch@gimp.org> Disallow to rename the layer mask. Instead, always name the mask "<layer name> mask". Fixes bug #133112 along with some other unreported ones. * app/core/gimpitem.[ch]: added a boolean return value indicating success to GimpItem::rename(). (gimp_item_real_rename): push an undo step only if the item is attached. * app/core/gimplayer.c (gimp_layer_rename): refuse renaming if the layer is a floating selection floated from a channel (renaming a layer's floating selection makes a new layer out of the floating selection). (gimp_layer_duplicate): use gimp_layer_add_mask() to attach the mask's duplicate. Fixes mask refcount brokenness for duplicated layer masks. (gimp_layer_name_changed): new function. Automatically renames the layer mask when the layer's name changes. * app/core/gimplayermask.c (gimp_layer_mask_rename): new function which refuses renaming. (gimp_layer_mask_name_changed): skip the unique name voodoo GimpItem does by not chaining up. (gimp_layer_mask_set_layer): change the mask's name whenever it is attached to a layer. * app/text/gimptextlayer.c (gimp_text_layer_rename): fiddle with text_layer->auto_rename only if renaming was successful. * app/widgets/gimpitemtreeview.c (gimp_item_tree_view_name_edited): restore the old name if renaming failed. * tools/pdbgen/pdb/drawable.pdb (set_name): return an execution error if renaming failed. * app/pdb/drawable_cmds.c: regenerated.
-
- 26 Jan, 2004 1 commit
-
-
Michael Natterer authored
2004-01-26 Michael Natterer <mitch@gimp.org> * app/core/gimpimage.[ch]: removed gimp_image_owns_item() again. * app/core/gimpitem.[ch]: instead, added new virtual function GimpItem::is_attached(). * app/core/gimpchannel.c * app/core/gimplayer.c * app/core/gimplayermask.c * app/core/gimpselection.c * app/vectors/gimpvectors.c: implement it. * app/core/gimp-edit.c * app/core/gimpdrawable-transform.c * app/core/gimplayer-floating-sel.c * app/text/gimptext-compat.c * tools/pdbgen/pdb/edit.pdb * tools/pdbgen/pdb/floating_sel.pdb * tools/pdbgen/pdb/selection.pdb * tools/pdbgen/pdb/text_tool.pdb * tools/pdbgen/pdb/transform_tools.pdb_ changed accordingly. * app/pdb/edit_cmds.c * app/pdb/floating_sel_cmds.c * app/pdb/selection_cmds.c * app/pdb/text_tool_cmds.c * app/pdb/transform_tools_cmds.c: regenerated.
-
- 09 Dec, 2003 1 commit
-
-
Michael Natterer authored
2003-12-09 Michael Natterer <mitch@gimp.org> Fixed memory management of layers and channels which were created using the PDB: * app/core/gimpitem.[ch]: added "gboolean floating" flag to GimpItem. Items are created with floating == TRUE. Added gimp_item_sink() which resets the floating flag and unrefs the item if it was TRUE. Added gimp_item_is_floating() accessor. * app/core/gimpimage.c (gimp_image_add_layer,channel,vectors): g_object_ref()/gimp_item_sink() added items to take ownership of them. * app/core/gimplayer.c (gimp_layer_add_mask): g_object_ref()/gimp_item_sink() the mask. * app/gui/layers-commands.c * app/xcf/xcf-load.c: don't unref layer masks after adding them to the layer. * tools/pdbgen/pdb/drawable.pdb (drawable_delete): gimp_item_sink() the drawable if it's floating and fail if it's not. Fixes bug #128881. * tools/pdbgen/pdb/layer.pdb (layer_create_mask): fixed docs. * app/pdb/drawable_cmds.c * app/pdb/layer_cmds.c * libgimp/gimplayer_pdb.c: regenerated.
-
- 26 Nov, 2003 1 commit
-
-
Michael Natterer authored
2003-11-26 Michael Natterer <mitch@gimp.org> * app/core/core-enums.[ch]: eek, it should be GIMP_ADD_ALPHA_TRANSFER_MASK, not GIMP_ADD_ALPHA_MASK_TRANSFER. * app/core/gimplayer.c (gimp_layer_create_mask): changed accordingly. * app/pdb/layer_cmds.c * libgimp/gimpenums.h * plug-ins/pygimp/gimpenums.py * plug-ins/script-fu/script-fu-constants.c * tools/pdbgen/enums.pl: regenerated.
-