]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/item/button.qh
Merge branch 'master' into Mirio/balance
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / item / button.qh
1 #pragma once
2
3 #include "modalcontroller.qh"
4
5 #include "label.qh"
6 CLASS(Button, Label)
7         METHOD(Button, configureButton, void(entity, string, float, string));
8         METHOD(Button, draw, void(entity));
9         METHOD(Button, showNotify, void(entity));
10         METHOD(Button, resizeNotify, void(entity, vector, vector, vector, vector));
11         METHOD(Button, keyDown, float(entity, float, float, float));
12         METHOD(Button, mousePress, float(entity, vector));
13         METHOD(Button, mouseDrag, float(entity, vector));
14         METHOD(Button, mouseRelease, float(entity, vector));
15         METHOD(Button, playClickSound, void(entity));
16         ATTRIB(Button, onClick, void(entity, entity), func_null)
17         ATTRIB(Button, onClickEntity, entity, NULL)
18         ATTRIB(Button, src, string, string_null)
19         ATTRIB(Button, srcSuffix, string, string_null)
20         ATTRIB(Button, src2, string, string_null) // is centered, same aspect, and stretched to label size
21         ATTRIB(Button, src2scale, float, 1)
22         ATTRIB(Button, srcMulti, float, 1)        // 0: button square left, text right; 1: button stretched, text over it
23         ATTRIB(Button, buttonLeftOfText, float, 0)
24         ATTRIB(Button, focusable, float, 1)
25         ATTRIB(Button, allowFocusSound, float, 1)
26         ATTRIB(Button, pressed, float, 0)
27         ATTRIB(Button, clickTime, float, 0)
28         ATTRIB(Button, applyButton, entity, NULL)
29         ATTRIB(Button, disableOnClick, bool, false)
30         ATTRIB(Button, disabled, float, 0)
31         ATTRIB(Button, disabledAlpha, float, 0.3)
32         ATTRIB(Button, forcePressed, float, 0)
33         ATTRIB(Button, color, vector, '1 1 1')
34         ATTRIB(Button, colorC, vector, '1 1 1')
35         ATTRIB(Button, colorF, vector, '1 1 1')
36         ATTRIB(Button, colorD, vector, '1 1 1')
37         ATTRIB(Button, color2, vector, '1 1 1')
38         ATTRIB(Button, alpha2, float, 1)
39
40         ATTRIB(Button, origin, vector, '0 0 0')
41         ATTRIB(Button, size, vector, '0 0 0')
42 ENDCLASS(Button)