10 #import <objc/runtime.h>
11 #include <Cocoa/Cocoa.h>
15 - (NSString *)__bundleIdentifier
17 if (
self == [NSBundle mainBundle]) {
18 return @"io.prcycoin.Prcycoin-Qt";
20 return [
self __bundleIdentifier];
28 if(this->hasUserNotificationCenterSupport()) {
30 QByteArray utf8 = title.toUtf8();
31 char* cString = (
char *)utf8.constData();
32 NSString *titleMac = [[NSString alloc] initWithUTF8String:cString];
35 cString = (
char *)utf8.constData();
36 NSString *textMac = [[NSString alloc] initWithUTF8String:cString];
39 id userNotification = [[NSClassFromString(@"NSUserNotification") alloc] init];
40 [userNotification performSelector:@selector(setTitle:) withObject:titleMac];
41 [userNotification performSelector:@selector(setInformativeText:) withObject:textMac];
43 id notificationCenterInstance = [NSClassFromString(@"NSUserNotificationCenter") performSelector:@selector(defaultUserNotificationCenter)];
44 [notificationCenterInstance performSelector:@selector(deliverNotification:) withObject:userNotification];
48 [userNotification release];
54 Class possibleClass = NSClassFromString(
@"NSUserNotificationCenter");
57 if(possibleClass!=nil) {
70 Class aPossibleClass = objc_getClass(
"NSBundle");
74 method_exchangeImplementations(class_getInstanceMethod(aPossibleClass,
@selector(bundleIdentifier)),
75 class_getInstanceMethod(aPossibleClass,
@selector(__bundleIdentifier)));