3
* Copyright(c) 2006-2008, Ext JS, LLC.
6
* http://extjs.com/license
9
Ext.air.SystemTray = function(){
10
var app = air.NativeApplication.nativeApplication;
11
var icon, isWindows = false, bitmaps;
14
if(air.NativeApplication.supportsSystemTrayIcon) {
20
if(air.NativeApplication.supportsDockIcon) {
26
setIcon : function(icon, tooltip, initWithIcon){
27
if(!icon){ // not supported OS
30
var loader = new air.Loader();
31
loader.contentLoaderInfo.addEventListener(air.Event.COMPLETE, function(e){
32
bitmaps = new runtime.Array(e.target.content.bitmapData);
34
icon.bitmaps = bitmaps;
37
loader.load(new air.URLRequest(icon));
38
if(tooltip && air.NativeApplication.supportsSystemTrayIcon) {
39
app.icon.tooltip = tooltip;
43
bounce : function(priority){
44
icon.bounce(priority);
47
on : function(eventName, fn, scope){
48
icon.addEventListener(eventName, function(){
49
fn.apply(scope || this, arguments);
53
hideIcon : function(){
54
if(!icon){ // not supported OS
60
showIcon : function(){
61
if(!icon){ // not supported OS
64
icon.bitmaps = bitmaps;
67
setMenu: function(actions, _parentMenu){
68
if(!icon){ // not supported OS
71
var menu = new air.NativeMenu();
73
for (var i = 0, len = actions.length; i < len; i++) {
76
menu.addItem(new air.NativeMenuItem("", true));
78
var item = menu.addItem(Ext.air.MenuItem(a));
79
if(a.menu || (a.initialConfig && a.initialConfig.menu)){
80
item.submenu = Ext.air.SystemTray.setMenu(a.menu || a.initialConfig.menu, menu);
b'\\ No newline at end of file'