Revision: 28269
          http://sourceforge.net/p/bibdesk/svn/28269
Author:   hofman
Date:     2023-05-30 14:39:06 +0000 (Tue, 30 May 2023)
Log Message:
-----------
add method to call when dismissing a sheet. Use it to cclear object controllers.

Modified Paths:
--------------
    trunk/bibdesk/BDSKFieldSheetController.m
    trunk/bibdesk/BDSKFilterController.m
    trunk/bibdesk/BDSKScriptGroupSheetController.m
    trunk/bibdesk/BDSKURLGroupSheetController.m
    trunk/bibdesk/NSWindowController_BDSKExtensions.h
    trunk/bibdesk/NSWindowController_BDSKExtensions.m

Modified: trunk/bibdesk/BDSKFieldSheetController.m
===================================================================
--- trunk/bibdesk/BDSKFieldSheetController.m    2023-05-28 21:24:19 UTC (rev 
28268)
+++ trunk/bibdesk/BDSKFieldSheetController.m    2023-05-30 14:39:06 UTC (rev 
28269)
@@ -129,11 +129,14 @@
 
 - (IBAction)dismiss:(id)sender {
     if ([sender tag] == NSCancelButton || [objectController commitEditing]) {
-        [objectController setContent:nil];
         [super dismiss:sender];
     }
 }
 
+- (void)didDismissSheet {
+    [objectController setContent:nil];
+}
+
 #pragma mark Touch Bar
 
 - (NSTouchBar *)makeTouchBar {

Modified: trunk/bibdesk/BDSKFilterController.m
===================================================================
--- trunk/bibdesk/BDSKFilterController.m        2023-05-28 21:24:19 UTC (rev 
28268)
+++ trunk/bibdesk/BDSKFilterController.m        2023-05-30 14:39:06 UTC (rev 
28269)
@@ -125,10 +125,13 @@
 - (IBAction)dismiss:(id)sender {
     if ([sender tag] == NSOKButton && [self commitEditing] == NO) {
         NSBeep();
-        return;
+    } else {
+        [super dismiss:sender];
     }
+}
+
+- (void)didDismissSheet {
     [conditionControllers setValue:nil forKey:@"filterController"];
-    [super dismiss:sender];
 }
 
 - (void)insertNewConditionAfter:(BDSKConditionController 
*)aConditionController {

Modified: trunk/bibdesk/BDSKScriptGroupSheetController.m
===================================================================
--- trunk/bibdesk/BDSKScriptGroupSheetController.m      2023-05-28 21:24:19 UTC 
(rev 28268)
+++ trunk/bibdesk/BDSKScriptGroupSheetController.m      2023-05-30 14:39:06 UTC 
(rev 28269)
@@ -115,12 +115,13 @@
 - (IBAction)dismiss:(id)sender {
     if ([sender tag] == NSOKButton && [self commitEditing] == NO) {
         NSBeep();
-        return;
+    } else {
+        [super dismiss:sender];
     }
-    
+}
+
+- (void)didDismissSheet {
     [objectController setContent:nil];
-    
-    [super dismiss:sender];
 }
 
 // open panel delegate method

Modified: trunk/bibdesk/BDSKURLGroupSheetController.m
===================================================================
--- trunk/bibdesk/BDSKURLGroupSheetController.m 2023-05-28 21:24:19 UTC (rev 
28268)
+++ trunk/bibdesk/BDSKURLGroupSheetController.m 2023-05-30 14:39:06 UTC (rev 
28269)
@@ -88,12 +88,13 @@
 - (IBAction)dismiss:(id)sender {
     if ([sender tag] == NSOKButton && [self commitEditing] == NO) {
         NSBeep();
-        return;
+    } else {
+        [super dismiss:sender];
     }
-    
+}
+
+- (void)didDismissSheet {
     [objectController setContent:nil];
-    
-    [super dismiss:sender];
 }
 
 - (IBAction)chooseURL:(id)sender {

Modified: trunk/bibdesk/NSWindowController_BDSKExtensions.h
===================================================================
--- trunk/bibdesk/NSWindowController_BDSKExtensions.h   2023-05-28 21:24:19 UTC 
(rev 28268)
+++ trunk/bibdesk/NSWindowController_BDSKExtensions.h   2023-05-30 14:39:06 UTC 
(rev 28269)
@@ -52,4 +52,6 @@
 
 - (IBAction)dismiss:(id)sender;
 
+- (void)didDismissSheet;
+
 @end

Modified: trunk/bibdesk/NSWindowController_BDSKExtensions.m
===================================================================
--- trunk/bibdesk/NSWindowController_BDSKExtensions.m   2023-05-28 21:24:19 UTC 
(rev 28268)
+++ trunk/bibdesk/NSWindowController_BDSKExtensions.m   2023-05-30 14:39:06 UTC 
(rev 28269)
@@ -98,10 +98,13 @@
     [window beginSheet:[self window] completionHandler:handler];
 }
 
+- (void)didDismissSheet {}
+
 - (IBAction)dismiss:(id)sender {
     NSWindow *window = [[self window] sheetParent];
     if (window) {
         [window endSheet:[self window] returnCode:[sender tag]];
+        [self didDismissSheet];
         [self autorelease];
     }
 }

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



_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit

Reply via email to