Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
gradientslider.h File Reference
#include "paint.h"
#include <gtk/gtk.h>
+ Include dependency graph for gradientslider.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _GtkDarktableGradientSlider
 
struct  _GtkDarktableGradientSliderClass
 
struct  _gradient_slider_stop_t
 

Macros

#define GRADIENT_SLIDER_MAX_POSITIONS   10
 
#define DTGTK_GRADIENT_SLIDER(obj)    G_TYPE_CHECK_INSTANCE_CAST(obj, dtgtk_gradient_slider_get_type(), GtkDarktableGradientSlider)
 
#define DTGTK_GRADIENT_SLIDER_CLASS(klass)    G_TYPE_CHECK_CLASS_CAST(klass, dtgtk_gradient_slider_get_type(), GtkDarktableGradientSliderClass)
 
#define DTGTK_IS_GRADIENT_SLIDER(obj)    G_TYPE_CHECK_INSTANCE_TYPE(obj, dtgtk_gradient_slider_get_type())
 
#define DTGTK_IS_GRADIENT_SLIDER_CLASS(klass)    G_TYPE_CHECK_CLASS_TYPE(obj, dtgtk_gradient_slider_get_type())
 
#define DTGTK_GRADIENT_SLIDER_MULTIVALUE(obj)    G_TYPE_CHECK_INSTANCE_CAST(obj, dtgtk_gradient_slider_multivalue_get_type(), GtkDarktableGradientSlider)
 
#define DTGTK_GRADIENT_SLIDER_MULTIVALUE_CLASS(klass)    G_TYPE_CHECK_CLASS_CAST(klass, dtgtk_gradient_slider_multivalue_get_type(), GtkDarktableGradientSliderClass)
 
#define DTGTK_IS_GRADIENT_SLIDER_MULTIVALUE(obj)    G_TYPE_CHECK_INSTANCE_TYPE(obj, dtgtk_gradient_slider_multivalue_get_type())
 
#define DTGTK_IS_GRADIENT_SLIDER_MULTIVALUE_CLASS(klass)    G_TYPE_CHECK_CLASS_TYPE(obj, dtgtk_gradient_slider_multivalue_get_type())
 

Typedefs

typedef struct _GtkDarktableGradientSlider GtkDarktableGradientSlider
 
typedef struct _GtkDarktableGradientSliderClass GtkDarktableGradientSliderClass
 
typedef struct _gradient_slider_stop_t _gradient_slider_stop_t
 

Enumerations

enum  {
  GRADIENT_SLIDER_VALUE_CHANGED ,
  GRADIENT_SLIDER_LAST_SIGNAL
}
 
enum  _gradient_slider_direction {
  MOVE_LEFT = 0 ,
  MOVE_RIGHT = 1
}
 
enum  {
  GRADIENT_SLIDER_MARKER_DOUBLE_OPEN = 0x06 ,
  GRADIENT_SLIDER_MARKER_DOUBLE_FILLED = 0x07 ,
  GRADIENT_SLIDER_MARKER_UPPER_OPEN = 0x04 ,
  GRADIENT_SLIDER_MARKER_UPPER_FILLED = 0x05 ,
  GRADIENT_SLIDER_MARKER_LOWER_OPEN = 0x02 ,
  GRADIENT_SLIDER_MARKER_LOWER_FILLED = 0x03 ,
  GRADIENT_SLIDER_MARKER_DOUBLE_OPEN_BIG = 0x0e ,
  GRADIENT_SLIDER_MARKER_DOUBLE_FILLED_BIG = 0x0f ,
  GRADIENT_SLIDER_MARKER_UPPER_OPEN_BIG = 0x0c ,
  GRADIENT_SLIDER_MARKER_UPPER_FILLED_BIG = 0x0d ,
  GRADIENT_SLIDER_MARKER_LOWER_OPEN_BIG = 0x0a ,
  GRADIENT_SLIDER_MARKER_LOWER_FILLED_BIG = 0x0b
}
 
enum  {
  GRADIENT_SLIDER_MARGINS_DEFAULT = 6 ,
  GRADIENT_SLIDER_MARGINS_ZERO = 0 ,
  GRADIENT_SLIDER_MARGINS_SMALL = 2 ,
  GRADIENT_SLIDER_MARGINS_BIG = 6
}
 
