[Bf-blender-cvs] [0ed8058] pie-menus: Pie radius scales correctly with DPI
Antony Riakiotakis
noreply at git.blender.org
Tue Jul 29 12:53:28 CEST 2014
Commit: 0ed80583472d7d3dbb366e267fafab52f4f6ee11
Author: Antony Riakiotakis
Date: Tue Jul 29 12:53:22 2014 +0200
Branches: pie-menus
https://developer.blender.org/rB0ed80583472d7d3dbb366e267fafab52f4f6ee11
Pie radius scales correctly with DPI
===================================================================
M source/blender/editors/interface/interface_handlers.c
M source/blender/editors/interface/interface_layout.c
===================================================================
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 37cbac5..6821f65 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -8609,19 +8609,22 @@ static int ui_handler_pie(bContext *C, const wmEvent *event, uiPopupBlockHandle
uiBut *but;
double final_time = 0.01 * U.pie_animation_timeout;
float fac = duration / final_time;
+ float pie_radius = U.pie_menu_radius * (U.dpi / 72.0f);
if (fac > 1.0f) {
fac = 1.0f;
block->pie_data.flags |= UI_PIE_ANIMATION_FINISHED;
}
+ pie_radius *= fac;
+
for (but = block->buttons.first; but; but = but->next) {
if (but->pie_dir) {
float dir[2];
ui_but_pie_visual_dir(but->pie_dir, dir);
- mul_v2_fl(dir, fac * U.pie_menu_radius);
+ mul_v2_fl(dir, pie_radius );
add_v2_v2(dir, block->pie_data.pie_center_spawned);
BLI_rctf_recenter(&but->rect, dir[0], dir[1]);
}
diff --git a/source/blender/editors/interface/interface_layout.c b/source/blender/editors/interface/interface_layout.c
index e42b535..ba08839 100644
--- a/source/blender/editors/interface/interface_layout.c
+++ b/source/blender/editors/interface/interface_layout.c
@@ -2270,7 +2270,7 @@ static void ui_litem_layout_radial(uiLayout *litem)
* also the old code at http://developer.blender.org/T5103
*/
- int pie_radius = U.pie_menu_radius;
+ int pie_radius = U.pie_menu_radius * (U.dpi / 72.0f);
x = litem->x;
y = litem->y;
More information about the Bf-blender-cvs
mailing list