![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "common/darktable.h"
#include "common/undo.h"
#include "common/history_snapshot.h"
#include "common/image_cache.h"
#include "develop/dev_history.h"
#include "develop/blend.h"
#include "develop/imageop.h"
#include "develop/masks.h"
#include "gui/presets.h"
#include <glib.h>
Macros | |
#define | AUTO_SAVE_TIMEOUT 15000 |
Functions | |
static void | _process_history_db_entry (dt_develop_t *dev, sqlite3_stmt *stmt, const int32_t imgid, int *legacy_params, gboolean presets) |
static dt_dev_history_item_t * | _search_history_by_module (dt_develop_t *dev, dt_iop_module_t *module) |
static dt_dev_history_item_t * | _search_history_by_op (dt_develop_t *dev, dt_iop_module_t *module) |
const dt_dev_history_item_t * | _get_last_history_item_for_module (dt_develop_t *dev, struct dt_iop_module_t *module) |
static void | _fill_used_forms (GList *forms_list, int formid, int *used, int nb) |
int | dt_history_merge_module_into_history (dt_develop_t *dev_dest, dt_develop_t *dev_src, dt_iop_module_t *mod_src, GList **_modules_used) |
static int | _history_copy_and_paste_on_image_merge (int32_t imgid, int32_t dest_imgid, GList *ops, const gboolean copy_full) |
gboolean | dt_history_copy_and_paste_on_image (const int32_t imgid, const int32_t dest_imgid, GList *ops, const gboolean copy_iop_order, const gboolean copy_full) |
GList * | dt_history_duplicate (GList *hist) |
static dt_iop_module_t * | _find_mask_manager (dt_develop_t *dev) |
static void | _remove_history_leaks (dt_develop_t *dev) |
gboolean | dt_dev_add_history_item_ext (dt_develop_t *dev, struct dt_iop_module_t *module, gboolean enable, gboolean force_new_item, gboolean no_image, gboolean include_masks) |
Append a new history item on dev->history, at dev->history_end position. If history items exist after dev->history_end, they will be removed under certain conditions. | |
uint64_t | dt_dev_history_get_hash (dt_develop_t *dev) |
Get the integrity checksum of the whole history stack. | |
int | dt_dev_history_auto_save (dt_develop_t *dev) |
Write history to DB and XMP only if the integrety hash has changed since first reading history, or since prior saving point. Callback function meant to be used with g_timeout, or standalone. | |
void | dt_dev_add_history_item_real (dt_develop_t *dev, dt_iop_module_t *module, gboolean enable) |
void | dt_dev_free_history_item (gpointer data) |
void | dt_dev_history_free_history (dt_develop_t *dev) |
void | dt_dev_reload_history_items (dt_develop_t *dev) |
static void | _dt_dev_modules_reload_defaults (dt_develop_t *dev) |
static void | _history_to_module (const dt_dev_history_item_t *const hist, dt_iop_module_t *module) |
void | dt_dev_pop_history_items_ext (dt_develop_t *dev) |
void | dt_dev_pop_history_items (dt_develop_t *dev) |
static void | _cleanup_history (const int32_t imgid) |
guint | dt_dev_mask_history_overload (GList *dev_history, guint threshold) |
static void | _warn_about_history_overuse (GList *dev_history, int32_t imgid) |
void | dt_dev_write_history_end_ext (const int history_end, const int32_t imgid) |
int | dt_dev_write_history_item (const int32_t imgid, dt_dev_history_item_t *h, int32_t num) |
void | dt_dev_write_history_ext (dt_develop_t *dev, const int32_t imgid) |
void | dt_dev_write_history (dt_develop_t *dev) |
static gboolean | _dev_auto_apply_presets (dt_develop_t *dev, int32_t imgid) |
char * | _print_validity (gboolean state) |
static void | _insert_default_modules (dt_develop_t *dev, dt_iop_module_t *module, const int32_t imgid, gboolean is_inited) |
static gboolean | _init_default_history (dt_develop_t *dev, const int32_t imgid) |
static void | _find_so_for_history_entry (dt_develop_t *dev, dt_dev_history_item_t *hist) |
static void | _sync_blendop_params (dt_dev_history_item_t *hist, const void *blendop_params, const int bl_length, const int blendop_version, int *legacy_params) |
static int | _sync_params (dt_dev_history_item_t *hist, const void *module_params, const int param_length, const int modversion, int *legacy_params, const char *preset_name) |
void | dt_dev_read_history_ext (dt_develop_t *dev, const int32_t imgid, gboolean no_image) |
void | dt_dev_invalidate_history_module (GList *list, dt_iop_module_t *module) |
gboolean | dt_history_module_skip_copy (const int flags) |
gboolean | _module_leaves_no_history (dt_iop_module_t *module) |
void | dt_dev_history_compress (dt_develop_t *dev) |
Compress an history from a loaded pipeline, aka simply take a snapshot of all modules parameters. This assumes the history end is properly set, which always happens after calling _pop_history_item. | |
#define AUTO_SAVE_TIMEOUT 15000 |
|
static |
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, and DT_DEBUG_SQLITE3_PREPARE_V2.
Referenced by dt_dev_write_history_ext().
|
static |
References _process_history_db_entry(), dt_image_t::camera_alias, dt_image_t::camera_maker, darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_DOUBLE, DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_BIND_TEXT, DT_DEBUG_SQLITE3_PREPARE_V2, DT_IMAGE_AUTO_PRESETS_APPLIED, dt_image_is_hdr(), dt_image_is_matrix_correction_supported(), dt_image_is_rawprepare_supported(), dt_image_monochrome_flags(), DT_IMAGE_NO_LEGACY_PRESETS, DT_IOP_ORDER_V30, dt_ioppr_deserialize_iop_order_list(), dt_ioppr_get_iop_order_list_version(), dt_ioppr_has_iop_order_list(), dt_ioppr_set_default_iop_order(), dt_ioppr_write_iop_order_list(), dt_image_t::exif_aperture, dt_image_t::exif_exposure, dt_image_t::exif_focal_length, dt_image_t::exif_iso, dt_image_t::exif_lens, dt_image_t::exif_maker, dt_image_t::exif_model, dt_image_t::flags, FOR_HDR, FOR_LDR, FOR_NOT_COLOR, FOR_NOT_MONO, FOR_RAW, dt_develop_t::image_storage, legacy_params(), and TRUE.
Referenced by _init_default_history().
|
inlinestatic |
References dt_iop_compute_module_hash(), dt_iop_reload_defaults(), dt_develop_t::forms, and dt_develop_t::iop.
Referenced by dt_dev_pop_history_items_ext().
|
static |
References _fill_used_forms(), dt_masks_get_from_id_ext(), DT_MASKS_GROUP, dt_masks_point_group_t::formid, dt_masks_form_t::points, and dt_masks_form_t::type.
Referenced by _fill_used_forms(), and dt_history_merge_module_into_history().
|
static |
References dt_develop_t::iop.
|
static |
const dt_dev_history_item_t * _get_last_history_item_for_module | ( | dt_develop_t * | dev, |
struct dt_iop_module_t * | module | ||
) |
References dt_develop_t::history.
Referenced by dt_dev_add_history_item_ext().
|
static |
References _search_history_by_module(), DT_DEBUG_IOPORDER, DT_DEBUG_PARAMS, dt_dev_cleanup(), dt_dev_init(), dt_dev_pop_history_items_ext(), dt_dev_read_history_ext(), dt_dev_write_history_ext(), dt_history_merge_module_into_history(), dt_history_module_skip_copy(), dt_iop_is_hidden(), dt_iop_load_modules_ext(), dt_ioppr_check_iop_order(), dt_ioppr_update_for_modules(), dt_print(), FALSE, dt_develop_t::history, dt_develop_t::iop, dt_dev_history_item_t::multi_priority, and TRUE.
Referenced by dt_history_copy_and_paste_on_image().
|
inlinestatic |
References dt_dev_history_item_t::blend_params, dt_iop_commit_blend_params(), dt_iop_compute_module_hash(), dt_iop_update_multi_priority(), dt_dev_history_item_t::forms, dt_dev_history_item_t::multi_name, dt_iop_module_t::multi_name, dt_dev_history_item_t::multi_priority, dt_dev_history_item_t::params, dt_iop_module_t::params, and dt_iop_module_t::params_size.
Referenced by dt_dev_pop_history_items_ext(), and dt_dev_read_history_ext().
|
static |
|
static |
References dt_image_t::change_timestamp, dt_iop_module_t::default_enabled, dt_conf_set_string(), DT_DEBUG_HISTORY, dt_dev_add_history_item_ext(), dt_history_check_module_exists(), dt_image_is_matrix_correction_supported(), dt_image_is_raw(), dt_iop_reload_defaults(), dt_print(), FALSE, dt_develop_t::image_storage, IOP_FLAGS_NO_HISTORY_STACK, dt_iop_module_t::op, TRUE, and dt_iop_module_t::workflow_enabled.
Referenced by _init_default_history().
gboolean _module_leaves_no_history | ( | dt_iop_module_t * | module | ) |
References IOP_FLAGS_NO_HISTORY_STACK.
Referenced by dt_dev_history_compress().
char * _print_validity | ( | gboolean | state | ) |
|
static |
References _find_so_for_history_entry(), _sync_blendop_params(), _sync_params(), DT_DEBUG_HISTORY, dt_dev_set_history_end(), dt_iop_compute_module_hash(), dt_iop_update_multi_priority(), dt_ioppr_get_iop_order(), dt_print(), dt_dev_history_item_t::enabled, dt_image_t::filename, dt_develop_t::history, dt_develop_t::image_storage, IOP_FLAGS_NO_HISTORY_STACK, dt_dev_history_item_t::iop_order, dt_develop_t::iop_order_list, legacy_params(), dt_dev_history_item_t::multi_name, dt_dev_history_item_t::multi_priority, dt_dev_history_item_t::num, dt_dev_history_item_t::op_name, and TRUE.
Referenced by _dev_auto_apply_presets(), and dt_dev_read_history_ext().
|
static |
References DT_DEBUG_HISTORY, dt_dev_free_history_item(), dt_dev_get_history_end(), dt_print(), FALSE, dt_develop_t::history, and TRUE.
Referenced by dt_dev_add_history_item_ext().
|
static |
References dt_develop_t::history.
Referenced by _history_copy_and_paste_on_image_merge().
|
static |
References dt_develop_t::history, and dt_iop_module_t::op.
Referenced by dt_history_merge_module_into_history().
|
static |
References dt_dev_history_item_t::blend_params, dt_develop_blend_legacy_params(), dt_develop_blend_version(), legacy_params(), and TRUE.
Referenced by _process_history_db_entry().
|
static |
References dt_dev_history_item_t::blend_params, dt_control_log(), dt_dev_history_item_t::enabled, legacy_params(), dt_dev_history_item_t::params, preset, and TRUE.
Referenced by _process_history_db_entry().
|
static |
References dt_dev_mask_history_overload(), and dt_toast_log().
Referenced by dt_dev_write_history_ext().
gboolean dt_dev_add_history_item_ext | ( | struct dt_develop_t * | dev, |
struct dt_iop_module_t * | module, | ||
gboolean | enable, | ||
gboolean | force_new_item, | ||
gboolean | no_image, | ||
gboolean | include_masks | ||
) |
Append a new history item on dev->history, at dev->history_end position. If history items exist after dev->history_end, they will be removed under certain conditions.
dev | |
module | |
enable | |
force_new_item | |
no_image | |
include_masks |
References _get_last_history_item_for_module(), _remove_history_leaks(), dt_dev_history_item_t::blend_params, dt_iop_module_t::blend_params, DT_DEBUG_HISTORY, dt_dev_set_history_end(), dt_iop_check_modules_equal(), dt_iop_compute_module_hash(), dt_masks_dup_forms_deep(), dt_masks_free_form(), dt_print(), dt_dev_history_item_t::enabled, dt_iop_module_t::enabled, FALSE, dt_dev_history_item_t::forms, dt_develop_t::forms, dt_develop_t::forms_changed, dt_dev_history_item_t::hash, dt_develop_t::history, dt_dev_history_item_t::iop_order, dt_dev_history_item_t::multi_name, dt_iop_module_t::multi_name, dt_dev_history_item_t::multi_priority, dt_dev_history_item_t::num, dt_iop_module_t::op, dt_dev_history_item_t::op_name, dt_dev_history_item_t::params, dt_iop_module_t::params, dt_iop_module_t::params_size, and void().
Referenced by _insert_default_modules(), dt_dev_add_history_item_real(), dt_dev_history_compress(), and dt_history_merge_module_into_history().
void dt_dev_add_history_item_real | ( | dt_develop_t * | dev, |
dt_iop_module_t * | module, | ||
gboolean | enable | ||
) |
References AUTO_SAVE_TIMEOUT, dt_develop_t::auto_save_timeout, dt_develop_blend_params_t::blend_mode, dt_iop_module_t::blend_params, darktable, DEVELOP_MASK_RASTER, dt_atomic_set_int(), dt_dev_add_history_item_ext(), dt_dev_get_history_end(), dt_dev_history_auto_save(), dt_dev_invalidate_all, dt_dev_masks_list_update(), dt_dev_pixelpipe_resync_all(), dt_dev_refresh_ui_images, dt_dev_undo_end_record(), dt_dev_undo_start_record(), dt_iop_gui_set_enable_button(), dt_pthread_mutex_lock(), dt_pthread_mutex_unlock(), FALSE, dt_dev_history_item_t::forms, darktable_t::gui, dt_develop_t::gui_attached, dt_develop_t::history, dt_develop_t::history_mutex, dt_develop_t::pipe, dt_develop_t::preview_pipe, dt_dev_pixelpipe_t::shutdown, and TRUE.
void dt_dev_free_history_item | ( | gpointer | data | ) |
Free a single GList *link containing a dt_dev_history_item_t
References dt_dev_history_item_t::blend_params, dt_masks_free_form(), dt_dev_history_item_t::forms, dt_dev_history_item_t::params, and void().
Referenced by _history_undo_data_free(), _pop_undo(), _remove_history_leaks(), dt_dev_cleanup(), dt_dev_history_free_history(), and dt_dev_module_remove().
int dt_dev_history_auto_save | ( | struct dt_develop_t * | dev | ) |
Write history to DB and XMP only if the integrety hash has changed since first reading history, or since prior saving point. Callback function meant to be used with g_timeout, or standalone.
dev |
References dt_develop_t::auto_save_timeout, dt_times_t::clock, dt_control_save_xmp(), dt_dev_history_get_hash(), dt_dev_write_history_ext(), dt_get_times(), dt_pthread_mutex_lock(), dt_pthread_mutex_unlock(), dt_show_times(), dt_toast_log(), dt_develop_t::history_hash, dt_develop_t::history_mutex, dt_image_t::id, and dt_develop_t::image_storage.
Referenced by _export_button_clicked(), dt_dev_add_history_item_real(), and leave().
void dt_dev_history_compress | ( | struct dt_develop_t * | dev | ) |
Compress an history from a loaded pipeline, aka simply take a snapshot of all modules parameters. This assumes the history end is properly set, which always happens after calling _pop_history_item.
dev |
References _module_leaves_no_history(), dt_dev_add_history_item_ext(), dt_dev_history_free_history(), dt_dev_reload_history_items(), dt_dev_write_history(), dt_dev_write_history_ext(), dt_pthread_mutex_lock(), dt_pthread_mutex_unlock(), FALSE, dt_develop_t::history_mutex, dt_image_t::id, dt_develop_t::image_storage, dt_develop_t::iop, and TRUE.
Referenced by _lib_history_truncate().
void dt_dev_history_free_history | ( | struct dt_develop_t * | dev | ) |
Free the whole GList of dt_dev_history_item_t
attached to dev->history
References dt_dev_free_history_item(), and dt_develop_t::history.
Referenced by dt_dev_history_compress(), dt_dev_reload_history_items(), and leave().
uint64_t dt_dev_history_get_hash | ( | struct dt_develop_t * | dev | ) |
Get the integrity checksum of the whole history stack.
dev |
References DT_DEBUG_HISTORY, dt_dev_get_history_end(), dt_hash(), dt_print(), dt_dev_history_item_t::hash, and dt_develop_t::history.
Referenced by dt_dev_history_auto_save(), and dt_dev_read_history_ext().
void dt_dev_invalidate_history_module | ( | GList * | list, |
struct dt_iop_module_t * | module | ||
) |
Referenced by _history_invalidate_cb().
guint dt_dev_mask_history_overload | ( | GList * | dev_history, |
guint | threshold | ||
) |
References dt_dev_history_item_t::forms.
Referenced by _warn_about_history_overuse().
void dt_dev_pop_history_items | ( | dt_develop_t * | dev | ) |
References darktable, dt_dev_pop_history_items_ext(), dt_iop_gui_update(), dt_pthread_mutex_lock(), dt_pthread_mutex_unlock(), darktable_t::gui, dt_develop_t::history_mutex, dt_develop_t::iop, and dt_gui_gtk_t::reset.
Referenced by _lib_history_button_clicked_callback(), dt_dev_reload_history_items(), and enter().
void dt_dev_pop_history_items_ext | ( | dt_develop_t * | dev | ) |
References _dt_dev_modules_reload_defaults(), _history_to_module(), DT_DEBUG_HISTORY, dt_dev_get_history_end(), dt_ioppr_check_duplicate_iop_order(), dt_ioppr_check_iop_order(), dt_ioppr_resync_modules_order(), dt_masks_replace_current_forms(), dt_print(), dt_dev_history_item_t::forms, dt_dev_history_item_t::hash, dt_develop_t::history, and dt_develop_t::iop.
Referenced by _apply_style_before_export(), _history_copy_and_paste_on_image_merge(), dt_dev_pop_history_items(), dt_history_merge_module_into_history(), and dt_styles_apply_to_image().
void dt_dev_read_history_ext | ( | dt_develop_t * | dev, |
const int32_t | imgid, | ||
gboolean | no_image | ||
) |
References _history_to_module(), _init_default_history(), _process_history_db_entry(), darktable, darktable_t::db, darktable_t::develop, dt_database_get(), DT_DEBUG_HISTORY, DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_dev_history_get_hash(), dt_dev_masks_list_change(), dt_dev_masks_update_hash(), dt_dev_set_history_end(), dt_dev_write_history_ext(), dt_image_cache_get(), dt_image_cache_read_release(), DT_IMAGE_CACHE_SAFE, dt_image_cache_write_release(), dt_ioppr_check_iop_order(), dt_ioppr_resync_iop_list(), dt_ioppr_resync_modules_order(), dt_ioppr_set_default_iop_order(), dt_masks_read_masks_history(), dt_print(), dt_dev_history_item_t::enabled, FALSE, dt_dev_history_item_t::hash, dt_develop_t::history, dt_develop_t::history_hash, darktable_t::image_cache, dt_develop_t::image_storage, dt_develop_t::iop, legacy_params(), dt_dev_history_item_t::op_name, and UNKNOWN_IMAGE.
Referenced by _history_copy_and_paste_on_image_merge(), dt_dev_get_final_size(), dt_dev_load_image(), dt_dev_reload_history_items(), and dt_styles_apply_to_image().
void dt_dev_reload_history_items | ( | dt_develop_t * | dev | ) |
References dt_dev_history_free_history(), dt_dev_pop_history_items(), dt_dev_read_history_ext(), dt_pthread_mutex_lock(), dt_pthread_mutex_unlock(), FALSE, dt_develop_t::history_mutex, dt_image_t::id, and dt_develop_t::image_storage.
Referenced by _pop_undo(), compress_history_callback(), delete_history_callback(), dt_dev_history_compress(), dt_ioppr_migrate_iop_order(), dt_lightroom_import(), dt_styles_apply_to_image(), load_xmp_callback(), paste_all_callback(), and paste_parts_callback().
void dt_dev_write_history | ( | dt_develop_t * | dev | ) |
References dt_dev_write_history_ext(), dt_pthread_mutex_lock(), dt_pthread_mutex_unlock(), dt_develop_t::history_mutex, dt_image_t::id, and dt_develop_t::image_storage.
Referenced by _darkroom_ui_apply_style_activate_callback(), _lib_history_create_style_button_clicked_callback(), _pop_undo(), compress_history_callback(), copy_callback(), copy_parts_callback(), delete_history_callback(), dt_dev_history_compress(), dt_ioppr_change_iop_order(), dt_multiple_styles_apply_to_list(), dt_styles_apply_to_list(), paste_all_callback(), and paste_parts_callback().
void dt_dev_write_history_end_ext | ( | const int | history_end, |
const int32_t | imgid | ||
) |
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, and DT_DEBUG_SQLITE3_PREPARE_V2.
Referenced by dt_dev_write_history_ext().
void dt_dev_write_history_ext | ( | dt_develop_t * | dev, |
const int32_t | imgid | ||
) |
References _cleanup_history(), _warn_about_history_overuse(), darktable, darktable_t::develop, DT_DEBUG_CONTROL_SIGNAL_RAISE, DT_DEBUG_HISTORY, dt_dev_append_changed_tag(), dt_dev_get_history_end(), dt_dev_write_history_end_ext(), dt_dev_write_history_item(), DT_HISTORY_HASH_CURRENT, dt_history_hash_write_from_history(), dt_image_cache_set_change_timestamp(), dt_ioppr_write_iop_order_list(), dt_mipmap_cache_remove(), dt_print(), DT_SIGNAL_IMAGE_INFO_CHANGED, dt_thumbtable_refresh_thumbnail, darktable_t::gui, dt_develop_t::history, dt_image_t::id, darktable_t::image_cache, dt_develop_t::image_storage, dt_develop_t::iop_order_list, darktable_t::mipmap_cache, darktable_t::signals, dt_ui_t::thumbtable_lighttable, TRUE, and dt_gui_gtk_t::ui.
Referenced by _history_copy_and_paste_on_image_merge(), dt_dev_history_auto_save(), dt_dev_history_compress(), dt_dev_read_history_ext(), dt_dev_write_history(), and dt_styles_apply_to_image().
int dt_dev_write_history_item | ( | const int32_t | imgid, |
dt_dev_history_item_t * | h, | ||
int32_t | num | ||
) |
References dt_dev_history_item_t::blend_params, darktable, darktable_t::db, dt_database_get(), DT_DEBUG_HISTORY, DT_DEBUG_SQLITE3_BIND_BLOB, DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_BIND_TEXT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_develop_blend_version(), dt_masks_write_masks_history_item(), dt_print(), dt_dev_history_item_t::enabled, dt_dev_history_item_t::forms, dt_dev_history_item_t::iop_order, dt_dev_history_item_t::multi_name, dt_dev_history_item_t::multi_priority, dt_dev_history_item_t::op_name, and dt_dev_history_item_t::params.
Referenced by dt_dev_write_history_ext().
gboolean dt_history_copy_and_paste_on_image | ( | int32_t | imgid, |
int32_t | dest_imgid, | ||
GList * | ops, | ||
gboolean | copy_iop_order, | ||
const gboolean | copy_full | ||
) |
copy history from imgid and pasts on dest_imgid, merge or overwrite...
References _history_copy_and_paste_on_image_merge(), dt_undo_lt_history_t::after, dt_undo_lt_history_t::after_history_end, dt_undo_lt_history_t::before, dt_undo_lt_history_t::before_history_end, darktable, dt_control_log(), dt_control_save_xmp(), dt_history_snapshot_item_init(), dt_history_snapshot_undo_create(), dt_history_snapshot_undo_lt_history_data_free(), dt_history_snapshot_undo_pop(), dt_ioppr_get_iop_order_list(), dt_ioppr_write_iop_order_list(), dt_thumbtable_refresh_thumbnail, dt_undo_end_group(), DT_UNDO_LT_HISTORY, dt_undo_record(), dt_undo_start_group(), FALSE, darktable_t::gui, dt_undo_lt_history_t::imgid, dt_ui_t::thumbtable_lighttable, TRUE, dt_gui_gtk_t::ui, darktable_t::undo, and UNKNOWN_IMAGE.
Referenced by dt_control_duplicate_images_job_run(), dt_history_paste_on_list(), dt_history_paste_parts_on_list(), dt_image_copy_rename(), and dt_styles_apply_to_image().
GList * dt_history_duplicate | ( | GList * | hist | ) |
References dt_dev_history_item_t::blend_params, dt_masks_dup_forms_deep(), dt_dev_history_item_t::forms, dt_dev_history_item_t::op_name, dt_dev_history_item_t::params, and dt_iop_module_t::params.
Referenced by _gui_delete_callback(), _lib_history_change_callback(), _pop_undo(), and dt_dev_undo_start_record().
int dt_history_merge_module_into_history | ( | struct dt_develop_t * | dev_dest, |
struct dt_develop_t * | dev_src, | ||
struct dt_iop_module_t * | mod_src, | ||
GList ** | _modules_used | ||
) |
adds to dev_dest module mod_src
References _fill_used_forms(), _search_history_by_op(), dt_develop_t::allforms, dt_iop_module_t::blend_params, DT_DEBUG_HISTORY, dt_dev_add_history_item_ext(), dt_dev_pop_history_items_ext(), dt_iop_get_module_by_op_priority(), dt_iop_load_module(), dt_ioppr_check_iop_order(), dt_ioppr_resync_modules_order(), dt_masks_dup_masks_form(), dt_masks_get_from_id_ext(), dt_print(), dt_sort_iop_by_order(), FALSE, dt_develop_t::forms, dt_develop_t::iop, IOP_FLAGS_ONE_INSTANCE, IOP_FLAGS_SUPPORTS_BLENDING, dt_iop_module_t::iop_order, dt_develop_blend_params_t::mask_id, dt_iop_module_t::multi_name, dt_iop_module_t::multi_priority, dt_iop_module_t::op, dt_iop_module_t::params, dt_iop_module_t::so, and TRUE.
Referenced by _history_copy_and_paste_on_image_merge(), and dt_styles_apply_style_item().
gboolean dt_history_module_skip_copy | ( | const int | flags | ) |
References flags, IOP_FLAGS_DEPRECATED, IOP_FLAGS_HIDDEN, and IOP_FLAGS_UNSAFE_COPY.
Referenced by _history_copy_and_paste_on_image_merge(), and dt_gui_hist_dialog_new().