enum  {
  GRADIENT_SLIDER_SET = 1 ,
  GRADIENT_SLIDER_GET = 2
}
 
enum  {
  FREE_MARKERS = 1 ,
  PROPORTIONAL_MARKERS = 2
}
 

Functions

GType dtgtk_gradient_slider_get_type (void)
 
GType dtgtk_gradient_slider_multivalue_get_type (void)
 
GtkWidget * dtgtk_gradient_slider_new ()
 
GtkWidget * dtgtk_gradient_slider_new_with_name (gchar *name)
 
GtkWidget * dtgtk_gradient_slider_new_with_color (GdkRGBA start, GdkRGBA end)
 
GtkWidget * dtgtk_gradient_slider_new_with_color_and_name (GdkRGBA start, GdkRGBA end, gchar *name)
 
void dtgtk_gradient_slider_set_stop (GtkDarktableGradientSlider *gslider, gfloat position, GdkRGBA color)
 
void dtgtk_gradient_slider_multivalue_clear_stops (GtkDarktableGradientSlider *gslider)
 
gdouble dtgtk_gradient_slider_get_value (GtkDarktableGradientSlider *gslider)
 
void dtgtk_gradient_slider_set_value (GtkDarktableGradientSlider *gslider, gdouble value)
 
gboolean dtgtk_gradient_slider_is_dragging (GtkDarktableGradientSlider *gslider)
 
void dtgtk_gradient_slider_set_marker (GtkDarktableGradientSlider *gslider, gint mark)
 
void dtgtk_gradient_slider_set_resetvalue (GtkDarktableGradientSlider *gslider, gdouble value)
 
void dtgtk_gradient_slider_set_picker (GtkDarktableGradientSlider *gslider, gdouble value)
 
void dtgtk_gradient_slider_set_picker_meanminmax (GtkDarktableGradientSlider *gslider, gdouble mean, gdouble min, gdouble max)
 
void dtgtk_gradient_slider_set_increment (GtkDarktableGradientSlider *gslider, gdouble value)
 
GtkWidget * dtgtk_gradient_slider_multivalue_new (gint positions)
 
GtkWidget * dtgtk_gradient_slider_multivalue_new_with_name (gint positions, gchar *name)
 
GtkWidget * dtgtk_gradient_slider_multivalue_new_with_color (GdkRGBA start, GdkRGBA end, gint positions)
 
GtkWidget * dtgtk_gradient_slider_multivalue_new_with_color_and_name (GdkRGBA start, GdkRGBA end, gint positions, gchar *name)
 
void dtgtk_gradient_slider_multivalue_set_stop (GtkDarktableGradientSlider *gslider, gfloat position, GdkRGBA color)
 
gdouble dtgtk_gradient_slider_multivalue_get_value (GtkDarktableGradientSlider *gslider, gint position)
 
void dtgtk_gradient_slider_multivalue_get_values (GtkDarktableGradientSlider *gslider, gdouble *values)
 
void dtgtk_gradient_slider_multivalue_set_value (GtkDarktableGradientSlider *gslider, gdouble value, gint position)
 
void dtgtk_gradient_slider_multivalue_set_values (GtkDarktableGradientSlider *gslider, gdouble *values)
 
gboolean dtgtk_gradient_slider_multivalue_is_dragging (GtkDarktableGradientSlider *gslider)
 
void dtgtk_gradient_slider_multivalue_set_marker (GtkDarktableGradientSlider *gslider, gint mark, gint pos)
 
void dtgtk_gradient_slider_multivalue_set_markers (GtkDarktableGradientSlider *gslider, gint *markers)
 
void dtgtk_gradient_slider_multivalue_set_resetvalue (GtkDarktableGradientSlider *gslider, gdouble value, gint pos)
 
void dtgtk_gradient_slider_multivalue_set_resetvalues (GtkDarktableGradientSlider *gslider, gdouble *values)
 
gdouble dtgtk_gradient_slider_multivalue_get_resetvalue (GtkDarktableGradientSlider *gslider, gint pos)
 
