- Edit mode Mesh undo/redo back
  (undo for editmodes needed recode, todo for curve/lattice/etc)
- Added border select for edit mesh
- Added Akey (de)select all for edit mesh
- Added notifiers for mode changes.

This is also the first trial to dynamically add/remove
keymap handlers, based on modes. For that reason the Object
keymap was split in 2, modal and non-modal. On TABkey, the
view3d listener removes and adds maps.

The view3d keymap still handles generic mouse/border selection.
Internally it will verify modes.

The modes are not  re-implemented still... have to move this
to scene context.
This commit is contained in:
2009-01-01 13:15:35 +00:00
parent a1c4d1c735
commit e9a3b4f85d
29 changed files with 433 additions and 170 deletions

View File

@@ -46,14 +46,19 @@ void ED_OT_undo (struct wmOperatorType *ot);
void ED_OT_redo (struct wmOperatorType *ot);
/* undo_editmode.c */
void undo_editmode_push (char *name, void (*freedata)(void *),
void (*to_editmode)(void *), void *(*from_editmode)(void),
int (*validate_undo)(void *));
void undo_editmode_push(struct bContext *C, char *name,
void * (*getdata)(struct bContext *C),
void (*freedata)(void *),
void (*to_editmode)(void *, void *),
void *(*from_editmode)(void *),
int (*validate_undo)(void *, void *));
void *undo_editmode_get_prev (struct Object *ob);
struct uiBlock *editmode_undohistorymenu(struct bContext *C, struct uiMenuBlockHandle *handle, void *arg_unused);
void undo_editmode_menu (void);
void undo_editmode_menu (struct bContext *C);
void undo_editmode_clear (void);
void undo_editmode_step (int step);
void undo_editmode_step (struct bContext *C, int step);
/* ************** XXX OLD CRUFT WARNING ************* */