теперь понял, спасибо. по-моему проще написать так:
Objective-C
if (!alreadyRunning) {
NSString *path = [[NSBundle mainBundle] bundlePath], *contents = @"Contents/";
NSRange contentsRange = [path rangeOfString:contents options:NSBackwardsSearch];
NSString *mainAppPath = [[path substringToIndex:contentsRange.location + [contents length]] stringByAppendingString:@"MacOS/LaunchAtLoginApp"];
[[NSWorkspace sharedWorkspace] launchApplication:mainAppPath];
}
Попробую, вроде так действительно проще.
Та посмотрите же QPushButton::paintEvent - там виден выход в нативняк для отрисовки. В момент paintEvent у Вас на руках CGContextRef и NSView - ну и зовите нативную ф-цию рисования. А повторить самому все что OSX рисует - надорветесь.
Смотрю, да действительно есть выход в нативные ф-ции. Насколько понимаю кнопка отрисовывается в qmacstyle_mac.mm . Даже допустим, что везде в paintEvent я буду дергать нативные ф-ции отрисовки (хотя пока не совсем понимаю как это делать, ибо Qt хоть и рисует нативныеми функциями, но рисует свои кнопки, а не берет системные стили), мне придется переопределить все компоненты, с которыми я собираюсь работать, ради одной функции, как то КПД маловат будет.
Ну сказали тоже - ведь есть "themes" и их можно назначать из API.
Да, есть, вот как выглядит стандартный пример с темами мака
http://joxi.ru/uTA1UxjKTJAUMD-9h_cа вот меню в QtCreator к примеру
http://joxi.ru/yTA1U_3JTJCPGQSv-aoДалее скрины стандартных контролов мака
http://joxi.ru/4TA1U_3JTJD0c3lm_Zwhttp://joxi.ru/HzE1U_3JTJCPGafCoDshttp://joxi.ru/LDE1U_3JTJBERdfqFPUДля меня несоответствие на лицо. Даже если мы закрываем глаза на не совсем точные контролы CheckBox и GroupBox , то закрыть глаза на то, что лейбл во многих контролах не на месте, просто не возможно.
Ну сказали тоже - ведь есть "themes" и их можно назначать из API.
Хорошее решение, спорить с этим не буду и сам его применял в нескольких приложениях. Но как я уже сказал, для нашего продукта это не прокатило, и дело не в том, что дизайн плохой
Дизайнер отработал как нужно, основная притензия была в том, что не нативно.
Вообще если честно не совсем пойму чем спор вызван, пост то про автозагрузку. А уж ее стандартными средствами Qt вы не реализуете, если захотите отправить ваше приложение в App Store.