Ошибка компиляции XCode для визуализатора wxDV C - PullRequest
0 голосов
/ 27 января 2020

ALL,

#ifdef __WXOSX__
#include "wx/toplevel.h"
#include "wx/font.h"
#include "wx/settings.h"
#include "wx/utils.h"
#include "wx/osx/private.h"
#include "wx/osx/private/available.h"
#include "wx/osx/cocoa/dataview.h"
#include "wx/renderer.h"
#include "wx/stopwatch.h"
#include "wx/dcgraph.h"
#endif

class SortColumnRenderer
    : public wxDataViewRenderer
{
public:
    explicit SortColumnRenderer(
        wxCheckBoxState state = wxCHK_CHECKED,
        wxDataViewCellMode mode = wxDATAVIEW_CELL_ACTIVATABLE,
        int align = wxDVR_DEFAULT_ALIGNMENT)
    : wxDataViewRenderer( GetDefaultType(), mode, mode ), m_checkedState(state)
    {
        m_allow3rdStateForUser = false;
        m_value = "Ascending";
        NSButtonCell* cell;
        cell = [[NSButtonCell alloc] init];
        [cell setAlignment:ConvertToNativeHorizontalTextAlignment(GetAlignment())];
        [cell setButtonType: NSSwitchButton];
        [cell setImagePosition:NSImageLeft];
        [cell setAllowsMixedState:YES];
        SetNativeData(new wxDataViewRendererNativeData( cell ) );
        [cell release];
    };
};

Приведенный выше код приводит к множеству ошибок, таких как:

Expected unqualified-id NSObjCRuntime.h

, которые поступают из #include "wx / osx / cocoa / dataview. h ".

И если я закомментирую это, я получу:

Unknown type name 'NSButtonCell'; did you mean 'NSButton'?

Попытка импортировать AppKit / NSButtonCell.h приведет к тому же набору ошибок, что и выше: Expected unqualified-id... .

Я пытаюсь имитировать c код из wxCheckIconTextRenderer, но без части Icon.

У кого-нибудь есть идеи?

TIA!

1 Ответ

0 голосов
/ 28 января 2020

Вам необходимо скомпилировать код, используя Objective- C как таковой, т.е. поместить его в файл с расширением .mm, если вы не хотите явно использовать -x опцию компилятора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...