17#ifndef INK_COLORWHEEL_H
18#define INK_COLORWHEEL_H
26#include <sigc++/signal.h>
28#include <gtkmm/aspectframe.h>
29#include <gtkmm/gesture.h>
38class EventControllerMotion;
56 std::pair<double const &, double const &>
get_xy()
const {
return {
x,
y}; }
79 bool overrideHue =
true,
bool emit =
true) = 0;
119 int n_press,
double x,
double y) = 0;
122 virtual void on_motion(Gtk::EventControllerMotion
const &motion,
double x,
double y) = 0;
123 void _on_motion(Gtk::EventControllerMotion
const &motion,
double x,
double y);
125 virtual bool on_key_pressed(
unsigned keyval,
unsigned keycode, Gdk::ModifierType state)
130 void on_key_released(
unsigned keyval,
unsigned keycode, Gdk::ModifierType state);
144 bool overrideHue =
true,
bool emit =
true)
override;
167 Gtk::EventSequenceState
on_click_pressed (Gtk::GestureClick
const& controller,
168 int n_press,
double x,
double y)
final;
169 Gtk::EventSequenceState
on_click_released(
int n_press,
double x,
double y)
final;
170 void on_motion(Gtk::EventControllerMotion
const &motion,
double x,
double y)
final;
171 bool on_key_pressed(
unsigned keyval,
unsigned keycode, Gdk::ModifierType state)
final;
210 bool overrideHue =
true,
bool emit =
true)
override;
222 Gtk::EventSequenceState
on_click_pressed (Gtk::GestureClick
const& controller,
223 int n_press,
double x,
double y)
final;
224 Gtk::EventSequenceState
on_click_released(
int n_press,
double x,
double y)
final;
225 void on_motion(Gtk::EventControllerMotion
const &motion,
double x,
double y)
final;
226 bool on_key_pressed(
unsigned keyval,
unsigned keycode, Gdk::ModifierType state)
final;
Cartesian point / 2D vector and related operations.
Two-dimensional point with integer coordinates.
Two-dimensional point that doubles as a vector.
A set of useful color modifying functions which do not fit as generic methods on the color class itse...
static Geom::Point direction(Geom::Point const &first, Geom::Point const &second)
Computes an unit vector of the direction from first to second control point.
Glib::RefPtr< Gtk::Builder > builder