![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "common/collection.h"
#include "common/selection.h"
#include "common/darktable.h"
#include "common/debug.h"
#include "common/tags.h"
#include "control/conf.h"
#include "control/control.h"
#include "dtgtk/button.h"
#include "gui/preferences_dialogs.h"
#include "gui/gtk.h"
#include "gui/drag_and_drop.h"
#include "libs/lib.h"
#include "libs/lib_api.h"
#include "views/view.h"
#include <gdk/gdkkeysyms.h>
#include <math.h>
Data Structures | |
struct | dt_lib_tagging_t |
struct | dt_tag_op_t |
Macros | |
#define | FLOATING_ENTRY_WIDTH DT_PIXEL_APPLY_DPI(150) |
#define | NEW_TOGGLE_BUTTON(paint, callback, tooltip, action) |
Typedefs | |
typedef struct dt_lib_tagging_t | dt_lib_tagging_t |
typedef struct dt_tag_op_t | dt_tag_op_t |
typedef enum dt_lib_tagging_cols_t | dt_lib_tagging_cols_t |
typedef enum dt_tag_sort_id | dt_tag_sort_id |
Functions | |
static void | _save_last_tag_used (const char *tags, dt_lib_tagging_t *d) |
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) |
static gboolean | _is_user_tag (GtkTreeModel *model, GtkTreeIter *iter) |
static void | _unselect_all_in_view (GtkTreeView *view) |
static void | _update_atdetach_buttons (dt_lib_module_t *self) |
static void | _propagate_sel_to_parents (GtkTreeModel *model, GtkTreeIter *iter) |
static gboolean | _set_matching_tag_visibility (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, dt_lib_module_t *self) |
static gboolean | _tree_reveal_func (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) |
static void | _sort_attached_list (dt_lib_module_t *self, gboolean force) |
static void | _sort_dictionary_list (dt_lib_module_t *self, gboolean force) |
static gboolean | _find_tag_iter_tagname (GtkTreeModel *model, GtkTreeIter *iter, const char *tagname, const gboolean needle) |
static void | _show_iter_on_view (GtkTreeView *view, GtkTreeIter *iter, const gboolean select) |
static void | _show_tag_on_view (GtkTreeView *view, const char *tagname, const gboolean needle, const gboolean select) |
static void | _show_keyword_on_view (GtkTreeView *view, const char *keyword, const gboolean select) |
static gboolean | _select_previous_user_attached_tag (const int index, GtkTreeView *view) |
static gboolean | _select_next_user_attached_tag (const int index, GtkTreeView *view) |
static void | _init_treeview (dt_lib_module_t *self, const int which) |
static void | _tree_tagname_show (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer data, gboolean dictionary_view) |
static void | _tree_tagname_show_attached (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer data) |
static void | _tree_tagname_show_dictionary (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer data) |
static void | _tree_select_show (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer data) |
static void | _postponed_update (dt_lib_module_t *self) |
static void | _lib_tagging_redraw_callback (gpointer instance, dt_lib_module_t *self) |
static void | _lib_tagging_tags_changed_callback (gpointer instance, dt_lib_module_t *self) |
static void | _collection_updated_callback (gpointer instance, dt_collection_change_t query_change, dt_collection_properties_t changed_property, gpointer imgs, int next, dt_lib_module_t *self) |
static void | _raise_signal_tag_changed (dt_lib_module_t *self) |
static gboolean | _find_tag_iter_tagid (GtkTreeModel *model, GtkTreeIter *iter, const gint tagid) |
static void | _calculate_sel_on_path (GtkTreeModel *model, GtkTreeIter *iter, const gboolean root) |
static void | _reset_sel_on_path (GtkTreeModel *model, GtkTreeIter *iter, const gboolean root) |
static void | _reset_sel_on_path_full (GtkTreeModel *model, GtkTreeIter *iter, const gboolean root) |
static void | _find_root_iter_iter (GtkTreeModel *model, GtkTreeIter *iter, GtkTreeIter *parent) |
static void | _calculate_sel_on_tree (GtkTreeModel *model, GtkTreeIter *iter) |
static void | _update_sel_on_tree (GtkTreeModel *model) |
static void | _delete_tree_tag (GtkTreeModel *model, GtkTreeIter *iter, gboolean tree) |
static void | _delete_tree_path (GtkTreeModel *model, GtkTreeIter *iter, gboolean root, gboolean tree) |
static void | _lib_selection_changed_callback (gpointer instance, dt_lib_module_t *self) |
static void | _set_keyword (dt_lib_module_t *self) |
static gboolean | _update_tag_name_per_name (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, dt_tag_op_t *to) |
static void | _update_attached_count (const int tagid, GtkTreeView *view, const gboolean tree_flag) |
void | init_presets (dt_lib_module_t *self) |
void * | get_params (dt_lib_module_t *self, int *size) |
int | set_params (dt_lib_module_t *self, const void *params, int size) |
static void | _attach_selected_tag (dt_lib_module_t *self, dt_lib_tagging_t *d) |
static void | _detach_selected_tag (GtkTreeView *view, dt_lib_module_t *self) |
static void | _attach_button_clicked (GtkButton *button, dt_lib_module_t *self) |
static void | _detach_button_clicked (GtkButton *button, dt_lib_module_t *self) |
static void | _pop_menu_attached_attach_to_all (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_attached_detach (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_attached (GtkWidget *treeview, GdkEventButton *event, dt_lib_module_t *self) |
static gboolean | _click_on_view_attached (GtkWidget *view, GdkEventButton *event, dt_lib_module_t *self) |
static gboolean | _attached_key_pressed (GtkWidget *view, GdkEventKey *event, dt_lib_module_t *self) |
static void | _new_button_clicked (GtkButton *button, dt_lib_module_t *self) |
static gboolean | _enter_key_pressed (GtkWidget *entry, GdkEventKey *event, dt_lib_module_t *self) |
static void | _clear_entry_button_callback (GtkButton *button, dt_lib_module_t *self) |
static void | _tag_name_changed (GtkEntry *entry, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_delete_tag (GtkWidget *menuitem, dt_lib_module_t *self, gboolean branch) |
static void | _pop_menu_dictionary_delete_node (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_create_tag (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_edit_tag (GtkWidget *menuitem, dt_lib_module_t *self) |
static gboolean | _apply_rename_path (GtkWidget *dialog, const char *tagname, const char *newtag, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_change_path (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_goto_tag_collection (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_goto_collection_back (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_copy_tag (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_attach_tag (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_detach_tag (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary_set_as_tag (GtkWidget *menuitem, dt_lib_module_t *self) |
static void | _pop_menu_dictionary (GtkWidget *treeview, GdkEventButton *event, dt_lib_module_t *self) |
static gboolean | _click_on_view_dictionary (GtkWidget *view, GdkEventButton *event, dt_lib_module_t *self) |
static gboolean | _dictionary_key_pressed (GtkWidget *view, GdkEventKey *event, dt_lib_module_t *self) |
static gboolean | _row_tooltip_setup (GtkWidget *treeview, gint x, gint y, gboolean kb_mode, GtkTooltip *tooltip, dt_lib_module_t *self) |
static void | _import_button_clicked (GtkButton *button, dt_lib_module_t *self) |
static void | _export_button_clicked (GtkButton *button, dt_lib_module_t *self) |
static void | _update_layout (dt_lib_module_t *self) |
static void | _toggle_suggestion_button_callback (GtkToggleButton *source, dt_lib_module_t *self) |
static void | _toggle_tree_button_callback (GtkToggleButton *source, dt_lib_module_t *self) |
static gint | _sort_tree_count_func (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, dt_lib_module_t *self) |
static gint | _sort_tree_tag_func (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, dt_lib_module_t *self) |
static gint | _sort_tree_path_func (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, dt_lib_module_t *self) |
static void | _toggle_sort_button_callback (GtkToggleButton *source, dt_lib_module_t *self) |
static void | _toggle_hide_button_callback (GtkToggleButton *source, dt_lib_module_t *self) |
static void | _toggle_dttags_button_callback (GtkToggleButton *source, dt_lib_module_t *self) |
void | gui_reset (dt_lib_module_t *self) |
int | position () |
static void | _tree_selection_changed (GtkTreeSelection *treeselection, gpointer data) |
static void | _dnd_clear_root (dt_lib_module_t *self) |
static void | _event_dnd_begin (GtkWidget *widget, GdkDragContext *context, dt_lib_module_t *self) |
static void | _event_dnd_get (GtkWidget *widget, GdkDragContext *context, GtkSelectionData *selection_data, const guint target_type, const guint time, dt_lib_module_t *self) |
static void | _event_dnd_received (GtkWidget *widget, GdkDragContext *context, gint x, gint y, GtkSelectionData *selection_data, guint target_type, guint time, dt_lib_module_t *self) |
static gboolean | _dnd_expand_timeout (dt_lib_module_t *self) |
static gboolean | _dnd_scroll_timeout (dt_lib_module_t *self) |
static gboolean | _event_dnd_motion (GtkWidget *widget, GdkDragContext *context, gint x, gint y, guint time, dt_lib_module_t *self) |
static void | _event_dnd_end (GtkWidget *widget, GdkDragContext *context, dt_lib_module_t *self) |
void | gui_init (dt_lib_module_t *self) |
void | gui_cleanup (dt_lib_module_t *self) |
static int | _get_recent_tags_list_length () |
static void | _size_recent_tags_list () |
void | _menuitem_preferences (GtkMenuItem *menuitem, dt_lib_module_t *self) |
void | set_preferences (void *menu, dt_lib_module_t *self) |
#define FLOATING_ENTRY_WIDTH DT_PIXEL_APPLY_DPI(150) |
#define NEW_TOGGLE_BUTTON | ( | paint, | |
callback, | |||
tooltip, | |||
action | |||
) |
typedef enum dt_lib_tagging_cols_t dt_lib_tagging_cols_t |
typedef struct dt_lib_tagging_t dt_lib_tagging_t |
typedef struct dt_tag_op_t dt_tag_op_t |
typedef enum dt_tag_sort_id dt_tag_sort_id |
enum dt_tag_sort_id |
|
static |
References _init_treeview(), _raise_signal_tag_changed(), _show_tag_on_view(), darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_image_synch_xmps(), dt_tag_exists(), dt_tag_free_result(), dt_tag_get_tags_images(), dt_tag_rename(), dt_ui_main_window(), FALSE, darktable_t::gui, TRUE, and dt_gui_gtk_t::ui.
Referenced by _event_dnd_received(), and _pop_menu_dictionary_change_path().
|
static |
References _attach_selected_tag(), and dt_lib_module_t::data.
Referenced by gui_init().
|
static |
record last tag used
References _init_treeview(), _propagate_sel_to_parents(), _raise_signal_tag_changed(), _save_last_tag_used(), dt_lib_tagging_t::dictionary_view, dt_image_synch_xmp(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_SEL, dt_tag_attach(), dt_tag_get_name(), dt_tag_images_count(), DT_TS_ALL_IMAGES, model, store(), dt_lib_tagging_t::suggestion_flag, dt_lib_tagging_t::tree_flag, and TRUE.
Referenced by _attach_button_clicked(), _click_on_view_dictionary(), _dictionary_key_pressed(), and _pop_menu_dictionary_attach_tag().
|
static |
References _detach_selected_tag(), _unselect_all_in_view(), dt_lib_tagging_t::attached_view, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_lib_tagging_t::entry, FALSE, model, TRUE, and view().
Referenced by gui_init().
|
static |
References _calculate_sel_on_path(), _propagate_sel_to_parents(), DT_LIB_TAGGING_COL_SEL, DT_TS_ALL_IMAGES, DT_TS_NO_IMAGE, FALSE, and model.
Referenced by _calculate_sel_on_path(), and _calculate_sel_on_tree().
|
static |
References _calculate_sel_on_path(), _find_root_iter_iter(), _reset_sel_on_path(), FALSE, model, and TRUE.
Referenced by _delete_tree_path(), _delete_tree_tag(), _detach_selected_tag(), and _update_attached_count().
|
static |
clear input box
References dt_lib_module_t::data, and dt_lib_tagging_t::entry.
Referenced by gui_init().
|
static |
|
static |
References _attach_selected_tag(), _pop_menu_dictionary(), _unselect_all_in_view(), _update_atdetach_buttons(), dt_lib_tagging_t::attached_view, button_pressed(), dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_lib_tagging_t::drag, DT_LIB_TAGGING_COL_PATH, dt_modifier_is(), FALSE, dt_lib_tagging_t::lastpath, model, dt_lib_tagging_t::path, dt_lib_tagging_t::tagname, dt_lib_tagging_t::tree_flag, TRUE, and view().
Referenced by gui_init().
|
static |
|
static |
References _calculate_sel_on_tree(), _delete_tree_path(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_SEL, DT_TS_NO_IMAGE, FALSE, model, and TRUE.
Referenced by _delete_tree_path(), and _pop_menu_dictionary_delete_node().
|
static |
References _calculate_sel_on_tree(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_SEL, DT_TS_NO_IMAGE, and model.
Referenced by _pop_menu_dictionary_delete_tag().
|
static |
References _detach_selected_tag(), dt_lib_tagging_t::attached_view, and dt_lib_module_t::data.
Referenced by gui_init().
|
static |
References _calculate_sel_on_tree(), _find_tag_iter_tagid(), _init_treeview(), _raise_signal_tag_changed(), _select_next_user_attached_tag(), dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_act_on_get_images(), dt_image_synch_xmps(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_SEL, dt_tag_detach_images(), dt_tag_get_images_from_list(), dt_tag_images_count(), DT_TS_NO_IMAGE, dt_lib_tagging_t::entry, model, store(), dt_lib_tagging_t::suggestion_flag, dt_lib_tagging_t::tree_flag, TRUE, and view().
Referenced by _attached_key_pressed(), _click_on_view_attached(), _detach_button_clicked(), _pop_menu_attached_detach(), and _pop_menu_dictionary_detach_tag().
|
static |
References _attach_selected_tag(), _unselect_all_in_view(), dt_lib_tagging_t::attached_view, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_modifier_is(), dt_lib_tagging_t::entry, FALSE, model, TRUE, and view().
Referenced by gui_init().
|
static |
References dt_lib_module_t::data, dt_lib_tagging_t::dictionary_treestore, dt_lib_tagging_t::drag, DT_LIB_TAGGING_COL_PATH, FALSE, model, name, and dt_lib_tagging_t::root.
Referenced by _dnd_scroll_timeout(), _event_dnd_end(), and _event_dnd_received().
|
static |
References dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_lib_tagging_t::drag, FALSE, and dt_lib_tagging_t::lastpath.
Referenced by _event_dnd_motion().
|
static |
References _dnd_clear_root(), dt_lib_module_t::data, dt_lib_tagging_t::dictionary_treestore, dt_lib_tagging_t::dictionary_view, dt_lib_tagging_t::drag, DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_FLAGS, DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_SEL, DT_LIB_TAGGING_COL_TAG, DT_LIB_TAGGING_COL_VISIBLE, FALSE, dt_lib_tagging_t::last_y, dt_lib_tagging_t::root, dt_lib_tagging_t::scroll_timeout, dt_lib_tagging_t::tag_source, and TRUE.
Referenced by _event_dnd_motion().
|
static |
References _new_button_clicked(), _select_next_user_attached_tag(), _show_keyword_on_view(), _unselect_all_in_view(), dt_lib_tagging_t::attached_view, darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_ui_main_window(), FALSE, darktable_t::gui, dt_lib_tagging_t::keyword, TRUE, and dt_gui_gtk_t::ui.
Referenced by gui_init().
|
static |
References dt_lib_module_t::data, dt_lib_tagging_t::drag, dt_lib_tagging_t::path, dt_lib_tagging_t::tag_source, and TRUE.
Referenced by gui_init().
|
static |
References _dnd_clear_root(), dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_lib_tagging_t::drag, FALSE, dt_lib_tagging_t::scroll_timeout, and dt_lib_tagging_t::tag_source.
Referenced by gui_init().
|
static |
References _DWORD, and DND_TARGET_TAG.
Referenced by gui_init().
|
static |
References _dnd_expand_timeout(), _dnd_scroll_timeout(), dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_lib_tagging_t::drag, dt_lib_tagging_t::expand_timeout, dt_lib_tagging_t::last_y, dt_lib_tagging_t::lastpath, dt_lib_tagging_t::scroll_timeout, and TRUE.
Referenced by gui_init().
|
static |
References _apply_rename_path(), _dnd_clear_root(), _init_treeview(), _raise_signal_tag_changed(), _update_attached_count(), dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, DND_TARGET_IMGID, DND_TARGET_TAG, dt_lib_tagging_t::drag, dt_image_synch_xmp(), DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, dt_tag_attach_images(), dt_util_dstrcat(), FALSE, leave(), model, name, dt_lib_tagging_t::tagname, dt_lib_tagging_t::tree_flag, and TRUE.
Referenced by gui_init().
|
static |
References darktable, dt_conf_get_string_const(), dt_conf_set_string(), dt_control_log(), dt_tag_export(), dt_ui_main_window(), darktable_t::gui, TRUE, and dt_gui_gtk_t::ui.
Referenced by gui_init().
|
static |
References DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_SEL, DT_TS_ALL_IMAGES, and model.
Referenced by _calculate_sel_on_tree().
|
static |
References _find_tag_iter_tagid(), DT_LIB_TAGGING_COL_ID, FALSE, model, and TRUE.
Referenced by _detach_selected_tag(), _find_tag_iter_tagid(), _pop_menu_attached_attach_to_all(), _update_attached_count(), and _update_sel_on_tree().
|
static |
References _find_tag_iter_tagname(), DT_LIB_TAGGING_COL_PATH, FALSE, and model.
Referenced by _find_tag_iter_tagname(), and _show_tag_on_view().
|
static |
References dt_conf_get_int().
Referenced by _save_last_tag_used(), and _size_recent_tags_list().
|
static |
References _init_treeview(), darktable, dt_conf_get_string_const(), dt_conf_set_string(), dt_control_log(), dt_tag_import(), dt_ui_main_window(), FALSE, darktable_t::gui, and dt_gui_gtk_t::ui.
Referenced by gui_init().
|
static |
References _propagate_sel_to_parents(), _set_matching_tag_visibility(), _sort_attached_list(), _sort_dictionary_list(), _tree_reveal_func(), dt_lib_tagging_t::attached_view, darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_liststore, dt_lib_tagging_t::dictionary_treestore, dt_lib_tagging_t::dictionary_view, dt_control_get_mouse_over_id(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_FLAGS, DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_SEL, DT_LIB_TAGGING_COL_SYNONYM, DT_LIB_TAGGING_COL_TAG, DT_LIB_TAGGING_COL_VISIBLE, dt_selection_get_length(), dt_sort_tag(), dt_tag_free_result(), dt_tag_get_attached(), dt_tag_get_suggestions(), dt_tag_get_with_usage(), DT_TS_NO_IMAGE, dt_util_dstrcat(), dt_lib_tagging_t::dttags_flag, FALSE, dt_lib_tagging_t::keyword, model, darktable_t::selection, store(), dt_lib_tagging_t::suggestion_flag, dt_lib_tagging_t::tree_flag, TRUE, and view().
Referenced by _apply_rename_path(), _attach_selected_tag(), _detach_selected_tag(), _event_dnd_received(), _import_button_clicked(), _lib_selection_changed_callback(), _lib_tagging_tags_changed_callback(), _menuitem_preferences(), _new_button_clicked(), _pop_menu_attached_attach_to_all(), _pop_menu_dictionary_create_tag(), _pop_menu_dictionary_delete_node(), _pop_menu_dictionary_delete_tag(), _pop_menu_dictionary_edit_tag(), _pop_menu_dictionary_set_as_tag(), _postponed_update(), _toggle_dttags_button_callback(), _toggle_suggestion_button_callback(), _toggle_tree_button_callback(), gui_init(), gui_reset(), and set_params().
|
static |
References DT_LIB_TAGGING_COL_PATH, and model.
Referenced by _click_on_view_attached(), _select_next_user_attached_tag(), _select_previous_user_attached_tag(), and _update_atdetach_buttons().
|
static |
|
static |
References _postponed_update(), and dt_lib_queue_postponed_update().
Referenced by gui_cleanup(), and gui_init().
|
static |
References _init_treeview().
Referenced by _pop_menu_dictionary_delete_node(), _raise_signal_tag_changed(), gui_cleanup(), and gui_init().
void _menuitem_preferences | ( | GtkMenuItem * | menuitem, |
dt_lib_module_t * | self | ||
) |
References _init_treeview(), _size_recent_tags_list(), _update_atdetach_buttons(), darktable, dt_lib_module_t::data, dt_handle_dialog_enter(), dt_osx_disallow_fullscreen(), dt_prefs_init_dialog_tagging(), dt_ui_main_window(), darktable_t::gui, dt_lib_tagging_t::suggestion_flag, dt_lib_tagging_t::tree_flag, and dt_gui_gtk_t::ui.
Referenced by set_preferences().
|
static |
record last tag used
clear input box
References _init_treeview(), _raise_signal_tag_changed(), _save_last_tag_used(), _show_tag_on_view(), darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_image_synch_xmps(), dt_selection_get_list(), dt_tag_attach_string_list(), dt_lib_tagging_t::entry, FALSE, dt_lib_tagging_t::last_tag, darktable_t::selection, and TRUE.
Referenced by _enter_key_pressed(), and gui_init().
|
static |
|
static |
record last tag used
References _find_tag_iter_tagid(), _init_treeview(), _raise_signal_tag_changed(), _save_last_tag_used(), dt_lib_tagging_t::attached_view, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_image_synch_xmp(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_ID, dt_tag_attach(), dt_tag_get_name(), dt_tag_images_count(), model, store(), dt_lib_tagging_t::tree_flag, and TRUE.
Referenced by _pop_menu_attached().
|
static |
References _detach_selected_tag(), dt_lib_tagging_t::attached_view, and dt_lib_module_t::data.
Referenced by _pop_menu_attached().
|
static |
References _pop_menu_dictionary_attach_tag(), _pop_menu_dictionary_change_path(), _pop_menu_dictionary_copy_tag(), _pop_menu_dictionary_create_tag(), _pop_menu_dictionary_delete_node(), _pop_menu_dictionary_delete_tag(), _pop_menu_dictionary_detach_tag(), _pop_menu_dictionary_edit_tag(), _pop_menu_dictionary_goto_collection_back(), _pop_menu_dictionary_goto_tag_collection(), _pop_menu_dictionary_set_as_tag(), dt_lib_tagging_t::collection, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_collection_serialize(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_ID, model, dt_lib_tagging_t::suggestion_flag, and dt_lib_tagging_t::tree_flag.
Referenced by _click_on_view_dictionary().
|
static |
References _attach_selected_tag(), and dt_lib_module_t::data.
Referenced by _pop_menu_dictionary().
|
static |
References _apply_rename_path(), darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_accels_disconnect_on_text_input(), DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, dt_osx_disallow_fullscreen(), dt_tag_count_tags_images(), dt_ui_main_window(), FALSE, darktable_t::gui, model, TRUE, dt_gui_gtk_t::ui, and view().
Referenced by _pop_menu_dictionary().
|
static |
References dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, DT_LIB_TAGGING_COL_PATH, dt_lib_tagging_t::entry, and model.
Referenced by _pop_menu_dictionary().
|
static |
References _init_treeview(), _show_tag_on_view(), darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_accels_disconnect_on_text_input(), DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_TAG, dt_osx_disallow_fullscreen(), dt_tag_exists(), dt_tag_new(), dt_tag_set_flags(), dt_tag_set_synonyms(), DT_TF_CATEGORY, DT_TF_PRIVATE, dt_ui_main_window(), dt_util_dstrcat(), FALSE, darktable_t::gui, model, TRUE, dt_gui_gtk_t::ui, and view().
Referenced by _pop_menu_dictionary().
|
static |
References _delete_tree_path(), _init_treeview(), _lib_tagging_tags_changed_callback(), _raise_signal_tag_changed(), darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_control_log(), dt_control_signal_block_by_func(), dt_control_signal_unblock_by_func(), dt_image_synch_xmps(), DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, dt_osx_disallow_fullscreen(), dt_tag_count_tags_images(), dt_tag_free_result(), dt_tag_get_tags_images(), dt_tag_remove_list(), dt_ui_main_window(), FALSE, darktable_t::gui, model, darktable_t::signals, store(), dt_lib_tagging_t::tree_flag, TRUE, dt_gui_gtk_t::ui, and view().
Referenced by _pop_menu_dictionary().
|
static |
References _delete_tree_tag(), _init_treeview(), _raise_signal_tag_changed(), darktable, dt_lib_module_t::data, darktable_t::db, dt_lib_tagging_t::dictionary_view, dt_conf_get_bool(), dt_control_log(), dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_image_synch_xmps(), DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, dt_osx_disallow_fullscreen(), dt_tag_remove(), dt_ui_main_window(), FALSE, darktable_t::gui, model, store(), dt_lib_tagging_t::tree_flag, TRUE, dt_gui_gtk_t::ui, and view().
Referenced by _pop_menu_dictionary().
|
static |
References _detach_selected_tag(), dt_lib_module_t::data, and dt_lib_tagging_t::dictionary_view.
Referenced by _pop_menu_dictionary().
|
static |
References _init_treeview(), _raise_signal_tag_changed(), _update_tag_name_per_name(), darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_accels_disconnect_on_text_input(), dt_image_synch_xmps(), DT_LIB_TAGGING_COL_FLAGS, DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_SYNONYM, dt_osx_disallow_fullscreen(), dt_tag_count_tags_images(), dt_tag_exists(), dt_tag_free_result(), dt_tag_get_flags(), dt_tag_get_tags_images(), dt_tag_rename(), dt_tag_set_flags(), dt_tag_set_synonyms(), DT_TF_CATEGORY, DT_TF_PRIVATE, dt_ui_main_window(), FALSE, flags, darktable_t::gui, model, dt_tag_op_t::newtagname, dt_tag_op_t::oldtagname, store(), dt_lib_tagging_t::tree_flag, dt_tag_op_t::tree_flag, TRUE, dt_gui_gtk_t::ui, and view().
Referenced by _pop_menu_dictionary().
|
static |
|
static |
References _collection_updated_callback(), dt_lib_tagging_t::collection, darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_collection_deserialize(), DT_COLLECTION_PROP_TAG, dt_collection_serialize(), dt_control_signal_block_by_func(), dt_control_signal_unblock_by_func(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_PATH, model, and darktable_t::signals.
Referenced by _pop_menu_dictionary().
|
static |
References _init_treeview(), _show_tag_on_view(), dt_lib_module_t::data, dt_lib_tagging_t::dictionary_view, dt_control_log(), DT_LIB_TAGGING_COL_PATH, dt_tag_new(), FALSE, model, TRUE, and view().
Referenced by _pop_menu_dictionary().
|
static |
References _init_treeview(), and _update_atdetach_buttons().
Referenced by _lib_tagging_redraw_callback().
|
static |
References DT_LIB_TAGGING_COL_SEL, DT_TS_NO_IMAGE, DT_TS_SOME_IMAGES, and model.
Referenced by _attach_selected_tag(), _calculate_sel_on_path(), _init_treeview(), and _update_sel_on_tree().
|
static |
References _collection_updated_callback(), _lib_tagging_tags_changed_callback(), dt_lib_tagging_t::collection, darktable, dt_lib_module_t::data, dt_control_signal_block_by_func(), dt_control_signal_unblock_by_func(), DT_DEBUG_CONTROL_SIGNAL_RAISE, DT_SIGNAL_TAG_CHANGED, and darktable_t::signals.
Referenced by _apply_rename_path(), _attach_selected_tag(), _detach_selected_tag(), _event_dnd_received(), _new_button_clicked(), _pop_menu_attached_attach_to_all(), _pop_menu_dictionary_delete_node(), _pop_menu_dictionary_delete_tag(), _pop_menu_dictionary_edit_tag(), and set_params().
|
static |
References _reset_sel_on_path(), DT_LIB_TAGGING_COL_SEL, DT_TS_NO_IMAGE, DT_TS_SOME_IMAGES, FALSE, and model.
Referenced by _calculate_sel_on_tree(), and _reset_sel_on_path().
|
static |
References _reset_sel_on_path_full(), DT_LIB_TAGGING_COL_SEL, DT_TS_NO_IMAGE, FALSE, and model.
Referenced by _reset_sel_on_path_full(), and _update_sel_on_tree().
|
static |
References DT_LIB_TAGGING_COL_FLAGS, DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_SYNONYM, DT_LIB_TAGGING_COL_TAG, DT_TF_PRIVATE, dt_util_dstrcat(), FALSE, flags, model, tooltip, and TRUE.
Referenced by gui_init().
|
static |
|
static |
References _is_user_tag(), _select_previous_user_attached_tag(), _show_iter_on_view(), FALSE, model, TRUE, and view().
Referenced by _detach_selected_tag(), and _enter_key_pressed().
|
static |
References _is_user_tag(), _show_iter_on_view(), FALSE, model, TRUE, and view().
Referenced by _select_next_user_attached_tag().
|
static |
References dt_lib_module_t::data, dt_lib_tagging_t::entry, and dt_lib_tagging_t::keyword.
Referenced by _tag_name_changed(), gui_init(), and gui_reset().
|
static |
References dt_lib_module_t::data, DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_SYNONYM, DT_LIB_TAGGING_COL_VISIBLE, dt_util_dstrcat(), FALSE, dt_lib_tagging_t::keyword, model, dt_lib_tagging_t::tree_flag, and TRUE.
Referenced by _init_treeview(), and _tag_name_changed().
|
static |
References model, TRUE, and view().
Referenced by _select_next_user_attached_tag(), _select_previous_user_attached_tag(), and _show_tag_on_view().
|
static |
References _show_tag_on_view(), TRUE, and view().
Referenced by _enter_key_pressed(), and _tag_name_changed().
|
static |
References _find_tag_iter_tagname(), _show_iter_on_view(), model, and view().
Referenced by _apply_rename_path(), _new_button_clicked(), _pop_menu_dictionary_create_tag(), _pop_menu_dictionary_set_as_tag(), and _show_keyword_on_view().
|
static |
References _get_recent_tags_list_length(), dt_conf_get_string_const(), and dt_conf_set_string().
Referenced by _menuitem_preferences(), and _save_last_tag_used().
|
static |
References dt_lib_tagging_t::attached_liststore, dt_lib_module_t::data, DT_TAG_SORT_COUNT_ID, DT_TAG_SORT_NAME_ID, DT_TAG_SORT_PATH_ID, dt_lib_tagging_t::hide_path_flag, and dt_lib_tagging_t::sort_count_flag.
Referenced by _init_treeview(), _toggle_hide_button_callback(), and _toggle_sort_button_callback().
|
static |
References dt_lib_module_t::data, dt_lib_tagging_t::dictionary_liststore, dt_lib_tagging_t::dictionary_treestore, DT_TAG_SORT_COUNT_ID, DT_TAG_SORT_NAME_ID, DT_TAG_SORT_PATH_ID, dt_lib_tagging_t::hide_path_flag, dt_lib_tagging_t::sort_count_flag, and dt_lib_tagging_t::tree_flag.
Referenced by _init_treeview(), _toggle_hide_button_callback(), and _toggle_sort_button_callback().
|
static |
References DT_LIB_TAGGING_COL_COUNT, and model.
Referenced by gui_init().
|
static |
References DT_LIB_TAGGING_COL_PATH, and model.
Referenced by gui_init().
|
static |
References DT_LIB_TAGGING_COL_TAG, and model.
Referenced by gui_init().
|
static |
|
static |
|
static |
References _sort_attached_list(), _sort_dictionary_list(), _update_layout(), darktable, dt_conf_get_bool(), dt_conf_set_bool(), darktable_t::gui, dt_gui_gtk_t::reset, and TRUE.
Referenced by gui_init().
|
static |
References _sort_attached_list(), _sort_dictionary_list(), _update_layout(), darktable, dt_conf_get_bool(), dt_conf_set_bool(), FALSE, darktable_t::gui, and dt_gui_gtk_t::reset.
Referenced by gui_init().
|
static |
References _init_treeview(), _update_layout(), darktable, dt_conf_get_bool(), dt_conf_set_bool(), darktable_t::gui, and dt_gui_gtk_t::reset.
Referenced by gui_init().
|
static |
References _init_treeview(), _update_layout(), darktable, dt_conf_get_bool(), dt_conf_set_bool(), darktable_t::gui, and dt_gui_gtk_t::reset.
Referenced by gui_init().
|
static |
References DT_LIB_TAGGING_COL_VISIBLE, FALSE, model, and TRUE.
Referenced by _init_treeview(), and _tag_name_changed().
|
static |
References DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_SEL, DT_TS_ALL_IMAGES, DT_TS_NO_IMAGE, DT_TS_SOME_IMAGES, FALSE, model, and TRUE.
Referenced by gui_init().
|
static |
References _update_atdetach_buttons().
Referenced by gui_init().
|
static |
References dt_lib_module_t::data, DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_FLAGS, DT_LIB_TAGGING_COL_ID, DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_TAG, DT_TF_CATEGORY, flags, dt_lib_tagging_t::hide_path_flag, model, name, dt_lib_tagging_t::tree_flag, and TRUE.
Referenced by _tree_tagname_show_attached(), and _tree_tagname_show_dictionary().
|
static |
References _tree_tagname_show(), and model.
Referenced by gui_init().
|
static |
References _tree_tagname_show(), and model.
Referenced by gui_init().
|
static |
References view().
Referenced by _attached_key_pressed(), _click_on_view_attached(), _click_on_view_dictionary(), _dictionary_key_pressed(), and _enter_key_pressed().
|
static |
References _is_user_tag(), dt_lib_tagging_t::attach_button, dt_lib_tagging_t::attached_view, dt_lib_module_t::data, dt_lib_tagging_t::detach_button, dt_lib_tagging_t::dictionary_view, dt_act_on_get_images_nb(), dt_lib_cancel_postponed_update(), FALSE, and model.
Referenced by _click_on_view_attached(), _click_on_view_dictionary(), _collection_updated_callback(), _lib_selection_changed_callback(), _menuitem_preferences(), _postponed_update(), _tree_selection_changed(), gui_init(), and gui_reset().
|
static |
References _calculate_sel_on_tree(), _find_tag_iter_tagid(), DT_LIB_TAGGING_COL_COUNT, DT_LIB_TAGGING_COL_SEL, dt_tag_images_count(), DT_TS_ALL_IMAGES, model, store(), and view().
Referenced by _event_dnd_received(), and set_params().
|
static |
References darktable, dt_lib_module_t::data, dt_lib_tagging_t::dictionary_listfilter, dt_lib_tagging_t::dictionary_treefilter, dt_lib_tagging_t::dictionary_view, dt_conf_get_bool(), dt_lib_tagging_t::dttags_flag, FALSE, darktable_t::gui, dt_lib_tagging_t::hide_path_flag, model, n_targets_tags, dt_gui_gtk_t::reset, dt_lib_tagging_t::sort_count_flag, store(), dt_lib_tagging_t::suggestion_flag, target_list_tags, dt_lib_tagging_t::toggle_dttags_button, dt_lib_tagging_t::toggle_hide_button, dt_lib_tagging_t::toggle_sort_button, dt_lib_tagging_t::toggle_suggestion_button, dt_lib_tagging_t::toggle_tree_button, dt_lib_tagging_t::tree_flag, and TRUE.
Referenced by _toggle_hide_button_callback(), _toggle_sort_button_callback(), _toggle_suggestion_button_callback(), _toggle_tree_button_callback(), and gui_init().
|
static |
References _find_tag_iter_tagid(), _propagate_sel_to_parents(), _reset_sel_on_path_full(), DT_LIB_TAGGING_COL_SEL, dt_tag_free_result(), dt_tag_get_attached(), FALSE, model, and TRUE.
Referenced by _lib_selection_changed_callback().
|
static |
References DT_LIB_TAGGING_COL_PATH, DT_LIB_TAGGING_COL_TAG, FALSE, model, dt_tag_op_t::newtagname, dt_tag_op_t::oldtagname, and dt_tag_op_t::tree_flag.
Referenced by _pop_menu_dictionary_edit_tag().
uint32_t container | ( | dt_lib_module_t * | self | ) |
References DT_UI_CONTAINER_PANEL_LEFT_CENTER.
void * get_params | ( | dt_lib_module_t * | self, |
int * | size | ||
) |
References dt_tag_free_result(), dt_tag_get_attached(), dt_util_dstrcat(), size, and TRUE.
void gui_cleanup | ( | dt_lib_module_t * | self | ) |
References _collection_updated_callback(), _lib_selection_changed_callback(), _lib_tagging_redraw_callback(), _lib_tagging_tags_changed_callback(), dt_lib_tagging_t::collection, darktable, dt_lib_module_t::data, dt_lib_tagging_t::drag, DT_DEBUG_CONTROL_SIGNAL_DISCONNECT, dt_lib_cancel_postponed_update(), dt_lib_tagging_t::path, darktable_t::signals, and dt_lib_tagging_t::tagname.
void gui_init | ( | dt_lib_module_t * | self | ) |
References _attach_button_clicked(), _attached_key_pressed(), _clear_entry_button_callback(), _click_on_view_attached(), _click_on_view_dictionary(), _collection_updated_callback(), _detach_button_clicked(), _dictionary_key_pressed(), _enter_key_pressed(), _event_dnd_begin(), _event_dnd_end(), _event_dnd_get(), _event_dnd_motion(), _event_dnd_received(), _export_button_clicked(), _import_button_clicked(), _init_treeview(), _lib_selection_changed_callback(), _lib_tagging_redraw_callback(), _lib_tagging_tags_changed_callback(), _new_button_clicked(), _row_tooltip_setup(), _set_keyword(), _sort_tree_count_func(), _sort_tree_path_func(), _sort_tree_tag_func(), _tag_name_changed(), _toggle_dttags_button_callback(), _toggle_hide_button_callback(), _toggle_sort_button_callback(), _toggle_suggestion_button_callback(), _toggle_tree_button_callback(), _tree_select_show(), _tree_selection_changed(), _tree_tagname_show_attached(), _tree_tagname_show_dictionary(), _update_atdetach_buttons(), _update_layout(), dt_lib_tagging_t::attach_button, dt_lib_tagging_t::attached_liststore, dt_lib_tagging_t::attached_view, dt_lib_tagging_t::clear_button, dt_lib_tagging_t::collection, darktable, dt_lib_module_t::data, dt_lib_tagging_t::detach_button, dt_lib_tagging_t::dictionary_listfilter, dt_lib_tagging_t::dictionary_liststore, dt_lib_tagging_t::dictionary_treefilter, dt_lib_tagging_t::dictionary_treestore, dt_lib_tagging_t::dictionary_view, dt_lib_tagging_t::drag, dt_accels_disconnect_on_text_input(), dt_action_button_new(), DT_DEBUG_CONTROL_SIGNAL_CONNECT, DT_LIB_TAGGING_COL_VISIBLE, DT_LIB_TAGGING_NUM_COLS, DT_SIGNAL_COLLECTION_CHANGED, DT_SIGNAL_MOUSE_OVER_IMAGE_CHANGE, DT_SIGNAL_SELECTION_CHANGED, DT_SIGNAL_TAG_CHANGED, DT_TAG_SORT_COUNT_ID, DT_TAG_SORT_NAME_ID, DT_TAG_SORT_PATH_ID, dt_ui_scroll_wrap(), dtgtk_button_new(), dtgtk_cairo_paint_check_mark(), dtgtk_cairo_paint_minus_simple(), dtgtk_cairo_paint_multiply_small(), dtgtk_cairo_paint_plus_simple(), dtgtk_cairo_paint_sorting(), dtgtk_cairo_paint_treelist(), dt_lib_tagging_t::dttags_flag, dt_lib_tagging_t::entry, dt_lib_tagging_t::expand_timeout, dt_lib_tagging_t::export_button, FALSE, dt_lib_tagging_t::import_button, dt_lib_tagging_t::last_tag, model, n_targets_tags_dest, dt_lib_tagging_t::new_button, NEW_TOGGLE_BUTTON, dt_lib_tagging_t::path, dt_lib_tagging_t::root, dt_lib_tagging_t::scroll_timeout, darktable_t::signals, dt_lib_tagging_t::tag_source, dt_lib_tagging_t::tagname, target_list_tags_dest, dt_lib_module_t::timeout_handle, dt_lib_tagging_t::toggle_dttags_button, dt_lib_tagging_t::toggle_hide_button, dt_lib_tagging_t::toggle_sort_button, dt_lib_tagging_t::toggle_suggestion_button, dt_lib_tagging_t::toggle_tree_button, TRUE, view(), and dt_lib_module_t::widget.
void gui_reset | ( | dt_lib_module_t * | self | ) |
void init_presets | ( | dt_lib_module_t * | self | ) |
const char * name | ( | struct dt_lib_module_t * | self | ) |
int position | ( | ) |
int set_params | ( | dt_lib_module_t * | self, |
const void * | params, | ||
int | size | ||
) |
void set_preferences | ( | void * | menu, |
dt_lib_module_t * | self | ||
) |
References _menuitem_preferences().
const char ** views | ( | dt_lib_module_t * | self | ) |