]> git.sesse.net Git - vlc/commitdiff
OSX: adapt to error dialog changes (untested)
authorRémi Denis-Courmont <remi@remlab.net>
Sat, 4 Jul 2009 21:48:10 +0000 (00:48 +0300)
committerRémi Denis-Courmont <remi@remlab.net>
Sat, 4 Jul 2009 21:50:14 +0000 (00:50 +0300)
The code (with or without this patch) looks quite fishy though.
Fortunately, I do not understand Objective-C, so I can blindly assume
it is correct.

modules/gui/macosx/coredialogs.h
modules/gui/macosx/coredialogs.m
modules/gui/macosx/intf.m

index fe3a126938b6d39fde970cb260107d413720ae77..66b2f8ba8404082c039d21c84b822657f6432a6f 100644 (file)
@@ -81,6 +81,7 @@
 -(void)performDialogEvent: (NSNotification *)o_notification;
 
 -(void)showFatalDialog: (NSValue *)o_value;
+-(void)showFatalWaitDialog: (NSValue *)o_value;
 -(void)showQuestionDialog: (NSValue *)o_value;
 
 -(void)showLoginDialog: (NSValue *)o_value;
@@ -94,4 +95,4 @@
 
 -(id)errorPanel;
 
-@end
\ No newline at end of file
+@end
index bccfe3e1e0c84ad0084d1b59c204129862137cc2..078d4ba21d09365f72754492cdd7a2c79cf5541c 100644 (file)
@@ -75,8 +75,10 @@ static VLCCoreDialogProvider *_o_sharedInstance = nil;
     NSValue *o_value = [[o_notification userInfo] objectForKey:@"VLCDialogPointer"];
     NSString *o_type = [[o_notification userInfo] objectForKey:@"VLCDialogType"];
 
-    if( [o_type isEqualToString: @"dialog-fatal"] )
+    if( [o_type isEqualToString: @"dialog-error"] )
         [self showFatalDialog: o_value];
+    else if( [o_type isEqualToString: @"dialog-critical"] )
+        [self showFatalWaitDialog: o_value];
     else if( [o_type isEqualToString: @"dialog-question"] )
         [self showQuestionDialog: o_value];
     else if( [o_type isEqualToString: @"dialog-login"] )
@@ -90,19 +92,19 @@ static VLCCoreDialogProvider *_o_sharedInstance = nil;
 -(void)showFatalDialog: (NSValue *)o_value
 {
     dialog_fatal_t *p_dialog = [o_value pointerValue];
-    /* do we need to block ? */
-    if( p_dialog->modal == YES )
-    {
-        NSAlert *o_alert;
-        o_alert = [NSAlert alertWithMessageText: [NSString stringWithUTF8String: p_dialog->title] defaultButton: _NS("OK") alternateButton: nil otherButton: nil informativeTextWithFormat: [NSString stringWithUTF8String: p_dialog->message]];
-        [o_alert setAlertStyle: NSCriticalAlertStyle];
-        [o_alert runModal];
-    }
-    else
-    {
-        [o_error_panel addError: [NSString stringWithUTF8String: p_dialog->title] withMsg: [NSString stringWithUTF8String: p_dialog->message]];
-        [o_error_panel showPanel];
-    }
+
+    [o_error_panel addError: [NSString stringWithUTF8String: p_dialog->title] withMsg: [NSString stringWithUTF8String: p_dialog->message]];
+    [o_error_panel showPanel];
+}
+
+-(void)showFatalWaitDialog: (NSValue *)o_value
+{
+    dialog_fatal_t *p_dialog = [o_value pointerValue];
+    NSAlert *o_alert;
+
+    o_alert = [NSAlert alertWithMessageText: [NSString stringWithUTF8String: p_dialog->title] defaultButton: _NS("OK") alternateButton: nil otherButton: nil informativeTextWithFormat: [NSString stringWithUTF8String: p_dialog->message]];
+    [o_alert setAlertStyle: NSCriticalAlertStyle];
+    [o_alert runModal];
 }
 
 -(void)showQuestionDialog: (NSValue *)o_value
index 28cef2c7b410124c4db944173e8d642bbb64c9d2..de53ee1f66fc8b5f12446b4bef0e5332ce16b96c 100644 (file)
@@ -523,8 +523,10 @@ static VLCMain *_o_sharedMainInstance = nil;
     nib_coredialogs_loaded = [NSBundle loadNibNamed:@"CoreDialogs" owner: NSApp];
     
     /* subscribe to various interactive dialogues */
-    var_Create( p_intf, "dialog-fatal", VLC_VAR_ADDRESS );
-    var_AddCallback( p_intf, "dialog-fatal", DialogCallback, self );
+    var_Create( p_intf, "dialog-error", VLC_VAR_ADDRESS );
+    var_AddCallback( p_intf, "dialog-error", DialogCallback, self );
+    var_Create( p_intf, "dialog-critical", VLC_VAR_ADDRESS );
+    var_AddCallback( p_intf, "dialog-critical", DialogCallback, self );
     var_Create( p_intf, "dialog-login", VLC_VAR_ADDRESS );
     var_AddCallback( p_intf, "dialog-login", DialogCallback, self );
     var_Create( p_intf, "dialog-question", VLC_VAR_ADDRESS );
@@ -817,7 +819,8 @@ static VLCMain *_o_sharedMainInstance = nil;
 
     /* unsubscribe from the interactive dialogues */
     dialog_Unregister( p_intf );
-    var_DelCallback( p_intf, "dialog-fatal", DialogCallback, self );
+    var_DelCallback( p_intf, "dialog-error", DialogCallback, self );
+    var_DelCallback( p_intf, "dialog-critical", DialogCallback, self );
     var_DelCallback( p_intf, "dialog-login", DialogCallback, self );
     var_DelCallback( p_intf, "dialog-question", DialogCallback, self );
     var_DelCallback( p_intf, "dialog-progress-bar", DialogCallback, self );