09-28-2016, 07:19 PM
Oh no: Visual Studio doesn't have anything called a Prefix Header. It does have what's called a Forced Include File, though. Once I add that, I get dozens of strange and seemingly unrelated errors relating to the hdi::core headers:
Maybe I should go back to the plain .h file method. When I remove the Prefix Header in Xcode, then include this header at either the top or end of my Plugin.cpp file includes:
With or without "HDI_CORE_DONT_DECLARE_AI_TYPES" in the Preprocessor Definitions, I get:
Code:
hdicorePanel.h(152): error C2146: syntax error : missing ';' before identifier 'platformPanel'
hdicorePanel.h(152): error C2433: 'hdi::core::Panel::PlatformPanelPtr' : 'virtual' not permitted on data declarations
hdicorePanel.h(152): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
hdicorePanel.h(152): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
hdicorePanel.h(152): warning C4183: 'platformPanel': missing return type; assumed to be a member function returning 'int'
hdicoreCurrentDocument.h(128): error C2146: syntax error : missing ';' before identifier 'aiDocumentHandle'
hdicoreCurrentDocument.h(128): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
hdicoreCurrentDocument.h(128): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
hdicoreCurrentDocument.h(128): warning C4183: 'aiDocumentHandle': missing return type; assumed to be a member function returning 'int'
hdicoreaiDictionary.h(214): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
hdicoreaiDictionary.h(214): error C2146: syntax error : missing ',' before identifier 'aiDict_'
hdicoreaiDictionary.h(269): error C2146: syntax error : missing ';' before identifier 'aiDictionaryRef'
Maybe I should go back to the plain .h file method. When I remove the Prefix Header in Xcode, then include this header at either the top or end of my Plugin.cpp file includes:
Code:
#ifndef SDKHeader_h
#define SDKHeader_h
#include "SPBasic.h"
#include "AIUser.h"
#include "AITag.h"
extern AIUserSuite* sAIUser;
extern AITagSuite* sAITag;
extern "C" SPBasicSuite* sSPBasic;
#endif /* SDKHeader_h */
With or without "HDI_CORE_DONT_DECLARE_AI_TYPES" in the Preprocessor Definitions, I get:
Code:
... illustratorapi/pica_sp/SPMdata.h:52: error: redefinition of 'struct SPMessageData'