diff options
35 files changed, 589 insertions, 53 deletions
diff --git a/core/bind/core_bind.cpp b/core/bind/core_bind.cpp index d0acd04497..ab9c107d7a 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 0578c2b80f..fc28ada0f8 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); diff --git a/doc/classes/AnimationTreePlayer.xml b/doc/classes/AnimationTreePlayer.xml index ad9bc922e4..e128b4d865 100644 --- a/doc/classes/AnimationTreePlayer.xml +++ b/doc/classes/AnimationTreePlayer.xml @@ -659,5 +659,9 @@ <constant name="NODE_TRANSITION" value="9"> Transition node. </constant> + <constant name="ANIMATION_PROCESS_FIXED" value="0"> + </constant> + <constant name="ANIMATION_PROCESS_IDLE" value="1"> + </constant> </constants> </class> diff --git a/doc/classes/Area.xml b/doc/classes/Area.xml index 4e366e124e..c59bbee084 100644 --- a/doc/classes/Area.xml +++ b/doc/classes/Area.xml @@ -493,5 +493,15 @@ </signal> </signals> <constants> + <constant name="SPACE_OVERRIDE_DISABLED" value="0"> + </constant> + <constant name="SPACE_OVERRIDE_COMBINE" value="1"> + </constant> + <constant name="SPACE_OVERRIDE_COMBINE_REPLACE" value="2"> + </constant> + <constant name="SPACE_OVERRIDE_REPLACE" value="3"> + </constant> + <constant name="SPACE_OVERRIDE_REPLACE_COMBINE" value="4"> + </constant> </constants> </class> diff --git a/doc/classes/AudioEffectDistortion.xml b/doc/classes/AudioEffectDistortion.xml index d8b9dee9dc..e5c5a3b50e 100644 --- a/doc/classes/AudioEffectDistortion.xml +++ b/doc/classes/AudioEffectDistortion.xml @@ -93,5 +93,15 @@ </member> </members> <constants> + <constant name="MODE_CLIP" value="0"> + </constant> + <constant name="MODE_ATAN" value="1"> + </constant> + <constant name="MODE_LOFI" value="2"> + </constant> + <constant name="MODE_OVERDRIVE" value="3"> + </constant> + <constant name="MODE_WAVESHAPE" value="4"> + </constant> </constants> </class> diff --git a/doc/classes/AudioEffectFilter.xml b/doc/classes/AudioEffectFilter.xml index 6285539a61..17aa01d60a 100644 --- a/doc/classes/AudioEffectFilter.xml +++ b/doc/classes/AudioEffectFilter.xml @@ -77,5 +77,13 @@ </member> </members> <constants> + <constant name="FILTER_6DB" value="0"> + </constant> + <constant name="FILTER_12DB" value="1"> + </constant> + <constant name="FILTER_18DB" value="2"> + </constant> + <constant name="FILTER_24DB" value="3"> + </constant> </constants> </class> diff --git a/doc/classes/AudioServer.xml b/doc/classes/AudioServer.xml index 7856537804..dc30c0c5f9 100644 --- a/doc/classes/AudioServer.xml +++ b/doc/classes/AudioServer.xml @@ -307,5 +307,11 @@ </signal> </signals> <constants> + <constant name="SPEAKER_MODE_STEREO" value="0"> + </constant> + <constant name="SPEAKER_SURROUND_51" value="2"> + </constant> + <constant name="SPEAKER_SURROUND_71" value="3"> + </constant> </constants> </class> diff --git a/doc/classes/AudioStreamPlayer.xml b/doc/classes/AudioStreamPlayer.xml index 64823c3be5..6ee0ba09a1 100644 --- a/doc/classes/AudioStreamPlayer.xml +++ b/doc/classes/AudioStreamPlayer.xml @@ -135,5 +135,11 @@ </signal> </signals> <constants> + <constant name="MIX_TARGET_STEREO" value="0"> + </constant> + <constant name="MIX_TARGET_SURROUND" value="1"> + </constant> + <constant name="MIX_TARGET_CENTER" value="2"> + </constant> </constants> </class> diff --git a/doc/classes/AudioStreamSample.xml b/doc/classes/AudioStreamSample.xml index e14a17a05c..22b820aa7d 100644 --- a/doc/classes/AudioStreamSample.xml +++ b/doc/classes/AudioStreamSample.xml @@ -125,5 +125,17 @@ </member> </members> <constants> + <constant name="FORMAT_8_BITS" value="0"> + </constant> + <constant name="FORMAT_16_BITS" value="1"> + </constant> + <constant name="FORMAT_IMA_ADPCM" value="2"> + </constant> + <constant name="LOOP_DISABLED" value="0"> + </constant> + <constant name="LOOP_FORWARD" value="1"> + </constant> + <constant name="LOOP_PING_PONG" value="2"> + </constant> </constants> </class> diff --git a/doc/classes/CollisionPolygon2D.xml b/doc/classes/CollisionPolygon2D.xml index ef0f1ce451..b602610167 100644 --- a/doc/classes/CollisionPolygon2D.xml +++ b/doc/classes/CollisionPolygon2D.xml @@ -84,5 +84,9 @@ </member> </members> <constants> + <constant name="BUILD_SOLIDS" value="0"> + </constant> + <constant name="BUILD_SEGMENTS" value="1"> + </constant> </constants> </class> diff --git a/doc/classes/Curve.xml b/doc/classes/Curve.xml index bf9f7598e0..d676f635c9 100644 --- a/doc/classes/Curve.xml +++ b/doc/classes/Curve.xml @@ -227,5 +227,11 @@ </signal> </signals> <constants> + <constant name="TANGENT_FREE" value="0"> + </constant> + <constant name="TANGENT_LINEAR" value="1"> + </constant> + <constant name="TANGENT_MODE_COUNT" value="2"> + </constant> </constants> </class> diff --git a/doc/classes/EditorExportPlugin.xml b/doc/classes/EditorExportPlugin.xml new file mode 100644 index 0000000000..b0ed24b767 --- /dev/null +++ b/doc/classes/EditorExportPlugin.xml @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<class name="EditorExportPlugin" inherits="Reference" category="Core" version="3.0.alpha.custom_build"> + <brief_description> + </brief_description> + <description> + </description> + <tutorials> + </tutorials> + <demos> + </demos> + <methods> + <method name="_export_begin" qualifiers="virtual"> + <return type="void"> + </return> + <argument index="0" name="features" type="PoolStringArray"> + </argument> + <description> + </description> + </method> + <method name="_export_file" qualifiers="virtual"> + <return type="void"> + </return> + <argument index="0" name="path" type="String"> + </argument> + <argument index="1" name="type" type="String"> + </argument> + <argument index="2" name="features" type="PoolStringArray"> + </argument> + <description> + </description> + </method> + <method name="add_file"> + <return type="void"> + </return> + <argument index="0" name="path" type="String"> + </argument> + <argument index="1" name="file" type="PoolByteArray"> + </argument> + <argument index="2" name="remap" type="bool"> + </argument> + <description> + </description> + </method> + <method name="add_shared_object"> + <return type="void"> + </return> + <argument index="0" name="path" type="String"> + </argument> + <description> + </description> + </method> + <method name="skip"> + <return type="void"> + </return> + <description> + </description> + </method> + </methods> + <constants> + </constants> +</class> diff --git a/doc/classes/EditorFileDialog.xml b/doc/classes/EditorFileDialog.xml index 1e0f27ef7f..6ae893f189 100644 --- a/doc/classes/EditorFileDialog.xml +++ b/doc/classes/EditorFileDialog.xml @@ -185,5 +185,9 @@ </constant> <constant name="ACCESS_FILESYSTEM" value="2"> </constant> + <constant name="DISPLAY_THUMBNAILS" value="0"> + </constant> + <constant name="DISPLAY_LIST" value="1"> + </constant> </constants> </class> diff --git a/doc/classes/EditorPlugin.xml b/doc/classes/EditorPlugin.xml index f620c33f7a..2831555d41 100644 --- a/doc/classes/EditorPlugin.xml +++ b/doc/classes/EditorPlugin.xml @@ -66,6 +66,14 @@ During run-time, this will be a simple object with a script so this function does not need to be called then. </description> </method> + <method name="add_export_plugin"> + <return type="void"> + </return> + <argument index="0" name="exporter" type="EditorExportPlugin"> + </argument> + <description> + </description> + </method> <method name="add_import_plugin"> <return type="void"> </return> @@ -266,6 +274,14 @@ Remove a custom type added by [method EditorPlugin.add_custom_type] </description> </method> + <method name="remove_export_plugin"> + <return type="void"> + </return> + <argument index="0" name="exporter" type="EditorExportPlugin"> + </argument> + <description> + </description> + </method> <method name="remove_import_plugin"> <return type="void"> </return> diff --git a/doc/classes/GeometryInstance.xml b/doc/classes/GeometryInstance.xml index 550a1e97d7..57aec8be41 100644 --- a/doc/classes/GeometryInstance.xml +++ b/doc/classes/GeometryInstance.xml @@ -149,15 +149,17 @@ </member> </members> <constants> - <constant name="FLAG_MAX" value="1" enum=""> + <constant name="SHADOW_CASTING_SETTING_OFF" value="0"> </constant> - <constant name="SHADOW_CASTING_SETTING_OFF" value="0" enum=""> + <constant name="SHADOW_CASTING_SETTING_ON" value="1"> </constant> - <constant name="SHADOW_CASTING_SETTING_ON" value="1" enum=""> + <constant name="SHADOW_CASTING_SETTING_DOUBLE_SIDED" value="2"> </constant> - <constant name="SHADOW_CASTING_SETTING_DOUBLE_SIDED" value="2" enum=""> + <constant name="SHADOW_CASTING_SETTING_SHADOWS_ONLY" value="3"> </constant> - <constant name="SHADOW_CASTING_SETTING_SHADOWS_ONLY" value="3" enum=""> + <constant name="FLAG_USE_BAKED_LIGHT" value="0"> + </constant> + <constant name="FLAG_MAX" value="1"> </constant> </constants> </class> diff --git a/doc/classes/Light2D.xml b/doc/classes/Light2D.xml index 593799b57d..1386fc53d9 100644 --- a/doc/classes/Light2D.xml +++ b/doc/classes/Light2D.xml @@ -395,5 +395,17 @@ <constant name="MODE_MASK" value="3"> The light texture of the Light2D is used as a mask, hiding or revealing parts of the screen underneath depending on the value of each pixel of the light (mask) texture. </constant> + <constant name="SHADOW_FILTER_NONE" value="0"> + </constant> + <constant name="SHADOW_FILTER_PCF3" value="1"> + </constant> + <constant name="SHADOW_FILTER_PCF5" value="2"> + </constant> + <constant name="SHADOW_FILTER_PCF7" value="3"> + </constant> + <constant name="SHADOW_FILTER_PCF9" value="4"> + </constant> + <constant name="SHADOW_FILTER_PCF13" value="5"> + </constant> </constants> </class> diff --git a/doc/classes/Line2D.xml b/doc/classes/Line2D.xml index e954173047..81fd255781 100644 --- a/doc/classes/Line2D.xml +++ b/doc/classes/Line2D.xml @@ -21,7 +21,7 @@ </description> </method> <method name="get_begin_cap_mode" qualifiers="const"> - <return type="int" enum="LineCapMode"> + <return type="int" enum="Line2D.LineCapMode"> </return> <description> </description> @@ -33,7 +33,7 @@ </description> </method> <method name="get_end_cap_mode" qualifiers="const"> - <return type="int" enum="LineCapMode"> + <return type="int" enum="Line2D.LineCapMode"> </return> <description> </description> @@ -45,7 +45,7 @@ </description> </method> <method name="get_joint_mode" qualifiers="const"> - <return type="int" enum="LineJointMode"> + <return type="int" enum="Line2D.LineJointMode"> </return> <description> </description> @@ -89,7 +89,7 @@ </description> </method> <method name="get_texture_mode" qualifiers="const"> - <return type="int" enum="LineTextureMode"> + <return type="int" enum="Line2D.LineTextureMode"> </return> <description> </description> @@ -112,7 +112,7 @@ <method name="set_begin_cap_mode"> <return type="void"> </return> - <argument index="0" name="mode" type="int" enum="LineCapMode"> + <argument index="0" name="mode" type="int" enum="Line2D.LineCapMode"> </argument> <description> </description> @@ -128,7 +128,7 @@ <method name="set_end_cap_mode"> <return type="void"> </return> - <argument index="0" name="mode" type="int" enum="LineCapMode"> + <argument index="0" name="mode" type="int" enum="Line2D.LineCapMode"> </argument> <description> </description> @@ -144,7 +144,7 @@ <method name="set_joint_mode"> <return type="void"> </return> - <argument index="0" name="mode" type="int" enum="LineJointMode"> + <argument index="0" name="mode" type="int" enum="Line2D.LineJointMode"> </argument> <description> </description> @@ -194,7 +194,7 @@ <method name="set_texture_mode"> <return type="void"> </return> - <argument index="0" name="mode" type="int" enum="LineTextureMode"> + <argument index="0" name="mode" type="int" enum="Line2D.LineTextureMode"> </argument> <description> </description> @@ -209,15 +209,15 @@ </method> </methods> <members> - <member name="begin_cap_mode" type="int" setter="set_begin_cap_mode" getter="get_begin_cap_mode" enum="LineCapMode"> + <member name="begin_cap_mode" type="int" setter="set_begin_cap_mode" getter="get_begin_cap_mode" enum="Line2D.LineCapMode"> </member> <member name="default_color" type="Color" setter="set_default_color" getter="get_default_color"> </member> - <member name="end_cap_mode" type="int" setter="set_end_cap_mode" getter="get_end_cap_mode" enum="LineCapMode"> + <member name="end_cap_mode" type="int" setter="set_end_cap_mode" getter="get_end_cap_mode" enum="Line2D.LineCapMode"> </member> <member name="gradient" type="Gradient" setter="set_gradient" getter="get_gradient"> </member> - <member name="joint_mode" type="int" setter="set_joint_mode" getter="get_joint_mode" enum="LineJointMode"> + <member name="joint_mode" type="int" setter="set_joint_mode" getter="get_joint_mode" enum="Line2D.LineJointMode"> </member> <member name="points" type="PoolVector2Array" setter="set_points" getter="get_points"> </member> @@ -227,7 +227,7 @@ </member> <member name="texture" type="Texture" setter="set_texture" getter="get_texture"> </member> - <member name="texture_mode" type="int" setter="set_texture_mode" getter="get_texture_mode" enum="LineTextureMode"> + <member name="texture_mode" type="int" setter="set_texture_mode" getter="get_texture_mode" enum="Line2D.LineTextureMode"> </member> <member name="width" type="float" setter="set_width" getter="get_width"> </member> diff --git a/doc/classes/Mesh.xml b/doc/classes/Mesh.xml index 66b52e7f48..658265d242 100644 --- a/doc/classes/Mesh.xml +++ b/doc/classes/Mesh.xml @@ -71,5 +71,73 @@ <constant name="PRIMITIVE_TRIANGLE_FAN" value="6"> Render array as triangle fans. </constant> + <constant name="BLEND_SHAPE_MODE_NORMALIZED" value="0"> + </constant> + <constant name="BLEND_SHAPE_MODE_RELATIVE" value="1"> + </constant> + <constant name="ARRAY_FORMAT_VERTEX" value="1"> + </constant> + <constant name="ARRAY_FORMAT_NORMAL" value="2"> + </constant> + <constant name="ARRAY_FORMAT_TANGENT" value="4"> + </constant> + <constant name="ARRAY_FORMAT_COLOR" value="8"> + </constant> + <constant name="ARRAY_FORMAT_TEX_UV" value="16"> + </constant> + <constant name="ARRAY_FORMAT_TEX_UV2" value="32"> + </constant> + <constant name="ARRAY_FORMAT_BONES" value="64"> + </constant> + <constant name="ARRAY_FORMAT_WEIGHTS" value="128"> + </constant> + <constant name="ARRAY_FORMAT_INDEX" value="256"> + </constant> + <constant name="ARRAY_COMPRESS_BASE" value="9"> + </constant> + <constant name="ARRAY_COMPRESS_VERTEX" value="512"> + </constant> + <constant name="ARRAY_COMPRESS_NORMAL" value="1024"> + </constant> + <constant name="ARRAY_COMPRESS_TANGENT" value="2048"> + </constant> + <constant name="ARRAY_COMPRESS_COLOR" value="4096"> + </constant> + <constant name="ARRAY_COMPRESS_TEX_UV" value="8192"> + </constant> + <constant name="ARRAY_COMPRESS_TEX_UV2" value="16384"> + </constant> + <constant name="ARRAY_COMPRESS_BONES" value="32768"> + </constant> + <constant name="ARRAY_COMPRESS_WEIGHTS" value="65536"> + </constant> + <constant name="ARRAY_COMPRESS_INDEX" value="131072"> + </constant> + <constant name="ARRAY_FLAG_USE_2D_VERTICES" value="262144"> + </constant> + <constant name="ARRAY_FLAG_USE_16_BIT_BONES" value="524288"> + </constant> + <constant name="ARRAY_COMPRESS_DEFAULT" value="97792"> + </constant> + <constant name="ARRAY_VERTEX" value="0"> + </constant> + <constant name="ARRAY_NORMAL" value="1"> + </constant> + <constant name="ARRAY_TANGENT" value="2"> + </constant> + <constant name="ARRAY_COLOR" value="3"> + </constant> + <constant name="ARRAY_TEX_UV" value="4"> + </constant> + <constant name="ARRAY_TEX_UV2" value="5"> + </constant> + <constant name="ARRAY_BONES" value="6"> + </constant> + <constant name="ARRAY_WEIGHTS" value="7"> + </constant> + <constant name="ARRAY_INDEX" value="8"> + </constant> + <constant name="ARRAY_MAX" value="9"> + </constant> </constants> </class> diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml index 38f1eb8ce1..5b14d5a746 100644 --- a/doc/classes/OS.xml +++ b/doc/classes/OS.xml @@ -233,7 +233,7 @@ </description> </method> <method name="get_power_state"> - <return type="int" enum="PowerState"> + <return type="int" enum="OS.PowerState"> </return> <description> </description> @@ -840,15 +840,15 @@ </constant> <constant name="SYSTEM_DIR_RINGTONES" value="7"> </constant> - <constant name="POWERSTATE_UNKNOWN" value="0"> + <constant name="OS::POWERSTATE_UNKNOWN" value="0"> </constant> - <constant name="POWERSTATE_ON_BATTERY" value="1"> + <constant name="OS::POWERSTATE_ON_BATTERY" value="1"> </constant> - <constant name="POWERSTATE_NO_BATTERY" value="2"> + <constant name="OS::POWERSTATE_NO_BATTERY" value="2"> </constant> - <constant name="POWERSTATE_CHARGING" value="3"> + <constant name="OS::POWERSTATE_CHARGING" value="3"> </constant> - <constant name="POWERSTATE_CHARGED" value="4"> + <constant name="OS::POWERSTATE_CHARGED" value="4"> </constant> </constants> </class> diff --git a/doc/classes/OmniLight.xml b/doc/classes/OmniLight.xml index 8750fd7e99..cb8e756a4c 100644 --- a/doc/classes/OmniLight.xml +++ b/doc/classes/OmniLight.xml @@ -51,5 +51,13 @@ </member> </members> <constants> + <constant name="SHADOW_DUAL_PARABOLOID" value="0"> + </constant> + <constant name="SHADOW_CUBE" value="1"> + </constant> + <constant name="SHADOW_DETAIL_VERTICAL" value="0"> + </constant> + <constant name="SHADOW_DETAIL_HORIZONTAL" value="1"> + </constant> </constants> </class> diff --git a/doc/classes/PhysicsServer.xml b/doc/classes/PhysicsServer.xml index 93a50eb1bf..0076625ebd 100644 --- a/doc/classes/PhysicsServer.xml +++ b/doc/classes/PhysicsServer.xml @@ -1248,5 +1248,29 @@ </constant> <constant name="INFO_ISLAND_COUNT" value="2"> </constant> + <constant name="SPACE_PARAM_CONTACT_RECYCLE_RADIUS" value="0"> + </constant> + <constant name="SPACE_PARAM_CONTACT_MAX_SEPARATION" value="1"> + </constant> + <constant name="SPACE_PARAM_BODY_MAX_ALLOWED_PENETRATION" value="2"> + </constant> + <constant name="SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD" value="3"> + </constant> + <constant name="SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD" value="4"> + </constant> + <constant name="SPACE_PARAM_BODY_TIME_TO_SLEEP" value="5"> + </constant> + <constant name="SPACE_PARAM_BODY_ANGULAR_VELOCITY_DAMP_RATIO" value="6"> + </constant> + <constant name="SPACE_PARAM_CONSTRAINT_DEFAULT_BIAS" value="7"> + </constant> + <constant name="BODY_AXIS_LOCK_DISABLED" value="0"> + </constant> + <constant name="BODY_AXIS_LOCK_X" value="1"> + </constant> + <constant name="BODY_AXIS_LOCK_Y" value="2"> + </constant> + <constant name="BODY_AXIS_LOCK_Z" value="3"> + </constant> </constants> </class> diff --git a/doc/classes/Reference.xml b/doc/classes/Reference.xml index a8ca4cde0c..2531ea88ad 100644 --- a/doc/classes/Reference.xml +++ b/doc/classes/Reference.xml @@ -18,7 +18,7 @@ </description> </method> <method name="reference"> - <return type="void"> + <return type="bool"> </return> <description> Increase the internal reference counter. Use this only if you really know what you are doing. diff --git a/doc/classes/RigidBody.xml b/doc/classes/RigidBody.xml index 446c6d14cb..fc9d241e35 100644 --- a/doc/classes/RigidBody.xml +++ b/doc/classes/RigidBody.xml @@ -437,5 +437,13 @@ <constant name="MODE_CHARACTER" value="2"> Character body. This behaves like a rigid body, but can not rotate. </constant> + <constant name="AXIS_LOCK_DISABLED" value="0"> + </constant> + <constant name="AXIS_LOCK_X" value="1"> + </constant> + <constant name="AXIS_LOCK_Y" value="2"> + </constant> + <constant name="AXIS_LOCK_Z" value="3"> + </constant> </constants> </class> diff --git a/doc/classes/TabContainer.xml b/doc/classes/TabContainer.xml index f96b31262c..ffe99eb82b 100644 --- a/doc/classes/TabContainer.xml +++ b/doc/classes/TabContainer.xml @@ -190,6 +190,12 @@ </signal> </signals> <constants> + <constant name="ALIGN_LEFT" value="0"> + </constant> + <constant name="ALIGN_CENTER" value="1"> + </constant> + <constant name="ALIGN_RIGHT" value="2"> + </constant> </constants> <theme_items> <theme_item name="decrement" type="Texture"> diff --git a/doc/classes/TouchScreenButton.xml b/doc/classes/TouchScreenButton.xml index bf8af20da9..8a96fa1454 100644 --- a/doc/classes/TouchScreenButton.xml +++ b/doc/classes/TouchScreenButton.xml @@ -173,5 +173,9 @@ </signal> </signals> <constants> + <constant name="VISIBILITY_ALWAYS" value="0"> + </constant> + <constant name="VISIBILITY_TOUCHSCREEN_ONLY" value="1"> + </constant> </constants> </class> diff --git a/doc/classes/TreeItem.xml b/doc/classes/TreeItem.xml index 02c264cbff..d1e45bd10f 100644 --- a/doc/classes/TreeItem.xml +++ b/doc/classes/TreeItem.xml @@ -545,5 +545,11 @@ </constant> <constant name="CELL_MODE_CUSTOM" value="5"> </constant> + <constant name="ALIGN_LEFT" value="0"> + </constant> + <constant name="ALIGN_CENTER" value="1"> + </constant> + <constant name="ALIGN_RIGHT" value="2"> + </constant> </constants> </class> diff --git a/doc/classes/Viewport.xml b/doc/classes/Viewport.xml index c12ec86cbb..a5170b8d03 100644 --- a/doc/classes/Viewport.xml +++ b/doc/classes/Viewport.xml @@ -650,5 +650,19 @@ </constant> <constant name="MSAA_16X" value="4"> </constant> + <constant name="USAGE_2D" value="0"> + </constant> + <constant name="USAGE_2D_NO_SAMPLING" value="1"> + </constant> + <constant name="USAGE_3D" value="2"> + </constant> + <constant name="USAGE_3D_NO_EFFECTS" value="3"> + </constant> + <constant name="CLEAR_MODE_ALWAYS" value="0"> + </constant> + <constant name="CLEAR_MODE_NEVER" value="1"> + </constant> + <constant name="CLEAR_MODE_ONLY_NEXT_FRAME" value="2"> + </constant> </constants> </class> diff --git a/doc/classes/VisualScriptBuiltinFunc.xml b/doc/classes/VisualScriptBuiltinFunc.xml index eb9af69ea9..a88633749e 100644 --- a/doc/classes/VisualScriptBuiltinFunc.xml +++ b/doc/classes/VisualScriptBuiltinFunc.xml @@ -29,5 +29,121 @@ </member> </members> <constants> + <constant name="MATH_SIN" value="0"> + </constant> + <constant name="MATH_COS" value="1"> + </constant> + <constant name="MATH_TAN" value="2"> + </constant> + <constant name="MATH_SINH" value="3"> + </constant> + <constant name="MATH_COSH" value="4"> + </constant> + <constant name="MATH_TANH" value="5"> + </constant> + <constant name="MATH_ASIN" value="6"> + </constant> + <constant name="MATH_ACOS" value="7"> + </constant> + <constant name="MATH_ATAN" value="8"> + </constant> + <constant name="MATH_ATAN2" value="9"> + </constant> + <constant name="MATH_SQRT" value="10"> + </constant> + <constant name="MATH_FMOD" value="11"> + </constant> + <constant name="MATH_FPOSMOD" value="12"> + </constant> + <constant name="MATH_FLOOR" value="13"> + </constant> + <constant name="MATH_CEIL" value="14"> + </constant> + <constant name="MATH_ROUND" value="15"> + </constant> + <constant name="MATH_ABS" value="16"> + </constant> + <constant name="MATH_SIGN" value="17"> + </constant> + <constant name="MATH_POW" value="18"> + </constant> + <constant name="MATH_LOG" value="19"> + </constant> + <constant name="MATH_EXP" value="20"> + </constant> + <constant name="MATH_ISNAN" value="21"> + </constant> + <constant name="MATH_ISINF" value="22"> + </constant> + <constant name="MATH_EASE" value="23"> + </constant> + <constant name="MATH_DECIMALS" value="24"> + </constant> + <constant name="MATH_STEPIFY" value="25"> + </constant> + <constant name="MATH_LERP" value="26"> + </constant> + <constant name="MATH_DECTIME" value="27"> + </constant> + <constant name="MATH_RANDOMIZE" value="28"> + </constant> + <constant name="MATH_RAND" value="29"> + </constant> + <constant name="MATH_RANDF" value="30"> + </constant> + <constant name="MATH_RANDOM" value="31"> + </constant> + <constant name="MATH_SEED" value="32"> + </constant> + <constant name="MATH_RANDSEED" value="33"> + </constant> + <constant name="MATH_DEG2RAD" value="34"> + </constant> + <constant name="MATH_RAD2DEG" value="35"> + </constant> + <constant name="MATH_LINEAR2DB" value="36"> + </constant> + <constant name="MATH_DB2LINEAR" value="37"> + </constant> + <constant name="LOGIC_MAX" value="38"> + </constant> + <constant name="LOGIC_MIN" value="39"> + </constant> + <constant name="LOGIC_CLAMP" value="40"> + </constant> + <constant name="LOGIC_NEAREST_PO2" value="41"> + </constant> + <constant name="OBJ_WEAKREF" value="42"> + </constant> + <constant name="FUNC_FUNCREF" value="43"> + </constant> + <constant name="TYPE_CONVERT" value="44"> + </constant> + <constant name="TYPE_OF" value="45"> + </constant> + <constant name="TYPE_EXISTS" value="46"> + </constant> + <constant name="TEXT_CHAR" value="47"> + </constant> + <constant name="TEXT_STR" value="48"> + </constant> + <constant name="TEXT_PRINT" value="49"> + </constant> + <constant name="TEXT_PRINTERR" value="50"> + </constant> + <constant name="TEXT_PRINTRAW" value="51"> + </constant> + <constant name="VAR_TO_STR" value="52"> + </constant> + <constant name="STR_TO_VAR" value="53"> + </constant> + <constant name="VAR_TO_BYTES" value="54"> + </constant> + <constant name="BYTES_TO_VAR" value="55"> + </constant> + <constant name="COLORN" value="56"> + </constant> + <constant name="FUNC_MAX" value="57"> + </constant> </constants> </class> diff --git a/doc/classes/VisualScriptFunctionCall.xml b/doc/classes/VisualScriptFunctionCall.xml index 9a56831253..36c808afce 100644 --- a/doc/classes/VisualScriptFunctionCall.xml +++ b/doc/classes/VisualScriptFunctionCall.xml @@ -183,5 +183,17 @@ </constant> <constant name="CALL_MODE_BASIC_TYPE" value="3"> </constant> + <constant name="CALL_MODE_SINGLETON" value="4"> + </constant> + <constant name="RPC_DISABLED" value="0"> + </constant> + <constant name="RPC_RELIABLE" value="1"> + </constant> + <constant name="RPC_UNRELIABLE" value="2"> + </constant> + <constant name="RPC_RELIABLE_TO_ID" value="3"> + </constant> + <constant name="RPC_UNRELIABLE_TO_ID" value="4"> + </constant> </constants> </class> diff --git a/doc/classes/VisualScriptInputAction.xml b/doc/classes/VisualScriptInputAction.xml index b0f7827024..b555a0228b 100644 --- a/doc/classes/VisualScriptInputAction.xml +++ b/doc/classes/VisualScriptInputAction.xml @@ -45,5 +45,13 @@ </member> </members> <constants> + <constant name="MODE_PRESSED" value="0"> + </constant> + <constant name="MODE_RELEASED" value="1"> + </constant> + <constant name="MODE_JUST_PRESSED" value="2"> + </constant> + <constant name="MODE_JUST_RELEASED" value="3"> + </constant> </constants> </class> diff --git a/doc/classes/VisualScriptMathConstant.xml b/doc/classes/VisualScriptMathConstant.xml index 8e0436edfa..1ef7d71e10 100644 --- a/doc/classes/VisualScriptMathConstant.xml +++ b/doc/classes/VisualScriptMathConstant.xml @@ -29,5 +29,23 @@ </member> </members> <constants> + <constant name="MATH_CONSTANT_ONE" value="0"> + </constant> + <constant name="MATH_CONSTANT_PI" value="1"> + </constant> + <constant name="MATH_CONSTANT_2PI" value="2"> + </constant> + <constant name="MATH_CONSTANT_HALF_PI" value="3"> + </constant> + <constant name="MATH_CONSTANT_E" value="4"> + </constant> + <constant name="MATH_CONSTANT_SQRT2" value="5"> + </constant> + <constant name="MATH_CONSTANT_INF" value="6"> + </constant> + <constant name="MATH_CONSTANT_NAN" value="7"> + </constant> + <constant name="MATH_CONSTANT_MAX" value="8"> + </constant> </constants> </class> diff --git a/doc/classes/VisualScriptPropertySet.xml b/doc/classes/VisualScriptPropertySet.xml index a129cc36f8..88d47a7463 100644 --- a/doc/classes/VisualScriptPropertySet.xml +++ b/doc/classes/VisualScriptPropertySet.xml @@ -149,5 +149,29 @@ </constant> <constant name="CALL_MODE_INSTANCE" value="2"> </constant> + <constant name="CALL_MODE_BASIC_TYPE" value="3"> + </constant> + <constant name="ASSIGN_OP_NONE" value="0"> + </constant> + <constant name="ASSIGN_OP_ADD" value="1"> + </constant> + <constant name="ASSIGN_OP_SUB" value="2"> + </constant> + <constant name="ASSIGN_OP_MUL" value="3"> + </constant> + <constant name="ASSIGN_OP_DIV" value="4"> + </constant> + <constant name="ASSIGN_OP_MOD" value="5"> + </constant> + <constant name="ASSIGN_OP_SHIFT_LEFT" value="6"> + </constant> + <constant name="ASSIGN_OP_SHIFT_RIGHT" value="7"> + </constant> + <constant name="ASSIGN_OP_BIT_AND" value="8"> + </constant> + <constant name="ASSIGN_OP_BIT_OR" value="9"> + </constant> + <constant name="ASSIGN_OP_BIT_XOR" value="10"> + </constant> </constants> </class> diff --git a/doc/tools/doc_status.py b/doc/tools/doc_status.py index 1386e91ce1..b0fa36230c 100644 --- a/doc/tools/doc_status.py +++ b/doc/tools/doc_status.py @@ -1,5 +1,6 @@ #!/usr/bin/env python3 +import os import sys import re import math @@ -220,6 +221,21 @@ class ClassStatus: def generate_for_class(c): status = ClassStatus() status.name = c.attrib['name'] + + # setgets do not count + methods = [] + for tag in list(c): + if tag.tag in ['methods']: + for sub_tag in list(tag): + methods.append(sub_tag.find('name')) + if tag.tag in ['members']: + for sub_tag in list(tag): + try: + methods.remove(sub_tag.find('setter')) + methods.remove(sub_tag.find('getter')) + except: + pass + for tag in list(c): if tag.tag == 'brief_description': @@ -230,9 +246,9 @@ class ClassStatus: elif tag.tag in ['methods', 'signals']: for sub_tag in list(tag): - descr = sub_tag.find('description') - status.progresses[tag.tag].increment(len(descr.text.strip()) > 0) - + if sub_tag.find('name') in methods or tag.tag == 'signals': + descr = sub_tag.find('description') + status.progresses[tag.tag].increment(len(descr.text.strip()) > 0) elif tag.tag in ['constants', 'members']: for sub_tag in list(tag): status.progresses[tag.tag].increment(len(sub_tag.text.strip()) > 0) @@ -252,6 +268,7 @@ class ClassStatus: input_file_list = [] input_class_list = [] +merged_file = "" for arg in sys.argv[1:]: if arg.startswith('--'): @@ -259,8 +276,10 @@ for arg in sys.argv[1:]: elif arg.startswith('-'): for f in arg[1:]: flags[f] = not flags[f] - elif arg.endswith('.xml'): - input_file_list.append(arg) + elif os.path.isdir(arg): + for f in os.listdir(arg): + if f.endswith('.xml'): + input_file_list.append(os.path.join(arg, f)); else: input_class_list.append(arg) @@ -287,10 +306,9 @@ if flags['u']: if len(input_file_list) < 1 or flags['h']: if not flags['h']: - print(color('section', 'Invalid usage') + ': At least one classes.xml file is required') - print(color('section', 'Usage') + ': doc_status.py [flags] <classes.xml> [class names]') + print(color('section', 'Invalid usage') + ': Please specify a classes directory') + print(color('section', 'Usage') + ': doc_status.py [flags] <classes_dir> [class names]') print('\t< and > signify required parameters, while [ and ] signify optional parameters.') - print('\tNote that you can give more than one classes file, in which case they will be merged on-the-fly.') print(color('section', 'Available flags') + ':') possible_synonym_list = list(long_flags) possible_synonym_list.sort() @@ -327,11 +345,10 @@ for file in input_file_list: version = doc.attrib['version'] - for c in list(doc): - if c.attrib['name'] in class_names: - continue - class_names.append(c.attrib['name']) - classes[c.attrib['name']] = c + if doc.attrib['name'] in class_names: + continue + class_names.append(doc.attrib['name']) + classes[doc.attrib['name']] = doc class_names.sort() diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp index a55ede7e41..d08a595fd2 100644 --- a/editor/editor_export.cpp +++ b/editor/editor_export.cpp @@ -490,14 +490,24 @@ void EditorExportPlugin::add_shared_object(const String &p_path) { shared_objects.push_back(p_path); } -void EditorExportPlugin::_export_file_script(const String &p_path, const PoolVector<String> &p_features) { +void EditorExportPlugin::_export_file_script(const String &p_path, const String &p_type, const PoolVector<String> &p_features) { if (get_script_instance()) { - get_script_instance()->call("_export_file", p_path, p_features); + get_script_instance()->call("_export_file", p_path, p_type, p_features); } } -void EditorExportPlugin::_export_file(const String &p_path, const Set<String> &p_features) { +void EditorExportPlugin::_export_begin_script(const PoolVector<String> &p_features) { + + if (get_script_instance()) { + get_script_instance()->call("_export_begin", p_features); + } +} + +void EditorExportPlugin::_export_file(const String &p_path, const String &p_type, const Set<String> &p_features) { +} + +void EditorExportPlugin::_export_begin(const Set<String> &p_features) { } void EditorExportPlugin::skip() { @@ -511,7 +521,8 @@ void EditorExportPlugin::_bind_methods() { ClassDB::bind_method(D_METHOD("add_file", "path", "file", "remap"), &EditorExportPlugin::add_file); ClassDB::bind_method(D_METHOD("skip"), &EditorExportPlugin::skip); - BIND_VMETHOD(MethodInfo("_export_file", PropertyInfo(Variant::STRING, "path"), PropertyInfo(Variant::POOL_STRING_ARRAY, "features"))); + BIND_VMETHOD(MethodInfo("_export_file", PropertyInfo(Variant::STRING, "path"), PropertyInfo(Variant::STRING, "type"), PropertyInfo(Variant::POOL_STRING_ARRAY, "features"))); + BIND_VMETHOD(MethodInfo("_export_begin", PropertyInfo(Variant::POOL_STRING_ARRAY, "features"))); } EditorExportPlugin::EditorExportPlugin() { @@ -555,6 +566,25 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & _edit_filter_list(paths, p_preset->get_include_filter(), false); _edit_filter_list(paths, p_preset->get_exclude_filter(), true); + //initial export plugin callback + for (int i = 0; i < export_plugins.size(); i++) { + if (export_plugins[i]->get_script_instance()) { //script based + export_plugins[i]->_export_begin_script(features_pv); + } else { + export_plugins[i]->_export_begin(features); + } + if (p_so_func) { + for (int j = 0; j < export_plugins[i]->shared_objects.size(); j++) { + p_so_func(p_udata, export_plugins[i]->shared_objects[j]); + } + } + for (int j = 0; j < export_plugins[i]->extra_files.size(); j++) { + p_func(p_udata, export_plugins[i]->extra_files[j].path, export_plugins[i]->extra_files[j].data, 0, paths.size()); + } + + export_plugins[i]->_clear(); + } + //store everything in the export medium int idx = 0; int total = paths.size(); @@ -562,6 +592,7 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & for (Set<String>::Element *E = paths.front(); E; E = E->next()) { String path = E->get(); + String type = ResourceLoader::get_resource_type(path); if (FileAccess::exists(path + ".import")) { //file is imported, replace by what it imports @@ -602,9 +633,9 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> & bool do_export = true; for (int i = 0; i < export_plugins.size(); i++) { if (export_plugins[i]->get_script_instance()) { //script based - export_plugins[i]->_export_file_script(path, features_pv); + export_plugins[i]->_export_file_script(path, type, features_pv); } else { - export_plugins[i]->_export_file(path, features); + export_plugins[i]->_export_file(path, type, features); } if (p_so_func) { for (int j = 0; j < export_plugins[i]->shared_objects.size(); j++) { diff --git a/editor/editor_export.h b/editor/editor_export.h index 6b8164681f..b6ea4fd889 100644 --- a/editor/editor_export.h +++ b/editor/editor_export.h @@ -240,14 +240,16 @@ class EditorExportPlugin : public Reference { skipped = false; } - void _export_file_script(const String &p_path, const PoolVector<String> &p_features); + void _export_file_script(const String &p_path, const String &p_type, const PoolVector<String> &p_features); + void _export_begin_script(const PoolVector<String> &p_features); protected: void add_file(const String &p_path, const Vector<uint8_t> &p_file, bool p_remap); void add_shared_object(const String &p_path); void skip(); - virtual void _export_file(const String &p_path, const Set<String> &p_features); + virtual void _export_file(const String &p_path, const String &p_type, const Set<String> &p_features); + virtual void _export_begin(const Set<String> &p_features); static void _bind_methods(); |