KiCad PCB EDA Suite
undo_redo_container.h File Reference
#include <vector>
#include <base_struct.h>

Go to the source code of this file.

Classes

class  ITEM_PICKER
 
class  PICKED_ITEMS_LIST
 PICKED_ITEMS_LIST is a holder to handle information on schematic or board items. More...
 
class  UNDO_REDO_CONTAINER
 UNDO_REDO_CONTAINER is a holder to handle alist of undo (or redo) command. More...
 

Macros

#define _CLASS_UNDOREDO_CONTAINER_H
 

Enumerations

enum  UNDO_REDO_T {
  UR_UNSPECIFIED = 0, UR_CHANGED, UR_NEW, UR_DELETED,
  UR_MOVED, UR_MIRRORED_X, UR_MIRRORED_Y, UR_ROTATED,
  UR_ROTATED_CLOCKWISE, UR_FLIPPED, UR_LIBEDIT, UR_LIB_RENAME,
  UR_EXCHANGE_T, UR_DRILLORIGIN, UR_GRIDORIGIN, UR_PAGESETTINGS
}
 Undo Redo considerations: Basically we have 3 cases New item Deleted item Modified item there is also a specific case in Eeschema, when wires are modified If an item is modified, a copy of the "old" item parameters value is held. More...
 

Macro Definition Documentation

◆ _CLASS_UNDOREDO_CONTAINER_H

#define _CLASS_UNDOREDO_CONTAINER_H

Enumeration Type Documentation

◆ UNDO_REDO_T

Undo Redo considerations: Basically we have 3 cases New item Deleted item Modified item there is also a specific case in Eeschema, when wires are modified If an item is modified, a copy of the "old" item parameters value is held.

When an item is deleted or added (new item) the pointer points the item, and there is no other copy.

Enumerator
UR_UNSPECIFIED 
UR_CHANGED 
UR_NEW 
UR_DELETED 
UR_MOVED 
UR_MIRRORED_X 
UR_MIRRORED_Y 
UR_ROTATED 
UR_ROTATED_CLOCKWISE 
UR_FLIPPED 
UR_LIBEDIT 
UR_LIB_RENAME 
UR_EXCHANGE_T 
UR_DRILLORIGIN 
UR_GRIDORIGIN 
UR_PAGESETTINGS 

Definition at line 52 of file undo_redo_container.h.

52  {
53  UR_UNSPECIFIED = 0, // illegal
54  UR_CHANGED, // params of items have a value changed: undo is made by exchange
55  // values with a copy of these values
56  UR_NEW, // new item, undo by changing in deleted
57  UR_DELETED, // deleted item, undo by changing in deleted
58  UR_MOVED, // moved item, undo by move it
59  UR_MIRRORED_X, // mirrored item, undo by mirror X
60  UR_MIRRORED_Y, // mirrored item, undo by mirror Y
61  UR_ROTATED, // Rotated item (counterclockwise), undo by rotating it
62  UR_ROTATED_CLOCKWISE, // Rotated item (clockwise), undo by rotating it
63  UR_FLIPPED, // flipped (board items only), undo by flipping it
64  UR_LIBEDIT, // Specific to the component editor (libedit creates a full copy
65  // of the current component when changed)
66  UR_LIB_RENAME, // As UR_LIBEDIT, but old copy should be removed from library
67  UR_EXCHANGE_T, // Use for changing the schematic text type where swapping
68  // data structure is insufficient to restore the change.
69  UR_DRILLORIGIN, // origin changed (like UR_CHANGED, contains the origin and a copy)
70  UR_GRIDORIGIN, // origin changed (like UR_CHANGED, contains the origin and a copy)
71  UR_PAGESETTINGS // page settings or title block changes
72 };