From: Holger Schemel Date: Wed, 24 Apr 2019 17:31:45 +0000 (+0200) Subject: added setting draw order and style for pointer-style global animations X-Git-Tag: 4.1.3.0~8 X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=commitdiff_plain;h=2d12b56bd6b64aa3008deae1e1d0ef5755a6bc80;hp=98ae5fc5e9274fea99a2ed8873b78fc2110ce3ce added setting draw order and style for pointer-style global animations To ensure pointer-like behavior for pointer-style global animations, set draw order to high value (if draw order has default value) to be on top of all other animations and set style to pass-through clicks (if style has default value) to handle mouse clicks under the pointer animation. --- diff --git a/src/anim.c b/src/anim.c index 8256ce7f..454389d5 100644 --- a/src/anim.c +++ b/src/anim.c @@ -536,6 +536,20 @@ static void InitGlobalAnimControls(void) anim->base = *part; anim->has_base = TRUE; } + + // apply special settings for pointer-style animations + if (part->control_info.class == get_hash_from_key("pointer")) + { + // force animation to be on top (must set anim and part control) + if (anim->control_info.draw_order == 0) + anim->control_info.draw_order = 1000000; + if (part->control_info.draw_order == 0) + part->control_info.draw_order = 1000000; + + // force animation to pass-through clicks (must set part control) + if (part->control_info.style == STYLE_DEFAULT) + part->control_info.style |= STYLE_PASSTHROUGH; + } } if (anim->num_parts > 0 || anim->has_base)