/* LIBGIMP - The GIMP Library * Copyright (C) 1995-1997 Peter Mattis and Spencer Kimball * * gimpmiscui.h * Contains all kinds of miscellaneous routines factored out from different * plug-ins. They stay here until their API has crystalized a bit and we can * put them into the file where they belong (Maurits Rijk * if you want to blame someone for this mess) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ #ifndef __GIMP_MISCUI_H__ #define __GIMP_MISCUI_H__ #include G_BEGIN_DECLS /* For information look into the C source or the html documentation */ /* Preview stuff. WARNING: don't use this in new code!!!!!!! * It's just here to extract some general preview stuff from plug-ins so * that it will be easier to change them when we have a real effect preview * widget. * Don't say I didn't warn you (Maurits). */ typedef struct { GtkWidget *widget; GtkWidget *frame; guchar *cache; guchar *even; guchar *odd; guchar *buffer; gint width; gint height; gint rowstride; gint bpp; /* bpp of the drawable */ guchar *cmap; gint ncolors; gdouble scale_x; gdouble scale_y; gboolean is_gray; } GimpFixMePreview; typedef void (*GimpFixeMePreviewFunc) (const guchar *src, guchar *dest, gint bpp, gpointer data); GimpFixMePreview * gimp_fixme_preview_new (GimpDrawable *drawable, gboolean has_frame); GimpFixMePreview * gimp_fixme_preview_new2 (GimpImageType drawable_type, gboolean has_frame); void gimp_fixme_preview_free (GimpFixMePreview *preview); void gimp_fixme_preview_update (GimpFixMePreview *preview, GimpFixeMePreviewFunc func, gpointer data); void gimp_fixme_preview_fill_with_thumb (GimpFixMePreview *preview, gint32 drawable_ID); void gimp_fixme_preview_fill (GimpFixMePreview *preview, GimpDrawable *drawable); void gimp_fixme_preview_fill_scaled (GimpFixMePreview *preview, GimpDrawable *drawable); void gimp_fixme_preview_do_row (GimpFixMePreview *preview, gint row, gint width, const guchar *src); void gimp_fixme_preview_put_pixel (GimpFixMePreview *preview, gint x, gint y, const guchar *pixel); void gimp_fixme_preview_get_pixel (GimpFixMePreview *preview, gint x, gint y, guchar *pixel); gchar * gimp_plug_in_get_path (const gchar *path_name, const gchar *dir_name); GtkWidget *gimp_parameter_settings_new (GtkWidget *parent, guint rows, guint columns); G_END_DECLS #endif /* __GIMP_MISCUI_H__ */