On Mar 2, 2011, at 09:20:01, Konstantinos wrote:
>       if ([GrowlApplicationBridge isGrowlInstalled] == NO)
>       {
>               NSAlert *warnCalendar = [NSAlert alertWithMessageText:
> [[NSRunningApplication currentApplication] localizedName]
> defaultButton: @"Exit" alternateButton: nil otherButton: nil:
> informativeTextWithFormat: @""];
>               [warnCalendar setAlertStyle:NSCriticalAlertStyle];
>               [warnCalendar setInformativeText: @"Growl framework was not 
> found
> on your system! Please install Growl frist from www.growl.info!"];

You should not show an alert if Growl is not installed. If a notification is 
essential for the user to see, use an alert instead of the notification.

Remember that the user:

- May not want Growl
- Can turn Growl off
- Can kill the Growl background process
- Can disable your application's notifications
- Can disable any specific notification
- May be using a non-visual display such as Speech, SMS, or MailMe

Notifications should be optional. The user should be slightly inconvenienced 
(by having to find out by other means) for missing a notification, not have 
their day/use of your application ruined.

If what you have to tell the user is something they *need* to know, it should 
be in a dialog box or alert, not a notification.

The only time such an alert might be warranted is if your application exists 
solely to send Growl notifications. HardwareGrowler is an example of this. Even 
then, I'd say that that information belongs on your product web-page/App Store 
listing, not (or at least not just) in an alert. (And no, I don't know whether 
such an app would be accepted into the App Store.)

Also, you should use NSLocalizedString for any string you have in code that you 
display to the user. This includes alert messages and button titles.

> I cannot see it clearly... if Growl was not loaded by the application (as per 
> [growlBundle load] code sample in the developers documentation) can it still 
> execute [GrowlApplicationBridge isGrowlInstalled] ?


The answer to your question is revealed by rephrasing it:

“If I failed to load the Growl framework, can I still use classes in the Growl 
framework?”

-- 
You received this message because you are subscribed to the Google Groups 
"Growl Discuss" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/growldiscuss?hl=en.

Reply via email to