X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e74f9041c4a598156b761cd19ad1c4ddc8e9a513..fdf7ff738cb755be0e9e7e1378d8c3073f08f0e1:/src/os2/utilsgui.cpp diff --git a/src/os2/utilsgui.cpp b/src/os2/utilsgui.cpp index a3779dee7f..79b584d217 100644 --- a/src/os2/utilsgui.cpp +++ b/src/os2/utilsgui.cpp @@ -28,10 +28,13 @@ #include "wx/utils.h" #include "wx/app.h" #include "wx/cursor.h" + #include "wx/font.h" #include "wx/timer.h" #endif //WX_PRECOMP #include "wx/apptrait.h" +#include "wx/os2/private/timer.h" +#include "wx/evtloop.h" #include "wx/os2/private.h" // includes @@ -56,190 +59,6 @@ public: } }; -// Reading and writing resources (eg WIN.INI, .Xdefaults) -#if wxUSE_RESOURCES -bool wxWriteResource( const wxString& rSection, - const wxString& rEntry, - const wxString& rValue, - const wxString& rFile ) -{ - HAB hab = 0; - HINI hIni = 0; - - if (!rFile.empty()) - { - hIni = ::PrfOpenProfile(hab, (PSZ)WXSTRINGCAST rFile); - if (hIni != 0L) - { - return (::PrfWriteProfileString( hIni - ,(PSZ)WXSTRINGCAST rSection - ,(PSZ)WXSTRINGCAST rEntry - ,(PSZ)WXSTRINGCAST rValue - )); - } - } - else - return (::PrfWriteProfileString( HINI_PROFILE - ,(PSZ)WXSTRINGCAST rSection - ,(PSZ)WXSTRINGCAST rEntry - ,(PSZ)WXSTRINGCAST rValue - )); - return false; -} - -bool wxWriteResource( - const wxString& rSection -, const wxString& rEntry -, float fValue -, const wxString& rFile -) -{ - wxChar zBuf[50]; - - wxSprintf(zBuf, "%.4f", fValue); - return wxWriteResource( rSection - ,rEntry - ,zBuf - ,rFile - ); -} - -bool wxWriteResource( - const wxString& rSection -, const wxString& rEntry -, long lValue -, const wxString& rFile -) -{ - wxChar zBuf[50]; - - wxSprintf(zBuf, "%ld", lValue); - return wxWriteResource( rSection - ,rEntry - ,zBuf - ,rFile - ); -} - -bool wxWriteResource( const wxString& rSection, - const wxString& rEntry, - int lValue, - const wxString& rFile ) -{ - wxChar zBuf[50]; - - wxSprintf(zBuf, "%d", lValue); - return wxWriteResource( rSection, rEntry, zBuf, rFile ); -} - -bool wxGetResource( const wxString& rSection, - const wxString& rEntry, - wxChar** ppValue, - const wxString& rFile ) -{ - HAB hab = 0; - HINI hIni = 0; - wxChar zDefunkt[] = _T("$$default"); - char zBuf[1000]; - - if (!rFile.empty()) - { - hIni = ::PrfOpenProfile(hab, (PSZ)WXSTRINGCAST rFile); - if (hIni != 0L) - { - ULONG n = ::PrfQueryProfileString( hIni - ,(PSZ)WXSTRINGCAST rSection - ,(PSZ)WXSTRINGCAST rEntry - ,(PSZ)zDefunkt - ,(PVOID)zBuf - ,1000 - ); - if (zBuf == NULL) - return false; - if (n == 0L || wxStrcmp(zBuf, zDefunkt) == 0) - return false; - zBuf[n-1] = '\0'; - } - else - return false; - } - else - { - ULONG n = ::PrfQueryProfileString( HINI_PROFILE - ,(PSZ)WXSTRINGCAST rSection - ,(PSZ)WXSTRINGCAST rEntry - ,(PSZ)zDefunkt - ,(PVOID)zBuf - ,1000 - ); - if (zBuf == NULL) - return false; - if (n == 0L || wxStrcmp(zBuf, zDefunkt) == 0) - return false; - zBuf[n-1] = '\0'; - } - strcpy((char*)*ppValue, zBuf); - return true; -} - -bool wxGetResource( const wxString& rSection, - const wxString& rEntry, - float* pValue, - const wxString& rFile ) -{ - wxChar* zStr = NULL; - - zStr = new wxChar[1000]; - bool bSucc = wxGetResource( rSection, rEntry, (wxChar **)&zStr, rFile ); - - if (bSucc) - { - *pValue = (float)wxStrtod(zStr, NULL); - } - - delete[] zStr; - return bSucc; -} - -bool wxGetResource( const wxString& rSection, - const wxString& rEntry, - long* pValue, - const wxString& rFile ) -{ - wxChar* zStr = NULL; - - zStr = new wxChar[1000]; - bool bSucc = wxGetResource( rSection, rEntry, (wxChar **)&zStr, rFile ); - - if (bSucc) - { - *pValue = wxStrtol(zStr, NULL, 10); - } - - delete[] zStr; - return bSucc; -} - -bool wxGetResource( const wxString& rSection, - const wxString& rEntry, - int* pValue, - const wxString& rFile ) -{ - wxChar* zStr = NULL; - - zStr = new wxChar[1000]; - bool bSucc = wxGetResource( rSection, rEntry, (wxChar **)&zStr, rFile ); - - if (bSucc) - { - *pValue = (int)wxStrtol(zStr, NULL, 10); - } - - delete[] zStr; - return bSucc; -} -#endif // wxUSE_RESOURCES - // --------------------------------------------------------------------------- // helper functions for showing a "busy" cursor // --------------------------------------------------------------------------- @@ -439,10 +258,20 @@ void wxGUIAppTraits::TerminateGui(unsigned long ulHab) wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const { - // TODO: how to get version of PM ? + // How to get version of PM ? I guess, just reusing the OS version is OK. + (void) wxGetOsVersion(verMaj, verMin); return wxPORT_OS2; } +wxTimerImpl* wxGUIAppTraits::CreateTimerImpl(wxTimer *timer) +{ + return new wxOS2TimerImpl(timer); +} + +wxEventLoopBase* wxGUIAppTraits::CreateEventLoop() +{ + return new wxEventLoop; +} // --------------------------------------------------------------------------- // window information functions