/* * Copyright (c) Contributors to the Open 3D Engine Project. * For complete copyright and license terms please see the LICENSE at the root of this distribution. * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ #pragma once #include // It is vital that at least some Qt header is pulled in to this header, so that // QT_VERSION is defined and the editor gets the correct set of overloads in the // IXML interface. This also disambiguates the GUID/REFGUID situation in Guid.h #include #include #include "ProjectDefines.h" #ifdef NOMINMAX #include "Cry_Math.h" #endif //NOMINMAX // Resource includes #include "Resource.h" #include #include ////////////////////////////////////////////////////////////////////////// // Simple type definitions. ////////////////////////////////////////////////////////////////////////// #include "BaseTypes.h" // Which cfg file to use. #define EDITOR_CFG_FILE "editor.cfg" ////////////////////////////////////////////////////////////////////////// // C runtime lib includes ////////////////////////////////////////////////////////////////////////// #include #include #include #include #include #include ///////////////////////////////////////////////////////////////////////////// // STL ///////////////////////////////////////////////////////////////////////////// #include #include #include #include #include #include #include #undef rand // remove cryengine protection against wrong rand usage ///////////////////////////////////////////////////////////////////////////// // VARIOUS MACROS AND DEFINES ///////////////////////////////////////////////////////////////////////////// #ifdef new #undef new #endif #ifndef SAFE_DELETE #define SAFE_DELETE(p) { if (p) { delete (p); (p) = nullptr; } \ } #endif #ifndef SAFE_DELETE_ARRAY #define SAFE_DELETE_ARRAY(p) { if (p) { delete[] (p); (p) = nullptr; } \ } #endif #ifndef SAFE_RELEASE #define SAFE_RELEASE(p) { if (p) { (p)->Release(); (p) = nullptr; } \ } #endif ///////////////////////////////////////////////////////////////////////////// // CRY Stuff //////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////// #include #include #include #include #include #define TSmartPtr _smart_ptr #define TOOLBAR_TRANSPARENT_COLOR QColor(0xC0, 0xC0, 0xC0) ///////////////////////////////////////////////////////////////////////////// // Interfaces /////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////// #include #include #include #include #include #include ////////////////////////////////////////////////////////////////////////// // Commonly used Editor includes. ////////////////////////////////////////////////////////////////////////// // Utility classes. #include "Util/EditorUtils.h" #include "Util/FileEnum.h" #include #include "Util/AffineParts.h" // Xml support. #include "Util/XmlArchive.h" #include "Util/XmlTemplate.h" // Utility classes. #include "Util/RefCountBase.h" #include "Util/MemoryBlock.h" #include "Util/PathUtil.h" // Main Editor interface definition. #include "IEditor.h" // Log file access #include "LogFile.h" // Prevent macros to override certain function names #ifdef GetObject #undef GetObject #endif #ifdef max #undef max #undef min #endif #ifdef DeleteFile #undef DeleteFile #endif #ifdef CreateDirectory #undef CreateDirectory #endif #ifdef RemoveDirectory #undef RemoveDirectory #endif #ifdef CopyFile #undef CopyFile #endif #ifdef GetUserName #undef GetUserName #endif #ifdef LoadCursor #undef LoadCursor #endif