home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 2002 April / pcpro0402.iso / essentials / graphics / Gimp / gimp-src-20001226.exe / src / gimp / app / gimpdrawable.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-12-17  |  3.9 KB  |  90 lines

  1. /* The GIMP -- an image manipulation program
  2.  * Copyright (C) 1995 Spencer Kimball and Peter Mattis
  3.  *
  4.  * This program is free software; you can redistribute it and/or modify
  5.  * it under the terms of the GNU General Public License as published by
  6.  * the Free Software Foundation; either version 2 of the License, or
  7.  * (at your option) any later version.
  8.  *
  9.  * This program is distributed in the hope that it will be useful,
  10.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12.  * GNU General Public License for more details.
  13.  *
  14.  * You should have received a copy of the GNU General Public License
  15.  * along with this program; if not, write to the Free Software
  16.  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  17.  */
  18.  
  19. #ifndef __GIMP_DRAWABLE_H__
  20. #define __GIMP_DRAWABLE_H__
  21.  
  22. #include "apptypes.h"
  23. #include "gimpobject.h"
  24. #include "tile_manager.h"
  25. #include "temp_buf.h"
  26.  
  27. #include "libgimp/gimpparasite.h"
  28.  
  29.  
  30. #define GIMP_TYPE_DRAWABLE     (gimp_drawable_get_type ())
  31. #define GIMP_DRAWABLE(obj)     (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE, GimpDrawable))
  32. #define GIMP_IS_DRAWABLE(obj)  (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE))
  33.  
  34. GtkType gimp_drawable_get_type (void);
  35.  
  36. /*  drawable access functions  */
  37.  
  38. void             gimp_drawable_merge_shadow       (GimpDrawable *, gint);
  39. void             gimp_drawable_fill               (GimpDrawable *drawable,
  40.                            guchar r, guchar g,
  41.                            guchar b, guchar a);
  42.  
  43. gboolean         gimp_drawable_mask_bounds        (GimpDrawable *,
  44.                            gint *, gint *,
  45.                            gint *, gint *);
  46.  
  47. void             gimp_drawable_invalidate_preview (GimpDrawable *drawable, 
  48.                            gboolean      emit_signal);
  49. gint             gimp_drawable_dirty              (GimpDrawable *);
  50. gint             gimp_drawable_clean              (GimpDrawable *);
  51. gboolean         gimp_drawable_has_alpha          (GimpDrawable *);
  52. GimpImageType    gimp_drawable_type               (GimpDrawable *);
  53. GimpImageType    gimp_drawable_type_with_alpha    (GimpDrawable *);
  54. gboolean         gimp_drawable_is_rgb             (GimpDrawable *);
  55. gboolean         gimp_drawable_is_gray            (GimpDrawable *);
  56. gboolean         gimp_drawable_is_indexed         (GimpDrawable *);
  57. TileManager *    gimp_drawable_data               (GimpDrawable *);
  58. TileManager *    gimp_drawable_shadow             (GimpDrawable *);
  59. gint             gimp_drawable_bytes              (GimpDrawable *);
  60. gint             gimp_drawable_width              (GimpDrawable *);
  61. gint             gimp_drawable_height             (GimpDrawable *);
  62. gboolean     gimp_drawable_visible              (GimpDrawable *);
  63. void             gimp_drawable_offsets            (GimpDrawable *, 
  64.                            gint *, gint *);
  65.  
  66. guchar *         gimp_drawable_cmap               (GimpDrawable *);
  67. gchar *         gimp_drawable_get_name              (GimpDrawable *);
  68. void          gimp_drawable_set_name              (GimpDrawable *, gchar *);
  69.  
  70. guchar *         gimp_drawable_get_color_at       (GimpDrawable *,
  71.                            gint x, gint y);
  72.  
  73. void             gimp_drawable_parasite_attach    (GimpDrawable *,
  74.                            GimpParasite *);
  75. void             gimp_drawable_parasite_detach    (GimpDrawable *,
  76.                            const gchar *);
  77. GimpParasite *   gimp_drawable_parasite_find      (const GimpDrawable *,
  78.                            const gchar *);
  79. gchar **         gimp_drawable_parasite_list      (GimpDrawable *drawable,
  80.                                                    gint *count);
  81. Tattoo           gimp_drawable_get_tattoo         (const GimpDrawable *);
  82. void             gimp_drawable_set_tattoo         (GimpDrawable *, Tattoo);
  83.  
  84. GimpDrawable *   gimp_drawable_get_ID             (gint);
  85. void         gimp_drawable_deallocate         (GimpDrawable *);
  86. GimpImage *      gimp_drawable_gimage             (GimpDrawable*);
  87. void             gimp_drawable_set_gimage         (GimpDrawable*, GimpImage *);
  88.  
  89. #endif /* __GIMP_DRAWABLE_H__ */
  90.