Code

Make click-select work in geometry tool
[inkscape.git] / src / gradient-chemistry.h
index b949c68d1990c9a21fa522475ea902d24bdde58c..13e15e5b8c2a6a971aef29fb124d04a1bdb75a7d 100644 (file)
@@ -7,7 +7,9 @@
  * Author:
  *   Lauris Kaplinski <lauris@kaplinski.com>
  *   bulia byak <buliabyak@users.sf.net>
+ *   Johan Engelen <j.b.c.engelen@ewi.utwente.nl>
  *
+ * Copyright (C) 2007 Johan Engelen
  * Copyright (C) 2001-2002 Lauris Kaplinski
  * Copyright (C) 2001 Ximian, Inc.
  *
@@ -49,12 +51,20 @@ SPGradient *sp_gradient_convert_to_userspace (SPGradient *gr, SPItem *item, cons
 SPGradient *sp_gradient_reset_to_userspace (SPGradient *gr, SPItem *item);
 
 SPGradient *sp_gradient_fork_vector_if_necessary (SPGradient *gr);
+SPGradient *sp_gradient_get_forked_vector_if_necessary(SPGradient *gradient, bool force_vector);
+
 
 SPStop* sp_first_stop(SPGradient *gradient);
 SPStop* sp_last_stop(SPGradient *gradient);
 SPStop* sp_prev_stop(SPStop *stop, SPGradient *gradient);
 SPStop* sp_next_stop(SPStop *stop);
 SPStop* sp_get_stop_i(SPGradient *gradient, guint i);
+guint sp_number_of_stops(SPGradient *gradient);
+guint sp_number_of_stops_before_stop(SPGradient *gradient, SPStop *target);
+
+guint32 average_color (guint32 c1, guint32 c2, gdouble p = 0.5);
+
+SPStop *sp_vector_add_stop (SPGradient *vector, SPStop* prev_stop, SPStop* next_stop, gfloat offset);
 
 void sp_gradient_transform_multiply (SPGradient *gradient, NR::Matrix postmul, bool set);