summaryrefslogtreecommitdiff
path: root/scene/gui/dialogs.cpp
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <rverschelde@gmail.com>2017-04-03 14:41:53 +0200
committerGitHub <noreply@github.com>2017-04-03 14:41:53 +0200
commit1bd3648bb073e3033f6aed07912b48c020b256af (patch)
treebdbea41db713245c9b555310c0affb1ab9160929 /scene/gui/dialogs.cpp
parent5b09dde3fee4a314183b742ee77913cb7ffd611f (diff)
parent7a428206fec3018f2535768b8a1f20ab9f02aa22 (diff)
Merge pull request #8211 from robertdhernandez/NinePatch-Fix
[3.0] Fixed NinePatchRect/StyleBoxTexture incorrectly drawing AtlasTexture
Diffstat (limited to 'scene/gui/dialogs.cpp')
-rw-r--r--scene/gui/dialogs.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/scene/gui/dialogs.cpp b/scene/gui/dialogs.cpp
index 35d54d9843..df8bfcf691 100644
--- a/scene/gui/dialogs.cpp
+++ b/scene/gui/dialogs.cpp
@@ -177,7 +177,18 @@ void WindowDialog::_notification(int p_what) {
Size2 size = get_size();
Ref<StyleBox> panel = get_stylebox("panel", "WindowDialog");
- panel->draw(canvas, Rect2(Point2(), size));
+ int margin_left = static_cast<int>(panel->get_margin(MARGIN_LEFT));
+ int margin_top = static_cast<int>(panel->get_margin(MARGIN_TOP));
+ int margin_right = static_cast<int>(panel->get_margin(MARGIN_RIGHT));
+ int margin_bottom = static_cast<int>(panel->get_margin(MARGIN_BOTTOM));
+
+ Rect2 rect;
+ rect.pos.x = -margin_left;
+ rect.pos.y = -margin_top;
+ rect.size.width = size.width + margin_left + margin_right;
+ rect.size.height = size.height + margin_top + margin_bottom;
+
+ panel->draw(canvas, rect);
int title_height = get_constant("title_height", "WindowDialog");
Color title_color = get_color("title_color", "WindowDialog");