X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fstatslist.qc;h=db42177fbcc07380d5c702b0f1660b7d5a063c7e;hb=1217fce596f1b9769ffb6f479e3abbd4f77af5ef;hp=99c850f13558e456d599b2ba333816748431dcba;hpb=77f03e6ce033bef39ac19e0e7cb6e606ffcb26db;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/statslist.qc b/qcsrc/menu/xonotic/statslist.qc index 99c850f13..db42177fb 100644 --- a/qcsrc/menu/xonotic/statslist.qc +++ b/qcsrc/menu/xonotic/statslist.qc @@ -1,17 +1,20 @@ #include "../../common/counting.qh" #include "../../common/playerstats.qh" -#ifdef INTERFACE -CLASS(XonoticStatsList) EXTENDS(XonoticListBox) - METHOD(XonoticStatsList, configureXonoticStatsList, void(entity)) +#ifndef STATSLIST_H +#define STATSLIST_H +#include "listbox.qc" +CLASS(XonoticStatsList, XonoticListBox) + METHOD(XonoticStatsList, configureXonoticStatsList, void(entity)); ATTRIB(XonoticStatsList, rowsPerItem, float, 1.4) - METHOD(XonoticStatsList, resizeNotify, void(entity, vector, vector, vector, vector)) - METHOD(XonoticStatsList, drawListBoxItem, void(entity, float, vector, float)) - METHOD(XonoticStatsList, getStats, void(entity)) - METHOD(XonoticStatsList, doubleClickListBoxItem, void(entity, float, vector)) - METHOD(XonoticStatsList, keyDown, float(entity, float, float, float)) - METHOD(XonoticStatsList, destroy, void(entity)) - METHOD(XonoticStatsList, showNotify, void(entity)) + METHOD(XonoticStatsList, resizeNotify, void(entity, vector, vector, vector, vector)); + METHOD(XonoticStatsList, drawListBoxItem, void(entity, int, vector, bool, bool)); + METHOD(XonoticStatsList, getStats, void(entity)); + METHOD(XonoticStatsList, doubleClickListBoxItem, void(entity, float, vector)); + METHOD(XonoticStatsList, keyDown, float(entity, float, float, float)); + METHOD(XonoticStatsList, destroy, void(entity)); + METHOD(XonoticStatsList, showNotify, void(entity)); + ATTRIB(XonoticStatsList, selectionDoesntMatter, bool, true) ATTRIB(XonoticStatsList, listStats, float, -1) ATTRIB(XonoticStatsList, realFontSize, vector, '0 0 0') @@ -32,7 +35,7 @@ entity makeXonoticStatsList(); entity makeXonoticStatsList() { entity me; - me = spawnXonoticStatsList(); + me = NEW(XonoticStatsList); me.configureXonoticStatsList(me); return me; } @@ -313,10 +316,13 @@ void XonoticStatsList_resizeNotify(entity me, vector relOrigin, vector relSize, #endif } -void XonoticStatsList_drawListBoxItem(entity me, float i, vector absSize, float isSelected) +void XonoticStatsList_drawListBoxItem(entity me, int i, vector absSize, bool isSelected, bool isFocused) { - if(isSelected) - draw_Fill('0 0 0', '1 1 0', SKINCOLOR_LISTBOX_SELECTED, SKINALPHA_LISTBOX_SELECTED); + if(isFocused) + { + me.focusedItemAlpha = getFadedAlpha(me.focusedItemAlpha, SKINALPHA_LISTBOX_FOCUSED, SKINFADEALPHA_LISTBOX_FOCUSED); + draw_Fill('0 0 0', '1 1 0', SKINCOLOR_LISTBOX_FOCUSED, me.focusedItemAlpha); + } string data = bufstr_get(me.listStats, i); string s = car(data);