2003-03-24 Michael Natterer <mitch@gimp.org>
* app/paint/paint-enums.[ch]: register GimpPaintApplicationMode
with the type system.
* app/paint/gimppaintoptions.[ch]: replaced "gboolean incremental"
with "GimpPaintApplicationMode application_mode"
* app/paint/gimpairbrush.c
* app/paint/gimperaser.c
* app/paint/gimppaintbrush.c
* app/paint/gimppencil.c: changed accordingly.
* tools/pdbgen/pdb/paint_tools.pdb: ditto. Set all paint options
values using g_object_set().
* app/widgets/gimppropwidgets.[ch]: added
gimp_prop_enum_check_button_new() which can represent two
specified enum values and renders itself "inconsistent" for all
other values.
* app/tools/paint_options.c: use it for the "Incremental" toggle.
* app/pdb/paint_tools_cmds.c
* tools/pdbgen/enums.pl: regenerated.
2003-03-24 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.c: use GIMP_STOCK_IMAGE as default_stock_id.
* app/widgets/gimppreviewrendererimage.[ch]: use GimpChannelType
to specify the channel to render and convert it to the pixel index
using gimp_image_get_component_index() when needed. Use the new
red, green, blue, gray and alpha icons when layer_previews is
FALSE.
* app/widgets/gimpcomponenteditor.c: changed accordingly.
2003-03-24 Sven Neumann <sven@gimp.org>
* themes/Default/images/Makefile.am
* themes/Default/images/stock-image-[16|24].png: new icons by Jimmac.
* themes/Default/images/stock-images-16.png: changed by Jimmac to
make it look different than the new image icon.
* themes/Default/images/stock-channel-red-[16|24].png
* themes/Default/images/stock-channel-green-[16|24].png
* themes/Default/images/stock-channel-blue-[16|24].png
* themes/Default/images/stock-channel-gray-[16|24].png
* themes/Default/images/stock-channel-alpha-[16|24].png: new icons
derived from the generic channel icon.
* themes/Default/images/stock-channel-[16|24].png: changed the
color so they look different than the new green channel icon.
* libgimpwidgets/gimpstock.[ch]: register the new icons.
2003-03-24 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpimage-preview.[ch]: moved the image preview code
to separate files.
* app/core/gimpimage.c: removed the functions here. Removed the
new utility function gimp_image_previews_resize() because it
did exactly what gimp_image_size_changed() should do. Moved
the missing bits to gimp_image_size_changed().
* app/core/gimplayer.c (gimp_layer_apply_mask): call
gimp_viewable_invalidate_preview() only if we don't call
gimp_drawable_update(). Calling them both is redundant.
2003-03-23 Sven Neumann <sven@gimp.org>
* app/core/gimplayer.c
* app/gui/image-menu.c
* app/gui/layers-menu.c: there doesn't seem to be a good reason to
disallow the creation of layer masks on indexed images.
2003-03-23 Michael Natterer <mitch@gimp.org>
* app/core/gimpchannel.c (gimp_channel_new_from_component): use
gimp_image_get_component_index() instead of doing the switch()es
manually.
2003-03-22 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable-preview.c
* app/core/gimpimage.c (get_preview_size): return square
dimensions in config->layer_previews is FALSE (except if the size
is requested for a popup).
(get_popup_size): don't crete popups if config->layer_previews
is FALSE.
* app/core/gimpimage.c: added utility function
gimp_image_previews_resize() and call it on "notify::layer-previews".
Calls gimp_viewable_size_changed() on all drawables of the image
and on the image itself. Ensures that drawable/image previews
toggle their size correctly when toggling layer_previews.
* app/widgets/gimpselectioneditor.c: create the selection preview
as a popup so it keeps the image's aspect ratio when
layer_previews is FALSE.
2003-03-22 Sven Neumann <sven@gimp.org>
* themes/Default/images/Makefile.am
* themes/Default/images/stock-channels-24.png
* themes/Default/images/stock-images-24.png
* themes/Default/images/stock-layers-24.png
* themes/Default/images/stock-paths-22.png: added larger versions of
some icons (provided by Jimmac).
* libgimpwidgets/gimpstock.c: added the new icons. Register icons
in dialog size first.
2003-03-22 Sven Neumann <sven@gimp.org>
* app/gui/layers-commands.c: always flush the image when applying
or discarding a layer mask. The active drawable may change and
make a menu update necessary (fixes bug #108958).
* app/widgets/gimplayertreeview.c: call gimp_image_flush() when
switching between layer and mask editing so the menus get updated.
2003-03-22 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcontainereditor.c: allow to create a
GimpContainerEditor without a popup menu.
* app/widgets/gimpcellrendererviewable.c: free the event we
got from gdk_get_current_event().
* app/widgets/gimpcontainerview.c: check view->hash_table for
being non-NULL before using it. Be prepared to be destroyed by as
a result of calling gimp_context_set_foo(view->context, foo).
* app/widgets/gimpcontainertreeview.[ch]: added
tree_view->editable_cells and handle *all* mouse clicks in
gimp_container_tree_view_button_press() (by returning TRUE). Start
editing on double-click only. Use gtk_tree_view_set_cursor()
instead of gtk_tree_selection_select_path() to avoid
selected/focus confusion when the focus enters the widget. Be
prepeared to be destroyed as a result of item selection.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpcontainerpopup.[ch]: new GtkWindow derived
widget which pops up a selection of any GimpContainer/GimpContext
combo.
* app/widgets/gimpdatafactoryview.c
* app/widgets/gimpitemtreeview.c: add the name cell to
tree_view->editable_cells so it becomes editable.
* app/tools/gimpblendoptions.c
* app/tools/paint_options.c: use the new container popup for
selecting brushes and gradients.
2003-03-21 Manish Singh <yosh@gimp.org>
* plug-ins/common/ps.c: always quote the filename, since system/popen
uses the shell. Also, never quote the filename if we are reading from
a parameter file (only in the win32 case). Fixes#108648.
* plug-ins/dbbrowser/dbbrowser_utils.c: double click on a list item
files Apply, if applicable. Remove the existing model in the treeview
(which will deallocate it) instead of clearing it.
2003-03-22 Sven Neumann <sven@gimp.org>
* themes/Default/images/stock-channel-16.png
* themes/Default/images/stock-channel-24.png
* themes/Default/images/stock-layer-16.png
* themes/Default/images/stock-layer-24.png: new icons provided by
Jimmac.
* themes/Default/images/stock-eye-12.png
* themes/Default/images/stock-linked-12.png: tiny visibility and
linked icons that I created from Jimmac's small versions by
scaling them down. Should probably be redone.
* libgimpwidgets/gimpstock.[ch]: allow to register multiple sizes
for the same stock_id. Added new icons.
* app/core/gimpchannel.c
* app/core/gimplayer.c: set default stock_ids so the new icons are
used when layer previews are disabled.
2003-03-21 Sven Neumann <sven@gimp.org>
* plug-ins/mosaic/mosaic_logo.h
* plug-ins/mosaic/mosaic.c: converted the logo to pixbuf inline data
and replaced the GtkPreview with a GtkImage.
* plug-ins/print/gimp_main_window.c: replaced some deprecated calls.
2003-03-21 Michael Natterer <mitch@gimp.org>
* app/widgets/gimppreviewrenderer.c
(gimp_preview_renderer_set_viewable)
(gimp_preview_renderer_size_changed): don't rely on
gimp_preview_renderer_set_size() to invalidate the
renderer. Instead, call gimp_preview_renderer_invalidate() after
resizing the renderer.
2003-03-21 Sven Neumann <sven@gimp.org>
* app/plug-in/plug-in.c (plug_in_open): added
G_SPAWN_CHILD_INHERITS_STDIN to the flags passed to g_spawn_async().
Needed to get batch-mode working again.
* app/batch.[ch]: some cleanup.
* plug-ins/script-fu/script-fu-text-console.c: improved error
reporting.
2003-03-21 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplayshell-scale.c: don't emit the "scaled"
signal from gimp_display_shell_scale_setup(). Emit it explicitely
from gimp_display_shell_scale_resize() instead.
* app/display/gimpdisplayshell-scroll.c: call
gimp_display_shell_scale_setup() after scrolling in order to
update scrollbars and rulers.
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell-handlers.c: emit the "scaled" signal
explicitely.
* app/display/gimpdisplayshell-render.c: minor optimizations.
* app/display/gimpdisplayshell.c: minor cleanup.
2003-03-21 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpeditor.[ch]: added a GimpItemFactory to the
GimpEditor struct. Added gimp_editor_create_menu().
* app/widgets/gimpcolormapeditor.[ch]
* app/widgets/gimpcomponenteditor.[ch]
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpdataeditor.[ch]
* app/widgets/gimpitemtreeview.[ch]: removed item_factory pointers
and lots of inalizers which just unref'ed the item_factory. Use
gimp_editor_create_menu() instead.
* app/widgets/gimpchanneltreeview.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimppaletteeditor.c: changed accordingly.
2003-03-20 Sven Neumann <sven@gimp.org>
* app/core/gimpimage-new.c (gimp_image_new_values_new): default
the fill_type to GIMP_BACKGROUND_FILL (as in gimp_initialize()).
* app/gui/file-commands.c
* app/gui/file-new-dialog.c: made more dialogs transient for their
parent window.
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimpimageeditor.c
* app/widgets/gimpundoeditor.c: simplified a little bit.
2003-03-20 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpbutton.[ch]: pass the modifier mask as
GdkModifierType instead of guint.
* app/core/gimpmarshal.list
* app/widgets/gimpcellrenderertoggle.c
* app/widgets/gimpcellrendererviewable.c
* app/widgets/gimppreview.c: use proper marshallers for signals
that take flags as parameters.
* app/core/gimpcontext.c: added the G_SIGNAL_TYPE_STATIC_SCOPE flag
to the GimpRGB signal parameter.
2003-03-20 Sven Neumann <sven@gimp.org>
* libgimpwidgets/libgimpwidgets.types
* libgimpwidgets/tmpl/gimpbutton.sgml
* libgimpwidgets/tmpl/gimppickbutton.sgml: improved.
2003-03-20 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplay.[ch]: removed gdisp->draw_guides
and gdisp->snap_to_guides.
* app/display/gimpdisplayshell.[ch]: added shell->snap_to_guides.
Added the state of guide, selection and active_layer visibility to
the GimpDisplayShellVisibility struct so they can be configured
separately for fullscreen mode. Update the popup_factory in
gimp_display_shell_real_scaled() only if this is the active
display.
* app/display/gimpdisplayshell-appearance.[ch]: added accessors
for selection, active_layer and guide visibility.
* app/display/gimpdisplayshell-selection.[ch]: changed
accordingly. Changed the selection and active_layer toggle
functions to *_set_hidden().
* app/display/gimpdisplayshell-callbacks.c
* app/gui/image-menu.c
* app/gui/view-commands.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpmovetool.c: changed accordingly.
* app/gui/gui.c (gui_display_new): update the menubar_factory
*after* making the new display the active one.
2003-03-20 Simon Budig <simon@gimp.org>
* app/tools/gimpvectortool.[ch]
Fixed crashes and weird problems when the tool changed images or
images got closed. Fixes Bug #108318.
* app/vectors/vectors-types.h: More sane names for the
GimpAnchorType enum.
* app/vectors/gimpbezierstroke.c
* app/vectors/gimpstroke.c: changed accordingly.
2003-03-19 Michael Natterer <mitch@gimp.org>
* app/core/core-enums.[ch]: added GIMP_UNDO_GROUP_MASK.
* app/tools/gimpeditselectiontool.c: use it for mask moving.
Made the "undo_desc" strings more specific.
* app/core/gimpundo.c: add it to the list of undo types for
which mask previews are created.
* app/core/gimpimage.c: s/Add Layer to Image/Add Layer/g etc.
2003-03-19 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcomponenteditor.c: need to connect to the cell
renderer's "clicked" signal because "toggled" is not emitted any
longer.
* app/widgets/gimpdrawabletreeview.c: removed debugging output.
* app/widgets/gimpitemtreeview.[ch]: added "const gchar *reorder_desc"
to the class scruct and use it as undo_desc for DND reordering.
* app/widgets/gimpchanneltreeview.c
* app/widgets/gimplayertreeview.c
* app/widgets/gimpvectorstreeview.c: set reorder_desc.
2003-03-19 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcellrenderertoggle.[ch]
* app/widgets/gimpcellrendererviewable.[ch]: added public
functions to emit the "clicked" signal.
* app/widgets/gimpcontainertreeview.c: use them instead of
g_signal_emit_by_name().
* app/widgets/Makefile.am
* app/widgets/gimpcontainertreeview-dnd.[ch]: new files
implementing DND for tree views.
* app/widgets/gimpcontainertreeview.[ch]: added virtual
functions drop_possible() and drop().
* app/widgets/gimpitemtreeview.c
* app/widgets/gimplayertreeview.c: implement drop_possible()
and drop().
2003-03-18 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-mask.[ch] (gimp_image_mask_translate)
* app/core/gimplayer.[ch] (gimp_layer_translate): added
"gboolean push_undo" parameters.
* app/core/gimpimage-crop.c
* app/core/gimpimage-resize.c
* app/display/gimpdisplayshell-dnd.c
* app/gui/layers-commands.c
* app/widgets/gimptoolbox.c
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/selection.pdb: changed accordingly.
* app/pdb/layer_cmds.c
* app/pdb/selection_cmds.c: regenerated.
* app/core/gimpimage-undo-push.c (undo_pop_layer_displace): call
gimp_layer_translate() with "push_undo == FALSE" instead of
duplicating gimp_layer_translate()'s code. Use GimpItemUndo for
GIMP_UNDO_MASK.
* app/tools/gimpeditselectiontool.c
(gimp_edit_selection_tool_cursor_key): check if the top undo on
the stack is of exactly the same type as the undo we would push
and just don't push it then (compresses layer translate undos and
fixes bug #86362). Changed stuff work with CAPS_LOCK or other
modifiers pressed.
2003-03-18 Michael Natterer <mitch@gimp.org>
Added an API for image colormap manupulation and made colormap
changes undoable (fixes bug #25963).
* app/core/Makefile.am
* app/core/gimpimage-colormap.[ch]: new files implementing
colormap getters/setters. The setters push undos using the
new function below.
* app/core/core-enums.[ch]: added GIMP_UNDO_IMAGE_COLORMAP.
* app/core/gimpimage-undo-push.[ch]: added
gimp_image_undo_push_image_colormap(). Use GimpItemUndo even more
often. Cleanup.
* app/core/gimpimage.[ch]: removed gimp_image_get_colormap() here.
* app/core/gimpimage-convert.c
* app/gui/colormap-editor-commands.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimptoolbox.c
* tools/pdbgen/pdb/image.pdb: use the new API.
* app/pdb/image_cmds.c: regenerated.
* plug-ins/common/vinvert.c: removed the comment about the bug,
cosmetic cleanup.
Unrelated:
* app/gui/splash.c: added a frame around the splash. Please eek
if it doesn't please you.