Browse Source

Fixed Node2D/Control not updating properties

Robert Hernandez 8 years ago
parent
commit
8078b5ecf6
2 changed files with 19 additions and 15 deletions
  1. 13 9
      scene/2d/node_2d.cpp
  2. 6 6
      scene/gui/control.cpp

+ 13 - 9
scene/2d/node_2d.cpp

@@ -63,9 +63,10 @@ void Node2D::edit_set_state(const Variant &p_state) {
 	angle = state[1];
 	angle = state[1];
 	_scale = state[2];
 	_scale = state[2];
 	_update_transform();
 	_update_transform();
-	_change_notify("transform/rot");
-	_change_notify("transform/scale");
-	_change_notify("transform/pos");
+	_change_notify("rotation");
+	_change_notify("rotation_deg");
+	_change_notify("scale");
+	_change_notify("position");
 }
 }
 
 
 void Node2D::edit_set_rect(const Rect2 &p_edit_rect) {
 void Node2D::edit_set_rect(const Rect2 &p_edit_rect) {
@@ -95,15 +96,16 @@ void Node2D::edit_set_rect(const Rect2 &p_edit_rect) {
 	_scale *= new_scale;
 	_scale *= new_scale;
 
 
 	_update_transform();
 	_update_transform();
-	_change_notify("transform/scale");
-	_change_notify("transform/pos");
+	_change_notify("scale");
+	_change_notify("position");
 }
 }
 
 
 void Node2D::edit_rotate(float p_rot) {
 void Node2D::edit_rotate(float p_rot) {
 
 
 	angle += p_rot;
 	angle += p_rot;
 	_update_transform();
 	_update_transform();
-	_change_notify("transform/rot");
+	_change_notify("rotation");
+	_change_notify("rotation_deg");
 }
 }
 
 
 void Node2D::_update_xform_values() {
 void Node2D::_update_xform_values() {
@@ -134,7 +136,7 @@ void Node2D::set_position(const Point2 &p_pos) {
 		((Node2D *)this)->_update_xform_values();
 		((Node2D *)this)->_update_xform_values();
 	pos = p_pos;
 	pos = p_pos;
 	_update_transform();
 	_update_transform();
-	_change_notify("transform/pos");
+	_change_notify("position");
 }
 }
 
 
 void Node2D::set_rotation(float p_radians) {
 void Node2D::set_rotation(float p_radians) {
@@ -143,7 +145,8 @@ void Node2D::set_rotation(float p_radians) {
 		((Node2D *)this)->_update_xform_values();
 		((Node2D *)this)->_update_xform_values();
 	angle = p_radians;
 	angle = p_radians;
 	_update_transform();
 	_update_transform();
-	_change_notify("transform/rot");
+	_change_notify("rotation");
+	_change_notify("rotation_deg");
 }
 }
 
 
 void Node2D::set_rotation_in_degrees(float p_degrees) {
 void Node2D::set_rotation_in_degrees(float p_degrees) {
@@ -169,7 +172,7 @@ void Node2D::set_scale(const Size2 &p_scale) {
 	if (_scale.y == 0)
 	if (_scale.y == 0)
 		_scale.y = CMP_EPSILON;
 		_scale.y = CMP_EPSILON;
 	_update_transform();
 	_update_transform();
-	_change_notify("transform/scale");
+	_change_notify("scale");
 }
 }
 
 
 Point2 Node2D::get_position() const {
 Point2 Node2D::get_position() const {
@@ -349,6 +352,7 @@ void Node2D::set_z(int p_z) {
 	ERR_FAIL_COND(p_z > VS::CANVAS_ITEM_Z_MAX);
 	ERR_FAIL_COND(p_z > VS::CANVAS_ITEM_Z_MAX);
 	z = p_z;
 	z = p_z;
 	VS::get_singleton()->canvas_item_set_z(get_canvas_item(), z);
 	VS::get_singleton()->canvas_item_set_z(get_canvas_item(), z);
+	_change_notify("z");
 }
 }
 
 
 void Node2D::set_z_as_relative(bool p_enabled) {
 void Node2D::set_z_as_relative(bool p_enabled) {

+ 6 - 6
scene/gui/control.cpp

@@ -1347,12 +1347,12 @@ Control::AnchorType Control::get_anchor(Margin p_margin) const {
 void Control::_change_notify_margins() {
 void Control::_change_notify_margins() {
 
 
 	// this avoids sending the whole object data again on a change
 	// this avoids sending the whole object data again on a change
-	_change_notify("margin/left");
-	_change_notify("margin/top");
-	_change_notify("margin/right");
-	_change_notify("margin/bottom");
-	_change_notify("rect/pos");
-	_change_notify("rect/size");
+	_change_notify("margin_left");
+	_change_notify("margin_top");
+	_change_notify("margin_right");
+	_change_notify("margin_bottom");
+	_change_notify("rect_pos");
+	_change_notify("rect_size");
 }
 }
 
 
 void Control::set_margin(Margin p_margin, float p_value) {
 void Control::set_margin(Margin p_margin, float p_value) {