Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
masks_gui.c File Reference
#include "common/darktable.h"
#include "develop/masks.h"
#include "bauhaus/bauhaus.h"
#include "common/debug.h"
#include "gui/actions/menu.h"
#include "gui/draw.h"
#include "gui/gtk.h"
#include "dtgtk/paint.h"
#include <math.h>
+ Include dependency graph for masks_gui.c:

Data Structures

struct  dt_masks_gui_interaction_slider_t
 

Macros

#define masks_gtk_menu_item_new_bold(label, selected, state, icon)
 

Typedefs

typedef struct dt_masks_gui_interaction_slider_t dt_masks_gui_interaction_slider_t
 

Functions

static void _masks_gui_interaction_apply_value (dt_masks_gui_interaction_slider_t *data, float value)
 
static void _masks_gui_menu_item_block_activate (GtkWidget *widget, gpointer user_data)
 
static gboolean _masks_gui_menu_item_forward_event (GtkWidget *widget, GdkEvent *event, gpointer user_data)
 
static void _masks_gui_interaction_slider_changed (GtkWidget *widget, gpointer user_data)
 
static GtkWidget_masks_gui_add_interaction_slider (GtkWidget *menu, const char *label, dt_masks_form_group_t *form_group, dt_masks_interaction_t interaction, dt_masks_increment_t increment, float min, float max, float step, float value, int digits, const char *format, float factor, dt_masks_form_gui_t *gui, dt_iop_module_t *module)
 
static int _masks_gui_confirm_remove_form_dialog (const char *form_name)
 
static int _masks_gui_form_group_use_count (const dt_develop_t *dev, const int formid)
 
static void _masks_gui_remove_form_callback (GtkWidget *menu, gpointer user_data)
 
void _masks_gui_delete_node_callback (GtkWidget *menu, gpointer user_data)
 
static void _masks_gui_cancel_creation_callback (GtkWidget *menu, gpointer user_data)
 
static void _masks_move_up_down_callback (gpointer user_data, const int up)
 
static void _masks_moveup_callback (GtkWidget *menu, gpointer user_data)
 
static void _masks_movedown_callback (GtkWidget *menu, gpointer user_data)
 
static void _masks_operation_callback (GtkWidget *menu, gpointer user_data)
 
GtkWidgetdt_masks_create_menu (dt_masks_form_gui_t *gui, dt_masks_form_t *form, const dt_masks_form_group_t *formgroup, const float pzx, const float pzy)
 

Macro Definition Documentation

◆ masks_gtk_menu_item_new_bold

#define masks_gtk_menu_item_new_bold (   label,
  selected,
  state,
  icon 
)
Value:
{ \
gchar *op_label = g_strdup(label); \
sub_menu, \
(selected != 0), \
((state) == DT_MASKS_STATE_INVERSE)); \
dt_free(op_label); \
op_label = NULL; \
g_object_set_data(G_OBJECT(menu_item), "state_op", GINT_TO_POINTER(state)); \
g_object_set_data(G_OBJECT(menu_item), "op_form", op_form); \
g_object_set_data(G_OBJECT(menu_item), "form_pos", GINT_TO_POINTER(form_pos)); \
}
@ DT_MASKS_STATE_INVERSE
Definition masks.h:170
static void _masks_operation_callback(GtkWidget *menu, gpointer user_data)
Definition masks_gui.c:377
GtkWidget * ctx_gtk_check_menu_item_new_with_markup_and_pixbuf(const char *label, GdkPixbuf *icon, GtkWidget *menu, void(*activate_callback)(GtkWidget *widget, gpointer user_data), gpointer user_data, const gboolean checked, const gboolean show_checkbox)
Definition menu.c:277

Typedef Documentation

◆ dt_masks_gui_interaction_slider_t

Function Documentation

◆ _masks_gui_add_interaction_slider()

◆ _masks_gui_cancel_creation_callback()

static void _masks_gui_cancel_creation_callback ( GtkWidget menu,
gpointer  user_data 
)
static

