OS/X: Capital letters in app name are showing up as lower case Topic is solved

Do you have a typical platform dependent issue you're battling with ? Ask it here. Make sure you mention your platform, compiler, and wxWidgets version.
Post Reply
Groner
In need of some credit
In need of some credit
Posts: 2
Joined: Thu Sep 08, 2016 10:39 am

OS/X: Capital letters in app name are showing up as lower case

Post by Groner »

Hi,
I have a problem with capital letters in the application name. They are converted to lower case in the applictaion menu which is generated automatic.
Let's say the app is called "My USB Tool" then it's converted to "My usb tool".
As you can see in the picture this happens only within the menu, the menu name itself is correct.
menu.png
menu.png (33.25 KiB) Viewed 879 times
I guess I could fix this in the language files (*.mo) of the app, but is there an other solution?
I'm not sure if this is really related to wxWidgets or if it's a problem with XCode. Can someone give me a hint?

I'm using wxWidgets 3.1.0 and XCode 7.3.

If I create a new XCode template project without using wxWidgets, the app name shows up correct.

Thanks.
ONEEYEMAN
Part Of The Furniture
Part Of The Furniture
Posts: 7479
Joined: Sat Apr 16, 2005 7:22 am
Location: USA, Ukraine

Re: OS/X: Capital letters in app name are showing up as lower case

Post by ONEEYEMAN »

Hi,
It might be an issue with the wxWidgets.

Did you try to debug what is happening with the menu code in wxWidgets?

Thank you.
Groner
In need of some credit
In need of some credit
Posts: 2
Joined: Thu Sep 08, 2016 10:39 am

Re: OS/X: Capital letters in app name are showing up as lower case

Post by Groner »

Ok, I found the problem when looking at the menu_osx.cpp and the createAppleMenu() function of the wxWidgest sources.
This function uses GetAppDisplayName() to build the string for the menu, so I have to call SetAppDisplayName().
Otherwise GetAppDisplayName returns the program name with using wxString::Capitalize(), which only turns the first character of the string to upper case.

So after calling SetAppDisplayName() in the OnInit() of my app everything is fine.

Thanks for your help.
Post Reply