- Add cookie get/set support (issue #88).

- Move classes that extend structures to cef_types_wrappers.h and implement using the new CefStructBase template class.
- Change the HandleProtocolExecution |allow_os_execution| argument to pass by reference to maintain consistency with other API functions.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@217 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2011-04-09 01:05:30 +00:00
parent 0419b51036
commit a66c733ab6
24 changed files with 1624 additions and 824 deletions

View File

@@ -0,0 +1,37 @@
// Copyright (c) 2010 The Chromium Embedded Framework Authors. All rights
// reserved. Use of this source code is governed by a BSD-style license that
// can be found in the LICENSE file.
//
// ---------------------------------------------------------------------------
//
// A portion of this file was generated by the CEF translator tool. When
// making changes by hand only do so within the body of existing static and
// virtual method implementations. See the translator.README.txt file in the
// tools directory for more information.
//
#include "libcef_dll/ctocpp/cookie_visitor_ctocpp.h"
// VIRTUAL METHODS - Body may be edited by hand.
bool CefCookieVisitorCToCpp::Visit(const CefCookie& cookie, int count,
int total, bool& deleteCookie)
{
if(CEF_MEMBER_MISSING(struct_, visit))
return false;
int delVal = deleteCookie;
bool retVal = struct_->visit(struct_, &cookie, count, total, &delVal) ?
true : false;
deleteCookie = delVal?true:false;
return retVal;
}
#ifdef _DEBUG
template<> long CefCToCpp<CefCookieVisitorCToCpp, CefCookieVisitor,
cef_cookie_visitor_t>::DebugObjCt = 0;
#endif

View File

@@ -0,0 +1,42 @@
// Copyright (c) 2010 The Chromium Embedded Framework Authors. All rights
// reserved. Use of this source code is governed by a BSD-style license that
// can be found in the LICENSE file.
//
// -------------------------------------------------------------------------
//
// This file was generated by the CEF translator tool and should not edited
// by hand. See the translator.README.txt file in the tools directory for
// more information.
//
#ifndef _COOKIEVISITOR_CTOCPP_H
#define _COOKIEVISITOR_CTOCPP_H
#ifndef BUILDING_CEF_SHARED
#pragma message("Warning: "__FILE__" may be accessed DLL-side only")
#else // BUILDING_CEF_SHARED
#include "include/cef.h"
#include "include/cef_capi.h"
#include "libcef_dll/ctocpp/ctocpp.h"
// Wrap a C structure with a C++ class.
// This class may be instantiated and accessed DLL-side only.
class CefCookieVisitorCToCpp
: public CefCToCpp<CefCookieVisitorCToCpp, CefCookieVisitor,
cef_cookie_visitor_t>
{
public:
CefCookieVisitorCToCpp(cef_cookie_visitor_t* str)
: CefCToCpp<CefCookieVisitorCToCpp, CefCookieVisitor,
cef_cookie_visitor_t>(str) {}
virtual ~CefCookieVisitorCToCpp() {}
// CefCookieVisitor methods
virtual bool Visit(const CefCookie& cookie, int count, int total,
bool& deleteCookie);
};
#endif // BUILDING_CEF_SHARED
#endif // _COOKIEVISITOR_CTOCPP_H

View File

@@ -171,15 +171,15 @@ CefHandler::RetVal CefHandlerCToCpp::HandleBeforeResourceLoad(
CefHandler::RetVal CefHandlerCToCpp::HandleProtocolExecution(
CefRefPtr<CefBrowser> browser, const CefString& url,
bool* allow_os_execution)
bool& allow_os_execution)
{
if(CEF_MEMBER_MISSING(struct_, handle_protocol_execution))
return RV_CONTINUE;
int allowExec = *allow_os_execution?1:0;
int allowExec = allow_os_execution;
cef_retval_t rv = struct_->handle_protocol_execution(struct_,
CefBrowserCppToC::Wrap(browser), url.GetStruct(), &allowExec);
*allow_os_execution = allowExec?true:false;
allow_os_execution = allowExec?true:false;
return rv;
}

View File

@@ -57,7 +57,7 @@ public:
CefRefPtr<CefStreamReader>& resourceStream, CefString& mimeType,
int loadFlags);
virtual RetVal HandleProtocolExecution(CefRefPtr<CefBrowser> browser,
const CefString& url, bool* allow_os_execution);
const CefString& url, bool& allow_os_execution);
virtual RetVal HandleDownloadResponse(CefRefPtr<CefBrowser> browser,
const CefString& mimeType, const CefString& fileName,
int64 contentLength, CefRefPtr<CefDownloadHandler>& handler);