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

Go to the source code of this file.

Data Structures

struct  dt_undo_t
 

Typedefs

typedef enum dt_undo_type_t dt_undo_type_t
 
typedef enum dt_undo_action_t dt_undo_action_t
 
typedef voiddt_undo_data_t
 
typedef struct dt_undo_t dt_undo_t
 

Enumerations

enum  dt_undo_type_t {
  DT_UNDO_NONE = 0 ,
  DT_UNDO_GEOTAG = 1 << 0 ,
  DT_UNDO_HISTORY = 1 << 1 ,
  DT_UNDO_MASK = 1 << 2 ,
  DT_UNDO_RATINGS = 1 << 3 ,
  DT_UNDO_COLORLABELS = 1 << 4 ,
  DT_UNDO_TAGS = 1 << 5 ,
  DT_UNDO_METADATA = 1 << 6 ,
  DT_UNDO_LT_HISTORY = 1 << 7 ,
  DT_UNDO_FLAGS = 1 << 8 ,
  DT_UNDO_DATETIME = 1 << 9 ,
  DT_UNDO_DUPLICATE = 1 << 10 ,
  DT_UNDO_DEVELOP ,
  DT_UNDO_LIGHTTABLE ,
  DT_UNDO_MAP = DT_UNDO_GEOTAG | DT_UNDO_TAGS | DT_UNDO_DATETIME ,
  DT_UNDO_ALL = DT_UNDO_MAP | DT_UNDO_DEVELOP | DT_UNDO_LIGHTTABLE
}
 
enum  dt_undo_action_t {
  DT_ACTION_UNDO ,
  DT_ACTION_REDO
}
 

Functions

dt_undo_tdt_undo_init (void)
 
void dt_undo_cleanup (dt_undo_t *self)
 
void dt_undo_start_group (dt_undo_t *self, dt_undo_type_t type)
 
void dt_undo_end_group (dt_undo_t *self)
 
void dt_undo_record (dt_undo_t *self, gpointer user_data, dt_undo_type_t type, dt_undo_data_t data, void(*undo)(gpointer user_data, dt_undo_type_t type, dt_undo_data_t item, dt_undo_action_t action, GList **imgs), void(*free_data)(gpointer data))
 
void dt_undo_do_undo (dt_undo_t *self, uint32_t filter)
 
void dt_undo_do_redo (dt_undo_t *self, uint32_t filter)
 
void dt_undo_clear (dt_undo_t *self, uint32_t filter)
 
void dt_undo_iterate_internal (dt_undo_t *self, uint32_t filter, gpointer user_data, void(*apply)(gpointer user_data, dt_undo_type_t type, dt_undo_data_t item))
 
void dt_undo_iterate (dt_undo_t *self, uint32_t filter, gpointer user_data, void(*apply)(gpointer user_data, dt_undo_type_t type, dt_undo_data_t item))
 
void dt_undo_disable_next (dt_undo_t *self)
 
gboolean dt_is_undo_list_populated (dt_undo_t *self, uint32_t filter)
 
gboolean dt_is_redo_list_populated (dt_undo_t *self, uint32_t filter)
 

Typedef Documentation

◆ dt_undo_action_t

◆ dt_undo_data_t

typedef void* dt_undo_data_t

◆ dt_undo_t

typedef struct dt_undo_t dt_undo_t

◆ dt_undo_type_t

Enumeration Type Documentation

◆ dt_undo_action_t

Enumerator
DT_ACTION_UNDO 
DT_ACTION_REDO 

◆ dt_undo_type_t

Enumerator
DT_UNDO_NONE 
DT_UNDO_GEOTAG 
DT_UNDO_HISTORY 
DT_UNDO_MASK 
DT_UNDO_RATINGS 
DT_UNDO_COLORLABELS 
DT_UNDO_TAGS 
DT_UNDO_METADATA 
DT_UNDO_LT_HISTORY 
DT_UNDO_FLAGS 
DT_UNDO_DATETIME 
DT_UNDO_DUPLICATE 
DT_UNDO_DEVELOP 
DT_UNDO_LIGHTTABLE 
DT_UNDO_MAP 
DT_UNDO_ALL 

Function Documentation

◆ dt_is_redo_list_populated()

gboolean dt_is_redo_list_populated ( dt_undo_t self,
uint32_t  filter 
)

◆ dt_is_undo_list_populated()

gboolean dt_is_undo_list_populated ( dt_undo_t self,
uint32_t  filter 
)

◆ dt_undo_cleanup()

void dt_undo_cleanup ( dt_undo_t self)

◆ dt_undo_clear()

◆ dt_undo_disable_next()

void dt_undo_disable_next ( dt_undo_t self)

◆ dt_undo_do_redo()

void dt_undo_do_redo ( dt_undo_t self,
uint32_t  filter 
)

References _undo_do_undo_redo(), and DT_ACTION_REDO.

Referenced by redo_callback().

◆ dt_undo_do_undo()

void dt_undo_do_undo ( dt_undo_t self,
uint32_t  filter 
)

References _undo_do_undo_redo(), and DT_ACTION_UNDO.

Referenced by undo_callback().

◆ dt_undo_end_group()

◆ dt_undo_init()

◆ dt_undo_iterate()

void dt_undo_iterate ( dt_undo_t self,
uint32_t  filter,
gpointer  user_data,
void(*)(gpointer user_data, dt_undo_type_t type, dt_undo_data_t item)  apply 
)

◆ dt_undo_iterate_internal()

void dt_undo_iterate_internal ( dt_undo_t self,
uint32_t  filter,
gpointer  user_data,
void(*)(gpointer user_data, dt_undo_type_t type, dt_undo_data_t item)  apply 
)

◆ dt_undo_record()

◆ dt_undo_start_group()