← Back to team overview

kicad-developers team mailing list archive

Can we enable menu icons on OS X?

 

Can anyone explain why menu icons are enabled on all platforms except OS X? I've looked through the menuhelper.h code and the CMake build files, and all I can find is reference to it being disabled on OS X by default, but the reason why is not given anywhere I can find. 

I've been using KiCad for months on OS X and I force the menu icons on every time, and there are no issues.  They are very helpful from a usage standpoint and beyond that, it is the interface I'm used to when I use KiCad in Debian, and my coworkers in in Windows.  It's both annoying and distressing to suddenly lose all those visual cues but only on the OS X platform.  It would be understandable if there was some sort of issue, or they didn't work right on OS X, but that's not the case.

Regardless, as it stands now, KiCad's interface is not platform agnostic, which is something that ought to be a priority for any software claiming to be cross-platform.  

Can we simply comment out, or better, remove, the line in the root CMakeLists file that goes out of its way to disable menus, but only if __APPLE__?  I'll even do it myself and make a merge quest, if its simply a matter of no one having the time.    

I, like many users I suspect, find I rely on icons and visual cues much more than actual text of menu and contextual menu items.  I have no choice but to build KiCad (which takes a long time on my machine) if I want the latest dev build in a usable (and truly cross platform) state.  I DO do his regularly, but sometimes I do need it quick and it would be nice if I could take advantage of Adam Wolf's generously provided nightly builds, but since the default build settings disable menu icons, it largely becomes time spent discovering how much I actually rely on the menu icons, rather than spent on electronic design.  

If I've missed something, and there IS a good reason for breaking KiCad's cross platform consistency, I'd love to know - I'll see if I can fix the issue and file a merge proposal.  And if I can't I'll at least add that reason in the comments around the relevant code, since it requires justification (in my humble opinion, anyway, for what little that is worth ;)   )


-- 
"Violence is the last refuge of the incompetent." - Isaac Asimov


Follow ups