2000-12-17 Michael Natterer <mitch@gimp.org>
* app/menus.c: don't warn about a non-existant "Script-Fu" menu.
(the user should have the choice of just removing the script-fu
plug-in without any side-effects).
2000-12-16 Sven Neumann <sven@gimp.org>
* app/fileops.c: fixed a warning
* app/menus.c: since gee is no longer hidden, I put the old code
back in that keeps its entry at the bottom of the menu.
2000-12-15 Michael Natterer <mitch@gimp.org>
* configure.in
* help/*: Updated Gimp-Help. See help/ChangeLog for details.
* app/channels_dialog.c
* app/gdisplay.c
* app/gradient.c
* app/layers_dialog.c
* app/menus.c
* app/paths_dialog.c
* app/preferences_dialog.c
* app/resize.c: fixed menu paths.
* plug-ins/helpbrowser/helpbrowser.c: load a special
"undocumented_filter.html" page if a filter was not found.
Adapted to the new help structure.
2000-12-15 Michael Natterer <mitch@gimp.org>
* makedummyhelpfile.sh
* makeindex.sh: removed.
* images/*: added some images.
* help/*: Updated to the latest version of the gimp-help CVS module.
This Version instoduces a bunch of new toplevel HTML files for
general topics, an autogenerated index, TOC, glossary,
an "image" directory on the "C" level, peace, love, and stuff...
Thanks to all help writers: Prof, Bex, Piers, ...
2000-12-11 Sven Neumann <sven@gimp.org>
* app/gradient.c: use the correct pointer when dumping gradients to
stderr in case of problems. Sort of fixes bug #31510.
2000-11-26 Sven Neumann <sven@gimp.org>
* PLUG_IN_MAINTAINERS
* plug-ins/common/unsharp.c: changed email address of Winston Chang
* app/gdisplay_color_ui.c: applied a modified version of another
patch sent by David Odin <David.Odin@bigfoot.com> which sets the
sensitivity of the buttons in the dialog according to the possible
actions.
2000-11-21 Sven Neumann <sven@gimp.org>
* app/gdisplay_color.c
* app/gdisplay_color_ui.c: applied patches proposed by
David Odin <David.Odin@bigfoot.com>. Fixes segfault when removing
a display filter twice.
2000-11-18 Michael Natterer <mitch@gimp.org>
* app/fileops.c
* libgimp/gimpquerybox.[ch]: Make sure that we don't try to destroy
query_boxes twice or try to disconnect not-any-more connected
handlers.
* app/color_notebook.c
* app/gimpcontext.[ch]
* app/gimphelp.[ch]
* app/lc_dialog.[ch]
* app/menus.h
* app/preferences_dialog.c
* app/tools.[ch]
* libgimp/gimpcolorbutton.[ch]
* libgimp/gimpdialog.[ch]
* libgimp/gimpexport.[ch]
* libgimp/gimpfileselection.[ch]
* libgimp/gimphelpui.[ch]
* libgimp/gimppatheditor.[ch]
* libgimp/gimppixmap.[ch]
* libgimp/gimpsizeentry.[ch]
* libgimp/gimpui.[ch]
* libgimp/gimpunitmenu.[ch]
* libgimp/gimpwidgets.[ch]: in a coding attack, changed help_data
and many other strings passed to UI functions to (const gchar *).
As a consequence, I had to fix lots of warnings ;)
* plug-ins/common/tga.c
* plug-ins/imagemap/imap_main.c: fixed warnings.
Code cleanup and indentation all over the place.
2000-11-15 Sven Neumann <sven@gimp.org>
* app/fileops.c: we used to g_free memory returned by strdup() here!
Also we used to append DIR_SEPARATORs to the filename shown in the
file_selector even if it already ended in one. Fixed all this, closed
a memleak and cleaned up the code.
2000-10-29 Michael Natterer <mitch@gimp.org>
* app/menus.c: after getting confused again by the boolean
"initialize" variable, I finally decided to reverse it's
logic and changed it to "menus_initialized".
2000-10-22 Sven Neumann <sven@gimp.org>
* app/edit_selection.[ch]: plugged memleak (similar to the one that
was present in gtkutil_compress_motion()) in the key snooper.
Round moves to nearest integer instead of truncating the value.
This seems to fix the reported redraw problems when moving
selections at low zoom levels.
Cleaned up the code a little and converted enum values to uppercase.
* app/bezier_select.c
* app/free_select.c
* app/fuzzy_select.c
* app/move.c
* app/rect_select.c
* app/text_tool.c: updated to use the new EditType enum values.
* app/gimprc.c: minor optimization in the GList handling.
* app/layer.[ch]: removed unused functions.
* app/menus.c: removed "Dump Items (Debug)" menu entry.
2000-10-18 Sven Neumann <sven@gimp.org>
* app/cursorutil.c (gtkutil_compress_motion): as Mitch pointed out we
used to leak GList memory here. The new implementation should be
faster too, since it prepends to the list instead of appending.
2000-09-29 Michael Natterer <mitch@gimp.org>
* app/brush_edit.[ch]
* app/brush_header.h
* app/gimpbrush.[ch]
* app/gimpbrushgenerated.[ch]
* app/gimpbrushlist.[ch]
* app/gimpbrushpipe.[ch]
* app/gimpcontext.h
* app/gimplist.[ch]
* app/gimpobject.[ch]
* app/gimpset.[ch]
* app/gimpsignal.[ch]
* app/parasitelist.h: Lotsa fixes in the brush referencing code
and cleanups in many GtkObjects:
- Reference brushes correctly (call gtk_object_sink() after adding
them to the brush list). Don't crash when renaming a brush
multiple times.
- Replaced all gtk_object_destroy() with gtk_object_unref|sink().
- Removed the "Fake Gimp object system" (gimp_object_destroy() et.al.)
all over the place (while it's a good idea to have a common Gimp
base object, it's totally useless to try to imitate Gtk's object
system).
- s/sz_BrushHeader/sizeof(BrushHeader)/g
- And of course various indentation and coding style paranoia changes
in all files I visited.
2000-09-25 Sven Neumann <sven@gimp.org>
* app/resolution_calibrate.[ch]: new files. Code for the resolution
calibration dialog that used to live in user_install.c
* app/Makefile.in
* app/menus.c
* app/preferences_dialog.[ch]
* app/user_install.[ch]: added a Calibrate button to the Preferences
2000-08-25 Tor Lillqvist <tml@iki.fi>
* app/cursorutil.c (gimp_change_win_cursor): Plug memory leak. The
bitmap and mask GdkBitmaps were leaked each time.
* plug-ins/makefile.mingw.in: Really add it this time.
2000-08-09 Michael Natterer <mitch@gimp.org>
* app/app_procs.c: make_initialization_status_window(): reverse
logic for if(!no_interface && !no_splash)
* app/palette.[ch]: removed declarations of the two removed
functions. One more s/gint/gboolean/.
* libgimp/gimpfileselection.[ch]
* libgimp/gimppixmap.[ch]: some consistency fixes (mostly fanatic :)
* libgimp/gimpproceduraldb.c: fixed a compiler warning.
2000-08-08 Sven Neumann <sven@gimp.org>
* app/palette.c: don't crash when no palettes are available
(thanks to Daniel for pointing me to this), but allow to open
the Palette Editor so you can refresh or create a new one.
2000-07-29 Michael Natterer <mitch@gimp.org>
* cursors/background.xbm
* cursors/background_mask.xbm
* cursors/foreground.xbm
* cursors/foreground_mask.xbm
* cursors/pattern.xbm
* cursors/pattern_mask.xbm: new files.
* cursors/gimp-tool-cursors.xcf
* app/cursorutil.[ch]: new cursor modifiers for bucket_fill.
* app/bucket_fill.c: use the new modifiers. Closes#17871.
* app/convolve.c
* app/dodgeburn.c: added cursor_update functions which update the
tools' "toggled" state before they call the cursor_update "method"
of the paint_core "class" -- eek -- I-want-real-objects!
Closes#17872 and #17873.
* app/tools.h: added SELECTION_ANCHOR to the SelectOps enum.
* app/free_select.c
* app/rect_select.c: use the new enum value in the "oper_update"
and "cursor_update" functions. In the "motion" function, set the
tool's operation type back to SELECTION_REPLACE if the tool is
active and call the "cursor_update" function explicitly.
Closes#17870.
* app/by_color_select.c: fixed warning caused by the new enum value.
2000-07-08 Sven Neumann <sven@gimp.org>
* plug-ins/gap/gap_range_ops.c: applied a patch provided by
Wolfgang Hofer <hof@hotbot.com> that fixes a problem when
flattening a singlelayer image.
2000-06-14 Michael Natterer <mitch@gimp.org>
* Makefile.am
* cursors/gimp-tool-cursors.xcf
* cursors/anchor.xbm
* cursors/anchor_mask.xbm: new cursor modifier for the move tool.
* app/cursorutil.[ch]
* app/move.c: use the new modifier for anchoring floating selections.
2000-06-14 Michael Natterer <mitch@gimp.org>
* Makefile.am
* app/cursorutil.[ch]
* app/tools.c
* cursors/*: added lots of new cursors and removed old ones.
* app/gdisplay.[ch]: enabled the cursor setting parameters in
gdisplay_install_tool_cursor().
* app/bezier_select.c
* app/blend.c
* app/bucket_fill.c
* app/by_color_select.c
* app/clone.c
* app/color_picker.c
* app/crop.c
* app/disp_callbacks.c
* app/edit_selection.c
* app/eraser.c
* app/flip_tool.c
* app/ink.c
* app/iscissors.c
* app/magnify.c
* app/measure.c
* app/move.c
* app/paint_core.c
* app/rect_select.c
* app/text_tool.c
* app/transform_core.c: use the new cursors. Only the transform
tools are still using old cursors.
* app/layers_dialog.c: a tooltip for "Keep Trans."
* app/user_install.c: set the ctree's selection mode to BROWSE.
2000-06-09 Michael Natterer <mitch@gimp.org>
Cursor patch II:
This is only the logic inside the cursor system and not yet used.
* app/cursorutil.[ch]: [gimp]_change_win_cursor() take lots of
parameters now and compose cursors from up to three cursor
bitmaps/masks.
* app/gdisplay.[ch]: As a test, create a hardcoded example cursor
if "Cursor Mode" is set to "Tool Icon with Crosshair" in prefs.
* app/curves.c
* app/dialog_handler.c
* app/scroll.c: changed the calls to the win_cursor function.
* app/tools.[ch]: added a cursor and a toggle cursor to the ToolInfo
structure of all tools.
* app/toolsF.h: new ToolType TOOL_TYPE_NONE.
* app/gimpdnd.c
* app/interface.c: check for silly filenames in the file dnd
callback. Closes#13733.
* Makefile.am
* cursors/bucket_fill_small.xbm
* cursors/bucket_fill_small_mask.xbm
* cursors/crop_small.xbm
* cursors/crop_small_mask.xbm
* cursors/crosshair_small.xbm
* cursors/crosshair_small_mask.xbm
* cursors/ellipse_select_small.xbm
* cursors/ellipse_select_small_mask.xbm
* cursors/eraser_small.xbm
* cursors/eraser_small_mask.xbm
* cursors/free_select_small.xbm
* cursors/free_select_small_mask.xbm
* cursors/fuzzy_select_small.xbm
* cursors/fuzzy_select_small_mask.xbm
* cursors/intersect.xbm
* cursors/intersect_mask.xbm
* cursors/minus.xbm
* cursors/minus_mask.xbm
* cursors/move.xbm
* cursors/move_mask.xbm
* cursors/paintbrush_small.xbm
* cursors/paintbrush_small_mask.xbm
* cursors/pencil_small.xbm
* cursors/pencil_small_mask.xbm
* cursors/plus.xbm
* cursors/plus_mask.xbm
* cursors/rect_select_small.xbm
* cursors/rect_select_small_mask.xbm
* cursors/resize_small.xbm
* cursors/resize_small_mask.xbm
* cursors/zoom.xbm
* cursors/zoom_mask.xbm
* cursors/zoom_small.xbm
* cursors/zoom_small_mask.xbm: new files extracted from Tigert's
gimp-tool-cursors.xcf created at GimpCon.
Tigert, I'll commit the xcf as soon as I've added empty layers
with the names of the cursors that are missing.
* cursors/mouse.xbm
* cursors/mouse_mask.xbm: made it 32x32 to allow for cursor
composition.
2000-06-07 Tor Lillqvist <tml@iki.fi>
* app/gimphelp.c (gimp_help_netscape): Test for help_path being
non-NULL was wrong way.
* app/preferences_dialog.c (file_pref_cmd_callback): Change
"From X Server" to "From windowing system".
* app/makefile.cygwin: Update according to file name changes.
* libgimp/gimp.def
* libgimp/gimpui.def
* libgimp/makefile.{cygwin,msc}: Update for Mitch's and Sven's
changes.
* plug-ins/libgck/gck/gckcolor.c: Include <glib.h> before
gimpmath.h, so G_PI don't get redefined when glib.h is included
later.
From Hans Breuer, portability fixes for MSVC compilation:
* app/dialog_handler.h: Bypass decalration of exported functions
which are marked with G_MODULE_EXPORT in dialog_handler.c when
compiling that file. Otherwise some compilers will get confused.
* app/dialog_handler.c: Define a test macro for above bypass.
* plug-ins/MapObject/mapobject_apply.c
* plug-ins/MapObject/mapobject_image.c
* plug-ins/MapObject/mapobject_shade.c: Include <string.h>.
* plug-ins/flame/flame.c: Define S_ISREG if needed.
* plug-ins/makefile.{cygwin,msc}: Updates.
* plug-ins/sel2path/global.h: Include <stdlib.h>.
* plug-ins/winsnap/winsnap.c: Include libgimp/gimpui.h.
2000-06-06 Michael Natterer <mitch@gimp.org>
* Makefile.am
* cursors/crosshair.xbm
* cursors/crosshair_mask.xbm: new files.
* app/cursorutil.[ch]
* app/gdisplay.[ch]
* app/gimprc.[ch]
* app/preferences_dialog.c: Started to add the new set of
consistent tool cursors. The crosshair one is the easy part
but I wanted to see a result :) The other two options in
the pref's cursor menu are still dummys.
2000-05-21 Michael Natterer <mitch@gimp.org>
These changes enable help support for 3rd party plug-ins which
install their help files outside GIMP's main help dir.
Instead of calling gimp_help(), gimp_plugin_help_func() etc.,
all help callbacks now have to call gimp_standard_help_func()
which has different implementations in the app and in libgimp.
There is a new function gimp_plugin_help_register() which can
be called during plug-in query. plug_in.c keeps a list of
executable_name/help_path pairs. Plug-ins have to pass their
exec. name to gimp_help() which uses the list to find the plug-in's
help directory.
* app/gimphelp.[ch]: gimp_help() now takes a help_path parameter.
help_path == NULL means the standard help directory. Various
changes to pass the help_path to the help browser.
* app/gimprc.c: save the plug-in's help_path in the pluginrc file.
* app/menus.c: ugly hack to enable help_paths in the "F1" callback.
* app/plug_in.[ch]: many help_path related changes. Use g_basename()
instead of strrchr(str,G_DIR_SEPARATOR), cosmetic cleanups.
* app/internal_procs.c
* app/gimphelp_cmds.c
* tools/pdbgen/pdb/gimphelp.pdb: new procedure
gimp_plugin_help_register(). gimp_help() takes a second parameter
which is the executable name (not the help_path).
* app/color_notebook.c
* app/commands.c
* app/lc_dialog.c
* app/preferences_dialog.c
* app/tools.c: call gimp_standard_help_func() instead of gimp_help().
* libgimp/gimp.c: new function gimp_get_progname() which returns
the full path of the plug-in's executable.
* libgimp/gimp.h: export the new function,
removed gimp_plugin_help_func(), gimp_help() takes the executable
name as second parameter.
* libgimp/gimpcompat.h: added gimp_plugin_help_func().
* libgimp/gimphelp.c: a wrapper for gimp_plugin_help_register(),
changed the calls to gimp_help.
* libgimp/gimphelpui.[ch]: call gimp_standard_help_func() instead
of gimp_help().
* plug-ins/helpbrowser/helpbrowser.c: now called with an additional
help_path parameter. Various changes to enable
help_path != gimp_standard_help_path.
Unrelated stuff:
* app/batch.h: added missing GPL header.
* app/gimpunit.c: had a LGPL header, merged some fprintf's into
one call.
* app/procedural_db.[ch]: cosmetic: g* types, s/g_malloc/g_new/,
prototypes, indentation.
* app/resize.c: use less packing widgets. didn't find the "offset"
redraw bug :(
* app/menus.c: in Image/Filters move all entries that are not
submenus to the top of the menu.
* app/plug_in.c: order all plugin menu-entries alphabetically
(in the current locale) before sending them to menus.c.
* plug-ins/script-fu/script-fu-scripts.c: order all script-fu
menu-entries alphabetically (in the current locale) before
registering them.
* plug-ins/script-fu/script-fu.c: minor cleanups
* plug-ins/bmp/bmpread.c
* plug-ins/bmp/bmpwrite.c
* plug-ins/xjt/xjt.c: strings used with g_message do not need
a trailing newline
--Sven
2000-05-06 Michael Natterer <mitch@gimp.org>
* app/menus.c (menus_reorder_plugins): no need to reorder
<Image>/Script-Fu twice.
* app/docindex.c: replaced the toolbar by an ops_buttons box.
Also default to opening the file instead of rising an already
open display.
2000-05-06 Michael Natterer <mitch@gimp.org>
* app/gimpdnd.[ch]: new public function gimp_dnd_file_dest_set().
Moved the file/url dnd stuff from interface.c to gimpdnd.c.
* app/docindex.c
* app/interface.c: use the function from gimpdnd.
2000-05-05 Michael Natterer <mitch@gimp.org>
Made the document index a bit more like the rest of the dialogs:
* app/commands.[ch]
* app/menus.c: added a cmd_callback instead of calling a function
in docindex.c directly.
* app/gimprc.c
* app/session.[ch]: added proper session management.
* app/app_procs.c
* app/docindex.[ch]
* app/docindexif.[ch]: removed another bunch of useless variables
and functions. Removed the status bar because it was not telling
very useful stuff. Removed the window position/size from the
"ideas" file.
Note: you have to either remove your ~/.gimp-1.1/ideas file or
remove it's first line or experience a nice endless loop :)
2000-04-26 Michael Natterer <mitch@gimp.org>
* app/color_select.c
* app/colormaps.[ch]
* app/context_manager.c: removed unused global variables
[foreground|background]_pixel and [old|new]_color_pixel.
Initialize the colormap and visual stuff with GdkRGB instead of
GtkPreview functions (which are deprecated).
* app/[62 files]: removed #include's (started with colormaps.h and
couldn't stop). Also ordered them consistently and did some small
unrelated cleanups.
Removed variuos <stdlib.h> et.al. but checked the files carefully
before doing so. If I was too radical and you get warnings on your
platform, please flame me or just put them back :)
2000-04-11 Tor Lillqvist <tml@iki.fi>
* libgimp/gimpenv.c (gimp_path_get_user_writable_dir): The stat()
function in the Win32 C runtime doesn't like if directory names
have an extra G_DIR_SEPARATOR suffixed. Remove such before calling
stat(). Those extra (back)slashes are added by for instance
gimp_path_parse(). Document that feature of gimp_path_parse().
* libgimp/gimputils.c (gimp_strescape): Correct documentation for
gimp_strescape(). The semantics of the exceptions parameter was
documented backwards. Clarify what the function does.
* plug-ins/gfig/gfig.c (plug_in_parse_gfig_path)
* plug-ins/FractalExplorer/FractalExplorer.c
(plug_in_parse_fractalexplorer_path)
* plug-ins/gflare/gflare.c (plug_in_parse_gflare_path,
gflare_save): Use painstakingly correct platform-specific
directory and search path separators, and escaped with
gimp_strescape when displayed as part of a gimprc entry.
* app/gimphelp.c: No debug messages on Win32, thanks.
* libgimp/gimpexport.c: implemented the changes Nick Lamb
suggested: If the background layer has no alpha channel,
suggest "Flatten" instead of "Merge Visible Layers".
* app/fileops.c: In the MRU list and the doc_index always store
the absolute path to images, so you can open files from the
command-line and gimp will find them later if started from another
dir. Added tooltips that show the full path.
* app/menus.c: fixed a memleak (list entries were not freed on
removal from the MRU list).
* app/main.c
* app/user_install.[ch]: renamed functions and variables to match
the new filename.
--Sven
2000-04-06 Michael Natterer <mitch@gimp.org>
* app/commands.c
* app/layers_dialog.c
* app/resize.[ch]: behave like a widget:
removed resize_widget_free() and call
gtk_widget_destroy(resize->resize_shell) instead.
* app/interface.c: s/0/FALSE/
* app/color_area.c
* libgimp/gimpchainbutton.c: show the correct background also for
engine driven themes. The chainbutton's lines still don't draw
with the pixmap theme, which is probably a bug of the theme's
draw_polygon method.
2000-04-03 Michael Natterer <mitch@gimp.org>
* app/color_panel.[ch]
* app/color_picker.c
* app/qmask.c: removed the public function color_panel_free() and
fake a real widget's behaviour by connecting to the panel widget's
"destroy" signal.
* app/channels_dialog.c
* app/layers_dialog.c: cleaned up and sync'ed the code where
possible (without changing the logic).
2000-04-03 Michael Natterer <mitch@gimp.org>
* app/gimpdnd.[ch]
* app/channels_dialog.c
* app/layers_dialog.c: removed the GdkGC parameter from
gimp_dnd_set_drawable_preview_icon() since it's no longer used.
* app/gimpimage.c: dirty the view correctly after applying the
layer mask. Don't gdisplays_flush() because it's the job of the
caller.
* app/layers_dialog.c: when applying a layer mask, flush either
the display or just the layer_widget, depending on the previous
visibility state of the mask. Cleanups.
* plug-ins/print/gimp_color_window.c
* plug-ins/print/gimp_main_window.c: including config.h re-enables
i18n.
2000-03-31 Michael Natterer <mitch@gimp.org>
* app/gimpdnd.[ch]: minor cleanups.
* libgimp/gimpwidgets.c: don't set a border width for the
radio_group's vbox if no frame around it was requested.
* plug-ins/common/sample_colorize.c: add a separator between
image and sample.
* plug-ins/common/iwarp.c: use the libgimp ui functions, removed
callbacks, a global s/gfloat/gdouble/, replaced the booleans
toggling the transform mode with a single variable containing an
enum value, indentation.
2000-03-25 Michael Natterer <mitch@gimp.org>
* app/cursorutil.[ch]: new global variable "gimp_busy" which gets
set/unset whenever busy cursors are added/removed.
* app/info_dialog.c: register the info dialogs with the dialog
handler.
* app/fuzzy_select.[ch]: cleanups.
Here starts the ugly workaround which simulates something like
locking. If it works, it will close lots of bugs, if not, it's
easy to remove again.
So far, I didn't find strange side effects but Gimp is told to be
a complex program :-) Please test this.
* app/context_manager.c: don't allow tool changes if gimp_busy
is TRUE.
* app/disp_callbacks.c: don't allow mouse and key events in the
display_canvas if gimp_busy is TRUE.
(except if the current tool is FUZZY_SELECT and it is ACTIVE,
which is very ugly)
Also block other stuff like dropping colors/patterns etc.
* app/gdisplay_ops.c: don't close any display while Gimp is
busy. This is not really what we want but at least it prevents
crashes.