gdouble dtgtk_gradient_slider_multivalue_get_resetvalues (GtkDarktableGradientSlider *gslider)
 
void dtgtk_gradient_slider_multivalue_set_picker (GtkDarktableGradientSlider *gslider, gdouble value)
 
void dtgtk_gradient_slider_multivalue_set_picker_meanminmax (GtkDarktableGradientSlider *gslider, gdouble mean, gdouble min, gdouble max)
 
void dtgtk_gradient_slider_multivalue_set_increment (GtkDarktableGradientSlider *gslider, gdouble value)
 
void dtgtk_gradient_slider_multivalue_set_scale_callback (GtkDarktableGradientSlider *gslider, float(*callback)(GtkWidget *self, float value, int dir))
 

Macro Definition Documentation

◆ DTGTK_GRADIENT_SLIDER

#define DTGTK_GRADIENT_SLIDER (   obj)     G_TYPE_CHECK_INSTANCE_CAST(obj, dtgtk_gradient_slider_get_type(), GtkDarktableGradientSlider)

◆ DTGTK_GRADIENT_SLIDER_CLASS

#define DTGTK_GRADIENT_SLIDER_CLASS (   klass)     G_TYPE_CHECK_CLASS_CAST(klass, dtgtk_gradient_slider_get_type(), GtkDarktableGradientSliderClass)

◆ DTGTK_GRADIENT_SLIDER_MULTIVALUE

#define DTGTK_GRADIENT_SLIDER_MULTIVALUE (   obj)     G_TYPE_CHECK_INSTANCE_CAST(obj, dtgtk_gradient_slider_multivalue_get_type(), GtkDarktableGradientSlider)

◆ DTGTK_GRADIENT_SLIDER_MULTIVALUE_CLASS

#define DTGTK_GRADIENT_SLIDER_MULTIVALUE_CLASS (   klass)     G_TYPE_CHECK_CLASS_CAST(klass, dtgtk_gradient_slider_multivalue_get_type(), GtkDarktableGradientSliderClass)

◆ DTGTK_IS_GRADIENT_SLIDER

#define DTGTK_IS_GRADIENT_SLIDER (   obj)     G_TYPE_CHECK_INSTANCE_TYPE(obj, dtgtk_gradient_slider_get_type())

◆ DTGTK_IS_GRADIENT_SLIDER_CLASS

#define DTGTK_IS_GRADIENT_SLIDER_CLASS (   klass)     G_TYPE_CHECK_CLASS_TYPE(obj, dtgtk_gradient_slider_get_type())

◆ DTGTK_IS_GRADIENT_SLIDER_MULTIVALUE

#define DTGTK_IS_GRADIENT_SLIDER_MULTIVALUE (   obj)     G_TYPE_CHECK_INSTANCE_TYPE(obj, dtgtk_gradient_slider_multivalue_get_type())

◆ DTGTK_IS_GRADIENT_SLIDER_MULTIVALUE_CLASS

#define DTGTK_IS_GRADIENT_SLIDER_MULTIVALUE_CLASS (   klass)     G_TYPE_CHECK_CLASS_TYPE(obj, dtgtk_gradient_slider_multivalue_get_type())

◆ GRADIENT_SLIDER_MAX_POSITIONS

#define GRADIENT_SLIDER_MAX_POSITIONS   10

Typedef Documentation

◆ _gradient_slider_stop_t

◆ GtkDarktableGradientSlider

◆ GtkDarktableGradientSliderClass

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
GRADIENT_SLIDER_VALUE_CHANGED 
GRADIENT_SLIDER_LAST_SIGNAL 

◆ anonymous enum

anonymous enum

bitfields for marker: bit-0 open/filled, bit-1 lower off/on, bit-2 upper off/on, bit-3 size small/big