◆ _masks_gui_confirm_remove_form_dialog()

static int _masks_gui_confirm_remove_form_dialog ( const char *  form_name)
static

◆ _masks_gui_delete_node_callback()

◆ _masks_gui_form_group_use_count()

static int _masks_gui_form_group_use_count ( const dt_develop_t dev,
const int  formid 
)
static

◆ _masks_gui_interaction_apply_value()

◆ _masks_gui_interaction_slider_changed()

static void _masks_gui_interaction_slider_changed ( GtkWidget widget,
gpointer  user_data 
)
static

◆ _masks_gui_menu_item_block_activate()

static void _masks_gui_menu_item_block_activate ( GtkWidget widget,
gpointer  user_data 
)
static

◆ _masks_gui_menu_item_forward_event()

static gboolean _masks_gui_menu_item_forward_event ( GtkWidget widget,
GdkEvent *  event,
gpointer  user_data 
)
static

◆ _masks_gui_remove_form_callback()

◆ _masks_move_up_down_callback()

◆ _masks_movedown_callback()

static void _masks_movedown_callback ( GtkWidget menu,
gpointer  user_data 
)
static

◆ _masks_moveup_callback()

static void _masks_moveup_callback ( GtkWidget menu,
gpointer  user_data 
)
static

◆ _masks_operation_callback()

◆ dt_masks_create_menu()

GtkWidget * dt_masks_create_menu ( dt_masks_form_gui_t gui,
dt_masks_form_t form,
const dt_masks_form_group_t formgroup,
const float  pzx,
const float  pzy 
)

References _masks_gui_add_interaction_slider(), _masks_gui_cancel_creation_callback(), _masks_gui_delete_node_callback(), _masks_gui_remove_form_callback(), _masks_movedown_callback(), _masks_moveup_callback(), dt_masks_form_gui_t::creation, ctx_gtk_menu_item_new_with_markup(), ctx_gtk_menu_item_new_with_markup_and_pixbuf(), darktable, darktable_t::develop, dt_draw_get_pixbuf_from_cairo(), dt_free, DT_MASKS_BRUSH, DT_MASKS_CIRCLE, DT_MASKS_ELLIPSE, dt_masks_form_get_interaction_value(), dt_masks_form_group_from_parentid(), dt_masks_get_from_id(), DT_MASKS_GRADIENT, DT_MASKS_GROUP, DT_MASKS_INCREMENT_ABSOLUTE, DT_MASKS_INCREMENT_SCALE, DT_MASKS_INTERACTION_HARDNESS, DT_MASKS_INTERACTION_OPACITY, DT_MASKS_INTERACTION_SIZE, DT_MASKS_IS_RETOUCHE, DT_MASKS_POLYGON, DT_MASKS_STATE_DIFFERENCE, DT_MASKS_STATE_EXCLUSION, DT_MASKS_STATE_INTERSECTION, DT_MASKS_STATE_INVERSE, DT_MASKS_STATE_IS_COMBINE_OP, DT_MASKS_STATE_UNION, DT_PIXEL_APPLY_DPI, dtgtk_cairo_paint_masks_difference(), dtgtk_cairo_paint_masks_exclusion(), dtgtk_cairo_paint_masks_intersection(), dtgtk_cairo_paint_masks_inverse(), dtgtk_cairo_paint_masks_union(), FALSE, dt_masks_form_gui_t::form_selected, dt_masks_form_group_t::formid, dt_masks_form_t::formid, dt_masks_form_t::functions, dt_develop_t::gui_module, masks_gtk_menu_item_new_bold, MAX, menu_item_set_fake_accel, dt_masks_form_t::name, dt_masks_form_gui_t::node_hovered, dt_masks_form_gui_t::node_selected, dt_masks_form_group_t::parentid, dt_masks_form_t::points, dt_masks_functions_t::populate_context_menu, dt_masks_form_gui_t::seg_hovered, dt_masks_form_group_t::state, TRUE, dt_masks_form_t::type, and width.

Referenced by dt_masks_events_button_pressed().