diff --git a/core/bind/core_bind.cpp b/core/bind/core_bind.cpp index d0acd044977..ab9c107d7a4 100644 --- a/core/bind/core_bind.cpp +++ b/core/bind/core_bind.cpp @@ -440,8 +440,8 @@ bool _OS::is_vsync_enabled() const { return OS::get_singleton()->is_vsync_enabled(); } -OS::PowerState _OS::get_power_state() { - return OS::get_singleton()->get_power_state(); +_OS::PowerState _OS::get_power_state() { + return _OS::PowerState(OS::get_singleton()->get_power_state()); } int _OS::get_power_seconds_left() { @@ -1142,11 +1142,11 @@ void _OS::_bind_methods() { BIND_ENUM_CONSTANT(SYSTEM_DIR_PICTURES); BIND_ENUM_CONSTANT(SYSTEM_DIR_RINGTONES); - BIND_ENUM_CONSTANT(OS::POWERSTATE_UNKNOWN); - BIND_ENUM_CONSTANT(OS::POWERSTATE_ON_BATTERY); - BIND_ENUM_CONSTANT(OS::POWERSTATE_NO_BATTERY); - BIND_ENUM_CONSTANT(OS::POWERSTATE_CHARGING); - BIND_ENUM_CONSTANT(OS::POWERSTATE_CHARGED); + BIND_ENUM_CONSTANT(POWERSTATE_UNKNOWN); + BIND_ENUM_CONSTANT(POWERSTATE_ON_BATTERY); + BIND_ENUM_CONSTANT(POWERSTATE_NO_BATTERY); + BIND_ENUM_CONSTANT(POWERSTATE_CHARGING); + BIND_ENUM_CONSTANT(POWERSTATE_CHARGED); } _OS::_OS() { diff --git a/core/bind/core_bind.h b/core/bind/core_bind.h index 0578c2b80f5..fc28ada0f8b 100644 --- a/core/bind/core_bind.h +++ b/core/bind/core_bind.h @@ -97,6 +97,14 @@ protected: static _OS *singleton; public: + enum PowerState { + POWERSTATE_UNKNOWN, /**< cannot determine power status */ + POWERSTATE_ON_BATTERY, /**< Not plugged in, running on the battery */ + POWERSTATE_NO_BATTERY, /**< Plugged in, no battery available */ + POWERSTATE_CHARGING, /**< Plugged in, charging battery */ + POWERSTATE_CHARGED /**< Plugged in, battery charged */ + }; + enum Weekday { DAY_SUNDAY, DAY_MONDAY, @@ -303,7 +311,7 @@ public: void set_use_vsync(bool p_enable); bool is_vsync_enabled() const; - OS::PowerState get_power_state(); + PowerState get_power_state(); int get_power_seconds_left(); int get_power_percent_left(); @@ -312,6 +320,7 @@ public: _OS(); }; +VARIANT_ENUM_CAST(_OS::PowerState); VARIANT_ENUM_CAST(_OS::Weekday); VARIANT_ENUM_CAST(_OS::Month); VARIANT_ENUM_CAST(_OS::SystemDir);