]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/menu/item/button.c
Merge remote-tracking branch 'origin/samual/serverlist'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / item / button.c
index 20bc4ab9c911459c109cb7ebf57001b108a00a46..8bbdfa70406e125083dc6572acedf2f123aeb120 100644 (file)
@@ -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)
@@ -77,11 +77,12 @@ float Button_mouseRelease(entity me, vector pos)
        me.mouseDrag(me, pos); // verify coordinates
        if(me.pressed)
        {
-               if not(me.disabled)
+               if (!me.disabled)
                {
                        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;
        }
@@ -161,8 +162,9 @@ void Button_draw(entity 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.disabled)
+                       if(me.onClick)
+                               me.onClick(me, me.onClickEntity);
        }
        me.clickTime -= frametime;