Enumerator
GRADIENT_SLIDER_MARKER_DOUBLE_OPEN 
GRADIENT_SLIDER_MARKER_DOUBLE_FILLED 
GRADIENT_SLIDER_MARKER_UPPER_OPEN 
GRADIENT_SLIDER_MARKER_UPPER_FILLED 
GRADIENT_SLIDER_MARKER_LOWER_OPEN 
GRADIENT_SLIDER_MARKER_LOWER_FILLED 
GRADIENT_SLIDER_MARKER_DOUBLE_OPEN_BIG 
GRADIENT_SLIDER_MARKER_DOUBLE_FILLED_BIG 
GRADIENT_SLIDER_MARKER_UPPER_OPEN_BIG 
GRADIENT_SLIDER_MARKER_UPPER_FILLED_BIG 
GRADIENT_SLIDER_MARKER_LOWER_OPEN_BIG 
GRADIENT_SLIDER_MARKER_LOWER_FILLED_BIG 

◆ anonymous enum

anonymous enum
Enumerator
GRADIENT_SLIDER_MARGINS_DEFAULT 
GRADIENT_SLIDER_MARGINS_ZERO 
GRADIENT_SLIDER_MARGINS_SMALL 
GRADIENT_SLIDER_MARGINS_BIG 

◆ anonymous enum

anonymous enum
Enumerator
GRADIENT_SLIDER_SET 
GRADIENT_SLIDER_GET 

◆ anonymous enum

anonymous enum
Enumerator
FREE_MARKERS 
PROPORTIONAL_MARKERS 

◆ _gradient_slider_direction

Enumerator
MOVE_LEFT 
MOVE_RIGHT 

Function Documentation

◆ dtgtk_gradient_slider_get_type()

GType dtgtk_gradient_slider_get_type ( void  )

◆ dtgtk_gradient_slider_get_value()

gdouble dtgtk_gradient_slider_get_value ( GtkDarktableGradientSlider gslider)

Get the slider value 0 - 1.0

References dtgtk_gradient_slider_multivalue_get_value().

Referenced by center_callback().

◆ dtgtk_gradient_slider_is_dragging()

gboolean dtgtk_gradient_slider_is_dragging ( GtkDarktableGradientSlider gslider)

◆ dtgtk_gradient_slider_multivalue_clear_stops()

void dtgtk_gradient_slider_multivalue_clear_stops ( GtkDarktableGradientSlider gslider)

Clear all stops

References _GtkDarktableGradientSlider::colors.

Referenced by _blendop_blendif_update_tab().

◆ dtgtk_gradient_slider_multivalue_get_resetvalue()

gdouble dtgtk_gradient_slider_multivalue_get_resetvalue ( GtkDarktableGradientSlider gslider,
gint  pos 
)

◆ dtgtk_gradient_slider_multivalue_get_resetvalues()

gdouble dtgtk_gradient_slider_multivalue_get_resetvalues ( GtkDarktableGradientSlider gslider)

◆ dtgtk_gradient_slider_multivalue_get_type()

GType dtgtk_gradient_slider_multivalue_get_type ( void  )

◆ dtgtk_gradient_slider_multivalue_get_value()

gdouble dtgtk_gradient_slider_multivalue_get_value ( GtkDarktableGradientSlider gslider,
gint  position 
)

◆ dtgtk_gradient_slider_multivalue_get_values()

◆ dtgtk_gradient_slider_multivalue_is_dragging()

gboolean dtgtk_gradient_slider_multivalue_is_dragging ( GtkDarktableGradientSlider gslider)

◆ dtgtk_gradient_slider_multivalue_new()

GtkWidget * dtgtk_gradient_slider_multivalue_new ( gint  positions)

◆ dtgtk_gradient_slider_multivalue_new_with_color()

◆ dtgtk_gradient_slider_multivalue_new_with_color_and_name()

GtkWidget * dtgtk_gradient_slider_multivalue_new_with_color_and_name ( GdkRGBA  start,
GdkRGBA  end,
gint  positions,
gchar *  name 
)

◆ dtgtk_gradient_slider_multivalue_new_with_name()

GtkWidget * dtgtk_gradient_slider_multivalue_new_with_name ( gint  positions,
gchar *  name 
)

◆ dtgtk_gradient_slider_multivalue_set_increment()

void dtgtk_gradient_slider_multivalue_set_increment ( GtkDarktableGradientSlider gslider,
gdouble  value 
)

set increment for scroll action

References _GtkDarktableGradientSlider::increment.

Referenced by _blendop_blendif_update_tab().

◆ dtgtk_gradient_slider_multivalue_set_marker()

