X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fweaponslist.qc;h=f4bcf4feae2e15d09504cd0dbb7e21fbe089e4ea;hb=f1bc4f39a6046700973434565506a8f899660b06;hp=a82f2525e6be4b318127d09be7ec378059dea8df;hpb=244f8292cf03247e90bf1a0c3fee1f491f6b93a0;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/weaponslist.qc b/qcsrc/menu/xonotic/weaponslist.qc index a82f2525e..f4bcf4fea 100644 --- a/qcsrc/menu/xonotic/weaponslist.qc +++ b/qcsrc/menu/xonotic/weaponslist.qc @@ -1,10 +1,12 @@ -#ifdef INTERFACE +#ifndef WEAPONSLIST_H +#define WEAPONSLIST_H +#include "listbox.qc" CLASS(XonoticWeaponsList, XonoticListBox) METHOD(XonoticWeaponsList, configureXonoticWeaponsList, void(entity)) METHOD(XonoticWeaponsList, toString, string(entity)) ATTRIB(XonoticWeaponsList, rowsPerItem, float, 1) METHOD(XonoticWeaponsList, draw, void(entity)) - METHOD(XonoticWeaponsList, drawListBoxItem, void(entity, float, vector, float)) + METHOD(XonoticWeaponsList, drawListBoxItem, void(entity, int, vector, bool, bool)) METHOD(XonoticWeaponsList, resizeNotify, void(entity, vector, vector, vector, vector)) METHOD(XonoticWeaponsList, keyDown, float(entity, float, float, float)) ATTRIB(XonoticWeaponsList, realFontSize, vector, '0 0 0') @@ -44,7 +46,7 @@ void WeaponsList_MoveUp_Click(entity box, entity me) if(me.selectedItem > 0) { cvar_set("cl_weaponpriority", swapInPriorityList(cvar_string("cl_weaponpriority"), me.selectedItem - 1, me.selectedItem)); - me.selectedItem -= 1; + me.setSelected(me, me.selectedItem - 1); } } void WeaponsList_MoveDown_Click(entity box, entity me) @@ -52,7 +54,7 @@ void WeaponsList_MoveDown_Click(entity box, entity me) if(me.selectedItem < me.nItems - 1) { cvar_set("cl_weaponpriority", swapInPriorityList(cvar_string("cl_weaponpriority"), me.selectedItem, me.selectedItem + 1)); - me.selectedItem += 1; + me.setSelected(me, me.selectedItem + 1); } } void XonoticWeaponsList_resizeNotify(entity me, vector relOrigin, vector relSize, vector absOrigin, vector absSize) @@ -90,11 +92,16 @@ string XonoticWeaponsList_toString(entity me) } return substring(s, 0, strlen(s) - 2); } -void XonoticWeaponsList_drawListBoxItem(entity me, float i, vector absSize, float isSelected) +void XonoticWeaponsList_drawListBoxItem(entity me, int i, vector absSize, bool isSelected, bool isFocused) { entity e; 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); + } e = get_weaponinfo(stof(argv(i))); string msg = e.message; if(e.spawnflags & WEP_FLAG_MUTATORBLOCKED)