Re: exception panel userInfo browser
Hi Matt, hope I did not block you by not replying. I was away this week and gave up on reading mails while travelling some time ago. To me this patch looks great so go ahead. What could be added is translatability of the texts, but this is missing in the whole file. We need to add this at some point in time, not now. Cheers Fred Matt Rice schrieb: alright i did this stuff, and managed to get it working in an external panel, so no more exception panel resizing and ugly box hack ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: exception panel userInfo browser
On 27 Oct 2006, at 10:38, Fred Kiefer wrote: Hi Matt, hope I did not block you by not replying. I was away this week and gave up on reading mails while travelling some time ago. To me this patch looks great so go ahead. What could be added is translatability of the texts, but this is missing in the whole file. We need to add this at some point in time, not now. I have to confess to not having reviewed the code at all ... but I heartily approve of the idea. Maybe it's the geek in me, but I really like having little bits of semi-hidden functionality in the gui ... stuff that's useful for experts but not much good to naive users and shouldn't clutter the normally visible gui. ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: exception panel userInfo browser
--- Richard Frith-Macdonald [EMAIL PROTECTED] wrote: On 27 Oct 2006, at 10:38, Fred Kiefer wrote: Hi Matt, hope I did not block you by not replying. I was away this week and gave up on reading mails while travelling some time ago. no not really To me this patch looks great so go ahead. What could be added is translatability of the texts, but this is missing in the whole file. We need to add this at some point in time, not now. I have to confess to not having reviewed the code at all ... but I heartily approve of the idea. Maybe it's the geek in me, but I really like having little bits of semi-hidden functionality in the gui ... stuff that's useful for experts but not much good to naive users and shouldn't clutter the normally visible gui. well the browser delegate code isn't very pretty or the best tested, mainly because i want to be able to browse things which return property list descriptions which are not normal collection classes of NSDictionary/NSArray (I think NSSet should probably be added) this leads to some interesting behaviour e.g. browsing may show the incorrect class for non-top level objects, I was considering maybe adding a button, 'view property list representation' or something. and insertion of placeholder nodes for arrays e.g. array = (foo, bar, NSArray); anyhow i guess i'll commit as any changes should be isolated to the browser delegate.. __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: exception panel userInfo browser
Matt Rice schrieb: not sure if anyone is opposed to adding something like this... it provides a userInfo browser to the exception panel which gets shown when you click on the icon in the upper left hand corner. i find it very useful when doing key value coding stuff and you have dictionaries with arrays of dictionaries and stuff it isn't the most polished looking but it does the job. Hi Matt, the idea of the panel itself seems nice, but why do you add it via getSomePanel(). As you did not change NSReleaseAlertPanel() you wont have a benefit from this. For me it would seem easier, if you just created the panel manually without caching. This will reduce the size of your patch. Cheers Fred ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: exception panel userInfo browser
--- Fred Kiefer [EMAIL PROTECTED] wrote: Matt Rice schrieb: not sure if anyone is opposed to adding something like this... it provides a userInfo browser to the exception panel which gets shown when you click on the icon in the upper left hand corner. i find it very useful when doing key value coding stuff and you have dictionaries with arrays of dictionaries and stuff it isn't the most polished looking but it does the job. Hi Matt, the idea of the panel itself seems nice, but why do you add it via getSomePanel(). As you did not change NSReleaseAlertPanel() you wont have a benefit from this. For me it would seem easier, if you just created the panel manually without caching. This will reduce the size of your patch. ahh, i accidentally deleted this patch when commiting the NSApplication stuff yesterday and had to rewrite it and forgot about the NSReleaseAlertPanel part. anyhow it will make the patch simpler, and the caching is moot because you will never be able to see 2 exception panels. Cheers Fred __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
exception panel userInfo browser
not sure if anyone is opposed to adding something like this... it provides a userInfo browser to the exception panel which gets shown when you click on the icon in the upper left hand corner. i find it very useful when doing key value coding stuff and you have dictionaries with arrays of dictionaries and stuff it isn't the most polished looking but it does the job. __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com Index: Source/NSAlert.m === --- Source/NSAlert.m(revision 23935) +++ Source/NSAlert.m(working copy) @@ -163,10 +163,12 @@ @class GSAlertPanel; [EMAIL PROTECTED] GSExceptionPanel; static GSAlertPanel*standardAlertPanel = nil; static GSAlertPanel*informationalAlertPanel = nil; static GSAlertPanel*criticalAlertPanel = nil; +static GSAlertPanel*nonstandardExceptionPanel = nil; @interface GSAlertPanel: NSPanel { @@ -869,6 +871,7 @@ static GSAlertPanel* getSomePanel( GSAlertPanel **instance, + Class panelClass, NSString *defaultTitle, NSString *title, NSString *message, @@ -882,7 +885,7 @@ { if ([*instance isActivePanel]) { // c: - panel = [[GSAlertPanel alloc] init]; + panel = [[panelClass alloc] init]; } else { // b: @@ -891,7 +894,7 @@ } else { // a: - panel = [[GSAlertPanel alloc] init]; + panel = [[panelClass alloc] init]; *instance = panel; } @@ -928,8 +931,8 @@ message = [NSString stringWithFormat: msg arguments: ap]; va_end(ap); - return getSomePanel(standardAlertPanel, defaultTitle, title, message, -defaultButton, alternateButton, otherButton); + return getSomePanel(standardAlertPanel, [GSAlertPanel class], defaultTitle, + title, message, defaultButton, alternateButton, otherButton); } int @@ -954,8 +957,8 @@ defaultButton = @OK; } - panel = getSomePanel(standardAlertPanel, defaultTitle, title, message, -defaultButton, alternateButton, otherButton); + panel = getSomePanel(standardAlertPanel, [GSAlertPanel class], defaultTitle, + title, message, defaultButton, alternateButton, otherButton); result = [panel runModal]; NSReleaseAlertPanel(panel); return result; @@ -1001,8 +1004,8 @@ defaultButton = @OK; } - panel = getSomePanel(standardAlertPanel, @Alert, title, message, -defaultButton, alternateButton, otherButton); + panel = getSomePanel(standardAlertPanel, [GSAlertPanel class], @Alert, + title, message, defaultButton, alternateButton, otherButton); result = [panel runModal]; NSReleaseAlertPanel(panel); return result; @@ -1025,8 +1028,8 @@ message = [NSString stringWithFormat: msg arguments: ap]; va_end(ap); - return getSomePanel(criticalAlertPanel, @Critical, title, message, -defaultButton, alternateButton, otherButton); + return getSomePanel(criticalAlertPanel, [GSAlertPanel class], @Critical, + title, message, defaultButton, alternateButton, otherButton); } @@ -1047,8 +1050,8 @@ message = [NSString stringWithFormat: msg arguments: ap]; va_end(ap); - panel = getSomePanel(criticalAlertPanel, @Critical, title, message, -defaultButton, alternateButton, otherButton); + panel = getSomePanel(criticalAlertPanel, [GSAlertPanel class], @Critical, + title, message, defaultButton, alternateButton, otherButton); result = [panel runModal]; NSReleaseAlertPanel(panel); return result; @@ -1070,8 +1073,8 @@ message = [NSString stringWithFormat: msg arguments: ap]; va_end(ap); - return getSomePanel(informationalAlertPanel, @Information, title, message, -defaultButton, alternateButton, otherButton); + return getSomePanel(informationalAlertPanel, [GSAlertPanel class], + @Information, title, message, defaultButton, alternateButton, otherButton); } @@ -1093,6 +1096,7 @@ va_end(ap); panel = getSomePanel(informationalAlertPanel, + [GSAlertPanel class], @Information, title, message, defaultButton, alternateButton, otherButton); @@ -1140,8 +1144,8 @@ defaultButton = @OK; } - panel = getSomePanel(standardAlertPanel, defaultTitle, title, message, -defaultButton, alternateButton, otherButton); + panel = getSomePanel(standardAlertPanel, [GSAlertPanel class], defaultTitle, + title, message, defaultButton, alternateButton, otherButton); // FIXME: We should also change the button action to call endSheet: [NSApp beginSheet: panel @@ -1172,8 +1176,8 @@ message = [NSString stringWithFormat: msg arguments: ap]; va_end(ap); - panel =