2001-12-03 Michael Natterer <mitch@gimp.org>
* app/devices.c: use the passed Gimp pointer instead of
using "the_gimp".
* app/base/temp-buf.c: indentation.
* app/gui/preferences-dialog.c: prefs_toggle_callback(): fixed
segfault when trying to find the prefs_dlg widget from a menu
item callback (Fixes#65757).
* app/gui/offset-dialog.[ch]: fixed public prototype, include
the header in the .c file.
* app/gui/menus.c: some menu cleanup: moved all functions which
operate on the active layer/drawable to <Image>/Layer. Renamed
"Layers" to "Layer".
* app/display/gimpdisplayshell.c: changed menu update function
accordingly.
* app/gui/image-commands.[ch]
* app/gui/layers-commands.[ch]: moved stuff from image-commands.*
to layers-commads.*-
* app/tools/gimpblendtool.c
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcurvestool.c
* app/tools/gimphistogramtool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimplevelstool.c
* app/tools/gimpposterizetool.c
* app/tools/gimpthresholdtool.c
* app/tools/paint_options.c
* app/tools/transform_options.c
* plug-ins/common/align_layers.c
* plug-ins/common/autocrop.c
* plug-ins/common/autostretch_hsv.c
* plug-ins/common/c_astretch.c
* plug-ins/common/color_enhance.c
* plug-ins/common/guillotine.c
* plug-ins/common/normalize.c
* plug-ins/common/rotate.c
* plug-ins/common/threshold_alpha.c
* plug-ins/common/zealouscrop.c
* plug-ins/rcm/rcm.c
* plug-ins/fp/fp.c: register under <Image>/Layer, some cosmetic
fixes.
2001-12-03 Sven Neumann <sven@gimp.org>
Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs-mmx.h: removed redefiniton of HAS_ALPHA
macro.
* app/core/gimp.c: reverted Daniel's change; it doesn't make the code
simpler, only more error-prone.
* app/gui/info-dialog.h
* app/gui/resize-dialog.h
* app/core/gimp.h
* app/core/gimpbrushgenerated.h
* app/core/gimpbrushpipe.h
* app/core/gimpchannel.[ch]
* app/core/gimpcontainer.h
* app/core/gimpcoreconfig.h
* app/core/gimpdata.h
* app/core/gimpdatafactory.[ch]
* app/core/gimpdrawable-blend.c
* app/core/gimpdrawable.[ch]
* app/core/gimpimage.h
* app/core/gimpimagefile.h
* app/core/gimplayer.h
* app/core/gimplayermask.h
* app/core/gimpmoduleinfo.h
* app/core/gimppalette.h
* app/core/gimpundo.h
* app/widgets/gimpbrushfactoryview.h
* app/widgets/gimpconstrainedhwrapbox.h
* app/widgets/gimpcontainermenu.h
* app/widgets/gimpcontainerview.h
* app/widgets/gimpdialogfactory.h
* app/widgets/gimpimagedock.h
* app/widgets/gimplistitem.h
* app/widgets/gimpmenuitem.h
* app/widgets/gimpnavigationpreview.h
* app/widgets/gimppreview.h
* app/gimprc.h
* app/pathP.h
* app/tools/gimpbezierselecttool.h
* app/tools/gimpcolorbalancetool.h
* app/tools/gimpcurvestool.h
* app/tools/gimpdodgeburntool.c
* app/tools/gimpfreeselecttool.h
* app/tools/gimphuesaturationtool.h
* app/tools/gimpinktool-blob.h
* app/tools/gimpinktool.h
* app/tools/gimpiscissorstool.h
* app/tools/gimpmagnifytool.h
* app/tools/gimpmeasuretool.h
* app/tools/gimppainttool.h
* app/tools/gimppathtool.h
* app/tools/gimprectselecttool.h
* app/tools/gimpthresholdtool.h
* app/tools/gimptool.h
* app/tools/gimptransformtool.h
* app/base/base-config.h
* app/base/gimplut.[ch]
* app/base/pixel-region.h
* app/base/pixel-surround.[ch]
* app/base/temp-buf.[ch]
* app/base/tile-manager-private.h
* app/base/tile-manager.[ch]
* app/base/tile-private.h
* app/base/tile.[ch]
* app/display/gimpdisplay.h
* app/display/gimpdisplayshell-selection.h
* app/display/gimpdisplayshell.h
* app/gui/brush-select.h
* app/gui/gradient-editor.h
* app/gui/gradient-select.h: reverted most of Daniel's changes.
There's no reason to use unsigned integers here and in lots of places
it is even wrong.
Then it's way too early to convert gbooleans into bitfields. This
change may make sense in a few places but can happen later when the
API has settled and the code is more stable.
* app/gimprc.c: reverted Daniel's change. This is a GCC-ism and this
code is about to die soon anyway.
2001-12-01 Michael Natterer <mitch@gimp.org>
* app/errors.c: forgot a "return".
* app/gui/error-console-dialog.c: the menu item signals were
connected "swapped", which is wrong.
* app/tools/gimperasertool.c: added a cursor_update_func(), update
the "toggled" state there and chain up. Fixes wrong cursor
updating.
Made brush_pipe slection work again, removed the #warnings:
* app/core/gimpbrush.[ch]
* app/core/gimpbrushpipe.c: changed brush_class->select_brush()
and brush_class->want_null_motion() to be proper virtual
functions. Pass last_coords and cur_coords to them.
* app/tools/gimppainttool.c: call the functions again.
2001-12-01 Michael Natterer <mitch@gimp.org>
* app/main.c
* app/appenv.h: moved "message_handler" from here...
* app/core/gimp.[ch]: ...to here. Added gimp_message() and a
"gui_message_func" pointer...
* app/gui/gui.c: ...which gets set here to gui_message().
* app/errors.c: don't include any gui stuff but simply call
gimp_message().
* app/app_procs.c: don't set "message_handler" here, it's done in
gui.c now.
* app/gui/error-console-dialog.[ch]: use gimp->message_handler.
* app/gui/dialogs-constructors.c: pass a Gimp pointer to
error_console_create().
* app/widgets/gimpwidgets-utils.[ch]: made the "message" parameter
of gimp_message_box() a const gchar*, not just gchar*.
* tools/pdbgen/pdb/message.pdb: use gimp->message_handler, don't
include "appenv.h".
* app/pdb/message_cmds.c: regenerated.
* app/devices.[ch]: cleanup before chopping: removed global
variable "current_device", added devices_get_current(), pass lots
of Gimp pointers around.
* app/gimprc.c: pass a Gimp pointer to devices_rc_update().
* app/display/gimpdisplayshell-callbacks.c
* app/gui/toolbox.c
* app/tools/gimppainttool.c: use devices_get_current(), pass Gimp
pointers to all devices_foo() functions.
* app/core/gimpimage-mask.c: no need to include "pdb/pdb-types.h".
2001-12-01 Daniel Egger <degger@fhm.edu>
* app/core/Makefile.am
* libgimp/Makefile.am
* libgimpbase/Makefile.am
* libgimpcolor/Makefile.am
* libgimpmath/Makefile.am
* libgimpwidgets/Makefile.am
* modules/Makefile.am
* themes/Default/Makefile.am: Don't try to concatenate something
to a variable not used before but simply assign it. Shuts up
annoying automake warnings for me.
2001-11-30 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/plug_in.[ch]: removed...
* app/plug-in/Makefile.am
* app/plug-in/plug-in-types.h
* app/plug-in/plug-in.[ch]: ...and added here.
* app/appenv.h: removed StackTraceMode and MessageHandlerType...
* libgimpbase/gimpbasetypes.h: ...and added them here.
* tools/pdbgen/Makefile.am: don't scan "app/apptypes.h" for enums.
* tools/pdbgen/enumcode.pl: added a general check to prevent
enums which are defined in libgimp* from being written to
"libgimp/gimpenums.c".
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
* app/core/core-types.h: include "pdb/pdb-types.h" so including
"core/core-types.h" gets the whole core type space.
* app/core/gimp.[ch]: added a "stack_trace_mode" parameter to the
constructor and store it in the Gimp struct because the value is
also passed to plug-ins and nobody should include "appenv.h".
* app/gimprc.[ch]: pass the alternate_system_gimprc and
alternate_gimprc filenames from the command line to gimprc_prase()
so we don't need to include "appenv.h".
* app/batch.[ch]: pass the "batch_cmds" as parameter, don't
include "append.h".
* app/app_procs.c: pass more parameters around.
* app/devices.c
* app/errors.c
* app/gimphelp.c
* app/main.c
* app/core/gimpgradient.c
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell.c
* app/file/file-open.c
* app/file/file-save.c
* app/file/file-utils.c
* app/gui/commands.c
* app/gui/error-console-dialog.c
* app/gui/file-dialog-utils.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/paths-dialog.c
* app/gui/user-install-dialog.c
* app/tools/gimpbezierselecttool.c
* app/tools/xinput_airbrush.c
* app/xcf/xcf.c
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/help.pdb
* tools/pdbgen/pdb/message.pdb
* tools/pdbgen/pdb/plug_in.pdb: changed accordingly:
- changed "plug-in.h" include where needed.
- don't call gimp_fatal_error() directly, it's called via the log
handler when calling g_error().
- don't incude "errors.h" except from main.c.
- changed stack_trace and message_handler enum names.
- get "stack_trace_mode" from Gimp.
- removed many inclusions of "appenv.h".
* app/pdb/fileops_cmds.c
* app/pdb/help_cmds.c
* app/pdb/message_cmds.c
* app/pdb/plug_in_cmds.c
* app/pdb/procedural_db.c: regenerated.
2001-11-30 Michael Natterer <mitch@gimp.org>
* app/display/Makefile.am
* app/display/gximage.[ch]: removed. It was a wrapper around
nothing since we use GdkRGB.
* app/display/gimpdisplayshell-render.[ch]: added the render
buf size defines here, added the #if 0'ed display filter stuff
and the actual GdkRGB render stuff here too.
* app/display/gimpdisplayshell.[ch]: added shell->render_buf as
replacement for the global gximage buffer, renamed shell->scroll_gc
to shell->render_gc and use it all over the place when rendering
image data.
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell-scroll.c: changed accordingly.
* app/gui/gui.c: don't call gximage init/exit stuff.
2001-11-30 Rebecca Walter <bex@gimp.org>
* app/gui/gradient-select.c
* app/gui/gui.c
* app/gui/indicator-area.c
* app/gui/info-dialog.c
* app/gui/info-window.c: More proofreading.
In cooperation with Marco Wessel (CyBeR)
2001-11-30 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/colormaps.[ch]: removed.
* app/app_procs.c: don't call it.
* app/gui/gui.c: configure GdkRGB here.
* app/display/gimpdisplayshell.c
* app/display/gximage.c
* app/gui/color-notebook.c
* app/gui/color-select.c
* app/gui/colormap-dialog.c
* app/gui/info-window.c
* app/gui/preferences-dialog.c
* app/tools/gimpmovetool.c
* app/display/gimpdisplayshell-selection.c: changed accordingly
(simply removed the unneded include or use
gdk_gc_set_rgb_[fg|bg]_color() instead).
* app/display/gimpdisplayshell.c
* app/display/gimpdisplayshell-callbacks.[ch]: chopped
gimp_display_shell_canvas_events() in smaller callbacks. Only the
events that trigger tool actions are handled in a single callback.
2001-11-30 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpimage-qmask.[ch]: new files: the QMask stuff
stripped from GUI code. Added gimp_image_qmask_invert().
* app/core/gimpimage.[ch]: removed the QMask functions.
* app/display/Makefile.am
* app/display/gimpdisplayshell-qmask.[ch]: removed.
* app/gui/Makefile.am
* app/gui/qmask-commands.[ch]: new files for the new QMask item
factory callbacks and the qmask query dialog.
* app/gui/menus.c: added a context menu for the QMask button.
* app/display/gimpdisplayshell.c
* app/display/gimpdisplayshell-handlers.c: don't include the qmask
stuff.
* app/display/gimpdisplayshell-callbacks.[ch]: Moved the 2 qmask
callbacks here. Don't popup the dialog on double_click. Show
the contect menu on right-click.
* app/display/gimpdisplayshell-callbacks.[ch]:
gimp_display_shell_canvas_events(): removed the hack of
conntecting "key_press_event" to gtk_true() while a tool is
active. Instead, check for (event & GDK_BUTTON1_MASK) in the
key_press and key_release handlers and stop signal emission. Save
the modifier state on "button_press" and restore it after
"button_release".
Changed the way context menus are updated/shown:
- removed GimpContainerContextFunc.
- pass around item factory identifiers (e.g. "<Brushes>")
- added voodoo to update the menus before showing them.
* app/widgets/gimpitemfactory.[ch]: gimp_item_factory_new(): take
a GimpItemFactoryUpdateFunc parameter, attach it as data to the
factory and use it to update the menu in
gimp_item_factory_popup_with_date().
* app/widgets/gimpwidgets-utils.[ch]: removed
gimp_item_factory_popup_with_data() here.
* app/widgets/gimpbrushfactoryview.[ch]
* app/widgets/gimpbufferview.[ch]
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpdatafactoryview.[ch]
* app/widgets/gimpdocumentview.[ch]
* app/widgets/gimpdrawablelistview.[ch]: use item_factory
identifier strings all over the place.
* app/widgets/gimpdockbook.c: removed the menu update code, it's
now in gui/dialogs-commands.c.
* app/gui/brushes-commands.[ch]
* app/gui/buffers-commands.[c]
* app/gui/channels-commands.[ch]
* app/gui/dialogs-commands.[ch]
* app/gui/documents-commands.[ch]
* app/gui/gradient-editor-commands.[ch]
* app/gui/gradients-commands.[ch]
* app/gui/layers-commands.[ch]
* app/gui/palettes-commands.[ch]
* app/gui/patterns-commands.[ch]: removed all show_context_menu()
functions and made the update functions public. Changed all
update functions to use the gimp_item_factory_set_foo() methods
instead of gimp_menu_item_set_foo().
* app/gui/menus.c: pass the update functions to the
gimp_item_factory_new().
* app/gui/dialogs-constructors.c: pass item factory identifiers to
all view constructors.
* app/gui/gradient-editor.c: show the context menu using the new
method.
* app/gui/toolbox.c: no need to include "dialogs-commands.h".
2001-11-29 Michael Natterer <mitch@gimp.org>
* app/gui/menus.c: set the accelerators for the "Open Recent"
items > 10 to "" instead of NULL so gtk+ doesn't use the stock
item's default accel.
* app/widgets/gimpdock.c
* app/widgets/gimpimagedock.c: set the docks' titles to
"Gimp Dock #<n>" instead of just "Gimp" so they can be
distinguished in the WM's window list or dock or whatever.
2001-11-29 Michael Natterer <mitch@gimp.org>
* app/gui/menus.c: put the last_opened menu entries in a
submenu called "Open Recent", added items to create a dock
with some useful tabs in it ("Brushes, Patterns & Stuff..."),
* app/gui/dialogs-commands.[ch]: added a callback for the new
"Stuff" menu entry.
* app/gui/dialogs-constructors.h: removed dialogs_lc_get()
declaration because it doesn't exist.
2001-11-29 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell.[ch]: replaced the QMask radio
buttons ba a single check button. Still needs some tuning.
* app/display/gimpdisplayshell-handlers.c
* app/display/gimpdisplayshell-qmask.[ch]: changed accordingly.
* app/tools/gimptool.[ch]: added "gboolean handle_empty_image" to
the GimpTool structure.
* app/tools/gimpmovetool.c: set it to TRUE.
* app/tools/gimpfuzzyselecttool.c: don't gimp_[set|unset]_busy()
while calculating the selection but set the busy cursor on the
display manually (we have the pointer grabbed anyway).
* app/display/gimpdisplayshell-callbacks.c: don't check for
GIMP_IS_MODE_TOOL(active_tool) but look at
active_tool->handle_empty_image. Removed the checks for
GIMP_IS_FUZZY_SELECT_TOOL(active_tool) because fuzzy_select
doesn't set GIMP busy while it's active any more.
* app/tools/transform_options.[ch]
* app/tools/gimptransformtool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c: added widgets for the transform tools'
constraints (one more #51108 issue fixed).
* app/tools/gimperasertool.c: cosmetic.
* app/widgets/gimpdockbook.c: don't hardcode GtkNotebook's
tab_border to 0 but add a style property for it...
* themes/Default/gtkrc: ...and set it to 0 here.
2001-11-29 Sven Neumann <sven@gimp.org>
* libgimpbase/gimpenv.c
* plug-ins/helpbrowser/helpbrowser.c
* plug-ins/imagemap/imap_preferences.c: use g_build_filename().
* plug-ins/script-fu/script-fu-scripts.c: use new GDir functions,
g_build_filename() and g_file_test() to make code more portable.
Don't use deprecated gdk_font functions. We don't use X fonts any
longer.
2001-11-29 Sven Neumann <sven@gimp.org>
* app/gimprc.c (save_gimprc_strings): reverted list handling for
unknown_tokens to the code used in 1.2 which has the advantage that
it doesn't crash.
2001-11-29 Sven Neumann <sven@gimp.org>
* m4macros/gimp-1.4.m4: use gimptool-1.3.
* app/display/gimpdisplayshell.c
* app/gui/gui.c: cosmetic changes from Guillermo S. Romero.
* plug-ins/common/*.c
* plug-ins/script-fu/script-fu-scripts.c: applied patches from
Guillermo S. Romero that change the button ordering. I had to redo
some of the changes by hand since the patches didn't apply cleanly.
Hopefully got it all right...
* app/undo.c: Fixed another use of array of gpointer in place of a
proper struct, this time in undo_(push|pop)_channel_mod.
* base/base-types.h
* base/tile-manager.h
* base/tile-manager-private.h
* base/tile-manager.c: added PixelDataHandle as an abstraction
on top of tiles. PixelDataHandles either return a pointer into
the tile data, or create a temporary buffer so the calling
function can access data from disparate tiles using a single
buffer. This is a step in reducing the dependence of core
image functions being aware of tiles as well as a step toward
having a single abstraction for pixel data.
* app/image_map.c: changed to use read_pixel_data_1
* app/pixel-region.c: changed to use the read_pixel_data and
write_pixel_data where practical.
2001-11-28 Michael Natterer <mitch@gimp.org>
* app/base/base-types.h: include the new
"paint-funcs/paint-funcs-types.h".
* app/paint-funcs/Makefile.am
* app/paint-funcs/paint-funcs-types.h: new file. Includes
"base/base-types.h".
* app/paint-funcs/paint-funcs.[ch]: removed the enums here,
include "paint-funcs-types.h".
* app/widgets/widgets-types.h: include "display/display-types.h"
* app/display/display-types.h: include "widgets/widgets-types.h".
* app/tools/tools-types.h: include "display/display-types.h"
* app/gui/gui-types.h: include "tools/tools-types.h".
The order of namespaces/dependencies should be (but is not):
(base, paint-funcs) -> (core, file, xcf, pdb) ->
(widgets, display) -> tools -> gui
* app/path.c: include "tools/tools-types.h".
* app/core/Makefile.am
* app/core/gimpimage-guides.[ch]
* app/core/gimpimage-merge.[ch]
* app/core/gimpimage-resize.[ch]
* app/core/gimpimage-scale.[ch]: new files.
* app/core/gimpimage.[ch]: removed the stuff which is in the new
files. Reordered all functions in both the .h and .c files,
commented the groups of functions.
* app/core/gimpcontainer.c: create the handler_id using a counter,
not the address of a pointer, because the address *may* be the
same twice, added debugging output.
* app/core/gimpviewable.[ch]: added primitive support for getting
a preview GdkPixbuf.
* app/nav_window.c
* app/undo.c
* app/undo_history.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-mask.[ch]
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell-dnd.c
* app/display/gimpdisplayshell-render.c
* app/display/gimpdisplayshell-scale.c
* app/display/gimpdisplayshell-scroll.c
* app/gui/image-commands.c
* app/gui/info-window.c
* app/gui/layers-commands.c
* app/gui/palette-import-dialog.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/widgets/gimpcontainerview-utils.c
* app/xcf/xcf-load.c: changed accordingly, some cleanup.
* tools/pdbgen/pdb/guides.pdb
* tools/pdbgen/pdb/image.pdb: changed accordingly, reordered functions.
* app/plug_in.c: set the labels of the "Repeat" and "Re-Show" menu
items to the name of the last plug-in (Fixes#50986).
* app/display/gimpdisplayshell.[ch]: set the labels of "Undo" and
"Redo" to the resp. undo names. Much simplified the WM icon stuff
by removing most code and using gimp_viewable_get_new_preview_pixbuf().
* app/widgets/gimpbrushfactoryview.c: forgot to assign the GQuark
returned by gimp_container_add_handler().
* app/pdb/guides_cmds.c
* app/pdb/image_cmds.c
* libgimp/gimpimage_pdb.[ch]: regenerated.
* app/undo.c: Fixed evil<tm> double casting of enum to glong to
gpointer for layer_mod undo by using a struct instead of an array
of gpointer (!!!) for storing layer_mod undo data. Also moved
layer offset undo information out of the undo tile manager.
* app/image_map.c: Moved layer offset undo information out of the
undo tile manager.
Above changes may break image_map and layer_mod undos, please test
as I haven't. :)
2001-11-28 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpimage-projection.[ch]: new files. Changed function
names to be consistent.
* app/core/gimpimage.[ch]: removed the projection stuff
here. Removed the gimp_image_composite_blah() functions becauee
they were just calling the resp. gimp_image_projection ones.
* app/core/gimpimage-contiguous-region.c
* app/core/gimpimage-convert.c
* app/core/gimpimage-crop.c
* app/core/gimppalette-import.c
* app/undo.c
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell-render.c
* app/gui/info-window.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpiscissorstool.c: changed accordingly.
2001-11-28 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpbutton.c
* libgimpwidgets/gimpcolorarea.c
* libgimpwidgets/gimpcolorbutton.c
* libgimpwidgets/gimpoffsetarea.c: fixed button_press event handling,
removed double g_return_if_fail()s, misc. cleanup.
* app/display/gimpdisplayshell.c: removed the SET_COLOR() stuff
here...
* app/gui/menus.c: ...and added it here so it actually works.
* app/widgets/gimpcolorpanel.c: add color previews to the
item_factory.
* app/widgets/gimpdockbook.c: use the item_factory functions now
that they are in widgets/.
* app/widgets/gimpitemfactory.[ch]: nothing, we just want to keep
the RCS hirtory.
2001-11-27 Michael Natterer <mitch@gimp.org>
* app/widgets/Makefile.am
* app/widgets/gimpitemfactory.[ch]: put the whole generic stuff
from gui/menus.[ch] here (where generic == less_evil because it at
least does not depend on particular menu entries).
* app/gui/menus.[ch]: removed the stuff here. Only the global menu
definitions and bad hacks to adjust them to our needs left.
Removed all menus_get_foobar_factory() functions because we can
use gtk_item_factory_from_path("<FooBar>") all over the place.
* app/plug_in.c
* app/display/gimpdisplayshell.c
* app/gui/brushes-commands.c
* app/gui/buffers-commands.c
* app/gui/channels-commands.c
* app/gui/dialogs.c
* app/gui/documents-commands.c
* app/gui/file-dialog-utils.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gradient-editor-commands.c
* app/gui/gradients-commands.c
* app/gui/gui.c
* app/gui/layers-commands.c
* app/gui/palettes-commands.c
* app/gui/paths-dialog.c
* app/gui/patterns-commands.c
* app/gui/toolbox.c: changed accordingly. None of these files
except gui/gui.c includes gui/menus.h any more.
2001-11-27 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontainer.c: GType is a pointer now, not a guint.
* app/widgets/gimpdock.c: chain up in widget_class->style_set().
Gradient Editor chopping plus merging of bex' proofreading:
(fixes#62278).
* app/core/core-types.h: moved the gradient related enums here.
* app/core/gimpgradient.[ch]: removed the enums, added gradient
segment utility functions from the gradient_editor.
* app/gui/gui-types.h: added the GradientEditor typedef here.
* app/gui/Makefile.am
* app/gui/gradient-editor-commands.[ch]: new files implementing
callbacks and menu_update stuff for the new gradient_editor
item factory.
* app/gui/gradient-editor.[ch]: removed tons of code, namespace
cleanup, stuff...
* app/gui/menus.[ch]: added the gradient_editor menu stuff here.
Added menus_set_color() which creates & updates a color menu item
(will soon be used in other places too). Renamed menus_set_state()
to menus_set_active().
The editor's menu code is ugly as before, only different and evil
the same way as the rest of the menu stuff, so it's at least
consistent :)
* app/display/gimpdisplayshell.c: changed accordingly.
* app/gui/test-commands.c: don't include "gradient-editor.h".
2001-11-27 Sven Neumann <sven@gimp.org>
* configure.in
* app/Makefile.am
* app/config/gimpconfig.[ch]
* app/config/gimpconfig-serialize.[ch]
* app/config/gimpconfig-deserialize.[ch]: added new base class
GimpConfig that knows how to serialize and deserialize it's properties
in sexp format. Contains two example properties that will go into
derived classes once this is really used.
* app/main.c: deserialize and serialize the test GimpConfig object to
~/.gimp-1.3/foorc (only for debugging).
* app/widgets/widgets-types.h
* app/core/core-types.h: moved GimpPreviewSize enum to core-types.
* app/core/core-types.h: don't include gdk-pixbuf.h.
* app/core/gimptoolinfo.h
* app/core/gimpimagefile.c: include gdk-pixbuf.h.
* app/core/gimpimage.[ch]: made construct_flag a gboolean.
* app/core/gimpdrawable-invert.c
* app/core/gimpunit.c
* tools/pdbgen/pdb/plug_in.pdb
* app/pdb/plug_in_cmds.c: removed unused variables.
* app/display/Makefile.am: removed .PHONY and files cruft
* app/Makefile.am
* libgimp/Makefile.am
* libgimpbase/Makefile.am
* libgimpcolor/Makefile.am
* libgimpmath/Makefile.am
* libgimpwidgets/Makefile.am
* plug-ins/Makefile.am: removed commented out makefile.mingw rules.
If we ever need them again, they can easily be resurrected from CVS.
2001-11-26 Kelly Martin <kmartin@pyrzqxgl.org>
* app/Makefile.am
* libgimp/Makefile.am
* libgimpbase/Makefile.am
* libgimpcolor/Makefile.am
* libgimpmath/Makefile.am
* libgimpwidgets/Makefile.am
* plug-ins/Makefile.am:
Commented out makefile.mingw rules in Makefile.am. These conflict
with the default rules generated by automake and generate annoying
warnings. tml doesn't think they're needed anymore. If it turns
out they are, they can be added back.
2001-11-26 Rebecca Walter <rjp@mail.tele.dk>
* app/gui/convert-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/error-console-dialog.c
* app/gui/file-commands.c
* app/gui/file-new-dialog.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c: More of my extensive proofing.
Someone needs to check bex comments and do some hacking.
2001-11-26 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.c: gimp_image_construct_layers/channels():
actually free the reverse_list after projecting the drawables.
(Spotted by Kelly Martin).
2001-11-26 Michael Natterer <mitch@gimp.org>
* tools/authorsgen/contributors: added Rebecca Walter (bex).
* AUTHORS
* app/gui/authors.h: regenerated.
* app/widgets/widgets-types.h: added GimpPreviewSize enum.
* app/gimprc.c
* app/gui/menus.c
* app/gui/preferences-dialog.c
* app/widgets/gimpdockbook.c: use the new enum.
* app/tools/gimpbucketfilltool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimperasertool.c
* app/tools/gimpfliptool.c
* app/tools/gimpmagnifytool.c: added "(<Ctrl>)" and "(<Alt>)" to
some tool options strings.
* app/tools/gimpmovetool.c: some more widgets for hidden tool
options (#51108).
* app/tools/transform_options.c: renamed to "Tool Paradigm" stuff
to something more understandable.
* app/widgets/gimpdock.c: added a style property for the height
of the separator.
* themes/Default/gtkrc: show how to use the new property.
* app/widgets/gimpcontainerview.c
* app/widgets/gimpdockable.c
* app/widgets/gimplayerlistview.c: waste less lines when calling
gtk_widget_style_get().
2001-11-25 Simon Budig <simon@gimp.org>
* app/tools/gimperasertool.c
* app/tools/gimperasertool.h
* tools/pdbgen/pdb/tools.pdb: Removed the color_erase option of
the eraser.
* app/pdb/tools_cmds.c: regenerated.
2001-11-25 Simon Budig <simon@gimp.org>
* app/paint-funcs/paint-funcs.c: ANTI_ERASE had wrong
layer mode information (according to the comments).
Changed it to something sane. I did test it and no
errors occurred. I wonder why they did not happen earlier...
2001-11-25 Sven Neumann <sven@gimp.org>
* Makefile.am
* configure.in
* gimp-1.3.pc.in
* gimpui-1.3.pc.in: added pkg-config files for gimp-1.3.
* gimptool-1.4.in: renamed to gimptool-1.3.in
* docs/Makefile.am
* docs/gimptool-1.4.1.in renamed to docs/gimptool-1.3.1.in.
Disabled installation of man-pages; they need to be updated and
should probably be renamed.
* app/Makefile.am: generate binary called gimp-1.3 sp we don't clash
with older gimp installations.
* gimp-1.3.pc.in
* gimpui-1.3.pc.in: added pkg-config files for gimp-1.3.
* INSTALL
* NEWS: updated
2001-11-24 Sven Neumann <sven@gimp.org>
Clean up after Marc Lehmann who changed tools/pdbgen/pdb/color.pdb
and tools/pdbgen/pdb/image.pdb without writing a ChangeLog entry and
without regenerating the respective files :-(
* tools/pdbgen/pdb/color.pdb: another typo fix similar to the one
Marc spotted.
* app/pdb/color_cmds.c
* app/pdb/image_cmds.c
* libgimp/gimpcolor_pdb.c
* libgimp/gimpimage_pdb.c: regenerated.
2001-11-24 Sven Neumann <sven@gimp.org>
* app/gimprc.c
* app/plug_in.[ch]
* app/pdb/plug_in_cmds.c
* tools/pdbgen/pdb/plug_in.pdb: started to clean plug_in code a little.
Still a long way to go...
* app/gui/splash.c: simplified
2001-11-23 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontainer.c: removed a useless g_return_if_fail().
* app/widgets/gimpcontainereditor.h: removed GimpViewType enum.
* app/widgets/widgets-types.h: added it here.
* app/widgets/gimpcontainerview-utils.[ch]: added a utility function
which gets the GimpContainerView out of a GimpDockable.
* app/widgets/gimpdialogfactory.[ch]: added support for saving and
loading of each GimpDockable's preview size. Store the dialog's
default preview size in the GimpDialogFactoryEntry. Pass the
preview_size to each created dialog.
* app/gui/menus.c: added menu items for setting the preview_size
and switching between list and grid view. Removed the item
overkill in the "Add Tab" submenu.
* app/gui/dialogs-commands.[ch]: added callbacks for the new items.
* app/widgets/gimpdockbook.c: set the item's state before showing
the menu.
* app/errors.c
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/edit-commands.c
* app/gui/gui.c
* app/gui/indicator-area.c
* app/gui/toolbox.c: changed accordingly.
* app/tools/selection_options.[ch]: cleaned up the selection
options and added some tooltips. Much more to do...
2001-11-23 Sven Neumann <sven@gimp.org>
* app/gimprc.c: don't include gimputils.h, it's gone.
* libgimpbase/Makefile.am: removed stale reference to gimputils.h.
* libgimpwidgets/gimpcolorbutton.h: wanted to type G_END_DECLS here.
2001-11-23 Sven Neumann <sven@gimp.org>
* configure.in: bumped version number to 1.3.1.
Require Glib/GTK+-1.3.11 and Pango-0.22. Removed GDK_DISABLE_COMPAT_H
and GTK_DISABLE_COMPAT_H from our default CFLAGS since they don't
exist any longer.
* RELEASE-TO-CVS.patch: removed since the glib/gtk+ API is supposed to
be frozen now.
* HACKING: removed reference to RELEASE-TO-CVS.patch
* app/gui/menus.c
* app/tools/gimptexttool.c: applied RELEASE-TO-CVS.patch to conform
to the new GTK+/Pango API.
* app/core/Makefile.am: generate marshallers with gimp_marshal prefix.
* app/core/gimpmarshal.list: added all marshallers we use.
* app/core/gimpmarshal.[ch]: regenerated.
* app/[lots of .c files]: use gimp_marshal_* for all marshallers.
* data/images/
* app/app_procs.c
* app/gui/splash.c:
* libgimpbase/Makefile.am
* libgimpbase/gimpbase.h
* libgimpbase/gimputils.[ch]: removed since they are no longer needed.
* app/gimprc.c
* plug-ins/common/ps.c
* plug-ins/gdyntext/gdyntext.c
* plug-ins/gdyntext/gdyntextcompat.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c
* plug-ins/script-fu/script-fu-scripts.c: use glib functions instead
of gimp_strescape() and gimpstrcompress().
* cleaned up all header files: use G_BEGIN_DECLS/G_END_DECLS, declared
all _get_type function as G_GNUC_CONST.
* tools/pdbgen/enumcode.pl
* tools/pdbgen/lib.pl: make them generate header files using
G_BEGIN_DECLS/G_END_DECLS.
* pixmaps/Makefile.am
* pixmaps/wilber3.xpm: removed ...
* data/images/tips_wilber.png: ... and added here as PNG
* app/gui/tips-dialog.c: load the Wilber on demand using GdkPixbuf.
* data/images/gimp_splash.ppm: removed ...
* data/images/gimp_splash.png: ... and added as PNG
* app/app_procs.c
* app/gui/splash.[ch]: load the splash image using GdkPixbuf.
* app/gui/about-dialog.c: sink the GtkPreview.
2001-11-22 Michael Natterer <mitch@gimp.org>
* app/devices.c: made device_status_update() static as declared.
* app/core/gimpobject.h: don't include <gobject/gobject.h> as this
is forbidden now (doesn't hurt as we need to include glib or gtk+
before gimp headers in .c files anyway).
* app/widgets/gimpcontainerlistview.c: better handling of
"button_press" of list items: don't let a selected item being
deselected, fixed context menu popup.
2001-11-22 Michael Natterer <mitch@gimp.org>
* app/tools/gimpclonetool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpmagnifytool.c
* app/tools/paint_options.c
* app/tools/transform_options.c: removed the remaining cases of
we-rely-on-the-radio-buttons-being-in-the-same-order-as-the-enum
and use gimp_radio_group_set_active() instead.
Use GINT_TO_POINTER(gint) instead of (gpointer)gint all over
the place.
2001-11-22 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpstock.c: added stock *items* (not only icons)
for all tools so they can be used as action buttons.
* app/tools/gimptransformtool.[ch]: added
transform_tool->use_center so subclasses can switch on/off center
detection/cursor_update . Added an oper_update() implementation
and figure the current handle out there. Reordered button_press()
so we don't need to call it recursively.
* app/tools/gimpperspectivetool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c: use the new stock items instead of
_("Rotate") etc.
* app/tools/gimpperspectivetool.c
* app/tools/gimpscaletool.c: allow the whole thing being dragged
around by handling the center separately.
* app/tools/gimpdrawtool.c: gimp_draw_tool_on_handle(): need to
use the radius, not the diameter to check if being over a
GIMP_HANDLE_CIRCLE handle.
2001-11-22 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpwidgets.[ch]: use "gimp-item-data" instead of
"user_data" as data key when attaching values to radio buttons or
menu items. (For backward compat, attach "user_data" additionally,
but don't use it to _get_data()).
Added gimp_radio_group_set_active() which works like
gimp_options_menu_set_history() and sets the active item by
attached "gimp-item-data" value.
* app/gui/brush-select.c
* app/gui/file-new-dialog.c
* app/gui/info-window.c
* app/gui/preferences-dialog.c
* app/gui/resolution-calibrate-dialog.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpselectiontool.c
* app/tools/paint_options.c
* app/tools/selection_options.c
* app/widgets/gimplayerlistview.c: removed all kinds of
"user_data" stuff and evil hacks to find a radio button by the
value it represents (simply call gimp_radio_group_set_active()).
* app/tools/gimpdrawtool.c: added a g_return_if_fail().
* app/tools/gimpfliptool.c: don't set draw_tool_class->draw to NULL,
* app/tools/gimptransformtool.[ch]: fixed some stuff i broke when
removing the old "interactive" boolean (there is no
non-interactive transform tool any more). Put the info_dialog
pointer and the old_trans_info array into the GimpTransformTool
instance. Added gimp_transform_tool_info_dialog_connect(). Don't
include any subclasses any more.
* app/tools/gimpperspectivetool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c: use
gimp_transform_tool_info_dialog_connect() to create and connect
the info dialogs' action_area.
2001-11-21 Sven Neumann <sven@gimp.org>
* app/gui/splash.c: sink the GtkPreview created for the splash.
* libgimpwidgets/gimphelpui.c: ref and sink the tooltips on creation.
2001-11-21 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpfileselection.c: set the window title for file
selection dialogs as we do for directory selection dialogs. Provide
fallbacks if gimp_file_selection_new() is called with a NULL title.
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/siod-wrapper.c: applied a modified version of a
patch from Matteo Nastasi <nastasi@tiscalinet.it> that adds the new
Script-Fu parameter type SF-DIRNAME.
* plug-ins/script-fu/scripts/test-sphere.scm: use SF-DIRNAME.
2001-11-21 Michael Natterer <mitch@gimp.org>
* app/tools/gimptexttool.c: seems I've comitted something which
should only be in RELEASE-TO-CVS.patch. Sorry...
2001-11-21 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-callbacks.c: key press and release
events were sent swapped to tools.
* app/tools/selection_options.[ch]: added radio buttons for the
selection operation (REPLACE, ADD, ...). Partly fixes#51108.
* app/tools/gimpselectiontool.[ch]: honor the new tool options
stuff. Do evil things in gimp_selection_tool_modifier_key().
* app/tools/gimpbycolorselecttool.[ch]: removed most of the
widgets from the by_color_select window because they are all in
the selection_options now.
* libgimpwidgets/gimpstock.[ch]: added new stock items for the
buttons.
* themes/Default/Makefile.am
* themes/Default/images/Makefile.am
* themes/Default/images/stock-button-selection-add.png
* themes/Default/images/stock-button-selection-intersect.png
* themes/Default/images/stock-button-selection-replace.png
* themes/Default/images/stock-button-selection-subtract.png: new
stock images.
2001-11-21 Michael Natterer <mitch@gimp.org>
* pixmaps/Makefile.am
* pixmaps/anchor.xpm
* pixmaps/edit.xpm
* pixmaps/eye.xpm
* pixmaps/linked.xpm
* pixmaps/paste-as-new.xpm
* pixmaps/paste-into.xpm
* pixmaps/refresh.xpm: felt like i had to remove some cruft, so
these unused pixmaps had to go to the Attic.
2001-11-20 Michael Natterer <mitch@gimp.org>
* app/tools/tools-types.h: added GimpToolRegisterFunc,
GimpToolRegisterCallback and GimpToolOptionsNewFunc typedefs
which are used to register tools.
* app/tools/tools.c: put the register funcs in an array of
GimpToolRegisterFuncs. Pass a Gimp pointer *plus* a
GimpToolRegisterCallback (which is tool_manager_register_tool())
to the tools' register functions.
* app/tools/tool_manager.[ch]: added a GimpToolOptionsNewFunc to
the parameters of tool_manager_register_tool(). Create the tool
options here, not in each tool.
* app/tools/paint_options.[ch]
* app/tools/selection_options.[ch]
* app/tools/tool_options.[ch]
* app/tools/transform_options.[ch]: all _init() and _new()
functions take a GimpToolInfo pointer now. The _reset() func needs
to be set manually now.
* app/tools/[all_tools].[ch]: changed accordingly:
- pass GimpToolOptionsNewFuncs to the register callback.
- don't create the tool options in the tools' _init() function.
- removed all static tool options variables.
- get the options from the tool system in the cases i missed
in my last commit.
- added minor hacks to get rid of the static options pointer
in some pathological cases :) (i.e. the ink tool).
2001-11-20 Rebecca Walter <rjp@mail.tele.dk>
* app/core/gimpedit.c
* app/core/gimpimagefile.c
* app/core/gimpmoduleinfo.c
* app/core/gimpmodules.c
* app/core/gimppalette.c
* app/core/gimppattern.c: More of the extensive proofing. Fun fun fun!
2001-11-20 Michael Natterer <mitch@gimp.org>
* app/tools/gimpdrawtool.[ch]
* app/tools/gimppainttool.[ch]
* app/tools/gimprectselecttool.[ch]
* app/tools/gimptool.[ch]
* app/tools/gimptransformtool.[ch]: use simple virtual functions
instead of signals for all tools because they are much faster and
don't need to be signals at all.
2001-11-20 Michael Natterer <mitch@gimp.org>
* app/core/gimp.c: put a g_object_ref() on a different line.
* app/core/gimpdrawable-bucket-fill.c
* app/core/gimpmodules.c: ne need to #include "core/..." here.
* app/display/gimpdisplay-handlers.c: added debugging output
because we have an image refcounting problem :(
* app/display/gimpdisplayshell-handlers.c: fixed a signal
disconnection.
* app/tools/gimpbezierselecttool.[ch]
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpcroptool.c
* app/tools/gimpellipseselecttool.c
* app/tools/gimpfreeselecttool.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimpinktool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimprectselecttool.c
* app/tools/gimpsmudgetool.c: get the tool's options via
tool->tool_info->tool_options, not from the local statis pointer.
Some minor cleanups & function reordering.
* app/widgets/gimpdockbook.c: return TRUE from the notebook tabs'
"button_press" handler, connect DND before cnnecting to
"button_press" because we now stop it's emission.
2001-11-19 Daniel Egger <degger@fhm.edu>
* app/paint-funcs/paint-funcs-mmx.h
* app/paint-funcs/paint-funcs.c: Fixed typoes and brought the
code back to compileland.
Now the code IS tested. :)
2001-11-19 Michael Natterer <mitch@gimp.org>
Some moving of unused files so they don't clutter app/...
* app/gdisplay_color.[ch]
* app/gdisplay_color_ui.[ch]: removed...
* app/display/gimpdisplayshell-filter.[ch]
* app/display/gimpdisplayshell-filter-dialog.[ch]: ...added here.
2001-11-19 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplay-foreach.c: forgot to commit last time.
Transform stuff cleanup:
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpdrawable-transform.[ch]: new files implementing
the actual transform functions cut from tools/gimptransformtool.*.
* app/core/gimpdrawable-transform-utils.[ch]: new files implementing
transform matrix assembly utility functions.
* app/tools/gimptransformtool.[ch]: removed the stuff here. cleanup.
* app/tools/transform_options.[ch]: removed all stuff which does
not belong here, e.g. the transform_tool_* functions and the
global "transform_options" variable. Works like all other tool
options now.
* app/tools/gimpfliptool.[ch]
* app/tools/gimpperspectivetool.[ch]
* app/tools/gimprotatetool.[ch]
* app/tools/gimpscaletool.[ch]
* app/tools/gimpsheartool.[ch]: massive code removal because
we can use core/gimpdrawable-fransform* functions now. cleanup.
* tools/pdbgen/Makefile.am
* tools/pdbgen/groups.pl: added new PDB group "transform_tools".
* tools/pdbgen/pdb/tools.pdb: removed the transform stuff here...
* tools/pdbgen/pdb/transform_tools.pdb: and added *much*
simplified versions which use the new core/gimpdrawable-transform*
utilities.
* app/pdb/Makefile.am
* app/pdb/transform_tools_cmds.c: new file.
* app/pdb/internal_procs.c
* app/pdb/tools_cmds.c: regenerated.
* libgimp/Makefile.am
* libgimp/gimp_pdb.h
* libgimp/gimptransformtools_pdb.[ch]: new files.
* libgimp/gimptools_pdb.[ch]: regenerated.
2001-11-19 Daniel Egger <degger@fhm.edu>
* app/paint-funcs/paint-funcs.c
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.h:
- Statified a few functions so they can be inlined.
- Simplified function calls.
- Unsignified variables and parameters where possible.
- Reduced lookuptable size for add_pixels from 256*256*4 bytes
to 2*256-1 bytes and O(n*n) function in paint_funcs_setup
to O(n). Should reduce memory consumption by almost 1/4 Mb.
This needs much more cleanup....
2001-11-19 Daniel Egger <degger@fhm.edu>
* app/paint-funcs/paint-funcs-mmx.h: New file. Added glue code
for the assembly MMX functions.
* app/paint-funcs/paint-funcs-generic.h: Moved MMX code from here ...
* app/paint-funcs/paint-funcs-mmx.h: ... to here. Cleaned up a bit
and don't check for use_mmx on every single call but ...
* app/paint-funcs/paint-funcs.c: (paint_funcs_setup): ... here and
register MMX functions if CPU has those capabilities.
Code is untested for the MMX case due no available Intel-Machine
right now but should't be to far away from a working state.
2001-11-19 Daniel Egger <degger@fhm.edu>
* app/paint-funcs/paint-funcs.c
* app/paint-funcs/paint-funcs-generic.h: Split generic (read: C)
code for pixelmanipulation and most of the code that belongs to it
into new file.
(apply_layer_funcs): Gone. The correct layer function is now
dispatched from the layer_mode_funcs table and the table is
per default initialised with the generic functions. Arguments
will be passed by a struct apply_layer_mode_struct instead
of directly per stack to avoid parameter typying madness.
It's now cleanly possible to check for availabilty of
MMX/AltiVec/(insert your favourite brew here) in
paint_funcs_setup () and change the table to use faster routines.
The old MMX cruft which is temporaribly in paint-funcs-generic.h
will soon be gone but I'm to tired now.
* app/paint-funcs/paint-funcs.c: Braind dead code for temporary
buffer (which never shrunk only grew) gone and replaced by
straightforward code.
* app/paint-funcs/paint-funcs-generic.h: Applied a bunch of obvious
optimisations to reduce code size and avoid parameter madness.
* paint-funcs-[gray|graya|indexed|rga|rgba].[c|h]: Gone. I lost
several days of work on these files and came to the conclusion
that there has to be an easier way anyway. :)
Everything well tested on PPC and producing exactly the same results
as the code before so this has good odds to be the first major
change that won't break GIMP. :)
2001-11-18 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplay-foreach.c: fixed a comment.
* app/gui/file-open-dialog.c: no need to declare
"extern GSList *display_list;".
* app/gui/brush-select.c
* tools/pdbgen/pdb/brush_select.pdb: pass opacity as [0.0..100.0]
through the PDB and as [0.0..1.0] to the app.
* app/pdb/brush_select_cmds.c: regenerated.
* plug-ins/gfig/gfig.c: full opacity is 100.0, not 1.0.
(GFig and script-fu may still be broken after this change).
2001-11-17 Michael Natterer <mitch@gimp.org>
Made --no-interface not calling gtk_init() (and thus not
contacting the X server) any more. (Fixes#58961).
* app/core/gimp.[ch]: added two new function pointers
"gui_main_loop_func" and "gui_main_loop_quit_func" and an own
stack of GMainLoops which is used if they are not set.
* app/gui/gui.[ch]: added main loop functions here and set them as
pointers in the Gimp instance. Separated gui_libs_init() from
gui_themes_init() so it can be used as replacement for gtk_init()
and be called before command line parsing.
* app/main.c: check for "--no-interface" before initializing
anything. Added a "--g-fatal-warnings" option (cut'n'paste from
gtkmain.c). Added a check for "--" (end of options).
* app/app_procs.c: call the new gimp_main_loop() functions,
call gui_themes_init().
* app/devices.[ch]: reduce usage of "the_gimp" by passing "Gimp"
pointers to some functions.
* app/plug_in.c: some ugly checks for the_gimp->no_interface which
will go away once this file is core/ui chopped. Call
gimp_main_loop() stuff instead of gtk_main().
* app/core/gimptoolinfo.c: allow passing a NUL GdkPixbuf pointer.
2001-11-16 Michael Natterer <mitch@gimp.org>
Wishlist item #57812:
* app/core/gimpimage.[ch]: added a progress_callback to
gimp_image_scale().
* app/gui/gui.c
* app/gui/image-commands.c
* app/gui/resize-dialog.h
* tools/pdbgen/pdb/image.pdb: changed accordingly.
* app/core/gimp.[ch]: found that gimp->busy needs to be a counter,
not a boolean, so nested calls work.
* app/pdb/image_cmds.c: regenerated.
2001-11-16 Michael Natterer <mitch@gimp.org>
Wishlist item #57669:
* app/gimprc.[ch]: replaced gimprc option "allow-resize-windows"
by "resize-windows-on-zoom" and "resize-windows-on-resize".
* app/gui/preferences-dialog.c: added a toggle for
"resize-windows-on-resize".
* app/display/gimpdisplayshell-handlers.c
* app/display/gimpdisplayshell-scale.c
* app/tools/gimpmagnifytool.c
* docs/gimprc.5.in
* etc/gimprc.in
* etc/gimprc.win32: changed accordingly.
* app/display/gimpdisplay-area.[ch]: added gimp_area_new().
* app/display/gimpdisplay.c: cleanup usage of GimpArea.
* app/display/gimpdisplayshell.[ch]: added configurable canvas
padding color and a small color_panel to change it in the upper
right corner of the window.
* app/display/gimpdisplayshell-callbacks.[ch]: added a callback
for the color_panel, initialize the color in the "realize"
callback.
Wishlist item #51548.
* app/display/gimpdisplayshell-selection.[ch]
* app/gui/menus.c
* app/gui/view-commands.[ch]: made the layer boundary toggleable
separately from the selection.
* app/gui/color-notebook.c: #if 0'ed a debugging g_print().
2001-11-16 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpcolorbutton.[ch]: added Black and White to popup
menu. Take widget->allocation into account when calculation popup
position since GtkButton is a NO_WINDOW widget now.
2001-11-15 Michael Natterer <mitch@gimp.org>
Gimp's opacity values are a pain... the core actually *should*
only accept and expose values in a [0.0..1.0] range.
* app/core/gimpdrawable-blend.c
* app/core/gimpdrawable-bucket-fill.c: take 0.0 <= opacity <= 1.0,
*not* 0.0 < opacity <= 100.0.
* app/tools/gimpblendtool.c: don't (opacity * 100.0) before passing.
* tools/pdbgen/pdb/tools.pdb: (opacity / 100.0) before passing.
* app/display/gimpdisplayshell-dnd.c: paint_mode and opacity were
swapped in the call to gimp_drawable_bucket_fill_full().
* app/pdb/tools_cmds.c: regenerated.
2001-11-15 Michael Natterer <mitch@gimp.org>
* app/gui/layers-commands.c: fixed the layers dialog's "New Layer"
button by checking for a floating selection in
layers_new_layer_query() instead of
layers_new_layer_cmd_callback().
2001-11-15 Michael Natterer <mitch@gimp.org>
* app/tools/gimpdrawtool.[ch]: restructured the new draw utility
functions and added gimp_draw_tool_draw_handle() and
gimp_draw_tool_on_handle().
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpcroptool.[ch]
* app/tools/gimpiscissorstool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.c
* app/tools/gimptransformtool.c: use the new functions all over
the place so handle drawing and mouse_over detection work the same
for all tools.
2001-11-15 Rebecca Walter <rjp@mail.tele.dk>
* app/core/gimpbrush.c
* app/core/gimpbrushpipe.c
* app/core/gimpchannel.c: Proofreading to strings, approved by Sven
2001-11-14 Manish Singh <yosh@gimp.org>
* RELEASE-TO-CVS.patch: gtk_item_factory_parse_rc->gtk_accel_map_load,
gtk_item_factory_dump_rc->gtk_accel_map_save
* configure.in: fixes for newer autoconf, AC_INIT with etc/gimprc.in
now
* app/core/gimpcontainer.c: g_type_instance_is_a is private (and
got renamed recently), use G_TYPE_CHECK_INSTANCE_TYPE instead
* app/gui/gradient-editor.c: use gtk_accel_label_set_accel_widget
instead of gtk_accel_label_set_accel_object
* app/gui/module-browser.c: replaced CList with a TreeView
2001-11-14 Sven Neumann <sven@gimp.org>
* app/pdb/gimprc_cmds.c
* tools/pdbgen/pdb/gimprc.pdb: added a missing g_strdup() that caused
gimp_get_default_comment() to free the global default comment.
2001-11-14 Michael Natterer <mitch@gimp.org>
* app/tools/tool_manager.[ch]: added
tool_manager_button_press_active() and friends functions.
* app/display/gimpdisplayshell-callbacks.c:
gimp_display_shell_canvas_events(): use the functions instead of
re-fetching the active_tool whenever it may have changed
(which requires knowledge about the tools' implementation).
Also moved lots of variables around.
2001-11-14 Michael Natterer <mitch@gimp.org>
* Makefile.am: changed build order of toplevel directories so that
the stuff which is most likely to be broken during "make dist"
(the po stuff) is built before the actual source.
2001-11-13 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-callbacks.c: get the active_tool
_after_ maybe changing it by calling devices_check_change().
2001-11-13 Michael Natterer <mitch@gimp.org>
* app/gui/menus.c: the toolbox menu's last_used_documents menu
contained one entry too few if the number of documents was smaller
or equal than gimprc.last_opened_size.
2001-11-13 Michael Natterer <mitch@gimp.org>
* app/gui/user-installed-dialog.c: fixed some action_area uglyness
which occured after the switch to GtkDialog.
2001-11-13 Sven Neumann <sven@gimp.org>
* app/base/temp-buf.c: added some safety checks.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpimagefilepreview.[ch]: a new class implementing
special GimpPreview methods for GimpImagefile.
* app/core/gimpimagefile.c: added code to load thumbnails according
to the proposed Thumbnail Managing Standard
(see http://triq.net/~pearl/thumbnail-spec/). Pretty much untested.
* app/widgets/gimpcontainerview-utils.c: plugged a memleak.
* app/widgets/gimpimagepreview.c: simplified.
* app/widgets/gimppreview.c: tell it about GimpImagefilePreview.
2001-11-13 Michael Natterer <mitch@gimp.org>
* configure.in: commented out generation of some files in
plug-ins/ so config.status doesn't warn about non-existing
directories.
2001-11-12 Michael Natterer <mitch@gimp.org>
* HACKING: small fix.
* configure.in: changed --disable-perl to --enable-perl because
it doesn't build properly at the moment.
* pixmaps/Makefile.am: removed stuff which is no longer there
from EXTRA_DIST.
* plug-ins/Makefile.am: put back the $(GIMP_PERL) line in SUBDIRS.
* app/widgets/gimpmenuitem.c. include "libgimpwidgets/gimpwidgets.h".
* data/Makefile.am
* data/brushes/Makefile.am
* data/gradients/Makefile.am
* data/palettes/Makefile.am
* data/patterns/Makefile.am: removed the old "files" hack and put
the stuff to EXTRA_DIST.
* app/Makefile.am
* app/base/Makefile.am
* app/core/Makefile.am
* app/file/Makefile.am
* app/gui/Makefile.am
* app/paint-funcs/Makefile.am
* app/pdb/Makefile.am
* app/tools/Makefile.am
* app/widgets/Makefile.am
* app/widgets/gimpmenuitem.c
* app/xcf/Makefile.am
* cursors/Makefile.am
* libgimp/Makefile.am
* libgimpbase/Makefile.am
* libgimpcolor/Makefile.am
* libgimpmath/Makefile.am
* libgimpwidgets/Makefile.am
* m4macros/Makefile.am
* themes/Makefile.am
* themes/Default/Makefile.am
* themes/Default/images/Makefile.am
* themes/Default/images/tools/Makefile.am: removed "files" target.
2001-11-12 Michael Natterer <mitch@gimp.org>
* app/widgets/widgets-types.h: changed GimpItemGetNameFunc
signature to return a tooltip in a passed gchar* pointer location.
* app/widgets/gimpcomponentlistitem.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainerview-utils.c
* app/widgets/gimplistitem.c
* app/widgets/gimpmenuitem.c: changed all get_name_funcs and their
callers accordingly (passing the "gchar **tooltip" pointer is
optional).
2001-11-12 Michael Natterer <mitch@gimp.org>
* plug-ins/common/pixelize.c: implemented a feature request:
Made the pixel size configurable independently in x and y
direction. Added new PDB function. Use a GimpCoordinates widget
for the dialog.
2001-11-12 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-callbacks.c: use
gimp_display_shell_[install|remove]_override_cursor() to set the
middle mouse button move cursor so we get the original cursor back
after scrolling.
* app/tools/gimpdrawtool.[ch]: added lots of drawing functions
(gimp_draw_tool_draw_rectangle() etc.) which work in image (or
active drawable) coordinates.
* app/tools/gimpblendtool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpellipseselecttool.c
* app/tools/gimpfreeselecttool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.c
* app/tools/gimprectselecttool.c
* app/tools/gimptransformtool.[ch]
* app/tools/path_tool.[ch]: use the new functions. Removed tons of
gdk_draw_foo() and gdisplay_transform_foo() calls. Most drawing
functions look *much* nicer now. Ported some tools to detect
handle clicks in display coordinates while I was on it, misc
fixes.
* app/tools/gimpmovetool.[ch]: derive from GimpDrawTool instead
of drawing manually.
2001-11-10 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/qmask.[ch]: removed.
* app/core/gimpimage.[ch]: added "qmask_changed" signal and
gimp_image_[set|get]_qmask_state().
* app/display/Makefile.am
* app/display/gimpdisplayshell-qmask.[ch]: put the stuff here.
* app/display/gimpdisplayshell-handlers.[ch]: new files: handlers
for GimpImage signals handled by GimpDisplayShell.
* app/display/gimpdisplay-handlers.c: removed some of them here.
Don't include any GimpDisplayShell stuff any more.
* app/display/gimpdisplay.c: no need to update the qmask buttons
in gimp_display_flush_whenever().
* app/display/gimpdisplayshell.c: call gimp_display_shell_connect()
and disconnect().
2001-11-10 Michael Natterer <mitch@gimp.org>
* app/qmask.c: fixed qmask callbacks to check if the toggle is
active before performing any action.
* app/core/core-types.h: added the GimpCoords type here because it
will be used by core functions as soon as the painting stuff is
separated from the painting tools.
* app/core/gimpdrawable-bucket-fill.c: fixed g_return_if_fail()s
to not disable any useful operation :-) Still didn't figure out
how I broke display color and pattern dropping :-(
* app/display/gimpdisplayshell.[ch]: added
gimp_display_shell_[un]transform_coords() which work on two
GimpCoords pointers.
* app/display/gimpdisplayshell-callbacks.c: use the new functions
instead of the gdisplay_* ones.
* app/gui/image-commands.c: GimpImage emits "disconnect", not
"destroy".
* app/tools/tools-types.h
* app/tools/gimptool.h: removed GimpCoords here.
* app/tools/gimpconvolvetool.c: fixed modifier_key() implementation.
* app/tools/gimpcroptool.c: cleanup.
* app/tools/paint_options.c: don't need a separator in the ink
tool options.
* app/tools/gimprectselecttool.c
* app/tools/selection_options.[ch]: implemented wish #50352:
Added "Auto Shrink Selection" and "Sample Merged" toggles to
the rect_select and ellipse_select tools. Put the "Fixed size"
widgets in a frame. Removed the separators after the common
selection tool options because I didn't like them any more
(feel free to comment ;)
2001-11-09 Michael Natterer <mitch@gimp.org>
* app/undo.c: should set the fs.backing_store TileManager pointer
to NULL after deleting it. Why the heck didn't this crash
before...?
* app/core/Makefile.am
* app/core/gimpdrawable-blend.[ch]: the blend stuff taken from
the blend tool.
* app/core/core-types.h: added the blend enums.
* app/tools/gimpblendtool.[ch]: removed the stuff here.
* tools/pdbgen/pdb/tools.pdb: changed blend wrapper accordingly.
* app/pdb/tools_cmds.c: regenerated.
* tools/pdbgen/Makefile.am: don't scan tools/gimpblendtool.c.
* tools/pdbgen/enums.pl: regenerated.
* app/tools/gimpbucketfilltool.c: fixed crash caused by my last
change.
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell.c: removed lots of uglyness by
using GtkImages for the qmask and navigation buttons. Don't realize
anything before the shell is shown. Connect the realize
callback and do stuff there. Don't call the realize callback
from gimp_display_shell_canvas_events() any more.
* pixmaps/navbutton.xpm
* pixmaps/qmasknosel.xpm
* pixmaps/qmasksel.xpm: removed.
* themes/Default/Makefile.am
* themes/Default/images/Makefile.am
* themes/Default/images/stock-menu-navigation.png
* themes/Default/images/stock-menu-qmask-off.png
* themes/Default/images/stock-menu-qmask-on.png: new PNGs instead.
* libgimpwidgets/gimpstock.[ch]: register them as stock icons.
2001-11-09 Sven Neumann <sven@gimp.org>
* app/gui/file-open-dialog.c: merged fix for bug #63880 from stable
branch and fixed a wrong signal callback signature.
* plug-ins/imagemap/imap_main.c: merged fix for bug #64075 from stable
branch.
* plug-ins/common/gauss_iir.c
* plug-ins/common/gauss_rle.c: merged fix for bug #57853 from stable
branch.
* plug-ins/Lighting/lighting_ui.c: s/gdk_image_unref/g_object_unref/
2001-11-08 Michael Natterer <mitch@gimp.org>
* app/Makefile.am: build display/ before tools/.
* app/devices.c: devices_check_change(): added all events
which have a GdkDevice pointer.
* app/gimpprogress.c: include "display-types.h" instead of
"core-types.h".
* app/core/Makefile.am
* app/core/gimpdrawable-bucket-fill.[ch]: new files: the bucket_fill
stuff taken from tools/gimpbucketfilltool.[ch].
* app/core/core-types.h: added "BucketFillMode".
* app/core/gimpimage-mask-select.[ch]: cleanup.
* app/core/gimpmarshal.list: added more marshallers for GimpTool's
new signal signatures.
* app/core/gimpmarshal.[ch]: regenerated.
* app/display/Makefile.am
* app/display/gimpdisplayshell-dnd.[ch]
* app/display/gimpdisplayshell-layer-select.[ch]: new files: the
canvas drop callbacks from gimpdisplayshell-callbacks.[ch] and
the stuff formerly knows as gui/layer-select.[ch].
* app/display/gimpdisplay.h: don't include "gui/gui-types.h".
* app/display/gximage.c: include "display-types.h".
* app/display/gimpdisplay-foreach.c
* app/display/gimpdisplayshell.[ch]: call gdsplay_delete(), don't
destroy the shell widget.
* app/gui/Makefile.am
* app/gui/layer-select.[ch]: removed.
* app/gui/gradients-commands.c: fixed "Save as POV" fprintf()s.
* app/gui/preferences-dialog.c: removed the layer_select stuff
because it is useless with the new preview system.
* app/gui/tool-options-dialog.c: send the correct data to the
close_callback.
* app/gui/tools-commands.c: changed to follow the new
gimp_tool_initialize() semantics (see below).
Tool & canvas event handling chainsawing:
* app/tools/tools-types.h: new struct GimpCoords which contains
x, y, pressure, tilt etc.
* app/display/gimpdisplayshell-callbacks.[ch]: added utility
functions which transparently retreive the current event's
GimpCoords or take it from the device directly if the event has
none. Pass GimpCoords _in_image_coordinates_ to all tool
functions.
Most important: don't pass GdkEvents and display coordinates to
tools any more.
* app/tools/gimptool.[ch]: changed virtual functions to take
GimpCoords, time and state separately instead of GdkEvents.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.[ch]
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.[ch]
* app/tools/gimpcurvestool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpdrawtool.c
* app/tools/gimpeditselectiontool.[ch]
* app/tools/gimperasertool.c
* app/tools/gimpfliptool.c
* app/tools/gimpfreeselecttool.[ch]
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimpinktool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.[ch]
* app/tools/gimprectselecttool.c
* app/tools/gimprotatetool.c
* app/tools/gimpselectiontool.[ch]
* app/tools/gimpsmudgetool.c
* app/tools/gimptexttool.c
* app/tools/gimptransformtool.[ch]
* app/tools/path_tool.[ch]
* app/tools/selection_options.c: tons and tons of changes:
- changed to use the new virtual function parameters.
- removed zillions of gdisplay_untransform_coords().
- get the active drawable's offsets manually in many cases.
(questionable, but IMHO ok because it's obvious and not simply a
"TRUE" passed to some function)
- reordered some functions to be consistent across tools.
- some tools had to be changed to work on image coords, not
display ones (esp. crop).
- fixed strange rotate tool behaviour which should be backported
to stable.
- some stuff i came across.
- indentation and other paranoia.
- rounding of coordinated may be broken in some tools.
- new bugs guaranteed.
* app/tools/tool_manager.[ch]: new semantic of
tool_manager_initialize_active() (looked at the places where it
was used from and put common code together). Should be a bit
better now :)
* app/tools/gimpblendtool.c
* app/tools/transform_options.c: use the new GTK+ feature that a
widget (toggle button) can be a frame's title for this tools' tool
options.
* app/widgets/widgets-types.h: stuff.
* themes/Default/gtkrc: s/GtkDialog/GimpDialog/.
* tools/pdbgen/Makefile.am: don't scan tools/gimpbucketfilltool.h
any more.
* tools/pdbgen/enums.pl: regenerated.
* tools/pdbgen/pdb/tools.pdb: changed bucket_fill wrapper.
* app/pdb/tools_cmds.c: regenerated.
2001-11-05 Sven Neumann <sven@gimp.org>
* plug-ins/imagemap/*.c: ported fixes from stable branch (mostly
missing includes of config.h),
* plug-ins/gimpressionist/orientmap.c: removed commented out code
that continued to show up when grepping for deprecated GTK+ code.
* tools/pdbgen/pdb/procedural_db.pdb: removed unneeded inclusion
of config.h (it gets added automatically).
2001-11-02 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-scroll.c: stop synthesizing expose
events but use gdk_window_invalidate_rect() and
gdk_window_process_updates() (both with "update_children == FALSE"
because the canvas has no children).
* app/tools/gimpmagnifytool.c: nothing.
2001-11-01 Michael Natterer <mitch@gimp.org>
* app/display/Makefile.am
* app/display/gimpdisplay-callbacks.[ch]
* app/display/gimpdisplay-render.[ch]
* app/display/gimpdisplay-scale.[ch]
* app/display/gimpdisplay-scroll.[ch]: removed and added as
gimpdisplayshell-foo.[ch] because they are all methods of the
shell.
* app/display/gimpdisplay.[ch]
* app/display/gimpdisplayshell.[ch]: moved the "offset" and "size"
variables from GimpDisplay to GimpDisplayShell. GimpDisplay
should know nothing about screen coordinates.
The gdisplay_[un]transform_foo() methods are still part of
GimpDisplay but will be moved to GimpDisplayShell as soon as the
tools' vitrual functions speak in image coordinates instead of
GdkEvents.
* app/display/gimpdisplayshell-callbacks.[ch]: prefixed all
functions with gimp_display_shell_*. Moved some stuff to a
"realize" callback File still has to be renamed.
* app/display/gimpdisplay-foreach.[ch]: removed
gdisplays_shrink_wrap().
* app/gui/menus.c
* app/gui/view-commands.[ch]
* app/display/gimpdisplayshell-scale.[ch]: implemented "Zoom to
Fit Window" function (#57670).
* app/nav_window.c
* app/display/gimpdisplay-handlers.c
* app/display/gimpdisplayshell-render.[ch]
* app/display/gimpdisplayshell-scale.[ch]
* app/display/gimpdisplayshell-scroll.[ch]
* app/gui/colormap-dialog.c
* app/gui/gui.c
* app/gui/preferences-dialog.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmovetool.c
* app/widgets/gimppreview.c: changed according to variable
and filename changes.
* app/tools/tool_manager.c: tool_manager_select_tool(): send the
active tool a "HALT" command before selecting the new one. Fixes
stale tool dialogs which were there because some other hack was
removed (This is IMHO the right place to shut down the active
tool).
* app/tools/gimpcroptool.c: don't shrink wrap after cropping but
let gimprc.allow_resize_windows decide.
* app/tools/gimpselectiontool.c: gimage_mask_value() takes image,
not screen coordinates. A good example of how braindead it is to
pass GdkEvents to tools :-) Fixes incorrect cursor and oper
update of the selection tools.
* app/tools/gimptransformtool.c
* app/undo.c: removed (#if 0 for now) some strange code which did
manual exposing of GimpDisplayShell areas. This was definitely a
hack and should not be there given the image emits correct
"update" signals.
2001-10-31 Michael Natterer <mitch@gimp.org>
Chopped up the display stuff (beware: unfinished)...
The plan is that GimpDisplay is the object which collects
updates from the image, compresses them and waits for the GIMP
to be idle to actually paint them. It should be a non-GUI object
which is the model for the actual widget to connect to.
GimpDisplayShell has all the widgets and handles painting and
exposing of the result. Nobody should actually be required to
update ot look at it as it should be a view on the GimpDisplay
object.
Much stuff is still in the wrong place and the functions don't
follow their files' filename namespace any more. More to come...
* app/display/Makefile.am
* app/display/gimpdisplay-ops.[ch]: removed. It's functions didn't
belong together anyway.
* app/display/gimpdisplay-area.[ch]: new files: the GimpArea
functions.
* app/display/gimpdisplay-handlers.[ch]: new files: signal
handlers for GimpImage signals. Mostly from app/gui.c.
* app/display/gimpdisplay.[ch]: removed all widgets and other
GUI stuff. There is still much undecided here...
* app/display/gimpdisplayshell.[ch]: actually use the object and
filled it with all the stuff from GimpDisplay.
* app/display/gimpdisplay-callbacks.[ch]
* app/display/gimpdisplay-foreach.[ch]
* app/display/gimpdisplay-render.c
* app/display/gimpdisplay-scale.[ch]
* app/display/gimpdisplay-scroll.[ch]
* app/display/gimpdisplay-selection.c: changed accordingly.
* app/core/gimp.[ch]: return a GimpObject from
gimp_create_display() so it can be used as single GUI independent
point to create displays, require the initial scale as parameter.
* app/core/gimpcontext.c: changed the ugly EEKWrapper according to
the GimpDisplay structure changes. Bugfix: set the image to NULL
in gimp_context_display_destroyed().
* app/core/gimpedit.c
* app/core/gimpimage-new.c: changed gimp_create_display() calls
accordingly.
* app/core/gimpimage-convert.c: invalidate the layer & image
previews here, not in the caller.
* app/core/gimpimage-crop.c: update the whole image after cropping.
* app/core/gimpimage.[ch]: added gimp_image_find_guide(),
gimp_image_snap_point() and gimp_image_snap_rectangle(). Added
"resolution_changed" and "unit_changed" signals and corresp.
public convenience functions to emit them.
* app/core/gimplayer.c: emit the image's "alpha_changed" signal
when adding alpha to the bottom (and only) layer of the image.
* app/gimpprogress.c
* app/image_map.c
* app/nav_window.c
* app/qmask.c
* app/undo.c
* app/user_install.c: changed accordingly.
* app/gui/edit-commands.c
* app/gui/file-commands.c
* app/gui/file-open-dialog.c
* app/gui/image-commands.c
* app/gui/info-window.c
* app/gui/preferences-dialog.c
* app/gui/toolbox.c
* app/gui/view-commands.c: ditto.
* app/gui/gui.[ch]: removed most gimp->images handlers as the
displays connect to them themselves now. chaged gui_display_new()
according to the gimp_create_display() changes.
Added gui_get_screen_resolution().
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpcroptool.c
* app/tools/gimpdrawtool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpfliptool.c
* app/tools/gimpfreeselecttool.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimpinktool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.c
* app/tools/gimprectselecttool.c
* app/tools/gimpselectiontool.c
* app/tools/gimptexttool.c
* app/tools/gimptool.c
* app/tools/gimptransformtool.c
* app/tools/xinput_airbrush.c: lots of changes because GimpDisplay
has become two objects. Lots of gdisp->shell casting uglyness
added. This is fine because exactly these parts will have to go
away.
(GimpDisplay will provide methods for XOR drawing upon the display
in image coordinates without the need to transform coordinates all
the time. Also the tools shouldn't see GdkEvents but get more
useful virtual functions which speak in image coordinates too).
* app/widgets/gimpcomponentlistitem.c: removed a now useless image
update.
* tools/pdbgen/pdb/display.pdb: use gimp_create_display().
* app/pdb/display_cmds.c: regenerated.
2001-10-30 Simon Budig <simon@gimp.org>
* app/pdb/tools_cmds.c
* app/tools/gimperasertool.c
* app/tools/gimperasertool.h
* tools/pdbgen/pdb/tools.pdb
Added a "color erase" feature to the eraser. This is ported from
the colortoalpha plugin and is utterly cool.
The "Color Erase" Option should be disabled when the drawable
has no alpha channel, however, I have no idea how to do this.
2001-10-29 Sven Neumann <sven@gimp.org>
* app/base/temp-buf.c (temp_buf_to_gray): rewrote so gcc-3.0 doesn't
complain.
* app/widgets/gimpfontselection-dialog.c: use g_ascii_strcasecmp().
* libgimp/gimpintl.h
* libgimp/stdplugins-intl.h
* plug-ins/script-fu/script-fu-intl.h: don't call gtk_set_locale()
since gtk_init() does it for us now. Don't set LC_NUMERIC to "C".
INIT_I18N_UI() is the same as INIT_I18N_UI() now.
* app/devices.c
* app/gimprc.c
* app/core/gimpbrushgenerated.c
* app/core/gimpgradient.c
* app/gui/color-notebook.c
* app/gui/gradients-commands.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c
* plug-ins/gimpressionist/presets.c
* plug-ins/ifscompose/ifscompose_storage.c: use g_ascii_formatd() and
g_ascii_strtod() to serialize and deserialize floats. These functions
are locale-independent. There are probably more places that need to be
fixed in this fashion.
* plug-ins/script-fu/script-fu-console.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-server.c
* plug-ins/script-fu/script-fu.c: s/INIT_I18N_UI/INIT_I18N/
* tools/gimp-remote.c
* app/widgets/gimpwidgets-utils.c
* app/core/gimpimage-contiguous-region.c
* app/paint-funcs/paint-funcs-indexeda.c
* app/paint-funcs/paint-funcs.c
* app/tools/gimppathtool.c
* app/tools/path_tool.c
* modules/colorsel_triangle.c
* plug-ins/common/mpeg.c
* plug-ins/imagemap/imap_csim_parse.c: cleanups
2001-10-29 Michael Natterer <mitch@gimp.org>
Cleanup weekend...
* app/app_procs.c: pass "no_interface" to gimp_new().
* app/core/gimp.[ch]: added "gboolean no_interface" and the
load_procs and save_procs GSLists.
* app/core/gimptoolinfo.[ch]: added a "Gimp" pointer to the
GimpToolInfo object so more functions find their context without
accessing the global "the_gimp" variable.
* app/display/display-types.h: removed the GDisplay -> GimpDisplay
typedef.
* app/display/gimpdisplay.c: look at gimp->no_interface, don't
include "appenv.h".
* app/file/file-open.[ch]
* app/file/file-save.[ch]: don't use "the_gimp" any more. Instead,
pass around lots of "Gimp" pointers. Removed the global load_procs
and save_procs variables here. Use access() to find out whether a
file is readable/writable, removed the manual voodoo and it's
Win32 wrappers. Added an optional (can be NULL) "PlunInProcDef"
parameter to file_save(), removed file_save_with_proc().
* app/gui/menus.c: Use the unused "gpointer data" parameter of the
GtkItemFactory callbacks to pass a "Gimp" pointer to all of them.
This reduces the usage of the global "the_gimp" hack to zero
in app/gui/... yeah.
* app/gui/channels-commands.c
* app/gui/edit-commands.c
* app/gui/file-commands.c
* app/gui/image-commands.c
* app/gui/layers-commands.c
* app/gui/palettes-commands.c
* app/gui/select-commands.c
* app/gui/test-commands.c
* app/gui/tools-commands.c
* app/gui/view-commands.c: use the passed "Gimp" pointer.
* app/gui/color-area.[ch]
* app/gui/convert-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/file-new-dialog.[ch]
* app/gui/file-open-dialog.[ch]
* app/gui/file-save-dialog.[ch]
* app/gui/gui.c
* app/gui/info-window.[ch]
* app/gui/module-browser.[ch]
* app/gui/palette-editor.c
* app/gui/palette-import-dialog.[ch]
* app/gui/paths-dialog.c
* app/gui/preferences-dialog.[ch]
* app/gui/resize-dialog.[ch]
* app/gui/tool-options-dialog.[ch]
* app/gui/toolbox.c: pass around lots more "Gimp" and
"GimpContext" pointers and don't use "the_gimp" any more.
* app/tools/gimptool.h: added a pointer to the corresponding
GimpToolInfo object (which in turn has a pointer to a Gimp).
* app/tools/tool_manager.[ch]: set the pointer after creating the
tool object. Removed tool_manager_get_info_by_tool() as there is a
tool->tool_info pointer now.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpcurvestool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpdrawtool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpellipseselecttool.c
* app/tools/gimperasertool.c
* app/tools/gimpfliptool.c
* app/tools/gimphistogramtool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimpinktool.c
* app/tools/gimplevelstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.c
* app/tools/gimpperspectivetool.c
* app/tools/gimpposterizetool.c
* app/tools/gimprectselecttool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c
* app/tools/gimptexttool.c
* app/tools/gimpthresholdtool.c
* app/tools/path_tool.c
* app/tools/xinput_airbrush.c: s/GDisplay/GimpDisplay/g.
Use tool->tool_info and tool_info->gimp in some places to get
rid of using "the_gimp".
Removing the remaining ones involves changing the tool options
system and is scheduled next...
* app/widgets/gimpdnd.c
* app/widgets/gimpdocumentview.c: pass a "Gimp" pointer to all
file_open_*() functions.
* app/gdisplay_color.[ch]
* app/gdisplay_color_ui.[ch]
* app/image_map.[ch]
* app/nav_window.[ch]
* app/path.c
* app/path_bezier.c
* app/path_transform.h
* app/qmask.[ch]: s/GDisplay/GimpDisplay/g
* tools/pdbgen/pdb/fileops.pdb: load_procs and save_procs are
members of the "Gimp" object now.
* tools/pdbgen/pdb/plug_in.pdb: use gimp->no_interface, don't
include "appenv.h".
* app/pdb/fileops_cmds.c
* app/pdb/plug_in_cmds.c: regenerated.
2001-10-28 Hans Breuer <hans@breuer.org>
* config.h.win32 : define HAVE_DIRENT_H, it's from build/win32/dirent
* app/*/makefile.msc : updated
* app/file/makefile.msc app/display/makefile.msc : new files
* app/user_install.c : make the G_OS_WIN32 part compile again (fn -> filename)
* app/core/gimptoolinfo.c (gimp_tool_info_init) : cosmetic change,
make implementation signature static like the local prototype
* app/pdb/gradients_cmds.c app/pdb/palette_cmds.c : include <string.h>
for strlen () / strcmp () by ...
* tools/pdbgen/pdb/gradients.pdb tools/pdbgen/pdb/palette.pdb :
... changing the perl source here
* app/widgets/gimpdocumentview.c : #include <string.h>
* libgimp/makefile.msc :
* libgimpwidgets/gimpwidgets.def : updated
* plug-ins/makefile.msc : reflect the fact that DIRENT functions
are removed from glib. Also define the questionable GETTEXT_PACKAGE
and LOCALEDIR which are required to compile, not adapted to NLS
support for win32 yet
2001-10-28 Sven Neumann <sven@gimp.org>
* plug-ins/common/nlfilt.c
* plug-ins/gap/gap_mov_dialog.c
* plug-ins/gap/gap_navigator_dialog.c: removed code that sets the
colormap and gamma value of a GtkPreview. We don't need to do this
since GtkPreview uses GdkRGB.
2001-10-28 Sven Neumann <sven@gimp.org>
* configure.in: require GLib-1.3.10, GTK+-1.3.10 and Pango-0.21
* RELEASE-TO-CVS.patch
* libgimpbase/gimpparasiteio.c
* libgimpwidgets/gimpstock.c
* plug-ins/ifscompose/ifscompose_storage.c: applied the patch and
emptied the patch file.
* libgimp/gimpgradientmenu.c: corrected order of parameters in call
to gimp_gradients_get_gradient_data().
* tools/pdbgen/pdb/palette.pdb: I think this is how Nathan wanted it
to be.
* app/pdb/palette_cmds.c
* libgimp/gimppalette_pdb.[ch]: regenerated.
2001-10-25 Michael Natterer <mitch@gimp.org>
* configure.in: generate app/file/Makefile
* app/Makefile.am
* app/file-open.[ch]
* app/file-save.[ch]
* app/file-utils.[ch]: removed...
* app/file/Makefile.am
* app/file/file-open.[ch]
* app/file/file-save.[ch]
* app/file/file-utils.[ch]: ...and added here.
* app/gui/file-commands.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* tools/pdbgen/pdb/fileops.pdb: changed includes accordingly.
* app/app_procs.[ch]: removed app_exit_finish() and
app_exit_finish_done() from the public API, call gtk_main() here,
pass "no_data" to gimp_new() and "restore_session" to
gui_restore().
* app/main.c: removed global variable "double_speed", don't
call gtk_main() in main.c. Added some missing log domains.
* app/appenv.h: removed "double_speed".
* app/core/gimp.[ch]: added "gboolean no_data" property which
must be passed to gimp_new().
* app/display/gimpdisplay-foreach.[ch]: added gdisplays_set_busy()
and gdisplays_unset_busy().
* app/gui/about-dialog.c: don't include "appenv.h", declare
"double_speed" extern.
* app/gui/brush-select.[ch]
* app/gui/gradient-select.[ch]
* app/gui/palette-select.[ch]
* app/gui/pattern-select.[ch]: made the list of dialogs and the
global selection dialogs private. Added functions which get a
dialog by PDB callback_name. Pass a "Gimp" and the callback_name
to the constructors. Don't include "app_procs.h" for "the_gimp"
and "appenv.h" for "no_data" any more. Use the passed "Gimp"
instead and look at gimp->no_data.
* app/gui/toolbox.[ch]: pass a "Gimp" to the constructor.
* app/gui/gui.[ch]: use the new gdisplays_[un]set_busy() functions,
use the passed "Gimp" all over the place, don't include
"appenv.h" and "app_procs.h". gui_really_quit_dialog() takes
a "quit_func" callback now and calls it instead of calling
app_exit_finish() (which is now private) directly.
* app/gui/convert-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/palette-import-dialog.c
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/pattern_select.pdb: changed accordingly.
* app/pdb/brush_select_cmds.c
* app/pdb/fileops_cmds.c
* app/pdb/gradient_select_cmds.c
* app/pdb/pattern_select_cmds.c: regenerated.
2001-10-25 Michael Natterer <mitch@gimp.org>
* POTFILES.in: app/file-*.c -> app/file/file-*.c
2001-10-24 Sven Neumann <sven@gimp.org>
* libgimp/gimpexport.c: merged Raphaels patch for bug #51114 from the
stable branch.
* plug-ins/common/grid.c: merged the fix for indexed images from the
stable branch.
2001-10-24 Michael Natterer <mitch@gimp.org>
* app/file-open.c
* app/file-utils.c
* app/gimprc.c
* app/plug_in.c
* app/user_install.c
* app/base/base.c
* app/base/temp-buf.c
* app/core/gimpdata.c
* app/core/gimpdatafiles.c
* app/core/gimpimagefile.c
* app/gui/about-dialog.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gui.c
* app/gui/menus.c
* app/gui/splash.c
* app/gui/tips-dialog.c
* app/tools/gimpcurvestool.c
* app/tools/gimplevelstool.c
* libgimpbase/gimpenv.c
* plug-ins/FractalExplorer/FractalExplorer.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c
* tools/pdbgen/pdb/fileops.pdb: use g_build_filename() all over
the place instead of g_strconcat() and friends together with
G_DIR_SEPARATOR_S. Also removed all attempts to manually detect
double dir separators. LibGimpBase's searchpath utility functions
don't append a G_DIR_SEPARATOR_S to all paths any more.
* app/pdb/fileops_cmds.c: regenerated.
2001-10-24 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpbutton.[ch]: added
gimp_button_extended_clicked() which emits the resp. signal.
* app/gui/menus.[ch]: added new item factories "<Buffers>" and
"<Documents>".
* app/gui/Makefile.am
* app/gui/buffers-commands.[ch]
* app/gui/documents-commands.[ch]: new files for the callbacks.
* app/gui/dialogs-constructors.c: use them.
* app/gui/file-open-dialog.c: set the title to "Open Image",
not "Load Image".
2001-10-23 Michael Natterer <mitch@gimp.org>
* app/app_procs.c: pass a "Gimp" to gui_libs_init(), initialize
the GUI before initializing the plug-ins.
* app/gui/menus.[ch]: removed menus_last_opened_add() and connect
to gimp->documents' "add", "remove" and "reorder" signals to
auto-update the "last opened" menu entries. Moved all public
functions to the top of the file. Removed global variable
"last_opened_raw_filenames".
* app/gui/gui.[ch]: removed "last opened" fiddling here, moved
menu init functions which need to be called after plug-in query
to gui_restore().
* app/gui/session.[ch]: added "Gimp" parameters to all public
functions.
* app/file-save.c
* app/gui/file-commands.c
* app/gui/file-open-dialog.c: changed accordingly.
2001-10-23 Sven Neumann <sven@gimp.org>
* app/gui/tips_dialog.c: make Next and Previous buttons insensitive
if no tips could be loaded (as done in the stable branch).
* plug-ins/common/mblur.c (mblur_linear): merged fix for bug #62640
from stable branch.
* plug-ins/gap/gap_lib.c: merged fix for bug #61677 from stable branch.
2001-10-22 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/docindex.[ch]: removed.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpdocumentview.[ch]: new widget as replacement.
* app/core/gimpcontext.[ch]: added context->imagefile property.
* app/app_procs.c
* app/file-save.c
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gui.c
* app/gui/menus.c
* app/gui/test-commands.c: changed accordingly.
* app/widgets/gimpcontainerview.[ch]: added "gboolean reorderable"
property which needs to be set by subclasses.
* app/widgets/gimpdrawablelistview.c: removed the "insert_item"
implementation which was used to make the items reorderable.
* app/widgets/gimpcontainerlistview.[ch]: make the list items
reorderable depending on view->reorderable.
* app/widgets/gimpbufferview.c: made it reorderable.
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpcontainergridview.[ch]
* app/widgets/gimpdatafactoryview.c: changed accordingly.
2001-10-22 Michael Natterer <mitch@gimp.org>
General cleanup of the selection tools and their PDB wrappers:
* app/core/Makefile.am
* app/core/gimpimage-contiguous-region.[ch]
* app/core/gimpimage-mask-select.[ch]: new files providing a clean,
uniform API for the selection functionalities. Changed order of
parameters to be consistent, removed code duplication.
The region returned by the "by_color" function is not really
contiguous but the API is so similar to "by_seed" and it's used
in the same context so it's fair enough to put them together.
Also, I'm not sure if the two is_pixel_sufficiently_different()
I've optimized away were meant to do *exactly* the same. Added
a comment there to remember the former difference.
* app/core/gimpchannel.[ch] (gimp_channel_feather): removed the
"output" channel parameter and made it optionally push an undo
(like the other channel operations do).
* app/core/gimpimage-mask.c: call gimp_channel_feather() with
"push_undo == TRUE", removed some useless comments.
* app/tools/gimpbycolorselecttool.[ch]
* app/tools/gimpellipseselecttool.[ch]
* app/tools/gimpfreeselecttool.[ch]
* app/tools/gimpfuzzyselecttool.[ch]
* app/tools/gimprectselecttool.[ch]: removed all the actual
selection functionality and call the new gimp_image_mask_select_*()
and gimp_image_contiguous_region_*() functions instead.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpiscissorstool.c: use new function
gimp_image_mask_select_channel() instead of doing the same manually.
* app/tools/gimpbucketfilltool.c: find_contiguous_region() ->
gimp_image_contiguous_region_by_seed().
* tools/pdbgen/Makefile.am
* tools/pdbgen/groups.pl
* tools/pdbgen/pdb/selection_tools.pdb: added new group "Selection
Tools" which depends only on "core/" stuff (not on "tools/" any
more, brrrr).
* tools/pdbgen/pdb/text_tool.pdb: don't include "appenv.h"
* tools/pdbgen/pdb/tools.pdb: removed the selection tools.
* app/pdb/Makefile.am
* app/pdb/selection_tools_cmds.c: new file.
* app/pdb/internal_procs.c
* app/pdb/text_tool_cmds.c
* app/pdb/tools_cmds.c: regenerated.
* libgimp/Makefile.am
* libgimp/gimp_pdb.h
* libgimp/gimpselectiontools_pdb.[ch]: new files.
* libgimp/gimptools_pdb.[ch]: regenerated
Misc cleanups:
* app/app_procs.c: call splash_create() with "no_splash_image"
as parameter.
* app/display/gimpdisplay-render.c
* app/display/gximage.c: don't include "appenv.h".
* app/gui/gui.c: call session_restore() only if "restore_session"
is TRUE.
* app/gui/session.c: don't "if(restore_session)" here and don't
include "appenv.h"
* app/gui/splash.[ch]: added "gboolean show_image" parameter to
splash_create(), don't include "appenv.h"
* app/tools/gimppainttool.[ch]: added a "GimpGradient" parameter
to gimp_paint_tool_get_color_from_gradient().
* app/tools/gimppaintbrushtool.c: pass the gradient.
* app/tools/gimpselectiontool.c
* app/tools/gimptransformtool.c
* app/tools/tool_manager.c: s/GDisplay/GimpDisplay/.
* app/widgets/gimpcontainergridview.[ch]: removed the "white_style"
class variable and don't fiddle around with colors and styles...
* themes/Default/gtkrc: ...do the same here with a simple rc style.
2001-10-19 Michael Natterer <mitch@gimp.org>
* app/Makefile.am: link the app in a different order as some init
functions are called from core/gimp.c instead of app_procs.c now.
* app/app_procs.[ch]: made app_init_update_status() private and
pass it as callback to various init functions.
* app/plug_in.[ch]: plug_in_init() take "gimp" and "status_callback"
parameters.
* app/undo.c: use "gimage->gimp" instead of "the_gimp", don't
include "app_procs.h".
* app/core/core-types.h: added "GimpInitStatusFunc" typedef.
* app/core/gimp.[ch]: gimp_initialize() and gimp_restore() now
take a "status_callback" as parameter. Don't include "app_procs.h".
* app/core/gimpmodules.c: putting the modules in a strong
container was a bad idea because it may be impossible to finalize
a GimpModuleInfo object belonging to a stalled module.
* app/gui/color-area.c: use G_N_ELEMENTS().
* app/gui/session.c: don't call app_init_update_status() and don't
include "app_procs.h" because this happens after the splash is
hidden.
* tools/pdbgen/app.pl
* app/pdb/internal_procs.[ch]: pass a "status_callback" to
internal_procs_init(), don't include "app_procs.h".
* plug-ins/Makefile.am: build gfig, gimpressionist and imagemap
again.
* plug-ins/MapObject/mapobject_preview.c
* plug-ins/MapObject/mapobject_ui.c: s/gdk_image_unref/g_object_unref/
* plug-ins/gfig/gfig.c
* plug-ins/gimpressionist/brush.c
* plug-ins/gimpressionist/gimpressionist.c
* plug-ins/gimpressionist/ppmtool.[ch]
* plug-ins/gimpressionist/presets.c
* plug-ins/imagemap/imap_browse.[ch]
* plug-ins/imagemap/imap_csim.y
* plug-ins/imagemap/imap_edit_area_info.c
* plug-ins/imagemap/imap_file.c
* plug-ins/imagemap/imap_main.c
* plug-ins/imagemap/imap_menu.c
* plug-ins/imagemap/imap_polygon.c
* plug-ins/imagemap/imap_popup.c
* plug-ins/imagemap/imap_preferences.c
* plug-ins/imagemap/imap_taglist.c
* plug-ins/imagemap/imap_tools.c: ported to current GLib/Gtk+.
* plug-ins/gap/gap_arr_dialog.c
* plug-ins/gap/gap_decode_xanim.c
* plug-ins/gap/gap_filter_foreach.c
* plug-ins/gap/gap_filter_main.c
* plug-ins/gap/gap_frontends_main.c
* plug-ins/gap/gap_lib.c
* plug-ins/gap/gap_main.c
* plug-ins/gap/gap_mod_layer.c
* plug-ins/gap/gap_mov_dialog.c
* plug-ins/gap/gap_navigator_dialog.c
* plug-ins/gap/resize.c: half-way fixed this one too but I'm not
willing to fix tons of duplicated and deprecated app/ code...
2001-10-18 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/module_db.[ch]: removed.
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpmoduleinfo.[ch]
* app/core/gimpmodules.[ch]: new files containing the module info
object and the module list handling code.
* app/gui/Makefile.am
* app/gui/module-browser.[ch]: new files containing the GUI.
* app/xcf/xcf.[ch]: pass a "Gimp" pointer to xcf_exit().
* app/core/gimp.[ch]: handle modules and xcf init/exit here too.
* app/app_procs.c: don't touch the modules and xcf stuff any more.
* app/gui/dialogs-constructors.c: changed accordingly.
2001-10-18 Michael Natterer <mitch@gimp.org>
* POTFILES.in: module_db.c has moved.
2001-10-18 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontainer.[ch]: added properties for "children_type"
and "policy". Ref/unref the "children_type" class so we can do
signal lookups and use other introspection features without an
existing instance of "children_type".
The new properties are G_PARAM_CONSTRUCT_ONLY and *MUST* be passed
to g_object_new() to ref/unref children_type's class correctly.
* app/core/gimpdatalist.c
* app/core/gimplist.c: pass them as construct properties.
* app/core/gimp.c: no need to manually ref classes any more.
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-10-16 Michael Natterer <mitch@gimp.org>
* app/gimpprogress.[ch]
* app/undo.c: s/GDisplay/GimpDisplay/
* app/plug_in.[ch]: removed unused boolean "destroy" field of
the PlugIn struct.
* app/core/gimpedit.c: don't include "app_procs.h"
* app/display/gimpdisplay-callbacks.c: moved the "grab_abd_scroll"
stuff from gimpdisplay-scroll.* here (less complicated and easier
to cleanup...)
* app/display/gimpdisplay-scroll.[ch]: removed here.
* app/display/gimpdisplay-render.[ch]
* app/display/gimpdisplay-selection.[ch]
* app/display/gimpdisplayshell.c: s/GDisplay/GimpDisplay/g
* app/display/gimpdisplay.[ch]: ditto, removed gdisplay_active()
which was just a wrapper around
"gimp_context_get_display (gimp_get_user_context (the_gimp))"
(which is more to type but makes the use of the global
"the_gimp" variable more obvious).
* app/gui/color-area.h
* app/gui/edit-commands.c
* app/gui/file-commands.c
* app/gui/file-dialog-utils.c
* app/gui/image-commands.c
* app/gui/info-window.h
* app/gui/paths-dialog.h
* app/gui/select-commands.c
* app/gui/tool-options-dialog.c
* app/gui/tools-commands.c
* app/gui/view-commands.c: s/GDisplay/GimpDisplay/, gdisplay_active()
removal, include "app_procs.h" for "the_gimp".
* app/tools/gimpbezierselecttool.h
* app/tools/gimpbrightnesscontrasttool.[ch]
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpcolorbalancetool.[ch]
* app/tools/gimpcurvestool.[ch]
* app/tools/gimpeditselectiontool.h
* app/tools/gimphistogramtool.[ch]
* app/tools/gimphuesaturationtool.[ch]
* app/tools/gimplevelstool.[ch]
* app/tools/gimpmovetool.h
* app/tools/gimpperspectivetool.h
* app/tools/gimpposterizetool.[ch]
* app/tools/gimprotatetool.h
* app/tools/gimpscaletool.h
* app/tools/gimpsheartool.h
* app/tools/gimptexttool.h
* app/tools/gimpthresholdtool.[ch]
* app/tools/gimptool.[ch]
* app/tools/gimptransformtool.h
* app/tools/tool_manager.[ch]: lots of s/GDisplay/GimpDisplay/, made
all *_dialog_hide() functions private, cleanup.
* app/widgets/*: removed GtkType and gtk_type_* stuff entirely and
use GObject functions, removed lots of empty "destroy" methods and
use more type checking class cast macros instead of casting
directly.
* app/widgets/gimpcontainermenu.c: fixed item insert order.
* app/widgets/gimphistogramview.[ch]: cleaned up and renamed all
functions.
* app/widgets/gimpwidgets-utils.[ch]: removed gimp_dialog_hide() as
Gtk+ does the right thing (TM) now.
* tools/pdbgen/pdb/color.pdb: implemented "histogram" without
digging into tools/ and widgets/ (needs to be done for all
color PDB functions).
* tools/pdbgen/pdb/gimprc.pdb: no need to use "the_gimp" in a PDB
function as a "Gimp" pointer is passed to them all.
* tools/pdbgen/pdb/image.pdb: don't include "app_procs.h"
* app/pdb/color_cmds.c
* app/pdb/gimprc_cmds.c
* app/pdb/image_cmds.c: regenerated.
* app/pdb/procedural_db.c: don't include "app_procs.h"
2001-10-16 Sven Neumann <sven@gimp.org>
* plug-ins/common/sel_gauss.c: merged fix for bug #62433 from stable
branch. plug-ins/common/colortoalpha.c already had the problem fixed.
2001-10-04 Sven Neumann <sven@gimp.org>
* app/widgets/gimpfontselection-dialog.c: inserted some extra checks
to work around a bug in PangoFT2 version 0.20.
2001-09-28 Sven Neumann <sven@gimp.org>
* configure.in(ALL_LINGUAS): Removed zh_CN again until all po files
have been added. Translators, read README.i18n!
2001-09-28 Michael Natterer <mitch@gimp.org>
* app/gui/preferences-dialog.c: added a frame around the tree.
* app/widgets/gimphistogramview.c: forgot to pass the "detail" to
g_signal_emit(). Should fix the histogram tool. Thanks to Seth for
debugging.
2001-09-27 Sven Neumann <sven@gimp.org>
* HACKING
* Makefile.am
* acconfig.h
* autogen.sh
* configure.in: use AM_GLIB_GNU_GETTEXT. Since glib and GTK+ rely on
gettext being available, we don't need to ship with the option to use
an included implementation. The intl subdirectory will not be created
anymore. Had to put the old sed hacks back in that create Makefiles
from Makefile.in in the extra po directories.
* almost all Makefile.am: removed $(top_srcdir)/intl from INCLUDES.
* app/main.c
* libgimp/stdplugins-intl.h
* plug-ins/perl/Gimp.xs
* plug-ins/script-fu/script-fu-intl.h: changed package names to
gimp14* so the po files don't clash with gimp12.
2001-09-26 Sven Neumann <sven@gimp.org>
* configure.in: we require glib-1.3.9, pango-0.20, atk-0.5 and
gtk+-1.3.9 available from ftp://ftp.gtk.org/pub/gtk/v1.3/.
* HACKING: mention the fact that we will try to keep our source
compileable against the latest development releases of gtk+ and
friends.
* app/plug_in.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* plug-ins/common/csource.c
* plug-ins/common/wmf.c: follow glib API changes.
* plug-ins/common/mail.c: fixed a warning.
2001-09-25 Michael Natterer <mitch@gimp.org>
* app/gdisplay.[ch]: renamed it to GimpDisplay and made it a
GimpObject subclass.
* app/disp_callbacks.[ch]
* app/gdisplay_ops.[ch]
* app/scale.[ch]
* app/scroll.[ch]
* app/display/display-types.h: changed accordingly.
* app/core/gimpimage.[ch]: new signal "selection_control".
* app/core/core-types.h: moved the SelectionControl enum and all
other core enums here.
* app/gui/gui.c: connect to the images' "selection_control" signal
and call gdisplays_selection_visibility().
* app/core/gimpcontext.c
* app/core/gimpdrawable-offset.h
* app/core/gimpimage-convert.h
* app/core/gimpimage-mask.c
* app/core/gimplayer.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpinktool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c: changed accordingly.
* app/gui/colormap-dialog.[ch]: GObject porting.
* tools/pdbgen/Makefile.am: removed headers which no longer
contain enums.
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/drawable.pdb: include files which are no longer
included automatically by the enum voodoo.
* app/pdb/convert_cmds.c
* tools/pdbgen/enums.pl: regenerated.
2001-09-23 Sven Neumann <sven@gimp.org>
* plug-ins/Makefile.am: reenabled build of ifscompose. We should port
the gdk_string functions to Pango, but for the moment it builds again
by defining GDK_DISABLE_DEPRECATED.
2001-09-22 Hans Breuer <hans@breuer.org>
* app/makefile.msc : need to link with pangof2
* app/display/display-funcs.h : new file to provide prototype
gdisplays_selection_visibility ()
* app/core/gimpimage-mask.c :
* app/core/gimplayer.c : use it
* app/core/makefile.msc : generate gimpmarshal.[hc]
* app/gui/makefile.msc : add error-console-dialog.obj, also
more trying for building as dll
* app/tools/gimpinktool.c(965) : avoid "fatal error C1021: invalid
preprocessor command 'warning'", by wrapping it in #ifdef __GNUC__
* app/tools/makefile.msc : add FREETYPE2_CFLAGS
* app/widgets/gimpfontselction-dialog.c : use g_strcasecmp ()
* app/tools/makefile.msc : add FREETYPE2_CFLAGS and gimpfontselction*
* libgimp/gimp.def :
* libgimpwidgets/gimpwidgets.def : updated externals
* libgimpwidgets/makefile.msc : add gimpstock
* plug-ins/makefile.msc : gflare doesn't require EXTRA_gflare anymore
* plug-ins/common/spheredesigner.c :
* plug-ins/helpbrowser/helpbrowser.c :
* plug-ins/imagemap/imap_main.c :
remove _help_accel from gimp_help_connect ()
* plug-ins/gap/gap_mov_dialog.c :
* plug-ins/gap/gap_navigator_dialog.c : remove references to
use_xshm and gimp_color_cube ()
* plug-ins/gfig/gfig.c : don't access ->klass, but use
G_OBJECT_GET_CLASS
* plug-ins/gimpressionist/repaint.c : the GtkButton::child
field is moved to the parent GtkBin.
* plug-ins/ifscompose/ifscompose.c : the GtkStyle::font field
isn't public anymore, use accessor gtk_style_get_font ()
* plug-ins/imagemap/imap_preferences.c : reflect GTK2 API change
gtk_notebook_set_current_page ()
2001-09-20 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpdialog.[ch]: made a real object (GtkDialog
subclass) out of it. The API will change soon too.
* libgimpwidgets/gimpwidgetstypes.h: added GimpDialog typedef.
* libgimpwidgets/gimpbutton.[ch]
* libgimpwidgets/gimpchainbutton.[ch]
* libgimpwidgets/gimpcolorarea.[ch]
* libgimpwidgets/gimpcolorbutton.[ch]
* libgimpwidgets/gimpfileselection.[ch]
* libgimpwidgets/gimpoffsetarea.[ch]
* libgimpwidgets/gimppatheditor.[ch]
* libgimpwidgets/gimppixmap.c
* libgimpwidgets/gimpsizeentry.c
* libgimpwidgets/gimpunitmenu.c: removed GtkType stuff and use
GType in all get_type() functions. Some random GObject porting.
* app/gui/info-dialog.c
* app/gui/info-window.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpcroptool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimptransformtool.c: changed accordingly.
2001-09-20 Sven Neumann <sven@gimp.org>
* app/gdisplay.c: fixed resize of cursor position label that I broke
with my latest change.
* app/widgets/gimpfontselection-dialog.c: avoid the crash by using the
correct PangoContext, but there's still a bug somewhere in this code
(or in PangoFT2).
2001-09-19 Michael Natterer <mitch@gimp.org>
* TODO.xml: added an entry about "Stroke".
* app/gui/about-dialog.c: use g_timeout and g_source functions
instead if gtk_timeout stuff.
* app/widgets/gimpdnd.[ch]: general cleanup:
- removed the internal enum duplication and use GimpDndType all over
the place.
- added internal GimpDndDataDef entries for all public DND types.
- code cleanup, some debugging output.
2001-09-19 Sven Neumann <sven@gimp.org>
* configure.in: require GTK+-1.3.8 and PangoFT2-0.19.
* app/devices.c:
* app/tools/gimppainttool.c: removed intermediate hacks that are no
longer needed with the new GTK+ release.
* app/plug_in.c
* libgimp/gimp.[ch]
* libgimp/gimpui.c
* libgimpbase/gimpprotocol.[ch]: removed use_xshm and color_cube
variables and accessor functions.
* app/errors.c: use gtk_exit() instead of gdk_exit().
* app/gdisplay.c: use Pango API to determine cursor label width. This
does not work correctly, but at least it compiles...
* app/gui/splash.c: follow Pango API changes.
* app/tools/gimpcurvestool.[ch]: use PangoLayouts to draw text.
* app/tools/gimptexttool.c: follow Pango API changes.
* app/widgets/gimpfontselection-dialog.c
* app/widgets/gimpfontselection.c: mostly rewritten following the
changes in GtkFontSelection. This is unusable at the moment and
crashes, but at least it compiles again...
* plug-ins/Makefile.am: temporarily disabled build of ifscompose since
it does not compile any longer after the latest GDK cleanups.
* plug-ins/common/nlfilt.c: gimp_color_cube() is obsolete.
2001-09-18 Sven Neumann <sven@gimp.org>
* app/pdb/parasite_cmds.c
* tools/pdbgen/pdb/parasite.pdb: fixed nasty bug in perl expression
that caused all parasite PDB functions to work on global gimp parasites
even if the gimp_image_parasite* and gimp_drawable_parasite* functions
were called.
2001-09-17 Sven Neumann <sven@gimp.org>
* app/gimprc.c (gimprc_init):
fixed a typo spotted by Ed Halley <ed@halley.cc>.
* app/pdb/gimprc_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpgimprc_pdb.[ch]: added new PDB function
gimp_get_default_comment() that allows to access the default image
comment as set in the preferences.
* plug-ins/common/csource.c
* plug-ins/common/gif.c
* plug-ins/common/jpeg.c
* plug-ins/common/tiff.c: use gimp_get_default_comment() instead of
a hardcoded string.
* plug-ins/common/uniteditor.c: replaced deprecated GDK function
gdk_color_alloc().
2001-09-09 Sven Neumann <sven@gimp.org>
* app/devices.c
* app/tools/gimppainttool.c: readded the old code here in case the
old GDK variable is defined. Since GTK+-1.3.7 is finally out, we want
to try to keep GIMP compile against this release as long as possible.
* plug-ins/common/gif.c: applied a patch from David Odin
<dindinx@wanadoo.fr> that brings the GIF plug-in back to live.
* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am
* plug-ins/common/plugin-defs.pl: build it again.
2001-09-08 Daniel Egger <egger@interearth.com>
* app/devices.c
* app/tools/gimppainttool.c: Use new gdk_device_get_core_pointer ()
instead of the former gdk_core_pointer variable. You will need a
recent CVS gtk to compile it!
2001-09-07 Sven Neumann <sven@gimp.org>
* app/widgets/gimpbrushfactoryview.c
* app/widgets/gimpbufferview.c
* app/widgets/gimpchannellistview.c
* app/widgets/gimpcolorpanel.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainermenuimpl.c
* libgimpwidgets/gimpcolorbutton.c
* libgimpwidgets/gimpoffsetarea.c
* plug-ins/gdyntext/charmap.c
* plug-ins/gdyntext/charmap_window.c
* plug-ins/gdyntext/font_selection.c
* plug-ins/gdyntext/message_window.c:
use GtkType instead of guint to store result of gtk_type_unique().
Patch courtesy of Alex Larsson <alexl@redhat.com>.
2001-09-04 Michael Natterer <mitch@gimp.org>
* plug-ins/common/jpeg.c: JPEG is back!
Thanks to David Odin <dindinx@wanadoo.fr> for the patch.
* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am
* plug-ins/common/plugin-defs.pl: build it again.