25#ifndef TGUI_CONFIG_HPP
26#define TGUI_CONFIG_HPP
29#include <SFML/Config.hpp>
33 #define TGUI_SYSTEM_WINDOWS
34#elif defined(__APPLE__) && defined(__MACH__)
35 #include "TargetConditionals.h"
36 #if TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR
37 #define TGUI_SYSTEM_IOS
39 #define TGUI_SYSTEM_MACOS
41#elif defined(__unix__)
42 #if defined(__ANDROID__)
43 #define TGUI_SYSTEM_ANDROID
45 #define TGUI_SYSTEM_LINUX
50#if !defined(TGUI_DYNAMIC) && !defined(TGUI_STATIC)
57 #ifdef TGUI_SYSTEM_WINDOWS
60 #define TGUI_API __declspec(dllexport)
62 #define TGUI_API __declspec(dllimport)
65 #define TGUI_API __attribute__ ((__visibility__ ("default")))
75#define TGUI_VERSION_MAJOR 0
76#define TGUI_VERSION_MINOR 8
77#define TGUI_VERSION_PATCH 9
82#define TGUI_COMPILED_WITH_CPP_VER 14
92#if (defined(TGUI_SYSTEM_ANDROID) || defined(TGUI_SYSTEM_MACOS)) && !defined(TGUI_STATIC)
93 #define TGUI_UNSAFE_TYPE_INFO_COMPARISON
100#if TGUI_COMPILED_WITH_CPP_VER >= 17
101 #if defined(__clang_major__) && (__clang_major__ >= 9) \
102 || defined(__GNUC__) && (__GNUC___ >= 9) \
103 || defined(_MSC_VER) && (_MSC_VER >= 1914)
104 #define TGUI_USE_STD_FILESYSTEM
108#if defined(__cpp_constexpr) && (__cpp_constexpr >= 201304L)
109 #define TGUI_CONSTEXPR constexpr
111 #define TGUI_CONSTEXPR
114#if __cplusplus >= 201703L
115 #define TGUI_EMPLACE_BACK(object, vector) auto& object = vector.emplace_back();
117 #define TGUI_EMPLACE_BACK(object, vector) vector.emplace_back(); auto& object = vector.back();
120#ifndef TGUI_NO_DEPRECATED_WARNINGS
121 #define TGUI_DEPRECATED(msg) [[deprecated(msg)]]
123 #define TGUI_DEPRECATED(msg)
126#ifndef TGUI_NO_RUNTIME_WARNINGS
127 #define TGUI_PRINT_WARNING(msg) { sf::err() << "TGUI Warning: " << msg << std::endl; }
129 #define TGUI_PRINT_WARNING(msg) {}
133 #define TGUI_REMOVE_DEPRECATED_CODE
137#if __cplusplus > 201703L
138 #define TGUI_LAMBDA_CAPTURE_EQ_THIS [=,this]
140 #define TGUI_LAMBDA_CAPTURE_EQ_THIS [=]