2004-09-22 Michael Natterer <mitch@gimp.org>
Prepare for enabling private contexts for plug-ins and scripts:
* app/plug-in/plug-in.[ch]: removed the "context" member from
the PlugIn struct and added it to PlugInProcFrame instead.
* app/plug-in/plug-in-message.c
* app/plug-in/plug-in-progress.c
* app/plug-in/plug-in-run.c: changed accordingly.
2004-09-22 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-types.h
* app/plug-in/plug-in.[ch]: added struct PlugInProcFrame which
contains the ProcRecord, the proc's GMainLoop and its return
values.
Use the same struct for the plug-in's main proc and its
temp_procs, so we finally have one set of return values per call
frame, and not just one per plug-in.
Added plug_in_proc_frame_push()/pop() and changed
plug_in_main_loop[_quit]() accordingly.
* app/plug-in/plug-in-message.c
* app/plug-in/plug-in-progress.c
* app/plug-in/plug-in-run.c: changed accordingly.
2004-09-22 Sven Neumann <sven@gimp.org>
* app/text/gimptextlayout.c (gimp_text_get_pango_context):
workaround Pango bug #143542 (PangoFT2Fontmap leak, see also bug
#148997). Based on a patch by Robert Ögren.
2004-09-22 Sven Neumann <sven@gimp.org>
* app/widgets/gimpviewabledialog.c: removed the prelit event box
from the header frame, use a smaller font for the subtitle,
removed the separator.
* app/dialogs/preferences-dialog.c: removed the prelit event box
from the header frame. Perhaps we should have subtitles here with
a more verbose description of the settings page?
2004-09-21 Sven Neumann <sven@gimp.org>
* data/images/Makefile.am (imagedata_DATA): renamed gimp_splash.png
to gimp-splash.png.
* data/images/gimp-splash.png: new splash, courtesy of Dave Neary.
* app/gui/splash.c: look for gimp-splash.png in the users
directory, then in the systemwide images directory.
2004-09-21 Michael Natterer <mitch@gimp.org>
For the sake of completeness, added a GUI for the hidden
"Open as Layer" feature:
* app/actions/file-actions.c
* app/actions/file-commands.[ch]: added "file-open-as-layer"
action and callback. Abuse the "gimage" field of GimpFileDialog to
indicate layer opening (it's otherwise unused for file-open).
* app/dialogs/file-open-dialog.c: if dialog->gimage is non-NULL,
open the selected files as layers for that image.
* app/widgets/gimphelp-ids.h: added GIMP_HELP_FILE_OPEN_AS_LAYER.
* menus/image-menu.xml.in: added it to the menu.
2004-09-20 Michael Natterer <mitch@gimp.org>
* app/dialogs/dialogs.[ch] (dialogs_init): added GimpMenuFactory
parameter and removed inclusion on "menus/menus.h".
* app/menus/menus.[ch] (menus_init): added GimpActionFactory
parameter and removed inclusion of "actions/actions.h".
* app/gui/gui.c (gui_restore_callback): pass the factories to the
above functions.
2004-09-20 Michael Natterer <mitch@gimp.org>
* app/Makefile.am (gimp_2_1_LDFLAGS): removed all -u hacks.
(gimp_2_1_LDADD)
(gimp_console_2_1_LDADD): reordered .a files correctly. The core
seems to be cleaned up enough to have proper dependencies now.
2004-09-20 Michael Natterer <mitch@gimp.org>
* app/actions/channels-commands.c
* app/actions/vectors-commands.c: removed massive code duplication
by factoring out the code that creates the "New Channel/Path" and
"Edit Channel/Path Attributes" dialogs out to utility functions.
GUI spacing and Code cleanup.
* app/actions/layers-commands.c: minor GUI spacing and code
cleanup.
2004-09-19 Michael Natterer <mitch@gimp.org>
* app/actions/qmask-commands.c (qmask_invert_cmd_callback): is a
GtkRadioAction callback but behaved like a GtkToggleAction
callback. Fixes bug #152948.
2004-09-19 Sven Neumann <sven@gimp.org>
Try to make floating selections more obvious:
* app/widgets/gimplayertreeview.c
(gimp_layer_tree_view_floating_selection_changed): always display
"Floating Selection" as the name for a floating selection.
* app/core/gimpselection.c (gimp_selection_float): call the new
layer "Selection" instead of "Floating Selection". This is what
will be displayed if the FS is turned into a layer.
* app/actions/layers-commands.c (layers_edit_layer_query): don't
special case floating selections here.
* app/core/gimplayer-floating-sel.c: cosmetics.
2004-09-18 Sven Neumann <sven@gimp.org>
* app/actions/qmask-commands.c
* libgimpcolor/gimprgb.c (gimp_rgba_distance): just some cleanup.
* app/core/gimpimage-qmask.c (gimp_image_set_qmask_color): always
set gimage->qmask_color regardless of the qmask state.
* libgimpwidgets/gimpcolorbutton.c (gimp_color_button_new): set
the type before setting the color.
2004-09-17 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcomponenteditor.c
(gimp_component_editor_renderer_update): use
gimp_component_editor_get_iter() instead of duplicating its code.
2004-09-17 Simon Budig <simon@gimp.org>
* app/widgets/gimpbrusheditor.[ch]: Added a slider for the
brush spacing to the brush editor. Should make it more obvious
how to change it.
2004-09-17 Sven Neumann <sven@gimp.org>
* app/core/gimp-edit.c (gimp_edit_paste): based on a patch from
Joao S. O. Bueno: Ensure that the pasted layer is always within
the image, if it fits and aligned at top left if it doesn't.
Fixes bug #142944.
2004-09-16 Michael Natterer <mitch@gimp.org>
* configure.in: depend on GLib >= 2.4.5 and GTK+ >= 2.4.4.
* app/gui/gui.c: changed accordingly.
* app/sanity.c: ditto. Added check for GLib and put each check
into its own utility function. Enabled #if 0'ed check for
FreeType >= 6.2.7.
* app/widgets/gimpactiongroup.c
* app/widgets/gimpcursor.c
* app/widgets/gimpselectiondata.c
* app/widgets/gimpuimanager.c
* app/widgets/gimpwidgets-utils.c: removed workarounds for library
versions we refuse to start with.
2004-09-16 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdnd.c (gimp_dnd_uri_list_dest_add): reverse
order of DND dests so "text/uri-list" is preferred again after my
DND change of 2004-06-29. Fixes dropping of multiple files.
2004-09-16 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcomponenteditor.[ch]: set the viewable
renderer's "renderer" property to NULL when clearing the
view to work around bug #149906.
2004-09-16 Sven Neumann <sven@gimp.org>
* app/core/gimpscanconvert.c (VALUE_TO_PIXEL): replaced a bitshift
with a binary and. Should be unnoticeably faster ;)
2004-09-16 Simon Budig <simon@gimp.org>
* app/core/gimpscanconvert.c: Implemented an own rendering
callback for libart and use it instead of art_gray_svp_aa().
This now handles non-antialiased scan conversions itself. It
also basically shows the way to implement a LUT for the
scan conversion.
2004-09-15 Michael Natterer <mitch@gimp.org>
* app/widgets/gimphelp-ids.h: added help IDs for the drawable- and
vectors-visible and -liked actions as well as for the layer mask
property action.
* app/actions/drawable-actions.c
* app/actions/vectors-actions.c: use them.
* app/actions/layers-actions.c
* app/actions/layers-commands.[ch]: ditto. Use
GIMP_STOCK_TRANSPARENCY for all layer opacity actions. Replaced
"paint_mode" by "mode" in all action and function/variable names
because this is the layer mode, not a paint mode.
* app/actions/channels-commands.c
* app/actions/layers-commands.c
* app/actions/vectors-commands.c: set the "activates-default"
property on the name entry in all "New Foo" and "Edit Foo
Attributes" dialogs except in the "New Layer" dialog.
Addresses bug #148026.
* menus/image-menu.xml.in: added a (commented out) layer
properties menu containing all the new actions.
2004-09-15 Michael Natterer <mitch@gimp.org>
* app/actions/layers-actions.c
* app/actions/layers-commands.[ch]: added actions and callbacks
"layers-preserve-transparency" and
"layers-paint-mode-first,last,previous,next". Update the "active"
state of the recently added layer mask property actions in
layers_actions_update().
* app/actions/drawable-actions.c
* app/actions/drawable-commands.[ch]: added actions and callbacks
for "drawable-visible" and "drawable-linked". Fixes bug #152597.
* app/actions/vectors-actions.c
* app/actions/vectors-commands.[ch]: same here ("vectors-visible"
and "vectors-linked").
* app/widgets/gimplayertreeview.c
(gimp_layer_tree_view_preserve_button_toggled): flush the image
so the new actions are updated. Compress preserve_trans undos.
* menus/image-menu.xml.in: added the layer mask property actions
to the Layers/Mask submenu.
* menus/layers-menu.xml: reordered the mask property actions
to have the same order as in the image menu.
2004-09-15 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcontainertreeview.c
(gimp_container_tree_view_menu_position): improved the fix for bug
#152662 and removed trailing whitespace.
2004-09-15 Nathan Summers <rock@gimp.org>
* app/widgets/gimpcontainertreeview.c
(gimp_container_tree_view_menu_position): clamp the popup menu's Y
position to the visible area of the GtkTreeView. Fixes#152662.
2004-09-14 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpbufferview.c: simplified the code which deals
with the global_buffer's preview. The new buffer view renderer
does the aspect ratio magic all by itself now.
* app/actions/image-commands.h: removed trailing whitespace.
2004-09-14 Michael Natterer <mitch@gimp.org>
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpviewrendererbuffer.[ch]: added a view renderer
which knows how to preserve a GimpBuffer's aspect ratio if the
view's aspect ratio is different.
* app/widgets/gimpviewrenderer-utils.c
(gimp_view_renderer_type_from_viewable_type): use it for viewables
of type GimpBuffer. Fixes bug #152531
2004-09-14 Sven Neumann <sven@gimp.org>
* app/dialogs/dialogs-constructors.[ch]
* app/dialogs/dialogs.c
* app/gui/gui.c: let the dialog factory handle the quit dialog
as singleton. Fixes bug #151914.
* app/dialogs/quit-dialog.c: added a warning here. We need a
container of dirty images for the above change to work correctly.
2004-09-13 Sven Neumann <sven@gimp.org>
* plug-ins/common/jpeg.c (save_dialog): make the "Save EXIF data"
toggle insensitive when no EXIF data is present (bug #140042).
* app/display/gimpdisplayshell-close.c: as suggested by the HIG,
ask the user to save the image when the last display is being
closed. Addresses some issues raised in bug #106726.
2004-09-13 Michael Natterer <mitch@gimp.org>
* app/actions/file-commands.c: resurrected file_open_dialog_show()
and file_save_dialog_show() as private utility functions to get
rid of code duplication.
2004-09-13 Michael Natterer <mitch@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/file-dialog-utils.[ch]: removed these files.
* app/dialogs/file-save-dialog.[ch]: removed functions
file_save_dialog_show() and file_save_a_copy_dialog_show() and
changed internal function file_save_dialog_create() to
file_save_dialog_new().
* app/dialogs/dialogs.c
* app/dialogs/dialogs-constructors.[ch]: made it completely
managed by the dialog factory.
* app/actions/file-commands.c: create it using the dialog
factory. Attach it to the image so we open only one save
dialog per image.
* app/dialogs/file-open-dialog.c: added precondition checks
to file_open_dialog_new().
2004-09-13 Michael Natterer <mitch@gimp.org>
* app/dialogs/file-open-dialog.[ch]: removed function
file_open_dialog_show() and changed internal function
file_open_dialog_create() to file_open_dialog_new().
* app/dialogs/dialogs.c
* app/dialogs/dialogs-constructors.[ch]: made it completely
managed by the dialog factory.
* app/actions/file-commands.c: create it using the dialog factory.
2004-09-13 Michael Natterer <mitch@gimp.org>
Restore binary compatibility of the wire protocol that was
broken by the recent GPConfig changes:
* libgimpbase/gimpprotocol.[ch] (struct _GPConfig)
(_gp_config_read)
(_gp_config_write): argh, we can't use the two bytes padding
because that's just a binary compatible struct change, but inserts
two bytes into the byte stream that goes over the wire. Use the
first two bytes of the former "gdouble gamma" instead.
* app/plug-in/plug-in-run.c (plug_in_run)
* libgimp/gimp.c (gimp_config): changed accordingly.
2004-09-13 Sven Neumann <sven@gimp.org>
* app/widgets/gimphelp.c: simulate the behaviour of GNU gettext and
look at the LANGUAGE environment variable if the locale is not "C".