Use wxObjCID instead of "struct objc_object*" to fix clang build.
Clang doesn't accept "struct objc_object*" as synonym for "id" in Objective-C code, so use the real "id" for it while still using the struct pointer for C++ code where "id" is not defined. Closes #13565. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
24
include/wx/osx/private/objcid.h
Normal file
24
include/wx/osx/private/objcid.h
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Name: osx/private/objcid.h
|
||||||
|
// Purpose: Define wxObjCID working in both C++ and Objective-C.
|
||||||
|
// Author: Vadim Zeitlin
|
||||||
|
// Created: 2012-05-20
|
||||||
|
// RCS-ID: $Id: wxhead.h,v 1.12 2010-04-22 12:44:51 zeitlin Exp $
|
||||||
|
// Copyright: (c) 2012 Vadim Zeitlin <vadim@wxwidgets.org>
|
||||||
|
// Licence: wxWindows licence
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#ifndef _WX_OSX_PRIVATE_OBJCID_H_
|
||||||
|
#define _WX_OSX_PRIVATE_OBJCID_H_
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// wxObjCID: Equivalent of Objective-C "id" that works in C++ code.
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#ifdef __OBJC__
|
||||||
|
#define wxObjCID id
|
||||||
|
#else
|
||||||
|
typedef struct objc_object* wxObjCID;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // _WX_OSX_PRIVATE_OBJCID_H_
|
@@ -21,6 +21,8 @@
|
|||||||
#include "wx/control.h"
|
#include "wx/control.h"
|
||||||
#include "wx/webview.h"
|
#include "wx/webview.h"
|
||||||
|
|
||||||
|
#include "wx/osx/private/objcid.h"
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// Web Kit Control
|
// Web Kit Control
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -149,7 +151,7 @@ private:
|
|||||||
wxWindowID m_windowID;
|
wxWindowID m_windowID;
|
||||||
wxString m_pageTitle;
|
wxString m_pageTitle;
|
||||||
|
|
||||||
struct objc_object *m_webView;
|
wxObjCID m_webView;
|
||||||
|
|
||||||
// we may use this later to setup our own mouse events,
|
// we may use this later to setup our own mouse events,
|
||||||
// so leave it in for now.
|
// so leave it in for now.
|
||||||
|
@@ -15,6 +15,8 @@
|
|||||||
#if wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT && (defined(__WXOSX_COCOA__) \
|
#if wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT && (defined(__WXOSX_COCOA__) \
|
||||||
|| defined(__WXOSX_CARBON__))
|
|| defined(__WXOSX_CARBON__))
|
||||||
|
|
||||||
|
#include "wx/osx/private/objcid.h"
|
||||||
|
|
||||||
class WXDLLIMPEXP_WEBVIEW wxWebViewHistoryItem
|
class WXDLLIMPEXP_WEBVIEW wxWebViewHistoryItem
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -27,7 +29,7 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
wxString m_url, m_title;
|
wxString m_url, m_title;
|
||||||
struct objc_object *m_histItem;
|
wxObjCID m_histItem;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT
|
#endif // wxUSE_WEBVIEW && wxUSE_WEBVIEW_WEBKIT
|
||||||
|
Reference in New Issue
Block a user