Added Template editing.

Creating with templates not supported yet.

Templates are listed in Context-Menu under the AddEntry Toolbar
Toolbar Button is missing an Arrow for now. Control-Size is not working correctly for now
Nested Template or Trash groups aren't considered, this is a bug!
Minor changes to the UI (Settings tabs now use common icons)
Added Workflow-Settings tab to extract all the custom action possible on entries. The copy or open on URL dbl-click setting will move over to this tab.
This commit is contained in:
michael starke
2013-07-30 20:37:59 +02:00
parent 80d9dfb1cb
commit 31f456929c
32 changed files with 1256 additions and 462 deletions

View File

@@ -318,6 +318,7 @@
if(tree) {
[self.defaultUsernameTextField setStringValue:tree.defaultUserName];
[self.defaultUsernameTextField setEditable:YES];
[self _updateTemplateGroup:tree];
}
else {
[self.defaultUsernameTextField setStringValue:_missingFeature];
@@ -357,11 +358,12 @@
}
- (void)_updateTemplateGroup:(Kdb4Tree *)tree {
//
NSMenu *menu = [self _buildTemplateTreeMenu:tree];
[self.templateGroupPopUpButton setMenu:menu];
}
- (NSMenu *)_buildTrashTreeMenu:(Kdb4Tree *)tree {
NSMenu *menu = [self _buildTreeMenu:tree];
NSMenu *menu = [self _buildTreeMenu:tree preselect:tree.recycleBinUuid];
NSMenuItem *selectItem = [[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"AUTOCREATE_TRASH_FOLDER", @"Menu item for automatic trash creation")
action:NULL
@@ -373,7 +375,7 @@
}
- (NSMenu *)_buildTemplateTreeMenu:(Kdb4Tree *)tree {
NSMenu *menu = [self _buildTreeMenu:tree];
NSMenu *menu = [self _buildTreeMenu:tree preselect:tree.entryTemplatesGroup];
NSMenuItem *selectItem = [[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"NO_TEMPLATE_GROUP", @"Menu item to reset the template groups")
action:NULL
@@ -385,17 +387,22 @@
}
- (NSMenu *)_buildTreeMenu:(Kdb4Tree *)tree {
- (NSMenu *)_buildTreeMenu:(Kdb4Tree *)tree preselect:(UUID *)uuid {
NSMenu *menu = [[NSMenu alloc] init];
[menu setAutoenablesItems:NO];
/*
Trash and Templates can be nested, so wee need to adhere to this :(
*/
for(Kdb4Group *group in tree.root.groups) {
NSMenuItem *groupItem = [[NSMenuItem alloc] init];
[groupItem setImage:group.icon];
[groupItem setTitle:group.name];
[groupItem setRepresentedObject:group];
[groupItem setEnabled:YES];
if([group.uuid isEqual:tree.recycleBinUuid]) {
if(uuid && [group.uuid isEqual:uuid]) {
[groupItem setState:NSOnState];
}
[menu addItem:groupItem];