ebiguy / RespeQt

RespeQt Atari serial peripheral emulator
GNU General Public License v2.0
31 stars 16 forks source link

RespeQt menu should be integrated into system Menu Bar #5

Open LameLefty opened 9 years ago

LameLefty commented 9 years ago

The defaults for RespeQt result in an application binary build that places the application menus inside the RespeQt window itself. The OS X user interface guidelines generally place the application menus at the top left of the screen in the system Menu Bar when that application is the foreground program. RespeQt can be built for OS X such that its menus integrate "properly" with OS X in this way by clicking a single button in Qt Creator during the build process: screen shot 2015-08-02 at 8 25 21 am

jzatarski commented 9 years ago

It should be possible to add conditional compilation for code which enables the nativeMenuBar on OSX builds by default, but leaves it disabled on builds for other operating systems by default. However, OSX is not the only operating system that supports this feature. The key word here is 'default.' A user configured option should be available to easily turn on or off nativeMenuBar support. This can be accomplished by #ifndef blocks which check if, say, USE_NATIVEMENUBAR is defined, and if not, determine the default based on the target OS. Then, USE_NATIVEMENUBAR would be defined as 0 or 1, which represent whether to use the nativeMenuBar option or not.