version 1.34, 2002/02/21 15:27:29 |
version 1.35, 2002/02/26 00:45:45 |
|
|
#define WFHARD 0x08 /* Better to a full display. */ |
#define WFHARD 0x08 /* Better to a full display. */ |
#define WFMODE 0x10 /* Update mode line. */ |
#define WFMODE 0x10 /* Update mode line. */ |
|
|
|
struct undo_rec; |
|
|
/* |
/* |
* Text is kept in buffers. A buffer header, described |
* Text is kept in buffers. A buffer header, described |
* below, exists for every buffer in the system. The buffers are |
* below, exists for every buffer in the system. The buffers are |
|
|
char b_flag; /* Flags */ |
char b_flag; /* Flags */ |
char b_fname[NFILEN];/* File name */ |
char b_fname[NFILEN];/* File name */ |
struct fileinfo b_fi; /* File attributes */ |
struct fileinfo b_fi; /* File attributes */ |
|
LIST_HEAD(, undo_rec) b_undo; /* Undo actions list */ |
} BUFFER; |
} BUFFER; |
#define b_bufp b_list.l_p.x_bp |
#define b_bufp b_list.l_p.x_bp |
#define b_bname b_list.l_name |
#define b_bname b_list.l_name |
|
|
*/ |
*/ |
struct undo_rec { |
struct undo_rec { |
LIST_ENTRY(undo_rec) next; |
LIST_ENTRY(undo_rec) next; |
BUFFER *buf; |
|
enum { |
enum { |
INSERT = 1, |
INSERT = 1, |
DELETE, |
DELETE, |
|
|
int size; |
int size; |
char *content; |
char *content; |
}; |
}; |
|
|
LIST_HEAD(undo_list, undo_rec); |
|
|
|
/* |
/* |
* Prototypes. |
* Prototypes. |
|
|
#endif /* REGEX */ |
#endif /* REGEX */ |
|
|
/* undo.c X */ |
/* undo.c X */ |
|
void free_undo_record(struct undo_rec *); |
int undo_init(void); |
int undo_init(void); |
int undo_enable(int); |
int undo_enable(int); |
int undo_add_custom(int, LINE *, int, void *, int); |
int undo_add_custom(int, LINE *, int, void *, int); |