index de8bbf46a950bf38bdc38a851ce73a817c8b1fab..82dee4d16ff45b07e7b4df6a3fb2fac5fdd23262 100644 (file)
-#ifndef __SP_PAINT_SELECTOR_H__
-#define __SP_PAINT_SELECTOR_H__
+#ifndef SEEN_SP_PAINT_SELECTOR_H
+#define SEEN_SP_PAINT_SELECTOR_H
/** \file
* Generic paint selector widget
*
+ * Authors:
+ * Lauris
+ * Jon A. Cruz <jon@joncruz.org>
+ *
* Copyright (C) Lauris 2002
+ * Copyright (C) 2010 Authors
*
*/
#include <glib.h>
#include "sp-gradient-spread.h"
#include "sp-gradient-units.h"
+
class SPGradient;
#define SP_TYPE_PAINT_SELECTOR (sp_paint_selector_get_type ())
#include <libnr/nr-forward.h>
typedef enum {
- SP_PAINT_SELECTOR_MODE_EMPTY,
- SP_PAINT_SELECTOR_MODE_MULTIPLE,
- SP_PAINT_SELECTOR_MODE_NONE,
- SP_PAINT_SELECTOR_MODE_COLOR_RGB,
- SP_PAINT_SELECTOR_MODE_COLOR_CMYK,
- SP_PAINT_SELECTOR_MODE_GRADIENT_LINEAR,
+ SP_PAINT_SELECTOR_MODE_EMPTY,
+ SP_PAINT_SELECTOR_MODE_MULTIPLE,
+ SP_PAINT_SELECTOR_MODE_NONE,
+ SP_PAINT_SELECTOR_MODE_COLOR_RGB,
+ SP_PAINT_SELECTOR_MODE_COLOR_CMYK,
+ SP_PAINT_SELECTOR_MODE_GRADIENT_LINEAR,
SP_PAINT_SELECTOR_MODE_GRADIENT_RADIAL,
SP_PAINT_SELECTOR_MODE_PATTERN,
+ SP_PAINT_SELECTOR_MODE_SWATCH,
SP_PAINT_SELECTOR_MODE_UNSET
} SPPaintSelectorMode;
typedef enum {
- SP_PAINT_SELECTOR_FILLRULE_NONZERO,
- SP_PAINT_SELECTOR_FILLRULE_EVENODD
+ SP_PAINT_SELECTOR_FILLRULE_NONZERO,
+ SP_PAINT_SELECTOR_FILLRULE_EVENODD
} SPPaintSelectorFillRule;
/// Generic paint selector widget
struct SPPaintSelector {
- GtkVBox vbox;
+ GtkVBox vbox;
- guint update : 1;
+ guint update : 1;
- SPPaintSelectorMode mode;
+ SPPaintSelectorMode mode;
- GtkWidget *style;
- GtkWidget *none, *solid, *gradient, *radial, *pattern, *unset;
+ GtkWidget *style;
+ GtkWidget *none;
+ GtkWidget *solid;
+ GtkWidget *gradient;
+ GtkWidget *radial;
+ GtkWidget *pattern;
+ GtkWidget *swatch;
+ GtkWidget *unset;
- GtkWidget *fillrulebox;
- GtkWidget *evenodd, *nonzero;
+ GtkWidget *fillrulebox;
+ GtkWidget *evenodd, *nonzero;
- GtkWidget *frame, *selector;
+ GtkWidget *frame, *selector;
- SPColor color;
- float alpha;
+ SPColor color;
+ float alpha;
};
/// The SPPaintSelector vtable
struct SPPaintSelectorClass {
- GtkVBoxClass parent_class;
+ GtkVBoxClass parent_class;
- void (* mode_changed) (SPPaintSelector *psel, SPPaintSelectorMode mode);
+ void (* mode_changed) (SPPaintSelector *psel, SPPaintSelectorMode mode);
- void (* grabbed) (SPPaintSelector *psel);
- void (* dragged) (SPPaintSelector *psel);
- void (* released) (SPPaintSelector *psel);
- void (* changed) (SPPaintSelector *psel);
- void (* fillrule_changed) (SPPaintSelector *psel, SPPaintSelectorFillRule fillrule);
+ void (* grabbed) (SPPaintSelector *psel);
+ void (* dragged) (SPPaintSelector *psel);
+ void (* released) (SPPaintSelector *psel);
+ void (* changed) (SPPaintSelector *psel);
+ void (* fillrule_changed) (SPPaintSelector *psel, SPPaintSelectorFillRule fillrule);
};
GtkType sp_paint_selector_get_type (void);
void sp_paint_selector_set_gradient_radial (SPPaintSelector *psel, SPGradient *vector);
+void sp_paint_selector_set_swatch(SPPaintSelector *psel, SPPaintServer *server );
+
void sp_paint_selector_set_gradient_properties (SPPaintSelector *psel, SPGradientUnits units, SPGradientSpread spread);
void sp_paint_selector_get_gradient_properties (SPPaintSelector *psel, SPGradientUnits *units, SPGradientSpread *spread);
@@ -107,4 +122,15 @@ void sp_paint_selector_set_flat_color (SPPaintSelector *psel, SPDesktop *desktop
SPPaintSelectorMode sp_style_determine_paint_selector_mode (SPStyle *style, bool isfill);
-#endif
+#endif // SEEN_SP_PAINT_SELECTOR_H
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :