|
@@ -85,9 +85,14 @@ Size2 Control::edit_get_minimum_size() const {
|
|
void Control::edit_set_rect(const Rect2& p_edit_rect) {
|
|
void Control::edit_set_rect(const Rect2& p_edit_rect) {
|
|
|
|
|
|
|
|
|
|
- Rect2 new_rect=get_rect();
|
|
|
|
|
|
+ Matrix32 postxf;
|
|
|
|
+ postxf.set_rotation_and_scale(data.rotation,data.scale);
|
|
|
|
+ Vector2 new_pos = postxf.xform(p_edit_rect.pos);
|
|
|
|
+
|
|
|
|
+ Vector2 pos = get_pos()+new_pos;
|
|
|
|
|
|
- new_rect.pos+=p_edit_rect.pos.snapped(Vector2(1,1));
|
|
|
|
|
|
+ Rect2 new_rect=get_rect();
|
|
|
|
+ new_rect.pos=pos.snapped(Vector2(1,1));
|
|
new_rect.size=p_edit_rect.size.snapped(Vector2(1,1));
|
|
new_rect.size=p_edit_rect.size.snapped(Vector2(1,1));
|
|
|
|
|
|
set_pos(new_rect.pos);
|
|
set_pos(new_rect.pos);
|