setting font name when using SetFamily on macOS

fixes https://trac.wxwidgets.org/ticket/19210
This commit is contained in:
Stefan Csomor
2021-08-18 07:23:04 +02:00
parent a756ed93c2
commit 841bc00f0c
3 changed files with 124 additions and 1 deletions

36
samples/Info.plist.in Normal file
View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>${MACOSX_BUNDLE_EXECUTABLE_NAME}</string>
<key>CFBundleGetInfoString</key>
<string>${MACOSX_BUNDLE_INFO_STRING}</string>
<key>CFBundleIconFile</key>
<string>${MACOSX_BUNDLE_ICON_FILE}</string>
<key>CFBundleIdentifier</key>
<string>${MACOSX_BUNDLE_GUI_IDENTIFIER}</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleLongVersionString</key>
<string>${MACOSX_BUNDLE_LONG_VERSION_STRING}</string>
<key>CFBundleName</key>
<string>${MACOSX_BUNDLE_BUNDLE_NAME}</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>${MACOSX_BUNDLE_SHORT_VERSION_STRING}</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>${MACOSX_BUNDLE_BUNDLE_VERSION}</string>
<key>CSResourcesFileMapped</key>
<true/>
<key>NSHumanReadableCopyright</key>
<string>${MACOSX_BUNDLE_COPYRIGHT}</string>
<key>NSPrincipalClass</key>
<string>wxNSApplication</string>
</dict>
</plist>

View File

@@ -0,0 +1,87 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>drw</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>chart.icns</string>
<key>CFBundleTypeName</key>
<string>DocView Drawing</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>WXMB</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSTypeIsPackage</key>
<false/>
<key>NSPersistentStoreTypeKey</key>
<string>Binary</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>txt</string>
<string>text</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>notepad.icns</string>
<key>CFBundleTypeName</key>
<string>DocView Text</string>
<key>CFBundleTypeOSTypes</key>
<array>
<string>TEXT</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSTypeIsPackage</key>
<false/>
<key>NSPersistentStoreTypeKey</key>
<string>Binary</string>
</dict>
</array>
<key>CFBundleExecutable</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundleGetInfoString</key>
<string>$(PRODUCT_NAME) version 3.1.6, (c) 2005-2021 wxWidgets</string>
<key>CFBundleIconFile</key>
<string>doc</string>
<key>CFBundleIdentifier</key>
<string>org.wxwidgets.samples.$(PRODUCT_NAME)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleLocalizations</key>
<array>
<string>de</string>
<string>en</string>
<string>fr</string>
<string>it</string>
</array>
<key>CFBundleLongVersionString</key>
<string>3.1.6, (c) 2005-2021 wxWidgets</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>3.1.6</string>
<key>CFBundleSignature</key>
<string>WXMA</string>
<key>CFBundleVersion</key>
<string>3.1.6</string>
<key>CSResourcesFileMapped</key>
<true/>
<key>LSRequiresCarbon</key>
<true/>
<key>NSHumanReadableCopyright</key>
<string>Copyright 2005-2021 wxWidgets</string>
</dict>
</plist>

View File

@@ -1265,8 +1265,8 @@ bool wxNativeFontInfo::SetPostScriptName(const wxString& postScriptName)
void wxNativeFontInfo::SetFamily(wxFontFamily family) void wxNativeFontInfo::SetFamily(wxFontFamily family)
{ {
Free(); Free();
m_familyName.clear();
m_family = family; m_family = family;
m_familyName = FamilyToFaceName(family);
} }
void wxNativeFontInfo::SetEncoding(wxFontEncoding encoding) void wxNativeFontInfo::SetEncoding(wxFontEncoding encoding)