Refactored the selection tracking to be in the document now

Filtering should work reliably now. No "sticking" of entries
Fixed #42. Deleted entries now result in desolation.
This commit is contained in:
michael starke
2013-07-24 01:05:49 +02:00
parent 8087085fc0
commit 4a35d0d4ff
29 changed files with 1713 additions and 1444 deletions

View File

@@ -11,9 +11,7 @@
APPKIT_EXTERN NSString *const MPDocumentDidAddGroupNotification;
APPKIT_EXTERN NSString *const MPDocumentWillDelteGroupNotification;
APPKIT_EXTERN NSString *const MPDocumentDidAddEntryNotification;
APPKIT_EXTERN NSString *const MPDocumentWillDeleteEntryNotification;
APPKIT_EXTERN NSString *const MPDocumentDidRevertNotifiation;
APPKIT_EXTERN NSString *const MPDocumentEntryKey;
@@ -21,6 +19,12 @@ APPKIT_EXTERN NSString *const MPDocumentGroupKey;
APPKIT_EXTERN NSString *const MPDocumentRequestPasswordSaveNotification;
/*
APPKIT_EXTERN NSString *const MPDocumentDidChangeCurrentItemNotification;
APPKIT_EXTERN NSString *const MPDocumentDidChangeCurrentGroupNotication;
APPKIT_EXTERN NSString *const MPDocumnetDidChangeCurrentEntryNotification;
*/
@class KdbGroup;
@class KdbEntry;
@class KdbTree;
@@ -53,6 +57,14 @@ APPKIT_EXTERN NSString *const MPDocumentRequestPasswordSaveNotification;
@property (assign, readonly, getter = isReadOnly) BOOL readOnly;
/*
State (active group/entry)
*/
@property (nonatomic, weak) KdbEntry *selectedEntry;
@property (nonatomic, weak) KdbGroup *selectedGroup;
@property (nonatomic, weak) id selectedItem;
- (id)initWithVersion:(MPDatabaseVersion)version;
#pragma mark Lock/Decrypt
@@ -94,7 +106,7 @@ APPKIT_EXTERN NSString *const MPDocumentRequestPasswordSaveNotification;
- (void)deleteGroup:(KdbGroup *)group;
- (void)deleteEntry:(KdbEntry *)entry;
- (void)emptyTrash:(id)sender;
- (IBAction)emptyTrash:(id)sender;
@end