X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fitem%2Fbutton.c;h=6b32bae27080d279c760923b4ddd613868469079;hb=923a5a2213f06b4337038e744e89d1955f9b195c;hp=71ca11c7c3a439327f888e8edc605b7d6fa36e35;hpb=8b3142364603ea77d9514d20be020370102da9fc;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/item/button.c b/qcsrc/menu/item/button.c index 71ca11c7c..6b32bae27 100644 --- a/qcsrc/menu/item/button.c +++ b/qcsrc/menu/item/button.c @@ -9,7 +9,7 @@ CLASS(Button) EXTENDS(Label) METHOD(Button, mouseDrag, float(entity, vector)) METHOD(Button, mouseRelease, float(entity, vector)) METHOD(Button, focusEnter, void(entity)) - ATTRIB(Button, onClick, void(entity, entity), SUB_Null) + ATTRIB(Button, onClick, void(entity, entity), func_null) ATTRIB(Button, onClickEntity, entity, NULL) ATTRIB(Button, src, string, string_null) ATTRIB(Button, srcSuffix, string, string_null) @@ -81,7 +81,8 @@ float Button_mouseRelease(entity me, vector pos) { if(cvar("menu_sounds")) localsound("sound/misc/menu2.wav"); - me.onClick(me, me.onClickEntity); + if(me.onClick) + me.onClick(me, me.onClickEntity); } me.pressed = 0; } @@ -158,14 +159,15 @@ void Button_draw(entity me) draw_alpha = save; - SUPER(Button).draw(me); - if(me.clickTime > 0 && me.clickTime <= frametime) { // keyboard click timer expired? Fire the event then. if not(me.disabled) - me.onClick(me, me.onClickEntity); + if(me.onClick) + me.onClick(me, me.onClickEntity); } me.clickTime -= frametime; + + SUPER(Button).draw(me); } #endif