X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/55d452c6f9cb34896aea8d5e19248af0dc2d3334..cc1487e53905bd534dba2099d33ac2142cec7818:/src/common/utilscmn.cpp diff --git a/src/common/utilscmn.cpp b/src/common/utilscmn.cpp index ead5a626e9..eadd15283b 100644 --- a/src/common/utilscmn.cpp +++ b/src/common/utilscmn.cpp @@ -72,7 +72,6 @@ #include "wx/colordlg.h" #include "wx/fontdlg.h" #include "wx/notebook.h" - #include "wx/frame.h" #include "wx/statusbr.h" #endif // wxUSE_GUI @@ -97,6 +96,7 @@ #if defined(__WXMSW__) #include "wx/msw/private.h" #include "wx/msw/registry.h" + #include // needed for SHELLEXECUTEINFO #endif #if wxUSE_BASE @@ -309,61 +309,116 @@ int wxGetOsVersion(int *verMaj, int *verMin) wxArrayInt* wxPlatform::sm_customPlatforms = NULL; -wxPlatform& wxPlatform::Is(int platform, long value) +void wxPlatform::Copy(const wxPlatform& platform) { - if (wxPlatformIs(platform)) + m_longValue = platform.m_longValue; + m_doubleValue = platform.m_doubleValue; + m_stringValue = platform.m_stringValue; +} + +wxPlatform wxPlatform::If(int platform, long value) +{ + if (Is(platform)) + return wxPlatform(value); + else + return wxPlatform(); +} + +wxPlatform wxPlatform::IfNot(int platform, long value) +{ + if (!Is(platform)) + return wxPlatform(value); + else + return wxPlatform(); +} + +wxPlatform& wxPlatform::ElseIf(int platform, long value) +{ + if (Is(platform)) m_longValue = value; return *this; } -wxPlatform& wxPlatform::IsNot(int platform, long value) +wxPlatform& wxPlatform::ElseIfNot(int platform, long value) { - if (!wxPlatformIs(platform)) + if (!Is(platform)) m_longValue = value; return *this; } -wxPlatform& wxPlatform::Is(int platform, double value) +wxPlatform wxPlatform::If(int platform, double value) +{ + if (Is(platform)) + return wxPlatform(value); + else + return wxPlatform(); +} + +wxPlatform wxPlatform::IfNot(int platform, double value) +{ + if (!Is(platform)) + return wxPlatform(value); + else + return wxPlatform(); +} + +wxPlatform& wxPlatform::ElseIf(int platform, double value) { - if (wxPlatformIs(platform)) + if (Is(platform)) m_doubleValue = value; return *this; } -wxPlatform& wxPlatform::IsNot(int platform, double value) +wxPlatform& wxPlatform::ElseIfNot(int platform, double value) { - if (!wxPlatformIs(platform)) + if (!Is(platform)) m_doubleValue = value; return *this; } -wxPlatform& wxPlatform::Is(int platform, const wxString& value) +wxPlatform wxPlatform::If(int platform, const wxString& value) { - if (wxPlatformIs(platform)) + if (Is(platform)) + return wxPlatform(value); + else + return wxPlatform(); +} + +wxPlatform wxPlatform::IfNot(int platform, const wxString& value) +{ + if (!Is(platform)) + return wxPlatform(value); + else + return wxPlatform(); +} + +wxPlatform& wxPlatform::ElseIf(int platform, const wxString& value) +{ + if (Is(platform)) m_stringValue = value; return *this; } -wxPlatform& wxPlatform::IsNot(int platform, const wxString& value) +wxPlatform& wxPlatform::ElseIfNot(int platform, const wxString& value) { - if (!wxPlatformIs(platform)) + if (!Is(platform)) m_stringValue = value; return *this; } -wxPlatform& wxPlatform::Default(long value) +wxPlatform& wxPlatform::Else(long value) { m_longValue = value; return *this; } -wxPlatform& wxPlatform::Default(double value) +wxPlatform& wxPlatform::Else(double value) { m_doubleValue = value; return *this; } -wxPlatform& wxPlatform::Default(const wxString& value) +wxPlatform& wxPlatform::Else(const wxString& value) { m_stringValue = value; return *this; @@ -384,7 +439,7 @@ void wxPlatform::ClearPlatforms() /// Function for testing current platform -bool wxPlatform::PlatformIs(int platform) +bool wxPlatform::Is(int platform) { #ifdef __WXMSW__ if (platform == wxMSW) @@ -399,7 +454,7 @@ bool wxPlatform::PlatformIs(int platform) return true; #endif #if defined(__WXWINCE__) && defined(__SMARTPHONE__) - if (platform == wxWinSmartphone) + if (platform == wxWinSmartPhone) return true; #endif #ifdef __WXGTK__ @@ -764,7 +819,7 @@ bool wxLaunchDefaultBrowser(const wxString& urlOrig, int flags) { ConstStr255Param hint = 0; startSel = 0; - endSel = url.Length(); + endSel = url.length(); err = ICLaunchURL(inst, hint, url.fn_str(), endSel, &startSel, &endSel); if (err != noErr) wxLogDebug(wxT("ICLaunchURL error %d"), (int) err); @@ -859,15 +914,18 @@ wxRegisterId (long id) wxCurrentId = id + 1; } -#if wxUSE_MENUS - // ---------------------------------------------------------------------------- // Menu accelerators related functions // ---------------------------------------------------------------------------- wxChar *wxStripMenuCodes(const wxChar *in, wxChar *out) { +#if wxUSE_MENUS wxString s = wxMenuItem::GetLabelFromText(in); +#else + wxString str(in); + wxString s = wxStripMenuCodes(str); +#endif // wxUSE_MENUS if ( out ) { // go smash their buffer if it's not big enough - I love char * params @@ -920,8 +978,6 @@ wxString wxStripMenuCodes(const wxString& in) return out; } -#endif // wxUSE_MENUS - // ---------------------------------------------------------------------------- // Window search functions // ---------------------------------------------------------------------------- @@ -956,12 +1012,12 @@ int wxFindMenuItemId (wxFrame * frame, const wxString& menuString, const wxString& itemString) { #if wxUSE_MENUS - wxMenuBar *menuBar = frame->GetMenuBar (); - if ( menuBar ) - return menuBar->FindMenuItem (menuString, itemString); + wxMenuBar *menuBar = frame->GetMenuBar (); + if ( menuBar ) + return menuBar->FindMenuItem (menuString, itemString); #endif // wxUSE_MENUS - return wxNOT_FOUND; + return wxNOT_FOUND; } // Try to find the deepest child that contains 'pt'. @@ -1003,7 +1059,7 @@ wxWindow* wxFindWindowAtPoint(wxWindow* win, const wxPoint& pt) wxPoint pos = win->GetPosition(); wxSize sz = win->GetSize(); - if (win->GetParent()) + if ( !win->IsTopLevel() && win->GetParent() ) { pos = win->GetParent()->ClientToScreen(pos); } @@ -1011,8 +1067,8 @@ wxWindow* wxFindWindowAtPoint(wxWindow* win, const wxPoint& pt) wxRect rect(pos, sz); if (rect.Inside(pt)) return win; - else - return NULL; + + return NULL; } wxWindow* wxGenericFindWindowAtPoint(const wxPoint& pt) @@ -1138,7 +1194,7 @@ wxColour wxGetColourFromUser(wxWindow *parent, const wxColour& colInit, const wx wxColour colRet; wxColourDialog dialog(parent, &data); - if (!caption.IsEmpty()) + if (!caption.empty()) dialog.SetTitle(caption); if ( dialog.ShowModal() == wxID_OK ) { @@ -1163,7 +1219,7 @@ wxFont wxGetFontFromUser(wxWindow *parent, const wxFont& fontInit, const wxStrin wxFont fontRet; wxFontDialog dialog(parent, data); - if (!caption.IsEmpty()) + if (!caption.empty()) dialog.SetTitle(caption); if ( dialog.ShowModal() == wxID_OK ) {