]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/menu/item/nexposee.qc
Listbox: highlight item under the cursor
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / item / nexposee.qc
index ca7ab8fc3785c479c27bee31ee099268a80a3659..1413039851ee7fcde86e3869d8778c9d2fc72614 100644 (file)
@@ -72,14 +72,14 @@ void Nexposee_Calc_Scale(entity me, float scale)
        {
                e.Nexposee_smallOrigin = (e.Nexposee_initialOrigin - e.Nexposee_scaleCenter) * scale + e.Nexposee_scaleCenter;
                e.Nexposee_smallSize = e.Nexposee_initialSize * scale;
-               if(e.Nexposee_align_x > 0)
-                       e.Nexposee_smallOrigin_x = 1 - e.Nexposee_align_x * scale;
-               if(e.Nexposee_align_x < 0)
-                       e.Nexposee_smallOrigin_x = -e.Nexposee_smallSize_x + e.Nexposee_align_x * scale;
-               if(e.Nexposee_align_y > 0)
-                       e.Nexposee_smallOrigin_y = 1 - e.Nexposee_align_y * scale;
-               if(e.Nexposee_align_y < 0)
-                       e.Nexposee_smallOrigin_y = -e.Nexposee_smallSize_y + e.Nexposee_align_y * scale;
+               if(e.Nexposee_align.x > 0)
+                       e.Nexposee_smallOrigin_x = 1 - e.Nexposee_align.x * scale;
+               if(e.Nexposee_align.x < 0)
+                       e.Nexposee_smallOrigin_x = -e.Nexposee_smallSize.x + e.Nexposee_align.x * scale;
+               if(e.Nexposee_align.y > 0)
+                       e.Nexposee_smallOrigin_y = 1 - e.Nexposee_align.y * scale;
+               if(e.Nexposee_align.y < 0)
+                       e.Nexposee_smallOrigin_y = -e.Nexposee_smallSize.y + e.Nexposee_align.y * scale;
        }
 }
 
@@ -111,8 +111,8 @@ void Nexposee_calc(entity me)
                                // for which suffices
                                //   bmins < amaxs
                                //   amins < bmaxs
-                               if((e2mins_x - emaxs_x) * (emins_x - e2maxs_x) > 0) // x overlap
-                                       if((e2mins_y - emaxs_y) * (emins_y - e2maxs_y) > 0) // y overlap
+                               if((e2mins.x - emaxs.x) * (emins.x - e2maxs.x) > 0) // x overlap
+                                       if((e2mins.y - emaxs.y) * (emins.y - e2maxs.y) > 0) // y overlap
                                        {
                                                goto have_overlap;
                                        }
@@ -204,8 +204,8 @@ void Nexposee_draw(entity me)
                me.setAlphaOf(me, e, e.Container_alpha * (1 - f) + a * f);
 
                fs = globalToBoxSize(e.Container_size, e.Nexposee_initialSize);
-               e.Container_fontscale_x = fs_x * e.Nexposee_initialFontScale_x;
-               e.Container_fontscale_y = fs_y * e.Nexposee_initialFontScale_y;
+               e.Container_fontscale_x = fs.x * e.Nexposee_initialFontScale.x;
+               e.Container_fontscale_y = fs.y * e.Nexposee_initialFontScale.y;
        }
 
        SUPER(Nexposee).draw(me);
@@ -219,6 +219,7 @@ float Nexposee_mousePress(entity me, vector pos)
                Nexposee_mouseMove(me, pos);
                if(me.mouseFocusedChild)
                {
+                       m_play_click_sound(MENU_SOUND_OPEN);
                        me.animationState = 1;
                        SUPER(Nexposee).setFocus(me, NULL);
                }
@@ -230,6 +231,7 @@ float Nexposee_mousePress(entity me, vector pos)
        {
                if (!(SUPER(Nexposee).mousePress(me, pos)))
                {
+                       m_play_click_sound(MENU_SOUND_CLOSE);
                        me.animationState = 3;
                        SUPER(Nexposee).setFocus(me, NULL);
                }
@@ -322,10 +324,12 @@ float Nexposee_keyDown(entity me, float scan, float ascii, float shift)
                        default:
                        case 0:
                        case 3:
+                               m_play_click_sound(MENU_SOUND_OPEN);
                                me.animationState = 1;
                                break;
                        case 1:
                        case 2:
+                               m_play_click_sound(MENU_SOUND_CLOSE);
                                me.animationState = 3;
                                break;
                }