2016-03-28 4 views
0

Как сделать такую ​​панель инструментов OS X с помощью wxWidgets 3.1?wxWidgets Mac OS X Унифицированная панель инструментов в стиле Йосемити

https://monosnap.com/file/ZMbvh8uVng0J54WgOqOcXDKKr1g9sF

How can I create Yosemite-style unified toolbar in Interface Builder?

я могу получить доступ ссылки на родную NSWindow:

auto *nativeWindow = wxWindow::MacGetTopLevelWindowRef(); 
nativeWindow->NSWindow->titleVisibility = NSWindowTitleHidden; 

Но вызов ->titleVisibility выше дает «WxWidgets-3.1.0/образцы/минимальный/minimal.cpp : 647: 17: Доступ пользователя к неполному типу «NSWindow», и я не могу @import/# включить NSWindow в мою программу .cpp, потому что это заголовок объектного-c

ответ

1

Вам необходимо переименовать исходный файл, чтобы иметь расширение .mm или явно запрашивать с помощью Objective-C++ при компиляции с использованием опции компилятора -x. Другая возможность, которая может быть полезна, если вы также должны скомпилировать тот же файл под другими платформами, состоит в том, чтобы включить файл .cpp из OS X-specific .mm, например. wxWidgets собственный widgets sample делает это вот так.