Listbox background by Samual, edited by me (1)
authordiv0 <div0@f962a42d-fe04-0410-a3ab-8c8b0445ebaa>
Fri, 30 Oct 2009 18:32:28 +0000 (18:32 +0000)
committerdiv0 <div0@f962a42d-fe04-0410-a3ab-8c8b0445ebaa>
Fri, 30 Oct 2009 18:32:28 +0000 (18:32 +0000)
git-svn-id: svn://svn.icculus.org/nexuiz/trunk@8191 f962a42d-fe04-0410-a3ab-8c8b0445ebaa

data/qcsrc/menu/item/listbox.c
data/qcsrc/menu/nexuiz/listbox.c
data/qcsrc/menu/nexuiz/maplist.c
data/qcsrc/menu/skin-customizables.inc

index 3ebbf60..98af5e1 100644 (file)
@@ -32,6 +32,8 @@ CLASS(ListBox) EXTENDS(Item)
        ATTRIB(ListBox, scrollbarWidth, float, 0) // pixels
        ATTRIB(ListBox, nItems, float, 42)
        ATTRIB(ListBox, itemHeight, float, 0)
+       ATTRIB(ListBox, colorBG, vector, '0 0 0')
+       ATTRIB(ListBox, alphaBG, float, 0)
        METHOD(ListBox, drawListBoxItem, void(entity, float, vector, float)) // item number, width/height, selected
        METHOD(ListBox, clickListBoxItem, void(entity, float, vector)) // item number, relative clickpos
        METHOD(ListBox, setSelected, void(entity, float))
@@ -239,11 +241,14 @@ void updateControlTopBottomListBox(entity me)
 void drawListBox(entity me)
 {
        float i;
-       vector absSize;
+       vector absSize, fillSize;
        vector oldshift, oldscale;
        if(me.pressed == 2)
                me.mouseDrag(me, me.dragScrollPos); // simulate mouseDrag event
        me.updateControlTopBottom(me);
+       fillSize_x = (1 - me.controlWidth);
+       if(me.alphaBG)
+               draw_Fill('0 0 0', '0 1 0' + fillSize, me.colorBG, me.alphaBG);
        if(me.controlWidth)
        {
                draw_VertButtonPicture(eX * (1 - me.controlWidth), strcat(me.src, "_s"), eX * me.controlWidth + eY, me.color2, 1);
index 0abd655..ef52087 100644 (file)
@@ -11,6 +11,8 @@ CLASS(NexuizListBox) EXTENDS(ListBox)
        ATTRIB(NexuizListBox, colorF, vector, SKINCOLOR_SCROLLBAR_F)
        ATTRIB(NexuizListBox, color2, vector, SKINCOLOR_SCROLLBAR_S)
        ATTRIB(NexuizListBox, colorC, vector, SKINCOLOR_SCROLLBAR_C)
+       ATTRIB(NexuizListBox, colorBG, vector, SKINCOLOR_LISTBOX_BACKGROUND)
+       ATTRIB(NexuizListBox, alphaBG, float, SKINALPHA_LISTBOX_BACKGROUND)
 ENDCLASS(NexuizListBox)
 entity makeNexuizListBox();
 #endif
index de73d78..3d187b9 100644 (file)
@@ -41,6 +41,8 @@ CLASS(NexuizMapList) EXTENDS(NexuizListBox)
        ATTRIB(NexuizMapList, typeToSearchTime, float, 0)
 
        METHOD(NexuizMapList, destroy, void(entity))
+
+       ATTRIB(NexuizListBox, alphaBG, float, 0)
 ENDCLASS(NexuizMapList)
 entity makeNexuizMapList();
 void MapList_All(entity btn, entity me);
index a035a3e..c27e3b5 100644 (file)
@@ -167,6 +167,8 @@ SKINBEGIN
        SKINFLOAT(ALPHA_LISTBOX_SELECTED, 0.5);
        SKINVECTOR(COLOR_LISTBOX_WAITING, '1 0 0');
        SKINFLOAT(ALPHA_LISTBOX_WAITING, 0.5);
+       SKINVECTOR(COLOR_LISTBOX_BACKGROUND, '0 0 0');
+       SKINFLOAT(ALPHA_LISTBOX_BACKGROUND, 0.5);
 
        // item: map list
        SKINVECTOR(COLOR_MAPLIST_TITLE, '1 1 1');