void dtgtk_gradient_slider_multivalue_set_marker ( GtkDarktableGradientSlider gslider,
gint  mark,
gint  pos 
)

◆ dtgtk_gradient_slider_multivalue_set_markers()

void dtgtk_gradient_slider_multivalue_set_markers ( GtkDarktableGradientSlider gslider,
gint *  markers 
)

◆ dtgtk_gradient_slider_multivalue_set_picker()

void dtgtk_gradient_slider_multivalue_set_picker ( GtkDarktableGradientSlider gslider,
gdouble  value 
)

◆ dtgtk_gradient_slider_multivalue_set_picker_meanminmax()

void dtgtk_gradient_slider_multivalue_set_picker_meanminmax ( GtkDarktableGradientSlider gslider,
gdouble  mean,
gdouble  min,
gdouble  max 
)

◆ dtgtk_gradient_slider_multivalue_set_resetvalue()

void dtgtk_gradient_slider_multivalue_set_resetvalue ( GtkDarktableGradientSlider gslider,
gdouble  value,
gint  pos 
)

◆ dtgtk_gradient_slider_multivalue_set_resetvalues()

◆ dtgtk_gradient_slider_multivalue_set_scale_callback()

◆ dtgtk_gradient_slider_multivalue_set_stop()

void dtgtk_gradient_slider_multivalue_set_stop ( GtkDarktableGradientSlider gslider,
gfloat  position,
GdkRGBA  color 
)

◆ dtgtk_gradient_slider_multivalue_set_value()

◆ dtgtk_gradient_slider_multivalue_set_values()

◆ dtgtk_gradient_slider_new()

GtkWidget * dtgtk_gradient_slider_new ( )

instantiate a new darktable gradient slider control

References dt_gui_add_class(), and dtgtk_gradient_slider_multivalue_new().

Referenced by dtgtk_gradient_slider_new_with_name().

◆ dtgtk_gradient_slider_new_with_color()

GtkWidget * dtgtk_gradient_slider_new_with_color ( GdkRGBA  start,
GdkRGBA  end 
)

◆ dtgtk_gradient_slider_new_with_color_and_name()

GtkWidget * dtgtk_gradient_slider_new_with_color_and_name ( GdkRGBA  start,
GdkRGBA  end,
gchar *  name 
)

References dtgtk_gradient_slider_new_with_color(), and name.

Referenced by gui_init().

◆ dtgtk_gradient_slider_new_with_name()

GtkWidget * dtgtk_gradient_slider_new_with_name ( gchar *  name)

◆ dtgtk_gradient_slider_set_increment()

void dtgtk_gradient_slider_set_increment ( GtkDarktableGradientSlider gslider,
gdouble  value 
)

set increment for scroll action

References _GtkDarktableGradientSlider::increment.

◆ dtgtk_gradient_slider_set_marker()

void dtgtk_gradient_slider_set_marker ( GtkDarktableGradientSlider gslider,
gint  mark 
)

Set the slider marker

References dtgtk_gradient_slider_multivalue_set_marker().

◆ dtgtk_gradient_slider_set_picker()

void dtgtk_gradient_slider_set_picker ( GtkDarktableGradientSlider gslider,
gdouble  value 
)

◆ dtgtk_gradient_slider_set_picker_meanminmax()

void dtgtk_gradient_slider_set_picker_meanminmax ( GtkDarktableGradientSlider gslider,
gdouble  mean,
gdouble  min,
gdouble  max 
)

◆ dtgtk_gradient_slider_set_resetvalue()

void dtgtk_gradient_slider_set_resetvalue ( GtkDarktableGradientSlider gslider,
gdouble  value 
)

Set the slider reset value

References dtgtk_gradient_slider_multivalue_set_resetvalue().

◆ dtgtk_gradient_slider_set_stop()

void dtgtk_gradient_slider_set_stop ( GtkDarktableGradientSlider gslider,
gfloat  position,
GdkRGBA  color 
)

Set a color at specified stop

References dtgtk_gradient_slider_multivalue_set_stop(), and position().

◆ dtgtk_gradient_slider_set_value()

void dtgtk_gradient_slider_set_value ( GtkDarktableGradientSlider gslider,
gdouble  value 
)