Revision: 18048
          http://bibdesk.svn.sourceforge.net/bibdesk/?rev=18048&view=rev
Author:   hofman
Date:     2011-08-07 16:32:06 +0000 (Sun, 07 Aug 2011)

Log Message:
-----------
remove recent searches and search menu template from search field while doing 
file content search, remember them for when we're removing that

Modified Paths:
--------------
    trunk/bibdesk/BDSKFileContentSearchController.h
    trunk/bibdesk/BDSKFileContentSearchController.m

Modified: trunk/bibdesk/BDSKFileContentSearchController.h
===================================================================
--- trunk/bibdesk/BDSKFileContentSearchController.h     2011-08-07 15:26:51 UTC 
(rev 18047)
+++ trunk/bibdesk/BDSKFileContentSearchController.h     2011-08-07 16:32:06 UTC 
(rev 18048)
@@ -79,6 +79,8 @@
     BOOL searchFieldDidEndEditing;
     
     NSSearchField *searchField;
+    NSMenu *savedSearchMenuTemplate;
+    NSArray *savedRecentSearches;
 }
 
 // Use this method to instantiate a search controller for use within a 
document window

Modified: trunk/bibdesk/BDSKFileContentSearchController.m
===================================================================
--- trunk/bibdesk/BDSKFileContentSearchController.m     2011-08-07 15:26:51 UTC 
(rev 18047)
+++ trunk/bibdesk/BDSKFileContentSearchController.m     2011-08-07 16:32:06 UTC 
(rev 18048)
@@ -89,6 +89,9 @@
     BDSKDESTROY(results);
     BDSKDESTROY(filteredResults);
     BDSKDESTROY(filterURLs);
+    BDSKDESTROY(searchField);
+    BDSKDESTROY(savedSearchMenuTemplate);
+    BDSKDESTROY(savedRecentSearches);
     [super dealloc];
 }
 
@@ -201,17 +204,31 @@
 
 - (void)setSearchField:(NSSearchField *)aSearchField
 {
+    if (searchField == aSearchField)
+        return;
+    
     if (nil != searchField) {
         // disconnect the current searchfield
+        [savedSearchMenuTemplate release];
+        savedSearchMenuTemplate = [[[searchField cell] searchMenuTemplate] 
retain];
+        [savedRecentSearches release];
+        savedRecentSearches = [[[searchField cell] recentSearches] retain];
         [searchField setTarget:nil];
         [searchField setDelegate:nil];  
+        [[searchField cell] setSearchMenuTemplate:nil];
+        [[searchField cell] setRecentSearches:nil];
     }
     
-    searchField = aSearchField;
+    [searchField release];
+    searchField = [aSearchField retain];
     
     if (nil != searchField) {
         [searchField setTarget:self];
         [searchField setDelegate:self];
+        [[searchField cell] setSearchMenuTemplate:savedSearchMenuTemplate];
+        [[searchField cell] setRecentSearches:savedRecentSearches];
+        BDSKDESTROY(savedSearchMenuTemplate);
+        BDSKDESTROY(savedRecentSearches);
         [self search:searchField];
     }     
 }


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA
The must-attend event for mobile developers. Connect with experts. 
Get tools for creating Super Apps. See the latest technologies.
Sessions, hands-on labs, demos & much more. Register early & save!
http://p.sf.net/sfu/rim-blackberry-1
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit

Reply via email to