You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by as...@apache.org on 2008/07/24 23:04:48 UTC

svn commit: r679547 - in /incubator/buildr/trunk: doc/images/growl-icon.tiff lib/buildr/core/application.rb lib/buildr/resources/ lib/buildr/resources/buildr.icns

Author: assaf
Date: Thu Jul 24 14:04:47 2008
New Revision: 679547

URL: http://svn.apache.org/viewvc?rev=679547&view=rev
Log:
Added Growl icon.

Added:
    incubator/buildr/trunk/doc/images/growl-icon.tiff
    incubator/buildr/trunk/lib/buildr/resources/
    incubator/buildr/trunk/lib/buildr/resources/buildr.icns
Modified:
    incubator/buildr/trunk/lib/buildr/core/application.rb

Added: incubator/buildr/trunk/doc/images/growl-icon.tiff
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/doc/images/growl-icon.tiff?rev=679547&view=auto
==============================================================================
Files incubator/buildr/trunk/doc/images/growl-icon.tiff (added) and incubator/buildr/trunk/doc/images/growl-icon.tiff Thu Jul 24 14:04:47 2008 differ

Modified: incubator/buildr/trunk/lib/buildr/core/application.rb
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/lib/buildr/core/application.rb?rev=679547&r1=679546&r2=679547&view=diff
==============================================================================
--- incubator/buildr/trunk/lib/buildr/core/application.rb (original)
+++ incubator/buildr/trunk/lib/buildr/core/application.rb Thu Jul 24 14:04:47 2008
@@ -401,28 +401,35 @@
 
 
 
-# Let's see if we know how to use Growl.
-begin
-  require 'osx/cocoa'
-  # Register with Growl, that way you can turn notifications on/off from system preferences.
-  OSX::NSDistributedNotificationCenter.defaultCenter.
-    postNotificationName_object_userInfo_deliverImmediately(:GrowlApplicationRegistrationNotification, nil,
-      {:ApplicationName=>'Buildr', :AllNotifications=>['Completed', 'Failed']}, true)
-  def growl(type, title, message)
+# Let's see if we know how to use Growl.  Only when running in terminal,
+# if you're running Buildr from CI, you'll want to get Growl notifications
+# from there instead. 
+if $stdout.isatty
+  begin
+    require 'osx/cocoa'
+    icon = OSX::NSApplication.sharedApplication.applicationIconImage
+    icon = OSX::NSImage.alloc.initWithContentsOfFile(File.join(File.dirname(__FILE__), '../resources/buildr.icns'))
+    
+    # Register with Growl, that way you can turn notifications on/off from system preferences.
     OSX::NSDistributedNotificationCenter.defaultCenter.
-      postNotificationName_object_userInfo_deliverImmediately(:GrowlNotification, nil,
-        {:ApplicationName=>'Buildr', :NotificationName=>type, :NotificationTitle=>title, :NotificationDescription=>message}, true)
-  end
-  Buildr.application.on_completion do
-    growl 'Completed', 'Your build has completed', Dir.pwd if verbose
-  end
-  Buildr.application.on_failure do |ex|
-    growl 'Failed', 'Your build failed with an error', "#{Dir.pwd}:\n#{ex.message}" if verbose
+      postNotificationName_object_userInfo_deliverImmediately(:GrowlApplicationRegistrationNotification, nil,
+        { :ApplicationName=>'Buildr', :AllNotifications=>['Completed', 'Failed'], 
+          :ApplicationIcon=>icon.TIFFRepresentation }, true)
+    def growl(type, title, message)
+      OSX::NSDistributedNotificationCenter.defaultCenter.
+        postNotificationName_object_userInfo_deliverImmediately(:GrowlNotification, nil,
+          { :ApplicationName=>'Buildr', :NotificationName=>type, :NotificationTitle=>title, :NotificationDescription=>message }, true)
+    end
+    Buildr.application.on_completion do
+      growl 'Completed', 'Your build has completed', Dir.pwd if verbose
+    end
+    Buildr.application.on_failure do |ex|
+      growl 'Failed', 'Your build failed with an error', "#{Dir.pwd}:\n#{ex.message}" if verbose
+    end
+  rescue Error
   end
-rescue Error
 end
 
-
 if HighLine.use_color?
   module Kernel #:nodoc:
     alias :warn_without_color :warn

Added: incubator/buildr/trunk/lib/buildr/resources/buildr.icns
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/lib/buildr/resources/buildr.icns?rev=679547&view=auto
==============================================================================
Files incubator/buildr/trunk/lib/buildr/resources/buildr.icns (added) and incubator/buildr/trunk/lib/buildr/resources/buildr.icns Thu Jul 24 14:04:47 2008 differ