您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ wxLogTrace函数代码示例

51自学网 2021-06-03 10:11:01
  C++
这篇教程C++ wxLogTrace函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中wxLogTrace函数的典型用法代码示例。如果您正苦于以下问题:C++ wxLogTrace函数的具体用法?C++ wxLogTrace怎么用?C++ wxLogTrace使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了wxLogTrace函数的26个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: wxLogTrace

wxFontRefData::~wxFontRefData(){    wxLogTrace("mgl_font", "destructing fntrefdata %p, library is %p", this, m_library);    if ( m_library )        m_library->DecRef();}
开发者ID:gitrider,项目名称:wxsj2,代码行数:6,


示例2: wxLogTrace

S3D::SGTYPES S3D::ReadTag( std::istream& aFile, std::string& aName ){    char schar;    aFile.get( schar );    if( '[' != schar )    {        #ifdef DEBUG        std::ostringstream ostr;        ostr << __FILE__ << ": " << __FUNCTION__ << ": " << __LINE__ << "/n";        ostr << " * [INFO] corrupt data; missing left bracket at position ";        ostr << aFile.tellg();        wxLogTrace( MASK_3D_SG, "%s/n", ostr.str().c_str() );        #endif        return S3D::SGTYPE_END;    }    std::string name;    aFile.get( schar );    while( ']' != schar && aFile.good() )    {        name.push_back( schar );        aFile.get( schar );    }    if( schar != ']' )    {        #ifdef DEBUG        std::ostringstream ostr;        ostr << __FILE__ << ": " << __FUNCTION__ << ": " << __LINE__ << "/n";        ostr << " * [INFO] corrupt data; could not find right bracket";        wxLogTrace( MASK_3D_SG, "%s/n", ostr.str().c_str() );        #endif        return S3D::SGTYPE_END;    }    aName = name;    size_t upos = name.find( '_' );    if( std::string::npos == upos )    {        #ifdef DEBUG        std::ostringstream ostr;        ostr << __FILE__ << ": " << __FUNCTION__ << ": " << __LINE__ << "/n";        ostr << " * [INFO] corrupt data; no underscore in name '";        ostr << name << "'";        wxLogTrace( MASK_3D_SG, "%s/n", ostr.str().c_str() );        #endif        return S3D::SGTYPE_END;    }    name = name.substr( 0, upos );    S3D::SGTYPES types[S3D::SGTYPE_END] = {        SGTYPE_TRANSFORM,        SGTYPE_APPEARANCE,        SGTYPE_COLORS,        SGTYPE_COLORINDEX,        SGTYPE_FACESET,        SGTYPE_COORDS,        SGTYPE_COORDINDEX,        SGTYPE_NORMALS,        SGTYPE_SHAPE    };    for( int i = 0; i < S3D::SGTYPE_END; ++i )    {        if( !name.compare( S3D::GetNodeTypeName( types[i] ) ) )            return types[i];    }    #ifdef DEBUG    do {        std::ostringstream ostr;        ostr << __FILE__ << ": " << __FUNCTION__ << ": " << __LINE__ << "/n";        ostr << " * [INFO] corrupt data; no node type matching '";        ostr << name << "'";        wxLogTrace( MASK_3D_SG, "%s/n", ostr.str().c_str() );    } while( 0 );    #endif    return S3D::SGTYPE_END;}
开发者ID:KiCad,项目名称:kicad-source-mirror,代码行数:86,


示例3: wxLogTrace

void PNS_KICAD_IFACE::UpdateNet( int aNetCode ){    wxLogTrace( "PNS", "Update-net %d", aNetCode );}
开发者ID:cpavlina,项目名称:kicad,代码行数:4,


示例4: CheckForAutoSaveFile

bool SCH_EDIT_FRAME::LoadOneEEFile( SCH_SCREEN* aScreen, const wxString& aFullFileName, bool append ){    char            name1[256];    bool            itemLoaded = false;    SCH_ITEM*       item;    wxString        msgDiag;            // Error and log messages    char*           line;    wxFileName      fn;    if( aScreen == NULL )        return false;    if( aFullFileName.IsEmpty() )        return false;    fn = aFullFileName;    CheckForAutoSaveFile( fn, SchematicBackupFileExtension );    wxLogTrace( traceAutoSave, wxT( "Loading schematic file " ) + aFullFileName );    aScreen->SetCurItem( NULL );    if( !append )        aScreen->SetFileName( aFullFileName );    wxString fname = Prj().AbsolutePath( aFullFileName );#ifdef __WINDOWS__    fname.Replace( wxT("/"), wxT("//") );#else    fname.Replace( wxT("//"), wxT("/") );#endif    FILE* f = wxFopen( fname, wxT( "rt" ) );    if( !f )    {        msgDiag.Printf( _( "Failed to open '%s'" ), GetChars( aFullFileName ) );        DisplayError( this, msgDiag );        return false;    }    // reader now owns the open FILE.    FILE_LINE_READER    reader( f, aFullFileName );    msgDiag.Printf( _( "Loading '%s'" ), GetChars( aScreen->GetFileName() ) );    PrintMsg( msgDiag );    if( !reader.ReadLine()        || strncmp( (char*)reader + 9, SCHEMATIC_HEAD_STRING,                    sizeof( SCHEMATIC_HEAD_STRING ) - 1 ) != 0 )    {        msgDiag.Printf( _( "'%s' is NOT an Eeschema file!" ), GetChars( aFullFileName ) );        DisplayError( this, msgDiag );        return false;    }    line = reader.Line();    // get the file version here.    char *strversion = line + 9 + sizeof( SCHEMATIC_HEAD_STRING );    // Skip blanks    while( *strversion && *strversion < '0' )        strversion++;    int  version = atoi( strversion );    if( version > EESCHEMA_VERSION )    {        msgDiag.Printf( _(            "'%s' was created by a more recent version of Eeschema and may not"            " load correctly. Please consider updating!" ),                GetChars( aFullFileName )                );        DisplayInfoMessage( this, msgDiag );    }#if 0    // Compile it if the new version is unreadable by previous Eeschema versions    else if( version < EESCHEMA_VERSION )    {        MsgDiag = aFullFileName + _( " was created by an older version of /Eeschema. It will be stored in the new file format when you save this file /again." );        DisplayInfoMessage( this, MsgDiag );    }
开发者ID:LDavis4559,项目名称:kicad-source-mirror,代码行数:87,


示例5: wxLogTrace

CWidgetUsage::~CWidgetUsage(){    wxLogTrace(wxT("Function Start/End"), wxT("CWidgetUsage::~CWidgetUsage - Function Begin"));    wxLogTrace(wxT("Function Start/End"), wxT("CWidgetUsage::~CWidgetUsage - Function End"));}
开发者ID:romw,项目名称:boincsentinels,代码行数:5,


示例6: wxLogTrace

// once we get signaled to read, actuall event reading occursvoid wxFSWSourceHandler::OnReadWaiting(){    wxLogTrace(wxTRACE_FSWATCHER, "--- OnReadWaiting ---");    m_service->ReadEvents();}
开发者ID:BloodRedd,项目名称:gamekit,代码行数:6,


示例7: wxLogTrace

// set data functionsSTDMETHODIMP wxIDataObject::SetData(FORMATETC *pformatetc,                                    STGMEDIUM *pmedium,                                    BOOL       fRelease){    wxLogTrace(wxTRACE_OleCalls, wxT("wxIDataObject::SetData"));    switch ( pmedium->tymed )    {        case TYMED_GDI:            m_pDataObject->SetData(wxDF_BITMAP, 0, &pmedium->hBitmap);            break;        case TYMED_ENHMF:            m_pDataObject->SetData(wxDF_ENHMETAFILE, 0, &pmedium->hEnhMetaFile);            break;        case TYMED_ISTREAM:            // check if this format is supported            if ( !m_pDataObject->IsSupported(pformatetc->cfFormat,                                             wxDataObject::Set) )            {                // As this is not a supported format (content data), assume it                // is system data and save it.                return SaveSystemData(pformatetc, pmedium, fRelease);            }            break;        case TYMED_MFPICT:            // fall through - we pass METAFILEPICT through HGLOBAL        case TYMED_HGLOBAL:            {                wxDataFormat format = pformatetc->cfFormat;                format = HtmlFormatFixup(format);                // check if this format is supported                if ( !m_pDataObject->IsSupported(format, wxDataObject::Set) ) {                    // As above, assume that unsupported format must be system                    // data and just save it.                    return SaveSystemData(pformatetc, pmedium, fRelease);                }                // copy data                const void *pBuf = GlobalLock(pmedium->hGlobal);                if ( pBuf == NULL ) {                    wxLogLastError(wxT("GlobalLock"));                    return E_OUTOFMEMORY;                }                // we've got a problem with SetData() here because the base                // class version requires the size parameter which we don't                // have anywhere in OLE data transfer - so we need to                // synthetise it for known formats and we suppose that all data                // in custom formats starts with a DWORD containing the size                size_t size;                switch ( format )                {                    case wxDF_HTML:                    case CF_TEXT:                    case CF_OEMTEXT:                        size = strlen((const char *)pBuf);                        break;#if !(defined(__BORLANDC__) && (__BORLANDC__ < 0x500))                    case CF_UNICODETEXT:#if ( defined(__BORLANDC__) && (__BORLANDC__ > 0x530) )                        size = std::wcslen((const wchar_t *)pBuf) * sizeof(wchar_t);#else                        size = wxWcslen((const wchar_t *)pBuf) * sizeof(wchar_t);#endif                        break;#endif                    case CF_BITMAP:#ifndef __WXWINCE__                    case CF_HDROP:                        // these formats don't use size at all, anyhow (but                        // pass data by handle, which is always a single DWORD)                        size = 0;                        break;#endif                    case CF_DIB:                        // the handler will calculate size itself (it's too                        // complicated to do it here)                        size = 0;                        break;#ifndef __WXWINCE__                    case CF_METAFILEPICT:                        size = sizeof(METAFILEPICT);                        break;#endif                    default:                        pBuf = m_pDataObject->                                    GetSizeFromBuffer(pBuf, &size, format);                        size -= m_pDataObject->GetBufferOffset(format);                }                bool ok = m_pDataObject->SetData(format, size, pBuf);//.........这里部分代码省略.........
开发者ID:hazeeq090576,项目名称:wxWidgets,代码行数:101,


示例8: wxLogQueryInterface

WXDLLEXPORT void wxLogQueryInterface(const wxChar *szInterface, REFIID riid){    wxLogTrace(wxTRACE_OleCalls, wxT("%s::QueryInterface (iid = %s)"),               szInterface, GetIidName(riid).c_str());}
开发者ID:iokto,项目名称:newton-dynamics,代码行数:5,


示例9: wxLogAddRef

WXDLLEXPORT void wxLogAddRef(const wxChar *szInterface, ULONG cRef){    wxLogTrace(wxTRACE_OleCalls, wxT("After %s::AddRef: m_cRef = %d"), szInterface, cRef + 1);}
开发者ID:iokto,项目名称:newton-dynamics,代码行数:4,


示例10: getView

ITEM* TOOL_BASE::pickSingleItem( const VECTOR2I& aWhere, int aNet, int aLayer, bool aIgnorePads,								 const std::vector<ITEM*> aAvoidItems){    int tl = getView()->GetTopLayer();    if( aLayer > 0 )        tl = aLayer;    static const int candidateCount = 5;    ITEM* prioritized[candidateCount];    int dist[candidateCount];    for( int i = 0; i < candidateCount; i++ )    {        prioritized[i] = 0;        dist[i] = std::numeric_limits<int>::max();    }    ITEM_SET candidates = m_router->QueryHoverItems( aWhere );    for( ITEM* item : candidates.Items() )    {        if( !item->IsRoutable() )            continue;        if( !IsCopperLayer( item->Layers().Start() ) )            continue;        if( std::find( aAvoidItems.begin(), aAvoidItems.end(), item ) != aAvoidItems.end() )            continue;        // fixme: this causes flicker with live loop removal...        //if( item->Parent() && !item->Parent()->ViewIsVisible() )        //    continue;        if( aNet <= 0 || item->Net() == aNet )        {            if( item->OfKind( ITEM::VIA_T | ITEM::SOLID_T ) )            {                if( item->OfKind( ITEM::SOLID_T ) && aIgnorePads )                    continue;                int itemDist = ( item->Shape()->Centre() - aWhere ).SquaredEuclideanNorm();                if( !prioritized[2] || itemDist < dist[2] )                {                    prioritized[2] = item;                    dist[2] = itemDist;                }                if( item->Layers().Overlaps( tl ) &&  itemDist < dist[0] )                {                    prioritized[0] = item;                    dist[0] = itemDist;                }            }            else            {                if( !prioritized[3] )                    prioritized[3] = item;                if( item->Layers().Overlaps( tl ) )                    prioritized[1] = item;            }        }        // Allow unconnected items as last resort in RM_MarkObstacles mode        else if ( item->Net() == 0 && m_router->Settings().Mode() == RM_MarkObstacles )        {            if( item->OfKind( ITEM::SOLID_T ) && aIgnorePads )                continue;            if( item->Layers().Overlaps( tl ) )                prioritized[4] = item;        }    }    ITEM* rv = NULL;    for( int i = 0; i < candidateCount; i++ )    {        ITEM* item = prioritized[i];        if( displayOptions()->m_ContrastModeDisplay )            if( item && !item->Layers().Overlaps( tl ) )                item = NULL;        if( item && ( aLayer < 0 || item->Layers().Overlaps( aLayer ) ) )        {            rv = item;            break;        }    }    if( rv )    {        wxLogTrace( "PNS", "%s, layer : %d, tl: %d", rv->KindStr().c_str(), rv->Layers().Start(), tl );    }    return rv;}
开发者ID:KiCad,项目名称:kicad-source-mirror,代码行数:98,


示例11: wxLogTrace

bool CBOINCGUIApp::SetActiveGUI(int iGUISelection, bool bShowWindow) {    wxLogTrace(wxT("Function Start/End"), wxT("CBOINCGUIApp::SetActiveGUI - Function Begin"));    wxLogTrace(wxT("Function Start/End"), wxT("CBOINCGUIApp::SetActiveGUI - GUI Selection: '%d', Show: %d'"), iGUISelection, (int)bShowWindow);    CBOINCBaseFrame* pNewFrame = NULL;    CBOINCBaseFrame* pOldFrame = m_pFrame;    wxInt32          iTop = 0;    wxInt32          iLeft = 0;    wxInt32          iHeight = 0;    wxInt32          iWidth = 0;    // Create the new window    if ((iGUISelection != m_iGUISelected) || !m_pFrame) {        // Retrieve the desired window state before creating the        //   desired frames        if (BOINC_ADVANCEDGUI == iGUISelection) {            m_pConfig->SetPath(wxT("/"));            m_pConfig->Read(wxT("YPos"), &iTop, 30);            m_pConfig->Read(wxT("XPos"), &iLeft, 30);            m_pConfig->Read(wxT("Width"), &iWidth, 800);            m_pConfig->Read(wxT("Height"), &iHeight, 600);            // Guard against a rare situation where registry values are zero            if (iWidth < 50) iWidth = 800;            if (iHeight < 50) iHeight = 600;        } else {            m_pConfig->SetPath(wxT("/Simple"));            m_pConfig->Read(wxT("YPos"), &iTop, 30);            m_pConfig->Read(wxT("XPos"), &iLeft, 30);            // We don't save Simple View's width & height since it's             // window is not resizable, so don't try to read them#ifdef __WXMAC__//            m_pConfig->Read(wxT("Width"), &iWidth, 409);//            m_pConfig->Read(wxT("Height"), &iHeight, 561);            iWidth = 409;            iHeight = 561;#else//            m_pConfig->Read(wxT("Width"), &iWidth, 416);//            m_pConfig->Read(wxT("Height"), &iHeight, 570);            iWidth = 416;            iHeight = 570;#endif        }        // Make sure that the new window is going to be visible        //   on a screen#ifdef __WXMAC__    if (!IsWindowOnScreen(iLeft, iTop, iWidth, iHeight)) {        iTop = iLeft = 30;    }#else	    // If either co-ordinate is less then 0 then set it equal to 0 to ensure	    // it displays on the screen.	    if ( iLeft < 0 ) iLeft = 30;	    if ( iTop < 0 ) iTop = 30;	    // Read the size of the screen	    wxInt32 iMaxWidth = wxSystemSettings::GetMetric( wxSYS_SCREEN_X );	    wxInt32 iMaxHeight = wxSystemSettings::GetMetric( wxSYS_SCREEN_Y );	    // Max sure that it doesn't go off to the right or bottom	    if ( iLeft + iWidth > iMaxWidth ) iLeft = iMaxWidth - iWidth;	    if ( iTop + iHeight > iMaxHeight ) iTop = iMaxHeight - iHeight;#endif        // Create the main window        //        if (BOINC_ADVANCEDGUI == iGUISelection) {            // Initialize the advanced gui window            pNewFrame = new CAdvancedFrame(                m_pSkinManager->GetAdvanced()->GetApplicationName(),                 m_pSkinManager->GetAdvanced()->GetApplicationIcon(),                m_pSkinManager->GetAdvanced()->GetApplicationIcon32(),                wxPoint(iLeft, iTop),                wxSize(iWidth, iHeight)            );        } else {            // Initialize the simple gui window            pNewFrame = new CSimpleFrame(                m_pSkinManager->GetAdvanced()->GetApplicationName(),                 m_pSkinManager->GetAdvanced()->GetApplicationIcon(),                m_pSkinManager->GetAdvanced()->GetApplicationIcon32(),                wxPoint(iLeft, iTop),                wxSize(iWidth, iHeight)            );        }        wxASSERT(pNewFrame);        if (pNewFrame) {            SetTopWindow(pNewFrame);            // Store the new frame for future use            m_pFrame = pNewFrame;            // Hide the old one if it exists.  We must do this             // after updating m_pFrame to prevent Mac OSX from//.........这里部分代码省略.........
开发者ID:xiaobozi,项目名称:boinc,代码行数:101,


示例12: wxSetFocusToChild

bool wxSetFocusToChild(wxWindow *win, wxWindow **childLastFocused){    wxCHECK_MSG( win, false, wxT("wxSetFocusToChild(): invalid window") );    //    wxCHECK_MSG( childLastFocused, false,    //             wxT("wxSetFocusToChild(): NULL child poonter") );    if ( childLastFocused && *childLastFocused )    {        // It might happen that the window got reparented        if ( (*childLastFocused)->GetParent() == win )        {            // And it also could have become hidden in the meanwhile            // We want to focus on the deepest widget visible            wxWindow *deepestVisibleWindow = NULL;            while ( *childLastFocused )            {                if ( (*childLastFocused)->IsShown() )                {                    if ( !deepestVisibleWindow )                        deepestVisibleWindow = *childLastFocused;                }                else                    deepestVisibleWindow = NULL;                *childLastFocused = (*childLastFocused)->GetParent();            }            if ( deepestVisibleWindow )            {                *childLastFocused = deepestVisibleWindow;                wxLogTrace(TRACE_FOCUS,                           wxT("SetFocusToChild() => last child (0x%p)."),                           (*childLastFocused)->GetHandle());                // not SetFocusFromKbd(): we're restoring focus back to the old                // window and not setting it as the result of a kbd action                (*childLastFocused)->SetFocus();                return true;            }        }        else        {            // it doesn't count as such any more            *childLastFocused = NULL;        }    }    // set the focus to the first child who wants it    wxWindowList::compatibility_iterator node = win->GetChildren().GetFirst();    while ( node )    {        wxWindow *child = node->GetData();        node = node->GetNext();        // skip special windows:        if ( !win->IsClientAreaChild(child) )            continue;        if ( child->CanAcceptFocusFromKeyboard() && !child->IsTopLevel() )        {#if defined(__WXMSW__) && wxUSE_RADIOBTN            // If a radiobutton is the first focusable child, search for the            // selected radiobutton in the same group            wxRadioButton* btn = wxDynamicCast(child, wxRadioButton);            if (btn)            {                wxRadioButton* selected = wxGetSelectedButtonInGroup(btn);                if (selected)                    child = selected;            }#endif // __WXMSW__            wxLogTrace(TRACE_FOCUS,                       wxT("SetFocusToChild() => first child (0x%p)."),                       child->GetHandle());            if (childLastFocused)                *childLastFocused = child;            child->SetFocusFromKbd();            return true;        }    }    return false;}
开发者ID:yinglang,项目名称:newton-dynamics,代码行数:87,


示例13: wxDateTime

//.........这里部分代码省略.........    if (BSLERR_SUCCESS != rc) return;    if (!pSyncProfile) return;    rc = m_pHost->FindRPCProfile(CLASSINFO(CRPCSyncState)->GetClassName(), &pRPCProfile);    if (BSLERR_SUCCESS != rc) return;    if (!pRPCProfile) return;    uiInterval = pSyncProfile->GetValue();    if (!uiInterval) return;    dtRPCCompletedDate = pRPCProfile->GetLastRequestTime() + pRPCProfile->GetTotalDuration();    rc = m_pHost->EnumerateProjects(oProjects);    if (BSLERR_SUCCESS != rc) return;    rc = m_pHost->EnumerateApps(oApps);    if (BSLERR_SUCCESS != rc) return;    rc = m_pHost->EnumerateAppVersions(oAppVersions);    if (BSLERR_SUCCESS != rc) return;    rc = m_pHost->EnumerateTasks(oTasks);    if (BSLERR_SUCCESS != rc) return;    rc = m_pHost->EnumerateTaskInstances(oTaskInstances);    if (BSLERR_SUCCESS != rc) return;    for (iterProjects = oProjects.begin(); iterProjects != oProjects.end(); ++iterProjects)    {        pProject = *iterProjects;        // An item is deemed expired if it wasn't refreshed the last time the synchronize        // RPC was called.        //        dtExpirationDate =            pProject->GetLastModifiedTime() +            wxTimeSpan(0, 0, uiInterval, 0) +            wxTimeSpan(0, 0, 0, 250);        if ((m_dtNow > dtExpirationDate) && (dtRPCCompletedDate > dtExpirationDate))        {            // Sanity Check: Make sure that no task instances refer to this project            bTaskInstanceFound = false;            for (iterTaskInstances = oTaskInstances.begin(); iterTaskInstances != oTaskInstances.end(); ++iterTaskInstances)            {                pTaskInstance = *iterTaskInstances;                if (pTaskInstance->GetProjectHandle() == pProject->GetProjectHandle())                {                    bTaskInstanceFound = true;                }            }            // Sanity Check: Make sure that no tasks refer to this project            bTaskFound = false;            for (iterTasks = oTasks.begin(); iterTasks != oTasks.end(); ++iterTasks)            {                pTask = *iterTasks;                if (pTask->GetProjectHandle() == pProject->GetProjectHandle())                {                    bTaskFound = true;                }            }            // Sanity Check: Make sure that no app versions refer to this project            bAppVersionFound = false;            for (iterAppVersions = oAppVersions.begin(); iterAppVersions != oAppVersions.end(); ++iterAppVersions)            {                pAppVersion = *iterAppVersions;                if (pAppVersion->GetProjectHandle() == pProject->GetProjectHandle())                {                    bAppVersionFound = true;                }            }            // Sanity Check: Make sure that no apps refer to this project            bAppFound = false;            for (iterApps = oApps.begin(); iterApps != oApps.end(); ++iterApps)            {                pApp = *iterApps;                if (pApp->GetProjectHandle() == pProject->GetProjectHandle())                {                    bAppFound = true;                }            }            if (!bTaskInstanceFound && !bTaskFound && !bAppVersionFound && !bAppFound)            {                wxLogTrace(wxT("Function Status"),                    wxT("CGarbageCollector::RecycleProjects - Recycle '%p', dtNow: '%s', dtExpirationDate: '%s', dtRPCCompletedDate: '%s'"),                    pApp,                    m_dtNow.Format(wxT("%H:%M:%S.%l")).c_str(),                    dtRPCCompletedDate.Format(wxT("%H:%M:%S.%l")).c_str(),                    dtExpirationDate.Format(wxT("%H:%M:%S.%l")).c_str()                );                m_pHost->DeleteProject(pProject);            }        }    }}
开发者ID:romw,项目名称:boincsentinels,代码行数:101,


示例14: wxLogTrace

long wxTaskBarIconEx::WindowProc( WXHWND hWnd, unsigned int msg, unsigned int wParam, long lParam ){    wxLogTrace(wxT("Function Start/End"), wxT("wxTaskBarIconEx::WindowProc - Function Begin"));    wxEventType eventType = 0;    long        lReturnValue = 0;         if      ( WM_CLOSE == msg )    {        wxLogTrace(wxT("Function Status"), wxT("wxTaskBarIconEx::WindowProc - WM_CLOSE Detected"));         wxCloseEvent eventClose(wxEVT_CLOSE_WINDOW);        ProcessEvent(eventClose);        if ( !eventClose.GetSkipped() )            lReturnValue = DefWindowProc((HWND) hWnd, msg, wParam, lParam);        else            lReturnValue = 0;    }    else if ( WM_TASKBARCREATED == msg )    {        wxLogTrace(wxT("Function Status"), wxT("wxTaskBarIconEx::WindowProc - WM_TASKBARCREATED Detected"));        eventType = wxEVT_TASKBAR_CREATED;    }    else if ( WM_TASKBARSHUTDOWN == msg )    {        wxLogTrace(wxT("Function Status"), wxT("wxTaskBarIconEx::WindowProc - WM_TASKBARSHUTDOWN Detected"));        eventType = wxEVT_TASKBAR_SHUTDOWN;    }    if (msg != sm_taskbarMsg)        lReturnValue = DefWindowProc((HWND) hWnd, msg, wParam, lParam);    if ( 0 == eventType )    {        switch (lParam)        {            case WM_LBUTTONDOWN:                eventType = wxEVT_TASKBAR_LEFT_DOWN;                break;            case WM_LBUTTONUP:                eventType = wxEVT_TASKBAR_LEFT_UP;                break;            case WM_RBUTTONDOWN:                eventType = wxEVT_TASKBAR_RIGHT_DOWN;                break;            case WM_RBUTTONUP:                eventType = wxEVT_TASKBAR_RIGHT_UP;                break;            case WM_LBUTTONDBLCLK:                eventType = wxEVT_TASKBAR_LEFT_DCLICK;                break;            case WM_RBUTTONDBLCLK:                eventType = wxEVT_TASKBAR_RIGHT_DCLICK;                break;            case WM_MOUSEMOVE:                eventType = wxEVT_TASKBAR_MOVE;                break;            case WM_CONTEXTMENU:                eventType = wxEVT_TASKBAR_CONTEXT_MENU;                break;            case NIN_SELECT:                eventType = wxEVT_TASKBAR_SELECT;                break;            case NIN_KEYSELECT:                eventType = wxEVT_TASKBAR_KEY_SELECT;                break;            case NIN_BALLOONSHOW:                eventType = wxEVT_TASKBAR_BALLOON_SHOW;                break;            case NIN_BALLOONHIDE:                eventType = wxEVT_TASKBAR_BALLOON_HIDE;                break;            case NIN_BALLOONTIMEOUT:                eventType = wxEVT_TASKBAR_BALLOON_TIMEOUT;                break;            case NIN_BALLOONUSERCLICK:                eventType = wxEVT_TASKBAR_BALLOON_USERCLICK;                break;        }    }    if (eventType)    {        wxTaskBarIconExEvent event(eventType, this);        ProcessEvent(event);        lReturnValue = 0;//.........这里部分代码省略.........
开发者ID:Rytiss,项目名称:native-boinc-for-android,代码行数:101,


示例15: ProcessNativeEvent

    void ProcessNativeEvent(const inotify_event& inevt)    {        wxLogTrace(wxTRACE_FSWATCHER, InotifyEventToString(inevt));        // after removing inotify watch we get IN_IGNORED for it, but the watch        // will be already removed from our list at that time        if (inevt.mask & IN_IGNORED)        {            return;        }        // get watch entry for this event        wxFSWatchEntryDescriptors::iterator it = m_watchMap.find(inevt.wd);        wxCHECK_RET(it != m_watchMap.end(),                             "Watch descriptor not present in the watch map!");        wxFSWatchEntry& watch = *(it->second);        int nativeFlags = inevt.mask;        int flags = Native2WatcherFlags(nativeFlags);        // check out for error/warning condition        if (flags & wxFSW_EVENT_WARNING || flags & wxFSW_EVENT_ERROR)        {            wxString errMsg = GetErrorDescription(Watcher2NativeFlags(flags));            wxFileSystemWatcherEvent event(flags, errMsg);            SendEvent(event);        }        // filter out ignored events and those not asked for.        // we never filter out warnings or exceptions        else if ((flags == 0) || !(flags & watch.GetFlags()))        {            return;        }        // renames        else if (nativeFlags & IN_MOVE)        {            wxInotifyCookies::iterator it = m_cookies.find(inevt.cookie);            if ( it == m_cookies.end() )            {                int size = sizeof(inevt) + inevt.len;                inotify_event* e = (inotify_event*) operator new (size);                memcpy(e, &inevt, size);                wxInotifyCookies::value_type val(e->cookie, e);                m_cookies.insert(val);            }            else            {                inotify_event& oldinevt = *(it->second);                wxFileSystemWatcherEvent event(flags);                if ( inevt.mask & IN_MOVED_FROM )                {                    event.SetPath(GetEventPath(watch, inevt));                    event.SetNewPath(GetEventPath(watch, oldinevt));                }                else                {                    event.SetPath(GetEventPath(watch, oldinevt));                    event.SetNewPath(GetEventPath(watch, inevt));                }                SendEvent(event);                m_cookies.erase(it);                delete &oldinevt;            }        }        // every other kind of event        else        {            wxFileName path = GetEventPath(watch, inevt);            wxFileSystemWatcherEvent event(flags, path, path);            SendEvent(event);        }    }
开发者ID:BloodRedd,项目名称:gamekit,代码行数:75,


示例16: wxLogRelease

WXDLLEXPORT void wxLogRelease(const wxChar *szInterface, ULONG cRef){    wxLogTrace(wxTRACE_OleCalls, wxT("After %s::Release: m_cRef = %d"), szInterface, cRef - 1);}
开发者ID:iokto,项目名称:newton-dynamics,代码行数:4,


示例17: SendEvent

 void SendEvent(wxFileSystemWatcherEvent& evt) {     wxLogTrace(wxTRACE_FSWATCHER, evt.ToString());     m_watcher->GetOwner()->ProcessEvent(evt); }
开发者ID:BloodRedd,项目名称:gamekit,代码行数:5,


示例18: WXUNUSED

void CWidgetProjects::OnResumeProjects(wxCommandEvent& WXUNUSED(event)){    wxLogTrace(wxT("Function Start/End"), wxT("CWidgetActiveTasks::OnResumeProjects - Function Begin"));    wxLogTrace(wxT("Function Start/End"), wxT("CWidgetActiveTasks::OnResumeProjects - Function End"));}
开发者ID:romw,项目名称:boincsentinels,代码行数:5,


示例19: OleGetClipboard

bool wxClipboard::GetData( wxDataObject& data ){#if wxUSE_OLE_CLIPBOARD    IDataObject *pDataObject = NULL;    HRESULT hr = OleGetClipboard(&pDataObject);    if ( FAILED(hr) || !pDataObject )    {        wxLogSysError(hr, _("Failed to get data from the clipboard"));        return false;    }    // build the list of supported formats    size_t nFormats = data.GetFormatCount(wxDataObject::Set);    wxDataFormat format;    wxDataFormat *formats;    if ( nFormats == 1 )    {        // the most common case        formats = &format;    }    else    {        // bad luck, need to alloc mem        formats = new wxDataFormat[nFormats];    }    data.GetAllFormats(formats, wxDataObject::Set);    // get the data for the given formats    FORMATETC formatEtc;    CLIPFORMAT cf;    bool result = false;    // enumerate all explicit formats on the clipboard.    // note that this does not include implicit / synthetic (automatically    // converted) formats.#ifdef __WXDEBUG__    // get the format enumerator    IEnumFORMATETC *pEnumFormatEtc = NULL;    hr = pDataObject->EnumFormatEtc(DATADIR_GET, &pEnumFormatEtc);    if ( FAILED(hr) || !pEnumFormatEtc )    {        wxLogSysError(hr,                      _("Failed to retrieve the supported clipboard formats"));    }    else    {        // ask for the supported formats and see if there are any we support        for ( ;; )        {            ULONG nCount;            hr = pEnumFormatEtc->Next(1, &formatEtc, &nCount);            // don't use FAILED() because S_FALSE would pass it            if ( hr != S_OK )            {                // no more formats                break;            }            cf = formatEtc.cfFormat;            wxLogTrace(wxTRACE_OleCalls,                       wxT("Object on the clipboard supports format %s."),                       wxDataObject::GetFormatName(cf));        }        pEnumFormatEtc->Release();    }#endif // Debug    STGMEDIUM medium;    // stop at the first valid format found on the clipboard    for ( size_t n = 0; !result && (n < nFormats); n++ )    {        // convert to NativeFormat Id        cf = formats[n].GetFormatId();        // if the format is not available, try the next one        // this test includes implicit / sythetic formats        if ( !::IsClipboardFormatAvailable(cf) )            continue;        formatEtc.cfFormat = cf;        formatEtc.ptd      = NULL;        formatEtc.dwAspect = DVASPECT_CONTENT;        formatEtc.lindex   = -1;        // use the appropriate tymed        switch ( formatEtc.cfFormat )        {            case CF_BITMAP:                formatEtc.tymed = TYMED_GDI;                break;#ifndef __WXWINCE__            case CF_METAFILEPICT:                formatEtc.tymed = TYMED_MFPICT;                break;//.........这里部分代码省略.........
开发者ID:252525fb,项目名称:rpcs3,代码行数:101,


示例20: wxLogTrace

void wxIOCPThread::SendEvent(wxFileSystemWatcherEvent& evt){    wxLogTrace(wxTRACE_FSWATCHER, "[iocp] EVT: %s", evt.ToString());    m_service->SendEvent(evt);}
开发者ID:Richard-Ni,项目名称:wxWidgets,代码行数:5,


示例21: WXUNUSED

void CWidgetUsage::OnUsageProperties(wxCommandEvent& WXUNUSED(event)){    wxLogTrace(wxT("Function Start/End"), wxT("CWidgetUsage::OnUsageProperties - Function Begin"));    wxLogTrace(wxT("Function Start/End"), wxT("CWidgetUsage::OnUsageProperties - Function End"));}
开发者ID:romw,项目名称:boincsentinels,代码行数:5,


示例22: wxLogTrace

CWidgetEventLog::~CWidgetEventLog(){    wxLogTrace(wxT("Function Start/End"), wxT("CWidgetEventLog::~CWidgetEventLog - Function Begin"));    wxLogTrace(wxT("Function Start/End"), wxT("CWidgetEventLog::~CWidgetEventLog - Function End"));}
开发者ID:romw,项目名称:boincsentinels,代码行数:5,


示例23: set

bool S3D::CalcTriangleNormals( std::vector< SGPOINT > coords,    std::vector< int >& index, std::vector< SGVECTOR >& norms ){    size_t vsize = coords.size();    if( vsize < 3 )    {        #ifdef DEBUG        std::ostringstream ostr;        ostr << __FILE__ << ": " << __FUNCTION__ << ": " << __LINE__ << "/n";        ostr << " * [INFO] invalid vertex set (fewer than 3 vertices)";        wxLogTrace( MASK_3D_SG, "%s/n", ostr.str().c_str() );        #endif        return false;    }    size_t isize = index.size();    if( 0 != isize % 3 || index.empty() )    {        #ifdef DEBUG        std::ostringstream ostr;        ostr << __FILE__ << ": " << __FUNCTION__ << ": " << __LINE__ << "/n";        ostr << " * [INFO] invalid index set (not multiple of 3)";        wxLogTrace( MASK_3D_SG, "%s/n", ostr.str().c_str() );        #endif        return false;    }    if( !norms.empty() )    {        #ifdef DEBUG        std::ostringstream ostr;        ostr << __FILE__ << ": " << __FUNCTION__ << ": " << __LINE__ << "/n";        ostr << " * [INFO] normals set is not empty";        wxLogTrace( MASK_3D_SG, "%s/n", ostr.str().c_str() );        #endif        return false;    }    std::map< int, std::list< glm::dvec3 > >vmap;    int p1, p2, p3;    // create the map of indices to facet sets    for( size_t i = 0; i < isize; )    {        p1 = index[i++];        p2 = index[i++];        p3 = index[i++];        if( p1 < 0 || p1 >= (int)vsize || p2 < 0 || p2 >= (int)vsize ||            p3 < 0 || p3 >= (int)vsize )        {            #ifdef DEBUG            std::ostringstream ostr;            ostr << __FILE__ << ": " << __FUNCTION__ << ": " << __LINE__ << "/n";            ostr << " * [INFO] invalid index set; index out of bounds";            wxLogTrace( MASK_3D_SG, "%s/n", ostr.str().c_str() );            #endif            return false;        }        glm::dvec3 tri;        glm::dvec3 trip[3];        trip[0] = glm::dvec3( coords[p1].x, coords[p1].y, coords[p1].z );        trip[1] = glm::dvec3( coords[p2].x, coords[p2].y, coords[p2].z );        trip[2] = glm::dvec3( coords[p3].x, coords[p3].y, coords[p3].z );        calcTriad( trip, tri );        std::map< int, std::list< glm::dvec3 > >::iterator ip = vmap.find( p1 );        if( ip != vmap.end() )        {            ip->second.push_back( tri );        }        else        {            vmap.insert( std::pair < int, std::list < glm::dvec3 > >                ( p1, std::list < glm::dvec3 >( 1, tri ) ) );        }        ip = vmap.find( p2 );        if( ip != vmap.end() )        {            ip->second.push_back( tri );        }        else        {            vmap.insert( std::pair < int, std::list < glm::dvec3 > >                ( p2, std::list < glm::dvec3 >( 1, tri ) ) );        }        ip = vmap.find( p3 );//.........这里部分代码省略.........
开发者ID:KiCad,项目名称:kicad-source-mirror,代码行数:101,


示例24: GetScreen

void EDA_DRAW_FRAME::AdjustScrollBars( const wxPoint& aCenterPositionIU ){    BASE_SCREEN* screen = GetScreen();    if( !screen || !m_canvas )        return;    double scale = screen->GetScalingFactor();    wxLogTrace( traceScrollSettings, wxT( "Center Position = ( %d, %d ), scale = %.10g" ),                aCenterPositionIU.x, aCenterPositionIU.y, scale );    // Calculate the portion of the drawing that can be displayed in the    // client area at the current zoom level.    // visible viewport in device units ~ pixels    wxSize  clientSizeDU = m_canvas->GetClientSize();    // Size of the client window in IU    DSIZE   clientSizeIU( clientSizeDU.x / scale, clientSizeDU.y / scale );    // Full drawing or "page" rectangle in internal units    DBOX    pageRectIU( wxPoint( 0, 0 ), wxSize( GetPageSizeIU().x, GetPageSizeIU().y ) );    // The upper left corner of the client rectangle in internal units.    double xIU = aCenterPositionIU.x - clientSizeIU.x / 2.0;    double yIU = aCenterPositionIU.y - clientSizeIU.y / 2.0;    // If drawn around the center, adjust the client rectangle accordingly.    if( screen->m_Center )    {        // half page offset.        xIU += pageRectIU.GetWidth()  / 2.0;        yIU += pageRectIU.GetHeight() / 2.0;    }    DBOX    clientRectIU( wxPoint( xIU, yIU ), wxSize( clientSizeIU.x, clientSizeIU.y ) );    wxPoint centerPositionIU;    // put "int" limits on the clientRect    if( clientRectIU.GetLeft() < VIRT_MIN )        clientRectIU.MoveLeftTo( VIRT_MIN );    if( clientRectIU.GetTop() < VIRT_MIN )        clientRectIU.MoveTopTo( VIRT_MIN );    if( clientRectIU.GetRight() > VIRT_MAX )        clientRectIU.MoveRightTo( VIRT_MAX );    if( clientRectIU.GetBottom() > VIRT_MAX )        clientRectIU.MoveBottomTo( VIRT_MAX );    centerPositionIU.x = KiROUND( clientRectIU.GetX() + clientRectIU.GetWidth() / 2 );    centerPositionIU.y = KiROUND( clientRectIU.GetY() + clientRectIU.GetHeight() / 2 );    if( screen->m_Center )    {        centerPositionIU.x -= KiROUND( pageRectIU.GetWidth() / 2.0 );        centerPositionIU.y -= KiROUND( pageRectIU.GetHeight() / 2.0 );    }    DSIZE   virtualSizeIU;    if( pageRectIU.GetLeft() < clientRectIU.GetLeft() && pageRectIU.GetRight() > clientRectIU.GetRight() )    {        virtualSizeIU.x = pageRectIU.GetSize().x;    }    else    {        double pageCenterX    = pageRectIU.GetX()   + ( pageRectIU.GetWidth() / 2 );        double clientCenterX  = clientRectIU.GetX() + ( clientRectIU.GetWidth() / 2 );        if( clientRectIU.GetWidth() > pageRectIU.GetWidth() )        {            if( pageCenterX > clientCenterX )                virtualSizeIU.x = ( pageCenterX - clientRectIU.GetLeft() ) * 2;            else if( pageCenterX < clientCenterX )                virtualSizeIU.x = ( clientRectIU.GetRight() - pageCenterX ) * 2;            else                virtualSizeIU.x = clientRectIU.GetWidth();        }        else        {            if( pageCenterX > clientCenterX )                virtualSizeIU.x = pageRectIU.GetWidth() + ( (pageRectIU.GetLeft() - clientRectIU.GetLeft() ) * 2 );            else if( pageCenterX < clientCenterX )                virtualSizeIU.x = pageRectIU.GetWidth() + ( (clientRectIU.GetRight() - pageRectIU.GetRight() ) * 2 );            else                virtualSizeIU.x = pageRectIU.GetWidth();        }    }    if( pageRectIU.GetTop() < clientRectIU.GetTop() && pageRectIU.GetBottom() > clientRectIU.GetBottom() )    {        virtualSizeIU.y = pageRectIU.GetSize().y;    }    else    {        double pageCenterY   = pageRectIU.GetY()   + ( pageRectIU.GetHeight() / 2 );        double clientCenterY = clientRectIU.GetY() + ( clientRectIU.GetHeight() / 2 );        if( clientRectIU.GetHeight() > pageRectIU.GetHeight() )        {//.........这里部分代码省略.........
开发者ID:LDavis4559,项目名称:kicad-source-mirror,代码行数:101,


示例25: layers

std::unique_ptr<PNS::SOLID> PNS_KICAD_IFACE::syncPad( D_PAD* aPad ){    LAYER_RANGE layers( 0, MAX_CU_LAYERS - 1 );    // ignore non-copper pads    if( ( aPad->GetLayerSet() & LSET::AllCuMask()).none() )        return NULL;    switch( aPad->GetAttribute() )    {    case PAD_ATTRIB_STANDARD:        break;    case PAD_ATTRIB_SMD:    case PAD_ATTRIB_HOLE_NOT_PLATED:    case PAD_ATTRIB_CONN:        {            LSET lmsk = aPad->GetLayerSet();            bool is_copper = false;            for( int i = 0; i < MAX_CU_LAYERS; i++ )            {                if( lmsk[i] )                {                    is_copper = true;                    if( aPad->GetAttribute() != PAD_ATTRIB_HOLE_NOT_PLATED )                        layers = LAYER_RANGE( i );                    break;                }            }            if( !is_copper )                return NULL;        }        break;    default:        wxLogTrace( "PNS", "unsupported pad type 0x%x", aPad->GetAttribute() );        return NULL;    }    std::unique_ptr< PNS::SOLID > solid( new PNS::SOLID );    solid->SetLayers( layers );    solid->SetNet( aPad->GetNetCode() );    solid->SetParent( aPad );    wxPoint wx_c = aPad->ShapePos();    wxSize  wx_sz = aPad->GetSize();    wxPoint offset = aPad->GetOffset();    VECTOR2I c( wx_c.x, wx_c.y );    VECTOR2I sz( wx_sz.x, wx_sz.y );    RotatePoint( &offset, aPad->GetOrientation() );    solid->SetPos( VECTOR2I( c.x - offset.x, c.y - offset.y ) );    solid->SetOffset( VECTOR2I( offset.x, offset.y ) );    double orient = aPad->GetOrientation() / 10.0;    if( aPad->GetShape() == PAD_SHAPE_CIRCLE )    {        solid->SetShape( new SHAPE_CIRCLE( c, sz.x / 2 ) );    }    else if( aPad->GetShape() == PAD_SHAPE_CUSTOM )    {        SHAPE_POLY_SET outline;        outline.Append( aPad->GetCustomShapeAsPolygon() );        aPad->CustomShapeAsPolygonToBoardPosition( &outline, wx_c, aPad->GetOrientation() );        SHAPE_CONVEX* shape = new SHAPE_CONVEX();        // We use the convex hull of the pad shape, because PnS knows        // only convex shapes.        std::vector<wxPoint> convex_hull;        BuildConvexHull( convex_hull, outline );        for( unsigned ii = 0; ii < convex_hull.size(); ii++ )            shape->Append( convex_hull[ii] );        solid->SetShape( shape );    }    else    {        if( orient == 0.0 || orient == 90.0 || orient == 180.0 || orient == 270.0 )        {            if( orient == 90.0 || orient == 270.0 )                sz = VECTOR2I( sz.y, sz.x );            switch( aPad->GetShape() )            {            case PAD_SHAPE_OVAL:                if( sz.x == sz.y )                    solid->SetShape( new SHAPE_CIRCLE( c, sz.x / 2 ) );                else                {                    VECTOR2I delta;//.........这里部分代码省略.........
开发者ID:cpavlina,项目名称:kicad,代码行数:101,


示例26: wxASSERT_MSG

wxRect wxWindow::ScrollNoRefresh(int dx, int dy, const wxRect *rectTotal){    wxASSERT_MSG( !dx || !dy, _T("can't be used for diag scrolling") );    // the rect to refresh (which we will calculate)    wxRect rect;    if ( !dx && !dy )    {        // nothing to do        return rect;    }    // calculate the part of the window which we can just redraw in the new    // location    wxSize sizeTotal = rectTotal ? rectTotal->GetSize() : GetClientSize();    wxLogTrace(_T("scroll"), _T("rect is %dx%d, scroll by %d, %d"),               sizeTotal.x, sizeTotal.y, dx, dy);    // the initial and end point of the region we move in client coords    wxPoint ptSource, ptDest;    if ( rectTotal )    {        ptSource = rectTotal->GetPosition();        ptDest = rectTotal->GetPosition();    }    // the size of this region    wxSize size;    size.x = sizeTotal.x - abs(dx);    size.y = sizeTotal.y - abs(dy);    if ( size.x <= 0 || size.y <= 0 )    {        // just redraw everything as nothing of the displayed image will stay        wxLogTrace(_T("scroll"), _T("refreshing everything"));        rect = rectTotal ? *rectTotal : wxRect(0, 0, sizeTotal.x, sizeTotal.y);    }    else // move the part which doesn't change to the new location    {        // note that when we scroll the canvas in some direction we move the        // block which doesn't need to be refreshed in the opposite direction        if ( dx < 0 )        {            // scroll to the right, move to the left            ptSource.x -= dx;        }        else        {            // scroll to the left, move to the right            ptDest.x += dx;        }        if ( dy < 0 )        {            // scroll down, move up            ptSource.y -= dy;        }        else        {            // scroll up, move down            ptDest.y += dy;        }#if wxUSE_CARET        // we need to hide the caret before moving or it will erase itself at        // the wrong (old) location        wxCaret *caret = GetCaret();        if ( caret )            caret->Hide();#endif // wxUSE_CARET        // do move        wxClientDC dc(this);        wxBitmap bmp(size.x, size.y);        wxMemoryDC dcMem;        dcMem.SelectObject(bmp);        dcMem.Blit(wxPoint(0,0), size, &dc, ptSource#if defined(__WXGTK__) && !defined(wxHAS_WORKING_GTK_DC_BLIT)                + GetClientAreaOrigin()#endif // broken wxGTK wxDC::Blit                  );        dc.Blit(ptDest, size, &dcMem, wxPoint(0,0));        wxLogTrace(_T("scroll"),                   _T("Blit: (%d, %d) of size %dx%d -> (%d, %d)"),                   ptSource.x, ptSource.y,                   size.x, size.y,                   ptDest.x, ptDest.y);        // and now repaint the uncovered area        // FIXME: We repaint the intersection of these rectangles twice - is        //        it bad? I don't think so as it is rare to scroll the window        //        diagonally anyhow and so adding extra logic to compute        //        rectangle intersection is probably not worth the effort//.........这里部分代码省略.........
开发者ID:czxxjtu,项目名称:wxPython-1,代码行数:101,



注:本文中的wxLogTrace函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ wxLogWarning函数代码示例
C++ wxLogSysError函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。