Browse Source

Add constructor for Image built-in type

Franklin Sobrinho 9 years ago
parent
commit
3c4b0236cb
2 changed files with 22 additions and 0 deletions
  1. 7 0
      core/variant_call.cpp
  2. 15 0
      doc/base/classes.xml

+ 7 - 0
core/variant_call.cpp

@@ -858,6 +858,11 @@ static void _call_##m_type##_##m_method(Variant& r_ret,Variant& p_self,const Var
 		r_ret=Transform(p_args[0]->operator Matrix3(),p_args[1]->operator Vector3());
 		r_ret=Transform(p_args[0]->operator Matrix3(),p_args[1]->operator Vector3());
 	}
 	}
 
 
+	static void Image_init1(Variant& r_ret, const Variant** p_args) {
+
+		r_ret=Image(*p_args[0],*p_args[1],*p_args[2],Image::Format(p_args[3]->operator int()));
+	}
+
 	static void add_constructor(VariantConstructFunc p_func,const Variant::Type p_type,
 	static void add_constructor(VariantConstructFunc p_func,const Variant::Type p_type,
 			const String& p_name1="", const Variant::Type p_type1=Variant::NIL,
 			const String& p_name1="", const Variant::Type p_type1=Variant::NIL,
 			const String& p_name2="", const Variant::Type p_type2=Variant::NIL,
 			const String& p_name2="", const Variant::Type p_type2=Variant::NIL,
@@ -1583,6 +1588,8 @@ _VariantCall::addfunc(Variant::m_vtype,Variant::m_ret,_SCS(#m_method),VCALL(m_cl
 	_VariantCall::add_constructor(_VariantCall::Transform_init1,Variant::TRANSFORM,"x_axis",Variant::VECTOR3,"y_axis",Variant::VECTOR3,"z_axis",Variant::VECTOR3,"origin",Variant::VECTOR3);
 	_VariantCall::add_constructor(_VariantCall::Transform_init1,Variant::TRANSFORM,"x_axis",Variant::VECTOR3,"y_axis",Variant::VECTOR3,"z_axis",Variant::VECTOR3,"origin",Variant::VECTOR3);
 	_VariantCall::add_constructor(_VariantCall::Transform_init2,Variant::TRANSFORM,"basis",Variant::MATRIX3,"origin",Variant::VECTOR3);
 	_VariantCall::add_constructor(_VariantCall::Transform_init2,Variant::TRANSFORM,"basis",Variant::MATRIX3,"origin",Variant::VECTOR3);
 
 
+	_VariantCall::add_constructor(_VariantCall::Image_init1,Variant::IMAGE,"width",Variant::INT,"height",Variant::INT,"mipmaps",Variant::BOOL,"format",Variant::INT);
+
 	/* REGISTER CONSTANTS */
 	/* REGISTER CONSTANTS */
 
 
 	_VariantCall::constant_data[Variant::VECTOR3].value["AXIS_X"]=Vector3::AXIS_X;
 	_VariantCall::constant_data[Variant::VECTOR3].value["AXIS_X"]=Vector3::AXIS_X;

+ 15 - 0
doc/base/classes.xml

@@ -13147,6 +13147,21 @@ returns:= "username=user&password=pass"
 			<description>
 			<description>
 			</description>
 			</description>
 		</method>
 		</method>
+		<method name="Image">
+			<return type="Image">
+			</return>
+			<argument index="0" name="width" type="int">
+			</argument>
+			<argument index="1" name="height" type="int">
+			</argument>
+			<argument index="2" name="mipmaps" type="bool">
+			</argument>
+			<argument index="3" name="format" type="int">
+			</argument>
+			<description>
+			Create an empty image of a specific size and format.
+			</description>
+		</method>
 	</methods>
 	</methods>
 	<constants>
 	<constants>
 		<constant name="COMPRESS_BC" value="0">
 		<constant name="COMPRESS_BC" value="0">