summaryrefslogtreecommitdiffstats
path: root/src/gui/util/qsystemtrayicon_mac.mm
diff options
context:
space:
mode:
authorBill King <bill.king@nokia.com>2009-12-09 23:07:52 (GMT)
committerBill King <bill.king@nokia.com>2009-12-09 23:07:52 (GMT)
commite032c0756df0d11f7a43bcdfbb82cf2d83fe74a4 (patch)
tree36884ee5c9a9287663c05d5db529a3a0f16b9550 /src/gui/util/qsystemtrayicon_mac.mm
parent127d52df97b68fcf54a50e471a0b899d92fda10a (diff)
parent346d3618bad19714b41ad45715cdef9488ce8969 (diff)
downloadQt-e032c0756df0d11f7a43bcdfbb82cf2d83fe74a4.zip
Qt-e032c0756df0d11f7a43bcdfbb82cf2d83fe74a4.tar.gz
Qt-e032c0756df0d11f7a43bcdfbb82cf2d83fe74a4.tar.bz2
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt into 4.6
Diffstat (limited to 'src/gui/util/qsystemtrayicon_mac.mm')
-rw-r--r--src/gui/util/qsystemtrayicon_mac.mm28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/gui/util/qsystemtrayicon_mac.mm b/src/gui/util/qsystemtrayicon_mac.mm
index b74ca85..93295a7 100644
--- a/src/gui/util/qsystemtrayicon_mac.mm
+++ b/src/gui/util/qsystemtrayicon_mac.mm
@@ -314,8 +314,22 @@ QT_END_NAMESPACE
{
Q_UNUSED(notification);
down = NO;
+
+ if( ![self icon]->icon().isNull() ) {
+#ifndef QT_MAC_USE_COCOA
+ const short scale = GetMBarHeight()-4;
+#else
+ CGFloat hgt = [[[NSApplication sharedApplication] mainMenu] menuBarHeight];
+ const short scale = hgt - 4;
+#endif
+ NSImage *nsimage = static_cast<NSImage *>(qt_mac_create_nsimage([self icon]->icon().pixmap(QSize(scale, scale))));
+ [self setImage: nsimage];
+ [nsimage release];
+ }
+
if([self icon]->contextMenu())
[self icon]->contextMenu()->hide();
+
[self setNeedsDisplay:YES];
}
@@ -327,6 +341,20 @@ QT_END_NAMESPACE
[self icon]->contextMenu()->hide();
[self setNeedsDisplay:YES];
+#ifndef QT_MAC_USE_COCOA
+ const short scale = GetMBarHeight()-4;
+#else
+ CGFloat hgt = [[[NSApplication sharedApplication] mainMenu] menuBarHeight];
+ const short scale = hgt - 4;
+#endif
+
+ if( down && ![self icon]->icon().isNull() ) {
+ NSImage *nsaltimage = static_cast<NSImage *>(qt_mac_create_nsimage([self icon]->icon().pixmap(QSize(scale, scale), QIcon::Selected)));
+ [self setImage: nsaltimage];
+ [nsaltimage release];
+ }
+
+
if (down)
[parent triggerSelector:self];
else if ((clickCount%2))