X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fstatslist.qc;h=4a6e03f28e91c44314817782c3f0a20f5aa5576c;hb=21307f327df5609b82d90496c1c6156d636d1c8d;hp=99c850f13558e456d599b2ba333816748431dcba;hpb=bb80a6aba067167c6ef8d5f3465f03bd34142fa2;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/statslist.qc b/qcsrc/menu/xonotic/statslist.qc index 99c850f13..4a6e03f28 100644 --- a/qcsrc/menu/xonotic/statslist.qc +++ b/qcsrc/menu/xonotic/statslist.qc @@ -1,17 +1,19 @@ -#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 +34,7 @@ entity makeXonoticStatsList(); entity makeXonoticStatsList() { entity me; - me = spawnXonoticStatsList(); + me = NEW(XonoticStatsList); me.configureXonoticStatsList(me); return me; } @@ -79,7 +81,7 @@ string XonoticStatsList_convertDate(string input) void XonoticStatsList_getStats(entity me) { - dprint("XonoticStatsList_getStats() at time: ", ftos(time), "\n"); + LOG_TRACE("XonoticStatsList_getStats() at time: ", ftos(time), "\n"); // delete the old buffer if it exists if(me.listStats >= 0) buf_del(me.listStats); @@ -313,10 +315,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);