Mon Jan 11 22:02:10 GMT 1999 Adam D. Moss <adam@gimp.org>
* app/paint_funcs.c:
The bottleneck combine_inten_a_and_inten_a_pixels()
function is a couple of times faster when there is a
layer mask, for the common case, due to working with whole
word-aligned ints where feasible instead of a char at a time.
The same optimization could be implemented in lots of other
places, but I'm going to bed. Good night!
* app/gimage_cmds.c: #include <cursorutil.h>
Sun Jan 11 00:24:21 GMT 1999 Austin Donnelly <austin@greenend.org.uk>
Bit of a large checkin this - it's basically three things:
1 - GimpModules using gmodules to dynamically load and
initialise modules at gimp start of day.
2 - Color selectors now register themselves with a color
notebook.
3 - progress bars have been cleaned up a bit, so now have
progress indictations on all transform tool and gradient
fill operations. Not done bucket fill, but that seems to
be the next candidate.
New directories:
* modules/: new directory for dynamically loadable modules.
New files:
* modules/.cvsignore
* modules/Makefile.am
* modules/colorsel_gtk.c: GTK color selector wrapped up as a
color selector the gimp can use.
* app/gimpprogress.[ch]: progress bars within gimp core, either as
popups, or in the status bar. This is mainly code moved out
of plug-in.c
* app/color_notebook.[ch]: color selector notebook, implementing
very similar interface to color_select.h so it can be used as
a drop-in replacement for it.
* libgimp/color_selector.h: API color selectors need to implement
to become a page in the color_notebook.
* libgimp/gimpmodule.h: API gimp modules need to implement to be
initialised by gimp at start of day.
Modified files:
* Makefile.am: add modules/ to SUBDIRS
* libgimp/Makefile.am: install gimpmodule.h and color_selector.h
* app/gimprc.[ch]: recognise module-path variable.
* gimprc.in: set module-path variable to something sensible
(currently "${gimp_dir}/modules:${gimp_plugin_dir}/modules").
* app/Makefile.am: build color notebook and gimpprogress
* app/app_procs.c: register internal GIMP color selector with
color notebook.
* app/asupsample.c: call progress function less frequently for
better performance.
* app/asupsample.h: progress_func_t typedef moved to gimpprogress.h
* app/blend.c: make callbacks to a progress function
* app/color_area.c: use a color notebook rather than a color selector
* app/color_panel.c: ditto
* app/color_select.c: export color selector interface for notebook
* app/color_select.h: color_select_init() prototype
* app/flip_tool.c: flip the image every time, rather than every
second click.
* app/interface.c: move progress bar stuff out to
gimpprogress.c. Make the code actually work while we're at it.
* app/interface.h: move prototypes for progress functions out to
gimpprogress.h
* app/plug_in.c: load and initialise modules (if possible). Move
progress bar handling code out to gimpprogress.c
* app/plug_in.h: keep only a gimp_progress * for each plugin, not
a whole bunch of GtkWidgets.
* app/scale_tool.c
* app/rotate_tool.c
* app/shear_tool.c
* app/perspective_tool.c: progress bar during operation.
De-sensitise the dialog to discourage the user from running
two transforms in parallel.
* app/transform_core.c: recalculate grid coords when bounding box
changes. Only initialise the action area of the dialog once,
to avoid multiple "ok" / "reset" buttons appearing. Undraw
transform tool with correct matrix to get rid of handle
remains on screen. Call a progress function as we apply the
transform matrix. A few new i18n markups. Invalidate
floating selection marching ants after applying matrix.
* app/transform_core.h: transform_core_do() takes an optional
progress callback argument (and data).
* plug-ins/oilify/oilify.c: send progress bar updates after every
pixel region, not only if they processed a multiple of 5
pixels (which was quite unlikely, and therefore gave a jerky
progress indication).
Sun Jan 10 23:31:45 GMT 1999 Adam D. Moss <adam@gimp.org>
* app/blend.c app/bucket_fill.c app/convert.c app/crop.c
app/cursorutil.c app/cursorutil.h app/fuzzy_select.c
app/gdisplay.c app/gdisplay.h app/gimage_cmds.c
app/gimpimage.c app/transform_core.c app/xcf.c:
Most lengthy UI-blocking operations now put up an
hourglass so the user can see that GIMP is working.
Let me know if there are other vital cases.
Sun Jan 10 22:41:51 GMT 1999 Andy Thomas <alt@picnic.demon.co.uk>
New
* app/dialog_handler.c
* app/dialog_handler.h
Changed
* app/disp_callbacks.c
* app/gradient_select.c
* app/tools.c
* app/interface.c
* app/patterns.c
* app/gimpbrushlist.c
* app/palette.c
* app/layers_dialog.c
* app/devices.c
* app/errorconsole.c
Can now hide/show all main dialogs using the TAB key in any window.
However....
there is a bug in gtk that causes the Gimp the crash if you show
and then hide a lot of dialogs (eg if you have all dialogs visible
and press the TAB key repeatedly). I have email-ed an example to
the gtk bug list.
Also I can't seem to be able to catch the SHIFT-TAB combination
(suggestions welcome ;-) so the first press of the tab hide all
dialogs the second press reshows only the toolbox and the third
press reshows all. Comments please if you find this behaviour
non-intuitive.
Redid the indexed palette dialog to not crash, to be a bit more
usable, and to be a cleaner module. A first shot at using gcg in
actual practice.. If something is screwed, let me know!
Wed Jan 6 23:30:03 GMT 1999 Andy Thomas <alt@picnic.demon.co.uk>
* app/indexed_palette.c
Fixed crash when image->dialog->indexed palette invoked on
an RGB image.
Mon Jan 4 23:21:56 GMT 1999 Andy Thomas <alt@picnic.demon.co.uk>
* app/blend.c
* plug-ins/script-fu/script-fu.c
A patch from Federico to add a spiral gradient type. The patch
has been slightly modified to allow both clockwise and anticlockwise
spirals and the numbers used to represent these types of gradients
have been made to follow on from currently allocated numbers (I hope
this will not break any scripts).
Sat Jan 2 23:22:29 GMT 1999 Andy Thomas <alt@picnic.demon.co.uk>
* app/palette.c
* app/palette_select.h
* app/palette_select.c
An attempt at a better/improved palette dialog using a notebook
style for selection.
* app/Makefile.am
* plug-ins/script-fu/scripts/Makefile.am: use -DREGEX_MALLOC,
seems to be more portable
* plug-ins/png/png.c: use a default gamma of 2.2 when gamma
correction isn't enabled
-Yosh
* i18n markings from Daniel Egger (mostly removal of tags around
PDB stuff), some constification
* I went on a sprintf pogrom. Use g_snprintf or g_strdup_printf
where applicable, to prevent overflows, especially with filenames
and translated strings. suid gimp is now more secure. ;)
-Yosh
Wed Dec 23 23:59:52 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/palette.c
* app/Makefile.am
New:-
* app/palette_select.h
* app/palette_select.c
New smaller palette select dialog. This has an edit button
which invokes the palette editor.
Fri Dec 18 23:46:11 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>
Changed the palette dialog. New functionality. Better previews.
Can display larger palettes. Can import palettes from images and from
gradients. Fixed colour selection so that the hightlighted
square says in sync on redraws.
* app/convert.h
* app/palette.h
* app/palette.c
* app/gradient.c
* app/gradient_select.c
* app/gimage.c
* app/gimpimage.c
* app/gimpimage.h
New file:-
* app/palette_entries.h
* libgimp/gserialize.c
* libgimp/gserialize.h: Changed the enum values to allow for
simpler future expansion.
* libgimp/parasite.c
* libgimp/parasite.h: s/persistant/persistent/.
new accessor functions for parasites. #defines for new flags.
* app/paintbrush.c: added timeing code for brush strokes.
It is #ifed out, and is only valid for shift clicks.
* app/parasite_cmds.h: fixed a warning
* app/parasitelist.h
* app/parasitelist.c: added _for_each and _length functions
* app/gimpdrawable.c: set the dirty flag when adding or removing a
persistent parasite
* app/gimpimage.c: set the dirty flag when adding or removing a
persistent parasite. Fixed bug and removed debug statements in
merge_down.
* app/xcf.c: save and load resolution, parasites, and tattoos.
* app/main.c: updated the deserialize test.
* plug-ins/tiff/tiff.c
* plug-ins/gif/gif.c: use PARASITE_PERSISTENT define instead of 1
* plug-ins/bmp/bmp.c
* plug-ins/bmp/bmp.h: declare some struct variable as extern.
* app/paint_funcs.c: Lots of optimizations aimed at speeding up
painting. Should see a 2-4X speed up on most painting
(depending on paint modes, brush size etc.)
* app/drawable.c: check for NULL drawable in drawable_ID.
this stops us from being crashed by ill-behaved plug-ins
Sat Dec 12 17:36:51 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
* app/interface.c
* app/gdisplay.c: tweak to make status bar update correctly (most
of the time). As Sven has already noted, there seems to be a GTK
bug involved.
* app/disp_callbacks.c: only update the cursor co-ords if we
actually know them. Gets rid of silly (0,0) announcements.
Sat Dec 5 21:31:57 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
* app/commands.[ch]
* app/edit_selection.c
* app/gdisplay.[ch]
* app/gdisplay_ops.[ch]
* app/image_render.c
* app/info_window.c
* app/magnify.c
* app/menus.c
* app/scale.c: image rendering now happens with float scale
factors, independent in X and Y axes. Turning on dot-for-dot in view
menu does what gimp always used to do (ie one image pixel becomes
one monitor pixel). Dot-for-dot is on by default so people
shouldn't notice any difference unless they load an image that's
not at 72 dpi and also turn off dot-for-dot.
* app/app_procs.c
* app/gimprc.[ch]
* app/preferences_dialog.c: new gimprc options
(monitor-xresolution <float>) and corresponding
(monitor-yresolution <float>). Uglyness in preferences dialog to
add a "Monitor" page to the notebook, allowing user to set their
monitor's resolution or take it from the X server instead. This
badly needs cleaned up :(
* plug-ins/newsprint/newsprint.c: oops - this hasn't been working
for grayscale images since my last checkin. Now fixed.
Fri Nov 27 17:34:57 1998 Owen Taylor <otaylor@redhat.com>
* app/ink.c: Use MAX when combining multiple blobs,
instead of previous technique. This gives _much_
better results.
I still don't know why those statusbar is sometimes not updated. The labels
are definitely set, but are sometimes not drawn. I guess this is a GTK
problem.
--Sven
Mon Nov 16 21:46:39 1998 Austin Donnelly <austin@greenend.org.uk>
* app/edit_cmds.c
* app/gimage_mask_cmds.c: fix warnings about using uninitialized
gimage args + one real uninited variable bug.
First set of changes to integrate GAP (Gimp Animation Plugin written
by Michael Hofer)
New functions: gimp_layer_[get|set]_linked
gimp_image_raise_layer_to_top
gimp_image_lower_layer_to_bottom
--Sven
Sat Nov 14 23:16:55 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
* app/gimpimage.h
* app/gimpimageP.h
* app/gimpimage.c
* app/gimage_cmds.c
* app/file_new_dialog.c
* app/info_window.c
* libgimp/gimp.h
* libgimp/gimpimage.c
* plug-ins/newsprint/newsprint.c
* plug-ins/tiff/tiff.c: gimp_image_{get,set}_resolution() calls
now get and set both X and Y resolutions. Gimp image struct now
has two resolution fields, one for each direction. I've updated
the two plugins which used the info (TIFF and newsprint).
Sat Nov 14 20:02:31 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
* app/rect_select.c: deal with zero-size selections correctly (ie,
select the whole image but don't show marching ants).
* app/app_procs.c: sort out colourmap before creating splash
window, so if we need to install a private cmap then everything
will use it.
* plug-ins/newsprint/newsprint.c: delete spurious debugging printf.
* app/drawable_cmds.c, app/gimage_cmds.c
* app/parasite_cmds.c, libgimp/parasite.[ch],
* libgimp/gimp.c, libgimp/gimpprotocol.c
* tiff.c, gif.c, script-fu.c: removed all references to
parasite_error() and parasite_is_error(). Enable the
passing of null parasites in the pdb. Return a copy of the
parasite instead of the orginal in all pdb functions.
1998-11-07 Jay Cox <jaycox@earthlink.net>
* libgimp/{gimp.h, gimpchannel.c, gimpdrawable.c, gimplayer.c}:
export the tattoo functions to the plug-ins
* libimp/gserialize.c, libimp/gserialize.h: new files for
serializing structures
* main.c: test the gserialize functions
* gimpsignal.h: declare gimp_sigtype_* as extern
Thu Nov 5 21:55:46 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/gradient.c
* app/gradient_select.c
Changes due to gtk+ updates. Clist have been changed recently
in gtk which required changes to source code. These changes
have only been tested with the gtk version that introduced these
changes. (so lets get all those updates going...)
Wed Nov 4 22:23:18 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/gradient.c
* app/Makefile.am
New files
* app/gradient_select.c
* app/gradient_header.h
Split gradient selector dialog out of the main gradient code.
New gradient headerfile that contains the key gradient structures
and #defines.
Sat Oct 31 21:47:14 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/gradient.c
Fixed for problems with renaming + fix for interactions between editor
and gradient selection popups.
Sat Oct 31 14:57:40 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/gradient.c
* app/gradient.h
* app/internal_procs.c
* app/plug_in.c
* app/session.c
* app/session.h
* libgimp/Makefile.am
* libgimp/gimpmenu.h
* libgimp/app/gimprc.c
* libgimp/libgimpmenu.c
* plug-ins/script-fu/scripts/test-sphere.scm
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu.c
* plug-ins/script-fu/script-fu-scripts.c
New file:-
* libgimp/gimpgradientmenu.c
New gradient selector widget (smaller than the editor). This can now
be controlled via the PDB.
New widget which gives easy way to do gradient selections. This
new widget is used by script-fu (see the test->sphere script).
gradient.c needs to be split up (source is almost already split
I will complete this RSN).
Sat Oct 24 14:53:19 EDT 1998 Adrian Likins <adrian@gimp.org>
* app/plug_in.c: fix from Tor Lillqvist <tml@iki.fi>
to make scriptfu work again (argc = 1; line 2281)
-adrian
* libgimp/Makefile.am
* configure.in: fix --disable-static compilation
* gimptool.in: use the right dir for scripts. Strip out path
from the compiled bin
* app/colormaps.c: comment out unused gamma_correct function
* app/layer.c: #include "libgimp/parasite.h"
* app/paint_funcs.c: convert icky C++ comments
* plug-ins/mosaic/mosaic.c
* plug-ins/cubism/cubism.c: cleanups
* plug-ins/libgck/gck/gckcolor.c: fix adaptive supersampling bug
-Yosh
Wed Oct 21 23:37:01 BST 1998 Andy Thomas <alt@picnic.demon.co.uk>
Fixed a problem in gradient.c where if a gradient was selected
via the PDB and the editor has not been displayed on the screen
gimp would crash.
Wed Oct 21 20:15:14 CEST 1998 Marc Lehmann <pcg@goof.com>
* app/plug_in.h, app/plug_in.c, app/procedural_db.c: Added an "argc"
parameter to plug_in_run and changed all callers so that they only
pass as much arguments as necessary (should be done for
procedural_db_execute as well).
Tue Oct 20 23:20:40 BST 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/brush_select.h
* app/brush_select.c
* app/internal_procs.c
* app/gimpbrushlist.c
* libgimp/Makefile.am
* libgimp/gimpmenu.h
* libgimp/gimpmenu.c
* plug-ins/script-fu/scripts/3d-outline.scm
* plug-ins/script-fu/scripts/test-sphere.scm
* plug-ins/script-fu/scripts/trochoid.scm
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu.c
New file libgimp/gimpbrushmneu.c.
Brush dialog can now be fully controlled via the PDB. New widget (not
true widget) type added to libgimpui (gimp_brush_select_widget()).
Plugins should easily be able to control & select brushes. Script-fu
updated to use new widget. See the test script for example.
Started to change some of the scripts to use the new widget types.
Sun Oct 18 21:20:25 BST 1998 Austin Donnelly <austin@greenend.org.uk>
* app/file_new_dialog.c: set new image resolution correctly.
Previously wasn't taking into account the units, and assuming
dpi. When using existing image as a template for size, take
resolution too. Make sure cm/inch option menus are persistent
across dialog popups.
Sun Oct 18 21:20:25 BST 1998 Austin Donnelly <austin@greenend.org.uk>
* app/clone.c: don't bail if we don't have a source drawable if
we're actually using a pattern as source.
Wed Oct 14 17:46:15 EDT 1998 Adrian Likins <adrian@gimp.org>
* app/*, po/de.po, de/POTFILES.in, libgimp/gimpintl.h:
Lots of ii8n stuff here and some additions to the de.po.
Applied gimp-egger-981005-1 ,gimp-egger-981006-1,
gimp-egger-981007-1, gimp-egger-981008-1,
gimp-egger-981009-1.patch, gimp-egger-981010-1.patch
* plug-in/guillotine/guillotine.c: added the coordinates
of the split images from the original image to the title.
ie foo.jpg (0,0) for the image in the topleft.
* plug-in/script-fu/scripts/neon-logo.scm,
perspective-shadow.scm, predator.scm,rendermap.scm,
ripply-anim.scm, select_to_image.scm,swirltile.scm,
xach-effect.scm: updated scripts to use new script-fu stuff
wooo boy! a big un!
in testing this, it looks like some of the po files are busted.
but the code stuff seems okay.
-adrian
* app/temp_buf.c: applied gimp-entity-980929-1, adds write error handling
* app/gimprc.c
* app/install.c
* app/tips_dialog.c: allow use of GIMP_DATADIR to override compiled in default
* HACKING
* autogen.sh: we need libtool 1.2b now
-Yosh
* plug-ins/gif/gif.c: Added support for persistant GIF
Comments through the GIMP 1.1 Parasite mechanism where available.
Did some user-interface tweaks. Fixed a bug when trying to save
a GIF smaller than five pixels high as interlaced.
* app/convert.c: Minor text amendment
* docs/parasites.txt: Started a central list of parasite types
and their creators.
Sun Oct 4 22:18:11 BST 1998 Adam D. Moss <adam@gimp.org>
* app/palette.c: Had a look at making the window resizable,
got scared. Made the palette dialog a bit smaller.
* app/indexed_palette.c: The window is now resizable without
falling foul to previously existing bugs. It won't win you
anything though.
Sat Oct 3 21:01:34 BST 1998 Adam D. Moss <adam@gimp.org>
* app/channel.c app/channel_ops.c app/disp_callbacks.c
app/floating_sel.c app/gdisplay.c app/gdisplay.h
app/gdisplay_ops.c app/gimpimage.c app/image_map.c
app/interface.c app/layers_dialog.c app/plug_in.c app/undo.c
app/xcf.c:
Resizing image canvases should be less horrible to look at.
I've removed the implicit clear of the whole area when a
window is resized by the user, and clear the exposed area around
the image manually when appropriate.
Dialogs which want synchronous updates for previews and
such use displays_update_now().
Removed some old debugging nonsense which I don't want any more.
Thu Oct 1 22:39:14 BST 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/patterns.c app/pattern_select.c app/internal_procs.c
* app/patterns.h app/pattern_select.h app/plug_in.c
* libgimp/gimpmenu.h libgimp/gimpmenu.c libgimp/Makefile.am
* plug-ins/gfig/gfig.c plug-ins/script-fu/scripts/test-sphere.scm
* plug-ins/script-fu/script-fu.c plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu-scripts.c
* New libgimp/gimppatternmenu.c
Pattern dialog can now be controlled via the PDB. New widget (not true
widget) type added to libgimpui (gimp_pattern_select_widget()). Plugins
should easily be able to control & select patterns. Script-fu
updated to use new widget. See the test script for example.
Thu Oct 1 17:10:32 BST 1998 Adam D. Moss <adam@gimp.org>
* app/gdisplay.c app/gdisplay.h: Okay, that didn't
take quite as long as expected. This is the first cut at
a gimp-wide IdleRender in place of the previously synchronous
displays_update(). A synchronous displays_update_now() is
implemented for stuff like brushes, but it isn't used right
now. (Seems to go pretty well without.)
I need feedback and (previously nonexistant!) bug reports...
please. =)
Thu Oct 1 12:44:19 BST 1998 Adam D. Moss <adam@gimp.org>
* app/floating_sel.c app/gdisplay.c app/gdisplay.h
app/gimpimage.c app/layers_dialog.c app/undo.c:
Temporarily disabled IdleRender code whilst working
on a more centralised approach.
Sun Sep 27 13:53:03 BST 1998 Adam D. Moss <adam@gimp.org>
* app/paint_funcs.c: Fixed a bug in color_only_pixels(),
fixed a possible bug in border_region().
Sat Sep 26 20:46:18 BST 1998 Adam D. Moss <adam@gimp.org>
* app/channel.c app/channel_ops.c app/drawable.c
app/floating_sel.c app/gdisplay.c app/gdisplay.h
app/gimpimage.c app/layers_dialog.c app/undo.c:
Moved the idlerender stuff into gdisplay.c. Implemented
idlerender when doing floating_sel->layer, and undoing/redoing
layer deletion.
idlerender would be useful in many other places for improving
interactivity, if it weren't for the following problems:
* By definition, idlerender doesn't wait for a
gdisplays_update() call before starting work - it just
runs in idle time, which due to CPU contention with
plugins may not be genuinely available idle time when
things are 'noninteractive'.
* Most GIMP functions don't know whether they're
being run interactively or not. idlerender only
makes sense for interactive work. This is why
it is currently only applied to those functions which
would normally only be activated manually.
* Mixing idlerender and drawable_update() /
gdisplays_update_area() calls can lead to a region
being rerendered twice.
Hence, some slogwork is needed before idlerender can be
applied in the more general case.
Thu Sep 24 12:39:27 BST 1998 Adam D. Moss <adam@gimp.org>
* app/brush_edit.c: #include <string.h> for memset
* app/layers_dialog.c:
Display re-rendering is now handled in an interruptible
asynchronous idle-threaded, uh, paradigm shift.
The upshot of this is that fiddling about with layers
in the layers dialog is now a shipload faster for some
common operations.
Still needs to be ratified w.r.t. multiple gimages, but
it's there.
* app/text_tool.c: correct test for restoring old foundry in
callback (from Trent Piepho)
* plug-ins/gauss_iir/gauss_iir.c
* plug-ins/gauss_rle/gauss_rle.c: better test for bad values,
put fix in gauss_rle too
-Yosh
* Upgraded to libtool 1.2b
* Reversioned libgimp to use gtk-style without a funky soname
* configure.in: craft GLIB_CFLAGS and GLIB_LIBS
* Makefile.am (pretty much all of em): changed to use new library
naming scheme. Only link libgimpui and libgtk et al to the plugins
that actually need them.
* app/gimage_cmds.c: corrected typo that resulted in corrupt PDB
record
* libgimp/gimp.h
* libgimp/gimpwire.h
* libgimp/gimpmenu.[ch]: clean up the callback code
* Removed unecessary inclusion of gtk headers for plugins that
don't use em
* plug-ins/zealouscrop/zealouscrop.c: use gint8 instead of gboolean,
save some mem
* plugged some warnings in animationplay, flame, fp, gee, gfig
* gimptool.in: changes for library reversioning, added --nogimpui
option for not linking in libgimpui
* configure.in: added finnish translation
-Yosh
Sat Sep 19 01:19:18 BST 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/blend.c app/brush_select.c app/brush_select.h app/bucket_fill.c
app/gimpbrushlist.c app/internal_procs.c app/plug_in.c libgimp/gimp.c
libgimp/gimp.h libgimp/gimpmenu.c libgimp/gimptile.c
plug-ins/gfig/gfig.c
Infrastructure to allow gimp dialogs to be controlled from plugins.
Brush dialog can now be invoked multiple times. Dialogs invoked
via plugins do not control the active brush (dialog only used for
selections).
New gimp_interactive_selection_brush() function to popup dialog
Example of usage in the gfig plugin.
Other dialogs should be able to use this method of invocation.
Tue Sep 15 21:27:10 BST 1998 Adam D. Moss <adam@gimp.org>
* plug-ins/gif.c:
The facility to specify the background colour of
a transparent/animated GIF for non-transparent
viewers now works very much more consistantly.
The only situations in which it will fail to work
as expected now are those where file size can be reduced
(abeit not by much, as the plugin is sometimes more pessimistic
than it need be) by re-using an existing unused colour
index rather than using another bit per pixel in the
encoded file. That will never be an issue with an image
which was freshly converted from RGB to INDEXED with the
Quantize option, as that option removes any unused colours
from the image.
Let me know if you find the consistancy/size tradeoff more
annoying than helpful and I can adjust it. IMHO it is too
arcane a feature to present to any user as a runtime option.
* app/ink.c: #include <string.h> for a memset
Fri Sep 11 11:15:17 EDT 1998 Adrian Likins <adrian@gimp.org>
* app/file_new_dialog.c: fixed a typo that wouldnt let
you create images smaller than 1 unit
-adrian
* plug-ins/script-fu/script-fu.c
* plug-ins/script-fu/script-fu-console.[ch]: added an eval
PDB interface for running arbitrary scheme code
* app/batch.c: redid batch mode to use script-fu-eval
* app/main.c: fixed command line parsing for batch mode and
image loading
-Yosh
* configure.in: added -std1 check for DU4
* gimptool.in: added strip options
* plug-ins/hrz/hrz.c: #ifndef'd NeXT out munmap call
* plug-ins/maze/maze.c: commented out some debug code differently
so NeXT compiler won't barf.
* configure.in
* po/sv.po: added a preliminary Swedish translation from
Tomas Ogren <stric@ing.umu.se>
-Yosh
* app/brush_generated.c: more carefull when the active brush
changes
* app/docindexif.c: white_space() was ungetch'ing the eof
marker which can clear the eof flag on some systems.
* app/docindex.c: check for ferror()s
* app/brush_select[ch]: sensitize the edit button iff the
active brush is a generated brush.
* configure.in: see if CC needs -posix (for NeXTStep)
* app/channels_dialog.c: added clarifying {}'s around if block
* app/gimpbrushlist.c: #if 0'd out some dead code
* plug-ins/script-fu/script-fu-server.c: removed unused variable declaration
-Yosh
* plug-ins/psd/psd.c: Added the ability to load
Guides info from PSD files.
* app/gimage_cmds.c: Don't allow careless callers
to add Guides outside of the image boundaries.
Mon Aug 31 23:32:40 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/gimpimage.c (gimp_image_remove_layer_mask): add back a call to
gdisplays_flush that seems to have been lost in the
objectification.
* plug-ins/guillotine/Makefile.am configure.in
plug-ins/guillotine/guillotine.c plug-ins/Makefile.am:
New plugin to slice an image up along its Guides.
* app/gimage_cmds.c: Fixes.
* app/gimage_cmds.c app/gimage_cmds.h app/gimpimage.c
app/gimpimage.h libgimp/gimp.h libgimp/gimpenums.h
libgimp/gimpimage.c: Moved the guide PDB functions into
a more sensible place, made them accessible to plugins
through libgimp.
Tue Sep 1 01:15:06 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/layers_dialog.c (paint_mode_menu_get_position): added this
function to translate layer modes to correct menu positions, this
is ugly but important until someone rewrites the layers_dialog.
Mon Aug 31 16:51:35 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/internal_procs.c: included in merge down changes
I'm not sure what happened to the last commit, it aborted, but it seems some
bits went through, so see the Changelog for what I think is an accurate record
of the changes.
Mon Aug 31 16:33:11 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/gimpimage.[ch]
* app/gimage_cmds.[ch]
* app/layers_dialog.c: Added merge down procedure, I'm not really
sure if this behaves the way people expect it to, so please send
me any comments on what it actually should do. It also needs a
little testing, especially the pdb call.
* app/gimpimage.c: cleaned up Seth's merge commit a little. Also
changed the mode of a merged layer to normal, as this seems to be
the proper thing. Discussion is welcome here as well.
* app/gimage.h app/gimpimage.c app/gimpimage.h
app/internal_procs.c app/layer.c app/xcf.c:
Guide creation/deletion/query is now available as
PDB procedures. Not yet directly exported to libgimp,
and needs to be moved into gimage_cmds.c, but it
works.
Sun Aug 30 16:45:05 1998 Owen Taylor <otaylor@gtk.org>
* app/app_procs.c (app_init_update_status): Instead
of calling gtk_widget_draw() (which was happening before
the labels got re-size-allocated), just update the
event loop so the idle resize/redraw gets run.
* acconfig.h
* configure.in
* app/main.c: added check for putenv and #ifdefed it's usage since NeXTStep is
lame
* libgimp/gimp.c
* app/main.c
* app/plug_in.c: conditionally compile shared mem stuff so platforms without
it can still work
* plug-ins/CEL/CEL.c
* plug-ins/palette/palette.c
* plug-ins/print/print-escp2.c
* plug-ins/print/print-pcl.c
* plug-ins/print/print-ps.c: s/strdup/g_strdup/ for portability
-Yosh
Mon Aug 24 13:41:49 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/fileops.c (file_save): move the mru and docindex calls to
before the call to gimp_image_set_filename so that they are still
accessing valid memory. Fixes the filename corruption seen in
these interfaces.
* app/gimpimage.c: added a warning about the side effect that
caused the above bug.
* configure.in: make xdelta not built by default, so poor users aren't confused
* libgimp/gimp.c
* app/blob.c
* app/errors.c
* plug-ins/script-fu/script-fu-server.c: fixes for glib changes with
s/g_debug/g_on_error_debug/ and s/g_vsprintf/g_strdup_vprintf/
-Yosh
Fri Aug 21 17:25:34 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/fileops.c: fixed a lingering bug that occured from the
removal of the id system. This should fix tigert's save problems.
ok, i modified *way* more files than CVS is telling me....
- add canvas_init machinery (tile_manager_validate equivalent)
- fix bugs in compositing code
- layers/channels dialog, previews
- all color handling should be fairly precision independent now
- replaced gimage_type and gimage_base_type with Tags
- remove concept of flat vs. layered gimages
ray lehtiniemi <rayl@netrover.com>
Sun Aug 16 18:48:17 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/ink.c (ink_paste): Make sure we check that
ink_set_paint_area found a valid canvas_buf.
Sat Aug 15 22:53:36 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/gdisplay.c (gdisplay_update_cursor): Make sure we check the
return value from gimp_image_active_drawable.
Sat Aug 15 16:53:45 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/airbrush.c: added a debug warning to a case that previously
caused a segfault. This appears to be an xinput related problem
where more than one button press can occur before a button release,
so if you see a warning that tells you to contact me, please do.
bookkeeping without being used). Made copy_region more intelligent on
when to use tile sharing; some changes made to pixel_regions to
facilitate this. Fixed a refcount problem with xcf load and probably
a few other bugs that I've forgotten about. Added a sanity check in
set_undo_tiles to help with a problem larry is reporting with airbrush
and xinput. --sg
for the transformations and crop.
Changed "Clip perspective" to "Clip result" in the ransform tool options
and made it available for all transformations.
Minor cosmetic changes to rect_select and ink option dialogs.
--Sven
* app/gdisplay.c: corrected 2 annoyances: that stupid hash table == NULL
warning and the pointer in the title bar instead of the ID
* app/internal_procs.c: we're registering more procs, so make update the total
proc count
-Yosh
* acinclude.m4: for people without the gettext macros
* configure.in: don't explicitly link files
* app/Makefile.am: ad INTLLIBS to the link line
-Yosh
* initial merge of the internationalization stuff. It's still broken in a
couple places, so you're probably better off running configure with
--disable-nls (gimp-mgomulin-980727-0)
-Yosh
* app/layers_dialog.c: Removed an ancient kludge that was
seriously confusing the layer-mode menu.
* plug-ins/psd/psd.c: Support OVERLAY_MODE where available
Tue Jul 28 15:42:39 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/drawable_cmds.c (drawable_fill_invoker):
* libgimp/gimpenums.h: Changed the libgimp GFillType
enums to match the core enums in value, the names still
differ.
* plug-ins/script-fu/script-fu.c: changed the fill setvars to use
the GFillType enums.
Tue Jul 28 15:04:39 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/gimpdrawable.h: reordered the GimpFillType enum,
unfortunately this will cause a lot of recompilation for the
rest of you.
Tue Jul 28 14:14:43 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/drawable.c (drawable_fill): added a case for
FOREGROUND_FILL. Fixes the layer new dialog so that it actually
works with foreground fill selected.
----------------------------------------------------------------------
Modified Files:
ChangeLog app/gimpbrushgenerated.c app/gimpbrushlist.c
gimpbrushgenerated now supports the stingy_memory_use flag.
fixed a bug in select_brush() related to stingy_memory_use.
----------------------------------------------------------------------
Fri Jul 24 14:40:55 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/layers_dialog.c (lc_dialog_create): moved
gtk_widget_show (lc_shell) so that the layers show up in the
dialog again. I've told Owen about this problem, we'll see what
comes up.
Fri Jul 24 12:01:31 CDT 1998 Larry Ewing <lewing@gimp.org>
* app/gdisplay.c (gdisplay_update_cursor): Fixed a string
allocation problem that failed to account for the trailing \0
(removed time sensitve calculation/malloc in the process).
----------------------------------------------------------------------
Modified Files:
ChangeLog app/Makefile.am app/brush_select.c app/gimpbrush.c
app/gimpbrush.h app/gimpbrushgenerated.c app/gimpbrushlist.c
app/gimplist.c app/paint_core.c app/paint_core.h
added axis to brushes. paint_core now references a brush instead
of a mask. cleaned up some [brush]list removal stuff.
Added Files:
app/vector2d.c app/vector2d.h
very basic vector math struct/functions.
----------------------------------------------------------------------