diff --git a/html/darkmode_toggle.js b/html/darkmode_toggle.js deleted file mode 100644 index e2331dc..0000000 --- a/html/darkmode_toggle.js +++ /dev/null @@ -1,266 +0,0 @@ -/** - -The code below is based on the Doxygen Awesome project with some minor modifications -https://github.com/jothepro/doxygen-awesome-css - -MIT License - -Copyright (c) 2021 - 2022 jothepro - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -*/ - -class DarkModeToggle extends HTMLElement { - static icon = ''; - static title = "Toggle Light/Dark Mode" - - static prefersLightModeInDarkModeKey = "prefers-light-mode-in-dark-mode" - static prefersDarkModeInLightModeKey = "prefers-dark-mode-in-light-mode" - - static _staticConstructor = function() { - DarkModeToggle.enableDarkMode(DarkModeToggle.userPreference) - // Update the color scheme when the browsers preference changes - // without user interaction on the website. - window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => { - DarkModeToggle.onSystemPreferenceChanged() - }) - // Update the color scheme when the tab is made visible again. - // It is possible that the appearance was changed in another tab - // while this tab was in the background. - document.addEventListener("visibilitychange", visibilityState => { - if (document.visibilityState === 'visible') { - DarkModeToggle.onSystemPreferenceChanged() - } - }); - }() - - static init() { - $(function() { - $(document).ready(function() { - const toggleButton = document.createElement('dark-mode-toggle') - toggleButton.title = DarkModeToggle.title - toggleButton.innerHTML = DarkModeToggle.icon - - function addButton() { - var titleArea = document.getElementById("titlearea"); - var searchBox = document.getElementById("MSearchBox"); - var mainMenu = document.getElementById("main-menu"); - var navRow1 = document.getElementById("navrow1"); - var mainMenuVisible = false; - if (mainMenu) { - var menuStyle = window.getComputedStyle(mainMenu); - mainMenuVisible = menuStyle.display!=='none' - } - var searchBoxPos1 = document.getElementById("searchBoxPos1"); - if (searchBox) { // (1) search box visible - searchBox.parentNode.appendChild(toggleButton) - } else if (navRow1) { // (2) no search box, static menu bar - var li = document.createElement('li'); - li.style = 'float: right;' - li.appendChild(toggleButton); - toggleButton.style = 'width: 24px; height: 25px; padding-top: 11px; float: right;'; - var row = document.querySelector('#navrow1 > ul:first-of-type'); - row.appendChild(li) - } else if (mainMenu && mainMenuVisible) { // (3) no search box + dynamic menu bar expanded - var li = document.createElement('li'); - li.style = 'float: right;' - li.appendChild(toggleButton); - toggleButton.style = 'width: 14px; height: 36px; padding-top: 10px; float: right;'; - mainMenu.appendChild(li) - } else if (searchBoxPos1) { // (4) no search box + dynamic menu bar collapsed - toggleButton.style = 'width: 24px; height: 36px; padding-top: 10px; float: right;'; - searchBoxPos1.style = 'top: 0px;' - searchBoxPos1.appendChild(toggleButton); - } else if (titleArea) { // (5) no search box and no navigation tabs - toggleButton.style = 'width: 24px; height: 24px; position: absolute; right: 0px; top: 34px;'; - titleArea.append(toggleButton); - } - } - - $(document).ready(function(){ - addButton(); - }) - $(window).resize(function(){ - addButton(); - }) - DarkModeToggle.setDarkModeVisibility(DarkModeToggle.darkModeEnabled) - }) - }) - } - - constructor() { - super(); - this.onclick=this.toggleDarkMode - } - - static createCookie(name, value, days) { - if (days) { - var date = new Date(); - date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); - var expires = "; expires=" + date.toGMTString(); - } - else var expires = ""; - - document.cookie = name + "=" + value + expires + "; path=/"; - } - - static readCookie(name) { - var nameEQ = name + "="; - var ca = document.cookie.split(';'); - for (var i = 0; i < ca.length; i++) { - var c = ca[i]; - while (c.charAt(0) == ' ') c = c.substring(1, c.length); - if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); - } - return null; - } - - static eraseCookie(name) { - DarkModeToggle.createCookie(name, "", -1); - } - - /** - * @returns `true` for dark-mode, `false` for light-mode system preference - */ - static get systemPreference() { - return window.matchMedia('(prefers-color-scheme: dark)').matches - } - - static get prefersDarkModeInLightMode() { - if (window.chrome) { // Chrome supports localStorage in combination with file:// but not cookies - return localStorage.getItem(DarkModeToggle.prefersDarkModeInLightModeKey) - } else { // Other browsers support cookies in combination with file:// but not localStorage - return DarkModeToggle.readCookie('doxygen_prefers_dark')=='1' - } - } - - static set prefersDarkModeInLightMode(preference) { - if (window.chrome) { - if (preference) { - localStorage.setItem(DarkModeToggle.prefersDarkModeInLightModeKey, true) - } else { - localStorage.removeItem(DarkModeToggle.prefersDarkModeInLightModeKey) - } - } else { - if (preference) { - DarkModeToggle.createCookie('doxygen_prefers_dark','1',365) - } else { - DarkModeToggle.eraseCookie('doxygen_prefers_dark') - } - } - } - - static get prefersLightModeInDarkMode() { - if (window.chrome) { // Chrome supports localStorage in combination with file:// but not cookies - return localStorage.getItem(DarkModeToggle.prefersLightModeInDarkModeKey) - } else { // Other browsers support cookies in combination with file:// but not localStorage - return DarkModeToggle.readCookie('doxygen_prefers_light')=='1' - } - } - - static set prefersLightModeInDarkMode(preference) { - if (window.chrome) { - if (preference) { - localStorage.setItem(DarkModeToggle.prefersLightModeInDarkModeKey, true) - } else { - localStorage.removeItem(DarkModeToggle.prefersLightModeInDarkModeKey) - } - } else { - if (preference) { - DarkModeToggle.createCookie('doxygen_prefers_light','1',365) - } else { - DarkModeToggle.eraseCookie('doxygen_prefers_light') - } - } - } - - - /** - * @returns `true` for dark-mode, `false` for light-mode user preference - */ - static get userPreference() { - return (!DarkModeToggle.systemPreference && DarkModeToggle.prefersDarkModeInLightMode) || - (DarkModeToggle.systemPreference && !DarkModeToggle.prefersLightModeInDarkMode) - } - - static set userPreference(userPreference) { - DarkModeToggle.darkModeEnabled = userPreference - if (!userPreference) { - if (DarkModeToggle.systemPreference) { - DarkModeToggle.prefersLightModeInDarkMode = true - } else { - DarkModeToggle.prefersDarkModeInLightMode = false - } - } else { - if (!DarkModeToggle.systemPreference) { - DarkModeToggle.prefersDarkModeInLightMode = true - } else { - DarkModeToggle.prefersLightModeInDarkMode = false - } - } - DarkModeToggle.onUserPreferenceChanged() - } - - static setDarkModeVisibility(enable) { - var darkModeStyle, lightModeStyle; - if(enable) { - darkModeStyle = 'inline-block'; - lightModeStyle = 'none' - } else { - darkModeStyle = 'none'; - lightModeStyle = 'inline-block' - } - document.querySelectorAll('.dark-mode-visible').forEach(function(el) { - el.style.display = darkModeStyle; - }); - document.querySelectorAll('.light-mode-visible').forEach(function(el) { - el.style.display = lightModeStyle; - }); - } - static enableDarkMode(enable) { - if(enable) { - DarkModeToggle.darkModeEnabled = true - document.documentElement.classList.add("dark-mode") - document.documentElement.classList.remove("light-mode") - } else { - DarkModeToggle.darkModeEnabled = false - document.documentElement.classList.remove("dark-mode") - document.documentElement.classList.add("light-mode") - } - DarkModeToggle.setDarkModeVisibility(enable) - } - - static onSystemPreferenceChanged() { - DarkModeToggle.darkModeEnabled = DarkModeToggle.userPreference - DarkModeToggle.enableDarkMode(DarkModeToggle.darkModeEnabled) - } - - static onUserPreferenceChanged() { - DarkModeToggle.enableDarkMode(DarkModeToggle.darkModeEnabled) - } - - toggleDarkMode() { - DarkModeToggle.userPreference = !DarkModeToggle.userPreference - } -} - -customElements.define("dark-mode-toggle", DarkModeToggle); - -DarkModeToggle.init(); diff --git a/html/doxygen-awesome-sidebar-only.css b/html/doxygen-awesome-sidebar-only.css deleted file mode 100644 index 853f6d6..0000000 --- a/html/doxygen-awesome-sidebar-only.css +++ /dev/null @@ -1,116 +0,0 @@ -/** - -Doxygen Awesome -https://github.com/jothepro/doxygen-awesome-css - -MIT License - -Copyright (c) 2021 - 2023 jothepro - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - */ - -html { - /* side nav width. MUST be = `TREEVIEW_WIDTH`. - * Make sure it is wide enough to contain the page title (logo + title + version) - */ - --side-nav-fixed-width: 335px; - --menu-display: none; - - --top-height: 120px; - --toc-sticky-top: -25px; - --toc-max-height: calc(100vh - 2 * var(--spacing-medium) - 25px); -} - -#projectname { - white-space: nowrap; -} - - -@media screen and (min-width: 768px) { - html { - --searchbar-background: var(--page-background-color); - } - - #side-nav { - min-width: var(--side-nav-fixed-width); - max-width: var(--side-nav-fixed-width); - top: var(--top-height); - overflow: visible; - } - - #nav-tree, #side-nav { - height: calc(100vh - var(--top-height)) !important; - } - - #nav-tree { - padding: 0; - } - - #top { - display: block; - border-bottom: none; - height: var(--top-height); - margin-bottom: calc(0px - var(--top-height)); - max-width: var(--side-nav-fixed-width); - overflow: hidden; - background: var(--side-nav-background); - } - #main-nav { - float: left; - padding-right: 0; - } - - .ui-resizable-handle { - cursor: default; - width: 1px !important; - background: var(--separator-color); - box-shadow: 0 calc(-2 * var(--top-height)) 0 0 var(--separator-color); - } - - #nav-path { - position: fixed; - right: 0; - left: var(--side-nav-fixed-width); - bottom: 0; - width: auto; - } - - #doc-content { - height: calc(100vh - 31px) !important; - padding-bottom: calc(3 * var(--spacing-large)); - padding-top: calc(var(--top-height) - 80px); - box-sizing: border-box; - margin-left: var(--side-nav-fixed-width) !important; - } - - #MSearchBox { - width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium))); - } - - #MSearchField { - width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - 65px); - } - - #MSearchResultsWindow { - left: var(--spacing-medium) !important; - right: auto; - } -} diff --git a/html/godot__macros_8h.html b/html/godot__macros_8h.html deleted file mode 100644 index b2c408c..0000000 --- a/html/godot__macros_8h.html +++ /dev/null @@ -1,419 +0,0 @@ - - - - - - - -godot-cpp-utils: godot_macros.h File Reference - - - - - - - - - - -
-
- - - - - - -
-
godot-cpp-utils -
-
A collection of utility classes, functions and macros for use with Godot and GDExtension.
-
-
- - - - - - - - -
-
- - -
-
-
-
-
-
Loading...
-
Searching...
-
No Matches
-
-
-
-
- -
-
-
-Macros
-
godot_macros.h File Reference
-
-
- -

C-style preprocessor macros to simplify using godot's C++ API. -More...

-
#include "godot_cpp/classes/engine.hpp"
-#include "godot_cpp/core/class_db.hpp"
-#include "godot_cpp/variant/string.hpp"
-
-

Go to the source code of this file.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Macros

-#define MACRO_STRING_INNER(_Arg)   #_Arg
 
-#define MACRO_STRING(_Arg)   MACRO_STRING_INNER(_Arg)
 
#define GDPROPERTY(PropName_, PropType_)
 Register property.
 
#define GDPROPERTY_HINTED(PropName_, PropType_, ...)
 Register a hinted property.
 
#define GDFUNCTION(FnName_)   godot::ClassDB::bind_method(godot::D_METHOD(#FnName_), &CLASSNAME::FnName_)
 Register a function CLASSNAME::FnName_() to godot.
 
#define GDFUNCTION_ARGS(FnName_, ...)   godot::ClassDB::bind_method(godot::D_METHOD(#FnName_, __VA_ARGS__), &CLASSNAME::FnName_)
 Register a function CLASSNAME::FnName_(...) to godot.
 
#define GDFUNCTION_STATIC(FnName_)   godot::ClassDB::bind_static_method(MACRO_STRING(CLASSNAME), godot::D_METHOD(#FnName_), &CLASSNAME::_FnName)
 Register a static member function CLASSNAME::FnName_() to godot.
 
#define GDFUNCTION_STATIC_ARGS(FnName_, ...)   godot::ClassDB::bind_static_method(MACRO_STRING(CLASSNAME), godot::D_METHOD(#FnName_, __VA_ARGS__), &CLASSNAME::FnName_)
 Register a static member function CLASSNAME::FnName_(...) to godot.
 
-#define GDSIGNAL(...)   godot::ClassDB::add_signal(MACRO_STRING(CLASSNAME), godot::MethodInfo(__VA_ARGS__))
 Declare a godot Observer signal.
 
#define GDRESOURCETYPE(Class_)   godot::vformat("%s/%s:%s", godot::Variant::OBJECT, godot::PROPERTY_HINT_RESOURCE_TYPE, #Class_)
 Construct godot resource type hint.
 
#define GDEDITORONLY()   if(!godot::Engine::get_singleton()->is_editor_hint()) return;
 Execute the rest of the function only if currently running as editor.
 
#define GDGAMEONLY()   if(godot::Engine::get_singleton()->is_editor_hint()) return;
 Execute the rest of the function only if currently running as game.
 
#define GDENUM(Name_, ...)
 Declare a scoped enum struct.
 
-

Detailed Description

-

C-style preprocessor macros to simplify using godot's C++ API.

-

Macro Definition Documentation

- -

◆ GDEDITORONLY

- -
-
- - - - - - - -
#define GDEDITORONLY()   if(!godot::Engine::get_singleton()->is_editor_hint()) return;
-
- -

Execute the rest of the function only if currently running as editor.

-

Useful for _ready, _enter/_exit, _process, etc. functions.

- -
-
- -

◆ GDENUM

- -
-
- - - - - - - - - - - - - - - - - - -
#define GDENUM( Name_,
 ... 
)
-
-Value:
struct Name_ {\
-
enum Value {__VA_ARGS__};\
-
private:\
-
Value value{};\
-
public:\
-
static inline godot::String get_property_hint() { return godot::String(#__VA_ARGS__); }\
-
inline Name_(Value value): value{value} {}\
-
inline Name_(Name_ const &value): value{value.value} {}\
-
}
-
-

Declare a scoped enum struct.

-

Declares a struct Name_ with an enum Value and a single variable and a get_property_hint() function.

- -
-
- -

◆ GDFUNCTION

- -
-
- - - - - - - - -
#define GDFUNCTION( FnName_)   godot::ClassDB::bind_method(godot::D_METHOD(#FnName_), &CLASSNAME::FnName_)
-
- -

Register a function CLASSNAME::FnName_() to godot.

-

Requires setting CLASSNAME as a #define first.

- -
-
- -

◆ GDFUNCTION_ARGS

- -
-
- - - - - - - - - - - - - - - - - - -
#define GDFUNCTION_ARGS( FnName_,
 ... 
)   godot::ClassDB::bind_method(godot::D_METHOD(#FnName_, __VA_ARGS__), &CLASSNAME::FnName_)
-
- -

Register a function CLASSNAME::FnName_(...) to godot.

-

Requires setting CLASSNAME as a #define first.

- -
-
- -

◆ GDFUNCTION_STATIC

- -
-
- - - - - - - - -
#define GDFUNCTION_STATIC( FnName_)   godot::ClassDB::bind_static_method(MACRO_STRING(CLASSNAME), godot::D_METHOD(#FnName_), &CLASSNAME::_FnName)
-
- -

Register a static member function CLASSNAME::FnName_() to godot.

-

Requires setting CLASSNAME as a #define first.

- -
-
- -

◆ GDFUNCTION_STATIC_ARGS

- -
-
- - - - - - - - - - - - - - - - - - -
#define GDFUNCTION_STATIC_ARGS( FnName_,
 ... 
)   godot::ClassDB::bind_static_method(MACRO_STRING(CLASSNAME), godot::D_METHOD(#FnName_, __VA_ARGS__), &CLASSNAME::FnName_)
-
- -

Register a static member function CLASSNAME::FnName_(...) to godot.

-

Requires setting CLASSNAME as a #define first.

- -
-
- -

◆ GDGAMEONLY

- -
-
- - - - - - - -
#define GDGAMEONLY()   if(godot::Engine::get_singleton()->is_editor_hint()) return;
-
- -

Execute the rest of the function only if currently running as game.

-

Useful for _ready, _enter/_exit, _process, etc. functions.

- -
-
- -

◆ GDPROPERTY

- -
-
- - - - - - - - - - - - - - - - - - -
#define GDPROPERTY( PropName_,
 PropType_ 
)
-
-Value:
godot::ClassDB::bind_method(godot::D_METHOD("get_" #PropName_), &CLASSNAME::get_##PropName_); \
-
godot::ClassDB::bind_method(godot::D_METHOD("set_" #PropName_, "value"), &CLASSNAME::set_##PropName_); \
-
godot::ClassDB::add_property(MACRO_STRING(CLASSNAME), godot::PropertyInfo(PropType_, #PropName_), "set_" #PropName_, "get_" #PropName_)
-
-

Register property.

-

Register variable CLASSNAME::PropName_ with variant type PropType_. Requires setting CLASSNAME as a #define first. Also requires a CLASSNAME::get_PropName_ and CLASSNAME::set_PropName_ to exist.

- -
-
- -

◆ GDPROPERTY_HINTED

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
#define GDPROPERTY_HINTED( PropName_,
 PropType_,
 ... 
)
-
-Value:
godot::ClassDB::bind_method(godot::D_METHOD("get_" #PropName_), &CLASSNAME::get_##PropName_); \
-
godot::ClassDB::bind_method(godot::D_METHOD("set_" #PropName_, "value"), &CLASSNAME::set_##PropName_); \
-
godot::ClassDB::add_property(MACRO_STRING(CLASSNAME), godot::PropertyInfo(PropType_, #PropName_, __VA_ARGS__), "set_" #PropName_, "get_" #PropName_)
-
-

Register a hinted property.

-

Register variable CLASSNAME::PropName_ with variant type PropType_. Requires setting CLASSNAME as a #define first, and CLASSNAME::get_PropName and CLASSNAME::set_PropName_ to exist.

- -
-
- -

◆ GDRESOURCETYPE

- -
-
- - - - - - - - -
#define GDRESOURCETYPE( Class_)   godot::vformat("%s/%s:%s", godot::Variant::OBJECT, godot::PROPERTY_HINT_RESOURCE_TYPE, #Class_)
-
- -

Construct godot resource type hint.

-

Use when registering properties of arrays of resource classes.

- -
-
-
- - - - diff --git a/html/godot__macros_8h_source.html b/html/godot__macros_8h_source.html deleted file mode 100644 index 9bbcdf3..0000000 --- a/html/godot__macros_8h_source.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - -godot-cpp-utils: godot_macros.h Source File - - - - - - - - - - -
-
- - - - - - -
-
godot-cpp-utils -
-
A collection of utility classes, functions and macros for use with Godot and GDExtension.
-
-
- - - - - - - -
- -
-
- - -
-
-
-
-
-
Loading...
-
Searching...
-
No Matches
-
-
-
-
- -
-
godot_macros.h
-
-
-Go to the documentation of this file.
1#ifndef UC_GODOT_MACROS_H
-
2#define UC_GODOT_MACROS_H
-
3
-
8#include "godot_cpp/classes/engine.hpp"
-
9#include "godot_cpp/core/class_db.hpp"
-
10#include "godot_cpp/variant/string.hpp"
-
11
-
12
-
13#define MACRO_STRING_INNER(_Arg) #_Arg
-
14#define MACRO_STRING(_Arg) MACRO_STRING_INNER(_Arg)
-
15
-
22#define GDPROPERTY(PropName_, PropType_) \
-
23 godot::ClassDB::bind_method(godot::D_METHOD("get_" #PropName_), &CLASSNAME::get_##PropName_); \
-
24 godot::ClassDB::bind_method(godot::D_METHOD("set_" #PropName_, "value"), &CLASSNAME::set_##PropName_); \
-
25 godot::ClassDB::add_property(MACRO_STRING(CLASSNAME), godot::PropertyInfo(PropType_, #PropName_), "set_" #PropName_, "get_" #PropName_)
-
26
-
33#define GDPROPERTY_HINTED(PropName_, PropType_, ...) \
-
34 godot::ClassDB::bind_method(godot::D_METHOD("get_" #PropName_), &CLASSNAME::get_##PropName_); \
-
35 godot::ClassDB::bind_method(godot::D_METHOD("set_" #PropName_, "value"), &CLASSNAME::set_##PropName_); \
-
36 godot::ClassDB::add_property(MACRO_STRING(CLASSNAME), godot::PropertyInfo(PropType_, #PropName_, __VA_ARGS__), "set_" #PropName_, "get_" #PropName_)
-
37
-
43#define GDFUNCTION(FnName_) godot::ClassDB::bind_method(godot::D_METHOD(#FnName_), &CLASSNAME::FnName_)
-
44
-
50#define GDFUNCTION_ARGS(FnName_, ...) godot::ClassDB::bind_method(godot::D_METHOD(#FnName_, __VA_ARGS__), &CLASSNAME::FnName_)
-
51
-
57#define GDFUNCTION_STATIC(FnName_) godot::ClassDB::bind_static_method(MACRO_STRING(CLASSNAME), godot::D_METHOD(#FnName_), &CLASSNAME::_FnName)
-
58
-
64#define GDFUNCTION_STATIC_ARGS(FnName_, ...) godot::ClassDB::bind_static_method(MACRO_STRING(CLASSNAME), godot::D_METHOD(#FnName_, __VA_ARGS__), &CLASSNAME::FnName_)
-
65
-
69#define GDSIGNAL(...) godot::ClassDB::add_signal(MACRO_STRING(CLASSNAME), godot::MethodInfo(__VA_ARGS__))
-
70
-
76#define GDRESOURCETYPE(Class_) godot::vformat("%s/%s:%s", godot::Variant::OBJECT, godot::PROPERTY_HINT_RESOURCE_TYPE, #Class_)
-
77
-
83#define GDEDITORONLY() if(!godot::Engine::get_singleton()->is_editor_hint()) return;
-
89#define GDGAMEONLY() if(godot::Engine::get_singleton()->is_editor_hint()) return;
-
90
-
96#define GDENUM(Name_, ...)\
-
97struct Name_ {\
-
98 enum Value {__VA_ARGS__};\
-
99 private:\
-
100 Value value{};\
-
101 public:\
-
102 static inline godot::String get_property_hint() { return godot::String(#__VA_ARGS__); }\
-
103 inline Name_(Value value): value{value} {}\
-
104 inline Name_(Name_ const &value): value{value.value} {}\
-
105}
-
106
-
107#endif // !UC_GODOT_MACROS_H
-
- - - - diff --git a/html/menu.js b/html/menu.js deleted file mode 100644 index b0b2693..0000000 --- a/html/menu.js +++ /dev/null @@ -1,136 +0,0 @@ -/* - @licstart The following is the entire license notice for the JavaScript code in this file. - - The MIT License (MIT) - - Copyright (C) 1997-2020 by Dimitri van Heesch - - Permission is hereby granted, free of charge, to any person obtaining a copy of this software - and associated documentation files (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, publish, distribute, - sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all copies or - substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, - DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - @licend The above is the entire license notice for the JavaScript code in this file - */ -function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { - function makeTree(data,relPath) { - var result=''; - if ('children' in data) { - result+=''; - } - return result; - } - var searchBoxHtml; - if (searchEnabled) { - if (serverSide) { - searchBoxHtml='
'+ - '
'+ - '
 '+ - ''+ - '
'+ - '
'+ - '
'+ - '
'; - } else { - searchBoxHtml='
'+ - ''+ - ' '+ - ''+ - ''+ - ''+ - ''+ - ''+ - '
'; - } - } - - $('#main-nav').before('
'+ - ''+ - ''+ - '
'); - $('#main-nav').append(makeTree(menudata,relPath)); - $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); - if (searchBoxHtml) { - $('#main-menu').append('
  • '); - } - var $mainMenuState = $('#main-menu-state'); - var prevWidth = 0; - if ($mainMenuState.length) { - function initResizableIfExists() { - if (typeof initResizable==='function') initResizable(); - } - // animate mobile menu - $mainMenuState.change(function(e) { - var $menu = $('#main-menu'); - var options = { duration: 250, step: initResizableIfExists }; - if (this.checked) { - options['complete'] = function() { $menu.css('display', 'block') }; - $menu.hide().slideDown(options); - } else { - options['complete'] = function() { $menu.css('display', 'none') }; - $menu.show().slideUp(options); - } - }); - // set default menu visibility - function resetState() { - var $menu = $('#main-menu'); - var $mainMenuState = $('#main-menu-state'); - var newWidth = $(window).outerWidth(); - if (newWidth!=prevWidth) { - if ($(window).outerWidth()<768) { - $mainMenuState.prop('checked',false); $menu.hide(); - $('#searchBoxPos1').html(searchBoxHtml); - $('#searchBoxPos2').hide(); - } else { - $menu.show(); - $('#searchBoxPos1').empty(); - $('#searchBoxPos2').html(searchBoxHtml); - $('#searchBoxPos2').show(); - } - if (typeof searchBox!=='undefined') { - searchBox.CloseResultsWindow(); - } - prevWidth = newWidth; - } - } - $(window).ready(function() { resetState(); initResizableIfExists(); }); - $(window).resize(resetState); - } - $('#main-menu').smartmenus(); -} -/* @license-end */