X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fcvarlist.qc;h=9943731f7b313b6f7410d690606762f569cf30ab;hb=7bae88d09fbd53cce732e31633aea92671b43699;hp=421142aac0746ca798ebe8157080071ee4254c79;hpb=244e5081c5c503c307e557c98ac864f6c9731475;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/cvarlist.qc b/qcsrc/menu/xonotic/cvarlist.qc index 421142aac..9943731f7 100644 --- a/qcsrc/menu/xonotic/cvarlist.qc +++ b/qcsrc/menu/xonotic/cvarlist.qc @@ -1,12 +1,14 @@ -#ifdef INTERFACE -CLASS(XonoticCvarList) EXTENDS(XonoticListBox) - METHOD(XonoticCvarList, configureXonoticCvarList, void(entity)) +#ifndef CVARLIST_H +#define CVARLIST_H +#include "listbox.qc" +CLASS(XonoticCvarList, XonoticListBox) + METHOD(XonoticCvarList, configureXonoticCvarList, void(entity)); ATTRIB(XonoticCvarList, rowsPerItem, float, 1) - METHOD(XonoticCvarList, drawListBoxItem, void(entity, float, vector, float)) - METHOD(XonoticCvarList, resizeNotify, void(entity, vector, vector, vector, vector)) - METHOD(XonoticCvarList, keyDown, float(entity, float, float, float)) + METHOD(XonoticCvarList, drawListBoxItem, void(entity, int, vector, bool, bool)); + METHOD(XonoticCvarList, resizeNotify, void(entity, vector, vector, vector, vector)); + METHOD(XonoticCvarList, keyDown, float(entity, float, float, float)); - METHOD(XonoticCvarList, destroy, void(entity)) + METHOD(XonoticCvarList, destroy, void(entity)); ATTRIB(XonoticCvarList, realFontSize, vector, '0 0 0') ATTRIB(XonoticCvarList, realUpperMargin, float, 0) @@ -15,9 +17,9 @@ CLASS(XonoticCvarList) EXTENDS(XonoticListBox) ATTRIB(XonoticCvarList, columnValueOrigin, float, 0) ATTRIB(XonoticCvarList, columnValueSize, float, 0) - METHOD(XonoticCvarList, mouseRelease, float(entity, vector)) - METHOD(XonoticCvarList, setSelected, void(entity, float)) - METHOD(XonoticCvarList, updateCvarType, float(entity)) + METHOD(XonoticCvarList, mouseRelease, float(entity, vector)); + METHOD(XonoticCvarList, setSelected, void(entity, float)); + METHOD(XonoticCvarList, updateCvarType, float(entity)); ATTRIB(XonoticCvarList, controlledTextbox, entity, NULL) ATTRIB(XonoticCvarList, cvarNameBox, entity, NULL) @@ -44,7 +46,7 @@ void CvarList_End_Editing(entity box, entity me); entity makeXonoticCvarList() { entity me; - me = spawnXonoticCvarList(); + me = NEW(XonoticCvarList); me.configureXonoticCvarList(me); return me; } @@ -152,7 +154,7 @@ void XonoticCvarList_resizeNotify(entity me, vector relOrigin, vector relSize, v me.setSelected(me, me.selectedItem); } -void XonoticCvarList_drawListBoxItem(entity me, float i, vector absSize, float isSelected) +void XonoticCvarList_drawListBoxItem(entity me, int i, vector absSize, bool isSelected, bool isFocused) { string k, v, d; float t; @@ -164,6 +166,11 @@ void XonoticCvarList_drawListBoxItem(entity me, float i, vector absSize, float i if(isSelected) draw_Fill('0 0 0', '1 1 0', SKINCOLOR_LISTBOX_SELECTED, SKINALPHA_LISTBOX_SELECTED); + else 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); + } k = bufstr_get(me.handle, i);