PIKApp/app/core/pikafilloptions.h

101 lines
5.1 KiB
C

/* The PIKA -- an image manipulation program
* Copyright (C) 1995-1999 Spencer Kimball and Peter Mattis
*
* pikafilloptions.h
* Copyright (C) 2003 Simon Budig
*
* 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 3 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. If not, see <https://www.gnu.org/licenses/>.
*/
#ifndef __PIKA_FILL_OPTIONS_H__
#define __PIKA_FILL_OPTIONS_H__
#include "pikacontext.h"
#define PIKA_TYPE_FILL_OPTIONS (pika_fill_options_get_type ())
#define PIKA_FILL_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PIKA_TYPE_FILL_OPTIONS, PikaFillOptions))
#define PIKA_FILL_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PIKA_TYPE_FILL_OPTIONS, PikaFillOptionsClass))
#define PIKA_IS_FILL_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PIKA_TYPE_FILL_OPTIONS))
#define PIKA_IS_FILL_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PIKA_TYPE_FILL_OPTIONS))
#define PIKA_FILL_OPTIONS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PIKA_TYPE_FILL_OPTIONS, PikaFillOptionsClass))
typedef struct _PikaFillOptionsClass PikaFillOptionsClass;
struct _PikaFillOptions
{
PikaContext parent_instance;
};
struct _PikaFillOptionsClass
{
PikaContextClass parent_class;
};
GType pika_fill_options_get_type (void) G_GNUC_CONST;
PikaFillOptions * pika_fill_options_new (Pika *pika,
PikaContext *context,
gboolean use_context_color);
PikaFillStyle pika_fill_options_get_style (PikaFillOptions *options);
void pika_fill_options_set_style (PikaFillOptions *options,
PikaFillStyle style);
PikaCustomStyle pika_fill_options_get_custom_style
(PikaFillOptions *options);
void pika_fill_options_set_custom_style (PikaFillOptions *options,
PikaCustomStyle custom_style);
gboolean pika_fill_options_get_antialias (PikaFillOptions *options);
void pika_fill_options_set_antialias (PikaFillOptions *options,
gboolean antialias);
gboolean pika_fill_options_get_feather (PikaFillOptions *options,
gdouble *radius);
void pika_fill_options_set_feather (PikaFillOptions *options,
gboolean feather,
gdouble radius);
gboolean pika_fill_options_set_by_fill_type (PikaFillOptions *options,
PikaContext *context,
PikaFillType fill_type,
GError **error);
gboolean pika_fill_options_set_by_fill_mode (PikaFillOptions *options,
PikaContext *context,
PikaBucketFillMode fill_mode,
GError **error);
const gchar * pika_fill_options_get_undo_desc (PikaFillOptions *options);
const Babl * pika_fill_options_get_format (PikaFillOptions *options,
PikaDrawable *drawable);
GeglBuffer * pika_fill_options_create_buffer (PikaFillOptions *options,
PikaDrawable *drawable,
const GeglRectangle *rect,
gint pattern_offset_x,
gint pattern_offset_y);
void pika_fill_options_fill_buffer (PikaFillOptions *options,
PikaDrawable *drawable,
GeglBuffer *buffer,
gint pattern_offset_x,
gint pattern_offset_y);
#endif /* __PIKA_FILL_OPTIONS_H__ */