diff options
Diffstat (limited to 'scene/resources')
-rw-r--r-- | scene/resources/style_box.cpp | 5 | ||||
-rw-r--r-- | scene/resources/texture.cpp | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/scene/resources/style_box.cpp b/scene/resources/style_box.cpp index a61ffe8e97..8580ffdc5a 100644 --- a/scene/resources/style_box.cpp +++ b/scene/resources/style_box.cpp @@ -104,7 +104,10 @@ StyleBox::StyleBox() { void StyleBoxTexture::set_texture(RES p_texture) { + if (texture==p_texture) + return; texture=p_texture; + emit_signal("texture_changed"); emit_changed(); } @@ -207,6 +210,8 @@ void StyleBoxTexture::_bind_methods() { ObjectTypeDB::bind_method(_MD("set_draw_center","enable"),&StyleBoxTexture::set_draw_center); ObjectTypeDB::bind_method(_MD("get_draw_center"),&StyleBoxTexture::get_draw_center); + ADD_SIGNAL(MethodInfo("texture_changed")); + ADD_PROPERTY( PropertyInfo( Variant::OBJECT, "texture", PROPERTY_HINT_RESOURCE_TYPE, "Texture" ), _SCS("set_texture"),_SCS("get_texture") ); ADD_PROPERTYNZ( PropertyInfo( Variant::RECT2, "region_rect"), _SCS("set_region_rect"),_SCS("get_region_rect")); ADD_PROPERTYI( PropertyInfo( Variant::REAL, "margin/left", PROPERTY_HINT_RANGE,"0,2048,1" ), _SCS("set_margin_size"),_SCS("get_margin_size"), MARGIN_LEFT ); diff --git a/scene/resources/texture.cpp b/scene/resources/texture.cpp index 1893bfe524..2fa00c7da7 100644 --- a/scene/resources/texture.cpp +++ b/scene/resources/texture.cpp @@ -526,8 +526,11 @@ uint32_t AtlasTexture::get_flags() const{ void AtlasTexture::set_atlas(const Ref<Texture>& p_atlas){ + if (atlas==p_atlas) + return; atlas=p_atlas; emit_changed(); + emit_signal("atlas_changed"); } Ref<Texture> AtlasTexture::get_atlas() const{ @@ -569,6 +572,8 @@ void AtlasTexture::_bind_methods() { ObjectTypeDB::bind_method(_MD("set_margin","margin"),&AtlasTexture::set_margin); ObjectTypeDB::bind_method(_MD("get_margin"),&AtlasTexture::get_margin); + ADD_SIGNAL(MethodInfo("atlas_changed")); + ADD_PROPERTY( PropertyInfo( Variant::OBJECT, "atlas", PROPERTY_HINT_RESOURCE_TYPE,"Texture"), _SCS("set_atlas"),_SCS("get_atlas") ); ADD_PROPERTY( PropertyInfo( Variant::RECT2, "region"), _SCS("set_region"),_SCS("get_region") ); ADD_PROPERTY( PropertyInfo( Variant::RECT2, "margin"), _SCS("set_margin"),_SCS("get_margin") ); |