Re: exception panel userInfo browser

2006-10-27 Thread Fred Kiefer
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

2006-10-27 Thread Richard Frith-Macdonald


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

2006-10-27 Thread Matt Rice


--- 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

2006-10-22 Thread Fred Kiefer
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

2006-10-22 Thread Matt Rice


--- 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

2006-10-21 Thread Matt Rice
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 =