⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utils.cpp

📁 很牛的GUI源码wxWidgets-2.8.0.zip 可在多种平台下运行.
💻 CPP
📖 第 1 页 / 共 3 页
字号:
    if (x) *x = 0;    if (y) *y = 0;    if (width != NULL) {        *width = screenBits.bounds.right - screenBits.bounds.left  ;    }    if (height != NULL) {        *height = screenBits.bounds.bottom - screenBits.bounds.top ;    }    SInt16 mheight ;#if TARGET_CARBON    GetThemeMenuBarHeight( &mheight ) ;#else    mheight = LMGetMBarHeight() ;#endif    if (height != NULL) {        *height -= mheight ;    }    if (y)        *y = mheight ;#endif}wxWindow* wxFindWindowAtPoint(const wxPoint& pt){    return wxGenericFindWindowAtPoint(pt);}#endif // wxUSE_GUI#if wxUSE_BASEwxString wxGetOsDescription(){#ifdef WXWIN_OS_DESCRIPTION    // use configure generated description if available    return wxString(wxT("MacOS (")) + wxT(WXWIN_OS_DESCRIPTION) + wxString(wxT(")"));#else    return wxT("MacOS") ; //TODO:define further#endif}#ifndef __DARWIN__wxChar *wxGetUserHome (const wxString& user){    // TODO    return NULL;}bool wxGetDiskSpace(const wxString& path, wxDiskspaceSize_t *pTotal, wxDiskspaceSize_t *pFree){    if ( path.empty() )        return false;    wxString p = path ;    if (p[0u] == ':' ) {      p = wxGetCwd() + p ;    }    int pos = p.Find(':') ;    if ( pos != wxNOT_FOUND ) {      p = p.Mid(1,pos) ;    }    p = p + wxT(":") ;    Str255 volumeName ;    XVolumeParam pb ;    wxMacStringToPascal( p  , volumeName ) ;    OSErr err = XGetVolumeInfoNoName( volumeName , 0 , &pb ) ;    if ( err == noErr ) {      if ( pTotal ) {        (*pTotal) = wxDiskspaceSize_t( pb.ioVTotalBytes ) ;      }      if ( pFree ) {        (*pFree) = wxDiskspaceSize_t( pb.ioVFreeBytes ) ;      }    }    return err == noErr ;}#endif // !__DARWIN__//---------------------------------------------------------------------------// wxMac Specific utility functions//---------------------------------------------------------------------------void wxMacStringToPascal( const wxString&from , StringPtr to ){    wxCharBuffer buf = from.mb_str( wxConvLocal ) ;    int len = strlen(buf) ;    if ( len > 255 )        len = 255 ;    to[0] = len ;    memcpy( (char*) &to[1] , buf , len ) ;}wxString wxMacMakeStringFromPascal( ConstStringPtr from ){    return wxString( (char*) &from[1] , wxConvLocal , from[0] ) ;}wxUint32 wxMacGetSystemEncFromFontEnc(wxFontEncoding encoding){    TextEncodingBase enc = 0 ;    if ( encoding == wxFONTENCODING_DEFAULT )    {#if wxUSE_GUI        encoding = wxFont::GetDefaultEncoding() ;#else        encoding = wxLocale::GetSystemEncoding() ;#endif    }    switch( encoding)    {        case wxFONTENCODING_ISO8859_1 :            enc = kTextEncodingISOLatin1 ;            break ;        case wxFONTENCODING_ISO8859_2 :            enc = kTextEncodingISOLatin2;            break ;        case wxFONTENCODING_ISO8859_3 :            enc = kTextEncodingISOLatin3 ;            break ;        case wxFONTENCODING_ISO8859_4 :            enc = kTextEncodingISOLatin4;            break ;        case wxFONTENCODING_ISO8859_5 :            enc = kTextEncodingISOLatinCyrillic;            break ;        case wxFONTENCODING_ISO8859_6 :            enc = kTextEncodingISOLatinArabic;            break ;        case wxFONTENCODING_ISO8859_7 :            enc = kTextEncodingISOLatinGreek;            break ;        case wxFONTENCODING_ISO8859_8 :            enc = kTextEncodingISOLatinHebrew;            break ;        case wxFONTENCODING_ISO8859_9 :            enc = kTextEncodingISOLatin5;            break ;        case wxFONTENCODING_ISO8859_10 :            enc = kTextEncodingISOLatin6;            break ;        case wxFONTENCODING_ISO8859_13 :            enc = kTextEncodingISOLatin7;            break ;        case wxFONTENCODING_ISO8859_14 :            enc = kTextEncodingISOLatin8;            break ;        case wxFONTENCODING_ISO8859_15 :            enc = kTextEncodingISOLatin9;            break ;        case wxFONTENCODING_KOI8 :            enc = kTextEncodingKOI8_R;            break ;        case wxFONTENCODING_ALTERNATIVE : // MS-DOS CP866            enc = kTextEncodingDOSRussian;            break ;/*        case wxFONTENCODING_BULGARIAN :            enc = ;            break ;*/        case wxFONTENCODING_CP437 :            enc =kTextEncodingDOSLatinUS ;            break ;        case wxFONTENCODING_CP850 :            enc = kTextEncodingDOSLatin1;            break ;        case wxFONTENCODING_CP852 :            enc = kTextEncodingDOSLatin2;            break ;        case wxFONTENCODING_CP855 :            enc = kTextEncodingDOSCyrillic;            break ;        case wxFONTENCODING_CP866 :            enc =kTextEncodingDOSRussian ;            break ;        case wxFONTENCODING_CP874 :            enc = kTextEncodingDOSThai;            break ;        case wxFONTENCODING_CP932 :            enc = kTextEncodingDOSJapanese;            break ;        case wxFONTENCODING_CP936 :            enc =kTextEncodingDOSChineseSimplif ;            break ;        case wxFONTENCODING_CP949 :            enc = kTextEncodingDOSKorean;            break ;        case wxFONTENCODING_CP950 :            enc = kTextEncodingDOSChineseTrad;            break ;        case wxFONTENCODING_CP1250 :            enc = kTextEncodingWindowsLatin2;            break ;        case wxFONTENCODING_CP1251 :            enc =kTextEncodingWindowsCyrillic ;            break ;        case wxFONTENCODING_CP1252 :            enc =kTextEncodingWindowsLatin1 ;            break ;        case wxFONTENCODING_CP1253 :            enc = kTextEncodingWindowsGreek;            break ;        case wxFONTENCODING_CP1254 :            enc = kTextEncodingWindowsLatin5;            break ;        case wxFONTENCODING_CP1255 :            enc =kTextEncodingWindowsHebrew ;            break ;        case wxFONTENCODING_CP1256 :            enc =kTextEncodingWindowsArabic ;            break ;        case wxFONTENCODING_CP1257 :            enc = kTextEncodingWindowsBalticRim;            break ;        case wxFONTENCODING_UTF7 :            enc = CreateTextEncoding(kTextEncodingUnicodeDefault,0,kUnicodeUTF7Format) ;            break ;        case wxFONTENCODING_UTF8 :            enc = CreateTextEncoding(kTextEncodingUnicodeDefault,0,kUnicodeUTF8Format) ;            break ;        case wxFONTENCODING_EUC_JP :            enc = kTextEncodingEUC_JP;            break ;        case wxFONTENCODING_UTF16BE :            enc = CreateTextEncoding(kTextEncodingUnicodeDefault,0,kUnicode16BitFormat) ;            break ;        case wxFONTENCODING_UTF16LE :            enc = CreateTextEncoding(kTextEncodingUnicodeDefault,0,kUnicode16BitFormat) ;            break ;        case wxFONTENCODING_UTF32BE :            enc = CreateTextEncoding(kTextEncodingUnicodeDefault,0,kUnicode32BitFormat) ;            break ;        case wxFONTENCODING_UTF32LE :            enc = CreateTextEncoding(kTextEncodingUnicodeDefault,0,kUnicode32BitFormat) ;            break ;        case wxFONTENCODING_MACROMAN :            enc = kTextEncodingMacRoman ;            break ;        case wxFONTENCODING_MACJAPANESE :            enc = kTextEncodingMacJapanese ;            break ;        case wxFONTENCODING_MACCHINESETRAD :            enc = kTextEncodingMacChineseTrad ;            break ;        case wxFONTENCODING_MACKOREAN :            enc = kTextEncodingMacKorean ;            break ;        case wxFONTENCODING_MACARABIC :            enc = kTextEncodingMacArabic ;            break ;        case wxFONTENCODING_MACHEBREW :            enc = kTextEncodingMacHebrew ;            break ;        case wxFONTENCODING_MACGREEK :            enc = kTextEncodingMacGreek ;            break ;        case wxFONTENCODING_MACCYRILLIC :            enc = kTextEncodingMacCyrillic ;            break ;        case wxFONTENCODING_MACDEVANAGARI :            enc = kTextEncodingMacDevanagari ;            break ;        case wxFONTENCODING_MACGURMUKHI :            enc = kTextEncodingMacGurmukhi ;            break ;        case wxFONTENCODING_MACGUJARATI :            enc = kTextEncodingMacGujarati ;            break ;        case wxFONTENCODING_MACORIYA :            enc = kTextEncodingMacOriya ;            break ;        case wxFONTENCODING_MACBENGALI :            enc = kTextEncodingMacBengali ;            break ;        case wxFONTENCODING_MACTAMIL :            enc = kTextEncodingMacTamil ;            break ;        case wxFONTENCODING_MACTELUGU :            enc = kTextEncodingMacTelugu ;            break ;        case wxFONTENCODING_MACKANNADA :            enc = kTextEncodingMacKannada ;            break ;        case wxFONTENCODING_MACMALAJALAM :            enc = kTextEncodingMacMalayalam ;            break ;        case wxFONTENCODING_MACSINHALESE :            enc = kTextEncodingMacSinhalese ;            break ;        case wxFONTENCODING_MACBURMESE :            enc = kTextEncodingMacBurmese ;            break ;        case wxFONTENCODING_MACKHMER :            enc = kTextEncodingMacKhmer ;            break ;        case wxFONTENCODING_MACTHAI :            enc = kTextEncodingMacThai ;            break ;        case wxFONTENCODING_MACLAOTIAN :            enc = kTextEncodingMacLaotian ;            break ;        case wxFONTENCODING_MACGEORGIAN :            enc = kTextEncodingMacGeorgian ;            break ;        case wxFONTENCODING_MACARMENIAN :            enc = kTextEncodingMacArmenian ;            break ;        case wxFONTENCODING_MACCHINESESIMP :            enc = kTextEncodingMacChineseSimp ;            break ;        case wxFONTENCODING_MACTIBETAN :            enc = kTextEncodingMacTibetan ;            break ;        case wxFONTENCODING_MACMONGOLIAN :            enc = kTextEncodingMacMongolian ;            break ;        case wxFONTENCODING_MACETHIOPIC :            enc = kTextEncodingMacEthiopic ;            break ;        case wxFONTENCODING_MACCENTRALEUR :            enc = kTextEncodingMacCentralEurRoman ;            break ;        case wxFONTENCODING_MACVIATNAMESE :            enc = kTextEncodingMacVietnamese ;            break ;        case wxFONTENCODING_MACARABICEXT :            enc = kTextEncodingMacExtArabic ;            break ;        case wxFONTENCODING_MACSYMBOL :            enc = kTextEncodingMacSymbol ;            break ;        case wxFONTENCODING_MACDINGBATS :            enc = kTextEncodingMacDingbats ;            break ;        case wxFONTENCODING_MACTURKISH :            enc = kTextEncodingMacTurkish ;            break ;        case wxFONTENCODING_MACCROATIAN :            enc = kTextEncodingMacCroatian ;            break ;        case wxFONTENCODING_MACICELANDIC :            enc = kTextEncodingMacIcelandic ;            break ;        case wxFONTENCODING_MACROMANIAN :            enc = kTextEncodingMacRomanian ;            break ;        case wxFONTENCODING_MACCELTIC :            enc = kTextEncodingMacCeltic ;            break ;        case wxFONTENCODING_MACGAELIC :            enc = kTextEncodingMacGaelic ;            break ;        case wxFONTENCODING_MACKEYBOARD :            enc = kTextEncodingMacKeyboardGlyphs ;            break ;        default :            // to make gcc happy            break ;    } ;    return enc ;}wxFontEncoding wxMacGetFontEncFromSystemEnc(wxUint32 encoding){    wxFontEncoding enc = wxFONTENCODING_DEFAULT ;    switch( encoding)    {        case kTextEncodingISOLatin1  :            enc = wxFONTENCODING_ISO8859_1 ;            break ;        case kTextEncodingISOLatin2 :            enc = wxFONTENCODING_ISO8859_2;            break ;        case kTextEncodingISOLatin3 :            enc = wxFONTENCODING_ISO8859_3 ;            break ;        case kTextEncodingISOLatin4 :            enc = wxFONTENCODING_ISO8859_4;            break ;        case kTextEncodingISOLatinCyrillic :            enc = wxFONTENCODING_ISO8859_5;            break ;        case kTextEncodingISOLatinArabic :            enc = wxFONTENCODING_ISO8859_6;            break ;        case kTextEncodingISOLatinGreek :            enc = wxFONTENCODING_ISO8859_7;            break ;        case kTextEncodingISOLatinHebrew :            enc = wxFONTENCODING_ISO8859_8;            break ;        case kTextEncodingISOLatin5 :            enc = wxFONTENCODING_ISO8859_9;            break ;        case kTextEncodingISOLatin6 :            enc = wxFONTENCODING_ISO8859_10;            break ;        case kTextEncodingISOLatin7 :            enc = wxFONTENCODING_ISO8859_13;            break ;        case kTextEncodingISOLatin8 :            enc = wxFONTENCODING_ISO8859_14;            break ;        case kTextEncodingISOLatin9 :            enc =wxFONTENCODING_ISO8859_15 ;            break ;        case kTextEncodingKOI8_R :            enc = wxFONTENCODING_KOI8;            break ;/*        case  :            enc = wxFONTENCODING_BULGARIAN;            break ;*/        case kTextEncodingDOSLatinUS :            enc = wxFONTENCODING_CP437;            break ;        case kTextEncodingDOSLatin1 :            enc = wxFONTENCODING_CP850;            break ;        case kTextEncodingDOSLatin2 :            enc =wxFONTENCODING_CP852 ;            break ;        case kTextEncodingDOSCyrillic :            enc = wxFONTENCODING_CP855;            break ;        case kTextEncodingDOSRussian :            enc = wxFONTENCODING_CP866;            break ;        case kTextEncodingDOSThai :            enc =wxFONTENCODING_CP874 ;            break ;        case kTextEncodingDOSJapanese :            enc = wxFONTENCODING_CP932;            break ;        case kTextEncodingDOSChineseSimplif :            enc = wxFONTENCODING_CP936;            break ;        case kTextEncodingDOSKorean :            enc = wxFONTENCODING_CP949;            break ;        case kTextEncodingDOSChineseTrad :            enc = wxFONTENCODING_CP950;            break ;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -