Fix using const char* and wxString in ternary operator

Using a const char* and a wxString in the two branches of the ternary
operator resulted in compile-time errors since the result type of the
conditional expression was ambiguous, so add explicit conversions to fix
it.

Closes https://github.com/wxWidgets/wxWidgets/pull/2634

See #19355.
This commit is contained in:
PB 2022-01-02 17:56:44 +01:00 committed by Vadim Zeitlin
parent 55cb17df78
commit 0f8ab824a3
4 changed files with 6 additions and 5 deletions

View File

@ -210,7 +210,7 @@ bool MyApp::OnInit()
langInfo = wxLocale::GetLanguageInfo(wxLANGUAGE_DEFAULT);
const wxString
langDesc = langInfo ? langInfo->Description
: "the default system locale";
: wxString("the default system locale");
if ( m_setLocale == Locale_Ask )
{

View File

@ -275,7 +275,7 @@ void DirCtrlWidgetsPage::CreateDirCtrl(bool defaultPath)
wxGenericDirCtrl *dirCtrl = new wxGenericDirCtrl(
this,
DirCtrlPage_Ctrl,
defaultPath ? wxDirDialogDefaultFolderStr : m_dirCtrl->GetPath(),
defaultPath ? wxString(wxDirDialogDefaultFolderStr) : m_dirCtrl->GetPath(),
wxDefaultPosition,
wxDefaultSize,
style

View File

@ -2199,7 +2199,7 @@ bool wxFileProperty::DisplayEditorDialog(wxPropertyGrid* pg, wxVariant& value)
m_dlgTitle.empty() ? _("Choose a file") : m_dlgTitle,
m_initialPath.empty() ? path : m_initialPath,
file,
m_wildcard.empty() ? wxALL_FILES : m_wildcard,
m_wildcard.empty() ? _(wxALL_FILES) : m_wildcard,
m_dlgStyle,
wxDefaultPosition);

View File

@ -63,6 +63,7 @@ public:
}
}
const wxString dispAlphaValNull("--");
const unsigned char* d1 = m_image.GetData();
const unsigned char* d2 = other.GetData();
const unsigned char* a1 = m_image.GetAlpha();
@ -72,8 +73,8 @@ public:
{
for ( int x = 0; x < m_image.GetWidth(); ++x )
{
wxString a1txt = dispAlphaVal ? (a1 != NULL ? wxString::Format("%02x", *a1) : "--") : "";
wxString a2txt = dispAlphaVal ? (a2 != NULL ? wxString::Format("%02x", *a2) : "--") : "";
wxString a1txt = dispAlphaVal ? (a1 != NULL ? wxString::Format("%02x", *a1) : dispAlphaValNull) : wxString();
wxString a2txt = dispAlphaVal ? (a2 != NULL ? wxString::Format("%02x", *a2) : dispAlphaValNull) : wxString();
for ( int i = 0; i < 3; i++ )
{