Added recent searches menu to the search field

This commit is contained in:
michael starke
2014-03-18 03:43:27 +01:00
parent e222ebf379
commit 32d8d4e92c
2 changed files with 31 additions and 6 deletions

View File

@@ -159,6 +159,8 @@ NSString *const MPToolbarItemSearch = @"TOOLBAR_SEARCH";
/* Use default size base on documentation */
[item setMinSize:NSMakeSize(140, 32)];
[item setMaxSize:NSMakeSize(240, 32)];
NSMenu *templateMenu = [self _allocateSearchMenuTemplate];
[[searchField cell] setSearchMenuTemplate:templateMenu];
self.searchField = searchField;
}
else {
@@ -239,6 +241,29 @@ NSString *const MPToolbarItemSearch = @"TOOLBAR_SEARCH";
return [MPActionHelper actionOfType:actionType];
}
- (NSMenu *)_allocateSearchMenuTemplate {
NSMenu *menu = [[NSMenu alloc] initWithTitle:NSLocalizedString(@"SEARCH_MENU", @"")];
NSMenuItem *item = [[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"CLEAR_RECENT_SEARCHES", @"") action:NULL keyEquivalent:@""];
[item setTag:NSSearchFieldClearRecentsMenuItemTag];
[menu addItem:item];
[menu addItem:[NSMenuItem separatorItem]];
item = [[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"RECENT_SEARCHES", @"") action:NULL keyEquivalent:@""];
[item setTag:NSSearchFieldRecentsTitleMenuItemTag];
[menu addItem:item];
item = [[NSMenuItem alloc] initWithTitle:@"Recents" action:NULL keyEquivalent:@""];
[item setTag:NSSearchFieldRecentsMenuItemTag];
[menu addItem:item];
item = [[NSMenuItem alloc] initWithTitle:@"NoEntries" action:NULL keyEquivalent:@""];
[item setTag:NSSearchFieldNoRecentsMenuItemTag];
[menu addItem:item];
return menu;
}
- (void)_didEnterSearch:(NSNotification *)notification {
/* We enter search. If there is no Item to search in the toolbar, we need to add it */
NSArray *currentItems = [self.toolbar items];