![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "common/darktable.h"
#include "common/debug.h"
#include "common/styles.h"
#include "common/undo.h"
#include "control/conf.h"
#include "control/control.h"
#include "develop/develop.h"
#include "develop/masks.h"
#include "gui/gtk.h"
#include "gui/styles.h"
#include "libs/lib.h"
#include "libs/lib_api.h"
#include "common/history.h"
#include <complex.h>
Data Structures | |
struct | dt_undo_history_t |
struct | dt_lib_history_t |
struct | _cb_data |
Macros | |
#define | HIST_WIDGET_NUMBER 0 |
#define | HIST_WIDGET_MODULE 1 |
#define | HIST_WIDGET_STATUS 2 |
#define | add_blend_history_change(field, format, label) |
#define | add_blend_history_change_enum(field, label, list) |
#define | add_history_change(field, format, label) |
#define | add_history_change_string(field, label) |
#define | add_history_change_boolean(field, label) |
Typedefs | |
typedef struct dt_undo_history_t | dt_undo_history_t |
typedef struct dt_lib_history_t | dt_lib_history_t |
Functions | |
static void | _lib_history_compress_clicked_callback (GtkButton *widget, gpointer user_data) |
static gboolean | _lib_history_compress_pressed_callback (GtkWidget *widget, GdkEventButton *e, gpointer user_data) |
static gboolean | _lib_history_button_clicked_callback (GtkWidget *widget, GdkEventButton *e, gpointer user_data) |
static void | _lib_history_create_style_button_clicked_callback (GtkWidget *widget, gpointer user_data) |
static void | _lib_history_will_change_callback (gpointer instance, GList *history, int history_end, GList *iop_order_list, gpointer user_data) |
static void | _lib_history_change_callback (gpointer instance, gpointer user_data) |
static void | _lib_history_module_remove_callback (gpointer instance, dt_iop_module_t *module, gpointer user_data) |
const char * | name (struct dt_lib_module_t *self) |
const char ** | views (dt_lib_module_t *self) |
uint32_t | container (dt_lib_module_t *self) |
int | position () |
void | gui_init (dt_lib_module_t *self) |
void | gui_cleanup (dt_lib_module_t *self) |
static GtkWidget * | _lib_history_create_button (dt_lib_module_t *self, int num, const char *label, gboolean enabled, gboolean default_enabled, gboolean always_on, gboolean selected, gboolean deprecated) |
static void | _reset_module_instance (GList *hist, dt_iop_module_t *module, int multi_priority) |
static void | _undo_items_cb (gpointer user_data, dt_undo_type_t type, dt_undo_data_t data) |
static void | _history_invalidate_cb (gpointer user_data, dt_undo_type_t type, dt_undo_data_t item) |
static void | _add_module_expander (GList *iop_list, dt_iop_module_t *module) |
static dt_dev_history_item_t * | _search_history_by_module (GList *history_list, dt_iop_module_t *module) |
static int | _check_deleted_instances (dt_develop_t *dev, GList **_iop_list, GList *history_list) |
static void | _reorder_gui_module_list (dt_develop_t *dev) |
static int | _rebuild_multi_priority (GList *history_list) |
static int | _create_deleted_modules (GList **_iop_list, GList *history_list) |
static void | _pop_undo (gpointer user_data, dt_undo_type_t type, dt_undo_data_t data, dt_undo_action_t action, GList **imgs) |
static void | _history_undo_data_free (gpointer data) |
static gchar * | _lib_history_change_text (dt_introspection_field_t *field, const char *d, gpointer params, gpointer oldpar) |
static const dt_dev_history_item_t * | _find_previous_history_step (const dt_dev_history_item_t *hitem) |
static gchar * | _create_tooltip_text (const dt_dev_history_item_t *hitem) |
static gboolean | _changes_tooltip_callback (GtkWidget *widget, gint x, gint y, gboolean keyboard_mode, GtkTooltip *tooltip) |
static void | _lib_history_truncate (gboolean compress) |
void | gui_reset (dt_lib_module_t *self) |
#define add_blend_history_change | ( | field, | |
format, | |||
label | |||
) |
#define add_blend_history_change_enum | ( | field, | |
label, | |||
list | |||
) |
#define add_history_change | ( | field, | |
format, | |||
label | |||
) |
#define add_history_change_boolean | ( | field, | |
label | |||
) |
#define add_history_change_string | ( | field, | |
label | |||
) |
#define HIST_WIDGET_MODULE 1 |
#define HIST_WIDGET_NUMBER 0 |
#define HIST_WIDGET_STATUS 2 |
typedef struct dt_lib_history_t dt_lib_history_t |
typedef struct dt_undo_history_t dt_undo_history_t |
|
static |
References dt_iop_gui_set_expanded(), dt_iop_gui_set_expander(), dt_iop_gui_update_blending(), dt_iop_is_hidden(), dt_iop_module_t::expander, FALSE, and TRUE.
Referenced by _create_deleted_modules().
|
static |
References dt_gui_add_class(), FALSE, tooltip, TRUE, and view().
Referenced by _lib_history_change_callback().
|
static |
References _history_invalidate_cb(), _search_history_by_module(), dt_develop_t::alliop, darktable, darktable_t::develop, dt_iop_gui_cleanup_module(), dt_iop_is_hidden(), dt_iop_request_focus(), dt_sort_iop_by_order(), DT_UNDO_HISTORY, dt_undo_iterate_internal(), dt_iop_module_t::expander, darktable_t::gui, dt_develop_t::gui_module, dt_iop_module_t::multi_name, dt_iop_module_t::multi_priority, dt_iop_module_t::op, dt_gui_gtk_t::reset, darktable_t::undo, and dt_iop_module_t::widget.
Referenced by _pop_undo().
|
static |
References _add_module_expander(), _reset_module_instance(), _undo_items_cb(), darktable, dt_iop_module_t::dev, dt_iop_get_module_from_list(), dt_iop_is_hidden(), dt_iop_load_module(), dt_iop_update_multi_priority(), dt_sort_iop_by_order(), DT_UNDO_HISTORY, dt_undo_iterate_internal(), FALSE, darktable_t::gui, dt_dev_history_item_t::multi_name, dt_dev_history_item_t::multi_priority, dt_dev_history_item_t::op_name, dt_gui_gtk_t::reset, dt_iop_module_t::so, TRUE, and darktable_t::undo.
Referenced by _pop_undo().
|
static |
References _find_previous_history_step(), _lib_history_change_text(), add_blend_history_change, add_blend_history_change_enum, add_history_change, add_history_change_boolean, add_history_change_string, dt_dev_history_item_t::blend_params, dt_develop_blend_params_t::blendif, dt_develop_blend_params_t::blendif_boost_factors, dt_develop_blend_params_t::blendif_parameters, dt_iop_gui_blend_data_t::channel, DEVELOP_BLEND_MODE_MASK, DEVELOP_BLEND_REVERSE, DEVELOP_COMBINE_INCL, DEVELOP_COMBINE_INV, DEVELOP_COMBINE_MASKS_POS, dt_develop_blend_colorspace_names, dt_develop_blend_mode_flag_names, dt_develop_blend_mode_names, dt_develop_combine_masks_names, dt_develop_feathering_guide_names, dt_develop_invert_mask_names, dt_develop_mask_mode_names, dt_dev_history_item_t::enabled, FALSE, IOP_FLAGS_SUPPORTS_BLENDING, dt_develop_blend_params_t::mask_id, dt_dev_history_item_t::params, and TRUE.
Referenced by _lib_history_change_callback().
|
static |
References darktable, darktable_t::develop, and dt_develop_t::history.
Referenced by _create_tooltip_text(), and _lib_history_change_callback().
|
static |
References darktable, darktable_t::develop, dt_dev_invalidate_history_module(), and dt_dev_refresh_ui_images.
Referenced by _check_deleted_instances(), and _lib_history_module_remove_callback().
|
static |
|
static |
References darktable, dt_lib_module_t::data, darktable_t::develop, dt_dev_modulegroups_get(), dt_dev_modulegroups_set(), dt_dev_modulegroups_switch(), dt_dev_pop_history_items(), dt_dev_reorder_gui_module_list(), dt_dev_set_history_end(), dt_dev_undo_end_record(), dt_dev_undo_start_record(), dt_gui_container_nth_child(), dt_iop_gui_set_expanded(), dt_modifier_is(), FALSE, darktable_t::gui, HIST_WIDGET_MODULE, dt_develop_t::history, dt_lib_history_t::history_box, dt_gui_gtk_t::reset, reset(), and TRUE.
Referenced by _lib_history_create_button().
|
static |
References _changes_tooltip_callback(), _create_tooltip_text(), _find_previous_history_step(), _history_undo_data_free(), _lib_history_create_button(), _pop_undo(), dt_undo_history_t::after_end, dt_undo_history_t::after_iop_order_list, dt_undo_history_t::after_snapshot, dt_undo_history_t::before_end, dt_undo_history_t::before_iop_order_list, dt_undo_history_t::before_snapshot, darktable, dt_lib_module_t::data, delete_underscore(), darktable_t::develop, dt_dev_get_history_end(), DT_DEV_PIXELPIPE_DISPLAY_NONE, dt_gui_container_destroy_children(), dt_history_duplicate(), dt_ioppr_iop_order_copy_deep(), DT_MASKS_EDIT_OFF, dt_masks_get_edit_mode(), dt_pthread_mutex_lock(), dt_pthread_mutex_unlock(), DT_UNDO_HISTORY, dt_undo_record(), dt_dev_history_item_t::enabled, FALSE, dt_develop_t::gui_module, dt_develop_t::history, dt_lib_history_t::history_box, dt_develop_t::history_mutex, IOP_FLAGS_DEPRECATED, dt_develop_t::iop_order_list, dt_undo_history_t::mask_edit_mode, dt_dev_history_item_t::multi_name, dt_dev_history_item_t::op_name, dt_lib_history_t::previous_history_end, dt_lib_history_t::previous_iop_order_list, dt_lib_history_t::previous_snapshot, dt_lib_history_t::record_history_level, dt_lib_history_t::record_undo, dt_iop_module_t::request_mask_display, dt_undo_history_t::request_mask_display, TRUE, and darktable_t::undo.
Referenced by gui_cleanup(), and gui_init().
|
static |
References _lib_history_change_text(), dt_introspection_field_t::Array, dt_introspection_type_array_t::count, dt_introspection_type_header_t::description, description(), DT_INTROSPECTION_TYPE_ARRAY, DT_INTROSPECTION_TYPE_BOOL, DT_INTROSPECTION_TYPE_CHAR, DT_INTROSPECTION_TYPE_ENUM, DT_INTROSPECTION_TYPE_FLOAT, DT_INTROSPECTION_TYPE_FLOATCOMPLEX, DT_INTROSPECTION_TYPE_INT, DT_INTROSPECTION_TYPE_INT8, DT_INTROSPECTION_TYPE_OPAQUE, DT_INTROSPECTION_TYPE_STRUCT, DT_INTROSPECTION_TYPE_UINT, DT_INTROSPECTION_TYPE_UNION, DT_INTROSPECTION_TYPE_USHORT, dt_introspection_type_struct_t::entries, dt_introspection_field_t::Enum, dt_introspection_type_array_t::field, dt_introspection_type_header_t::field_name, dt_introspection_type_struct_t::fields, dt_introspection_field_t::header, dt_introspection_type_header_t::offset, dt_introspection_type_header_t::size, dt_introspection_field_t::Struct, dt_introspection_type_header_t::type, dt_introspection_type_array_t::type, dt_introspection_type_header_t::type_name, and dt_introspection_type_enum_t::values.
Referenced by _create_tooltip_text(), and _lib_history_change_text().
|
static |
References _lib_history_truncate(), and TRUE.
Referenced by gui_init().
|
static |
References _lib_history_truncate(), dt_modifier_is(), and TRUE.
Referenced by gui_init().
|
static |
|
static |
References darktable, darktable_t::develop, dt_dev_write_history(), dt_gui_styles_dialog_new(), dt_image_t::id, and dt_develop_t::image_storage.
Referenced by gui_init().
|
static |
References _history_invalidate_cb(), darktable, DT_UNDO_HISTORY, dt_undo_iterate(), and darktable_t::undo.
Referenced by gui_cleanup(), and gui_init().
|
static |
|
static |
|
static |
References _check_deleted_instances(), _create_deleted_modules(), _rebuild_multi_priority(), _reorder_gui_module_list(), dt_undo_history_t::after_end, dt_undo_history_t::after_iop_order_list, dt_undo_history_t::after_snapshot, dt_undo_history_t::before_end, dt_undo_history_t::before_iop_order_list, dt_undo_history_t::before_snapshot, dt_iop_module_t::blend_data, darktable, dt_lib_module_t::data, darktable_t::develop, DT_ACTION_UNDO, dt_dev_free_history_item(), dt_dev_modulegroups_get(), dt_dev_modulegroups_set(), DT_DEV_PIXELPIPE_DISPLAY_MASK, dt_dev_pixelpipe_rebuild(), dt_dev_reload_history_items(), dt_dev_set_history_end(), dt_dev_write_history(), dt_history_duplicate(), dt_iop_gui_update_blendif(), dt_ioppr_iop_order_copy_deep(), dt_ioppr_resync_modules_order(), dt_masks_set_edit_mode(), dt_pthread_mutex_lock(), dt_pthread_mutex_unlock(), dt_sort_iop_by_order(), DT_UNDO_HISTORY, FALSE, dt_develop_t::gui_module, dt_develop_t::history, dt_develop_t::history_mutex, dt_develop_t::iop, dt_develop_t::iop_order_list, dt_undo_history_t::mask_edit_mode, dt_lib_history_t::record_undo, dt_iop_module_t::request_mask_display, dt_undo_history_t::request_mask_display, dt_iop_gui_blend_data_t::showmask, and type.
Referenced by _lib_history_change_callback().
|
static |
References dt_iop_update_multi_priority(), and dt_dev_history_item_t::multi_priority.
Referenced by _pop_undo().
|
static |
References darktable, DT_UI_CONTAINER_PANEL_RIGHT_CENTER, dt_ui_get_container(), darktable_t::gui, dt_develop_t::iop, and dt_gui_gtk_t::ui.
Referenced by _pop_undo().
|
static |
References dt_dev_history_item_t::multi_priority, dt_iop_module_t::op, and dt_dev_history_item_t::op_name.
Referenced by _create_deleted_modules(), and _undo_items_cb().
|
static |
Referenced by _check_deleted_instances().
|
static |
References _reset_module_instance(), dt_undo_history_t::after_snapshot, and _cb_data::multi_priority.
Referenced by _create_deleted_modules().
uint32_t container | ( | dt_lib_module_t * | self | ) |
References DT_UI_CONTAINER_PANEL_LEFT_CENTER.
void gui_cleanup | ( | dt_lib_module_t * | self | ) |
void gui_init | ( | dt_lib_module_t * | self | ) |
References _lib_history_change_callback(), _lib_history_compress_clicked_callback(), _lib_history_compress_pressed_callback(), _lib_history_create_style_button_clicked_callback(), _lib_history_module_remove_callback(), _lib_history_will_change_callback(), dt_lib_history_t::compress_button, CPF_NONE, dt_lib_history_t::create_button, darktable, dt_lib_module_t::data, dt_action_button_new(), DT_DEBUG_CONTROL_SIGNAL_CONNECT, DT_SIGNAL_DEVELOP_HISTORY_CHANGE, DT_SIGNAL_DEVELOP_HISTORY_WILL_CHANGE, DT_SIGNAL_DEVELOP_MODULE_REMOVE, dt_ui_scroll_wrap(), dtgtk_button_new(), dtgtk_cairo_paint_styles(), FALSE, dt_lib_history_t::history_box, dt_lib_history_t::previous_history_end, dt_lib_history_t::previous_iop_order_list, dt_lib_history_t::previous_snapshot, dt_lib_history_t::record_history_level, dt_lib_history_t::record_undo, darktable_t::signals, TRUE, and dt_lib_module_t::widget.
void gui_reset | ( | dt_lib_module_t * | self | ) |
References darktable, darktable_t::develop, dt_conf_get_bool(), dt_control_queue_redraw_center(), dt_dev_modulegroups_get(), dt_dev_modulegroups_set(), dt_dev_refresh_ui_images, dt_dev_undo_end_record(), dt_dev_undo_start_record(), dt_history_delete_on_image_ext(), dt_osx_disallow_fullscreen(), dt_ui_main_window(), FALSE, darktable_t::gui, dt_image_t::id, dt_develop_t::image_storage, and dt_gui_gtk_t::ui.
const char * name | ( | struct dt_lib_module_t * | self | ) |
int position | ( | ) |
const char ** views | ( | dt_lib_module_t * | self | ) |