Exemplo n.º 1
0
void CWebCore::RequestPages ( const std::vector<SString>& pages, WebRequestCallback* pCallback )
{
    // Add to pending pages queue
    bool bNewItem = false;
    for ( const auto& page : pages )
    {
        eURLState status = GetURLState ( page );
        if ( status == eURLState::WEBPAGE_ALLOWED || status == eURLState::WEBPAGE_DISALLOWED )
            continue;

        m_PendingRequests.push_back ( page );
        bNewItem = true;
    }

    if ( bNewItem )
    {
        // Open CEGUI dialog
        if ( !m_pRequestsGUI )
            m_pRequestsGUI = new CWebsiteRequests;

        // Set pending requests memo content and show the window
        m_pRequestsGUI->SetPendingRequests ( m_PendingRequests, pCallback );
        m_pRequestsGUI->Show ();
    }
    else
    {
        // Call callback immediately if nothing has changed (all entries are most likely already on the whitelist)
        // There is still the possibility that all websites are blacklisted; this is not the usual case tho, so ignore for now (TODO)
        if ( pCallback )
            (*pCallback)( true, pages );
    }
}
Exemplo n.º 2
0
void CWebCore::RequestPages ( const std::vector<SString>& pages )
{
    // Add to pending pages queue
    bool bNewItem = false;
    for ( const auto& page : pages )
    {
        eURLState status = GetURLState ( page );
        if ( status == eURLState::WEBPAGE_ALLOWED || status == eURLState::WEBPAGE_DISALLOWED )
            continue;

        m_PendingRequests.push_back ( page );
        bNewItem = true;
    }

    if ( bNewItem )
    {
        // Open CEGUI dialog
        if ( !m_pRequestsGUI )
            m_pRequestsGUI = new CWebsiteRequests;

        // Set pending requests memo content and show the window
        m_pRequestsGUI->SetPendingRequests ( m_PendingRequests );
        m_pRequestsGUI->Show ();
    }
}