gimp/plug-ins/libgck
Manish Singh 141b6e8a25 applied gimp-lecorfec-99041[02]-0, changes follow
* applied gimp-lecorfec-99041[02]-0, changes follow

* plug-ins/FractalExplorer/Dialogs.h (make_color_map):
replaced free with g_free to fix segfault.

* plug-ins/Lighting/lighting_preview.c (compute_preview):
allocate xpostab and ypostab only when needed (it could also be
allocated on stack with a compilation-fixed size like MapObject).
It avoids to lose some Kb on each preview :)
Also reindented (unfortunate C-c C-q) some other lines.

* plug-ins/Lighting/lighting_main.c (run):
release allocated postabs.

* plug-ins/Lighting/lighting_ui.c:
callbacks now have only one argument because gck widget use
gtk_signal_connect_object. Caused segfault for scale widget.

* plug-ins/autocrop/autocrop.c (doit):
return if image has only background (thus fixing a segfault).

* plug-ins/emboss/emboss.c (pluginCore, emboss_do_preview):
replaced malloc/free with g_malloc/g_free (unneeded, but
shouldn't everyone use glib calls ? :)

* plug-ins/flame/flame.c :
replaced a segfaulting free, and several harmless malloc/free pairs.

* plug-ins/flame/megawidget.c (mw_preview_build):
replaced harmless malloc/free pair.
Note : mwp->bits is malloc'ed but seems to be never freed.

* plug-ins/fractaltrace/fractaltrace.c (pixels_free):
replaced a bunch of segfaulting free.
(pixels_get, dialog_show): replaced gtk_signal_connect_object
with gtk_signal_connect to accomodate callbacks (caused STRANGE
dialog behaviour, coz you destroyed buttons one by one).

* plug-ins/illusion/illusion.c (dialog):
same gtk_signal_connect_object replacement for same reasons.

* plug-ins/libgck/gck/gckcolor.c :
changed all gck_rgb_to_color* functions to use a static GdkColor
instead of a malloc'ed area. Provided reentrant functions with
the old behaviour (gck_rgb_to_color*_r). Made some private functions
static, too.
gck_rgb_to_gdkcolor now use the new functions while
gck_rgb_to_gdkcolor_r is the reentrant version.
Also affected by this change: gck_gc_set_foreground and
gck_gc_set_background (no more free(color)).

* plug-ins/libgck/gck/gckcolor.h :
added the gck_rgb_to_gdkcolor_r proto.

* plug-ins/lic/lic.c (ok_button_clicked, cancel_button_clicked) :
segfault on gtk_widget_destroy, now calls gtk_main_quit.
(dialog_destroy) : segfault on window closure when called by
"destroy" event. Now called by "delete_event".

* plug-ins/megawidget/megawidget.c (mw_preview_build):
replaced harmless malloc/free pair.
Note : mwp->bits is malloc'ed but seems to be never freed.

* plug-ins/png/png.c (load_image):
replaced 2 segfaulting free.

* plug-ins/print/print-ps.c (ps_print):
replaced a segfaulting free (called many times :).

* plug-ins/sgi/sgi.c (load_image, save_image):
replaced a bunch of segfaulting free, and did some harmless
inits to avoid a few gcc warnings.

* plug-ins/wind/wind.c (render_wind):
replaced a segfaulting free.
(render_blast): replaced harmless malloc/free pair.

* plug-ins/bmp/bmpread.c (ReadImage):
yet another free()/g_free() problem fixed.

* plug-ins/exchange/exchange.c (real_exchange):
ditto.

* plug-ins/fp/fp.h: added Frames_Check_Button_In_A_Box proto.
* plug-ins/fp/fp_gtk.c: closing subdialogs via window manager
wasn't handled, thus leading to errors and crashes.
Now delete_event signals the dialog control button
to close a dialog with the good way.

* plug-ins/ifscompose/ifscompose.c (value_pair_create):
tried to set events mask on scale widget (a NO_WINDOW widget).

* plug-ins/png/png.c (save_image):
Replaced 2 free() with g_free() for g_malloc'ed memory.
Mysteriously I corrected the loading bug but not the saving one :)

-Yosh
1999-04-15 21:49:09 +00:00
..
docs/html libtool fix for solaris 1998-03-20 02:40:04 +00:00
gck applied gimp-lecorfec-99041[02]-0, changes follow 1999-04-15 21:49:09 +00:00
.cvsignore libtool fix for solaris 1998-03-20 02:40:04 +00:00
AUTHORS libtool fix for solaris 1998-03-20 02:40:04 +00:00
ChangeLog libtool fix for solaris 1998-03-20 02:40:04 +00:00
Makefile.am libgimp versioning stuff 1998-06-19 19:47:34 +00:00
NEWS libtool fix for solaris 1998-03-20 02:40:04 +00:00
README libtool fix for solaris 1998-03-20 02:40:04 +00:00
TODO libtool fix for solaris 1998-03-20 02:40:04 +00:00

README

The General Convenience Kit (GCK) 1.0.0
=======================================

Copyright (C) 1996-98 Tom Bech (tomb@gimp.org)
Copyright (C) 1996-98 Federico Mena Quintero (quartic@gimp.org)

The General Drawing Kit (GDK), The General Toolkit (GTK) and The GIMP was
developed and is (C) by Peter Mattis and Spencer Kimball. You can contact
them at gimp@xcf.berkeley.edu, or visit the GIMP home page which is located
at http://www.gimp.org

There's additional GIMP stuff on my home page:

http://www.ii.uib.no/~tomb/gimp.html

Legal stuff
===========

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.

This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
this program (see the "COPYING" file); if not, write to the Free Software Foundation,
Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

In other words, you can't sue us for whatever happens while using this ;)

Description
===========

Short: This library is a collection of more or less useful stuff for GIMP plug-in
writers and/or users of GDK/GTK.

I must point out that this is not an attempt to enhance GDK|GTK in any way; there's nothing
in it that can't be done using GDK|GTK alone. IMHO, improvements or new functionality
should be integrated with GDK|GTK, not added on top.

Here's a quick description of each file;

./gck/
gckcommon.c :     Common variables and defines
gckmath.c :       Useful math routines not in math.h
gckcolor.c :      Conversion routines from raw RGB(A) to GdkImage (RGB to
                  32/24/16/8 bpp). Basic RGB operations (add,sub etc.), super-
                  sampling routines, bilinear interpolation and other color-related
                  functions (color-space conversions etc.)
gckui.c :         Convenience routines for creating various UI elements
                  (dialogs, buttons, sliders, container-boxes etc.). Almost like
                  the libgimp calls, but with more options and the possibility to
                  mix it with other GDK|GTK things if you want
gckcolor_select : Source for the GCK color select window
gckvector.c :     2d and 3d vector operations (2d->3d, 3d->2d, add, sub, cross-product,
                  rotate etc.)

./examples/misc/* :   Various small examples of how to use the library
./examples/gimp/* :   GIMP plug-in examples.
./examples/opengl/* : Examples of binding OpenGL and GDK/GTK.

Hopefully this will grow with time. The goal is to provide GIMP plug-in writers
and GDK/GTK users with a library to ease the writing of applications and UIs.

Some things may become obsolete as the GIMP/GDK/GTK API evolves, and in the long
run the whole library may be unnecessary. Until I get around to writing some kind
of documentation you'll have to dig around in the sources on your own.

Take a look at the examples and the plug-ins I've written using this library,
and you'll soon get the hang of it. Feel free to modify and/or add new things
to the library, but remember to send me a patch if you do :)

Check out the TODO file for things missing and in the works.

Have fun,

Tom