Merge branch 'master' into samual/serverlist
authorRudolf Polzer <divverent@xonotic.org>
Sun, 13 Oct 2013 22:50:32 +0000 (00:50 +0200)
committerRudolf Polzer <divverent@xonotic.org>
Sun, 13 Oct 2013 22:50:32 +0000 (00:50 +0200)
1  2 
qcsrc/dpdefs/menudefs.qc
qcsrc/menu/menu.qc

diff --combined qcsrc/dpdefs/menudefs.qc
index 1f817cd2029de82d68bba5731993800a9d778ea0,2c21cd181ec367dd0140b2e754505b3b4a3dc6a0..d976973253cb3251865edcb86da2d439c48cf6aa
@@@ -18,7 -18,6 +18,7 @@@ void(float keynr, float ascii) m_keydow
  void(float width, float height) m_draw;
  void(float mode) m_toggle;
  void() m_shutdown;
 +// optional: float(float) m_gethostcachecategory;
  
  /////////////////////////////////////////////////////////
  // sys constants
@@@ -401,6 -400,7 +401,7 @@@ string(float ccase, float calpha, floa
  string(float chars, string s, ...) strpad = #225;
  string(string info, string key, string value, ...) infoadd = #226;
  string(string info, string key) infoget = #227;
+ float(string s1, string s2) strcmp = #228;
  float(string s1, string s2, float len) strncmp = #228;
  float(string s1, string s2) strcasecmp = #229;
  float(string s1, string s2, float len) strncasecmp = #230;
@@@ -562,11 -562,8 +563,11 @@@ void     resethostcachemasks(void) = #615
  void  sethostcachemaskstring(float mask, float fld, string str, float op) = #616;
  void  sethostcachemasknumber(float mask, float fld, float num, float op) = #617;
  void  resorthostcache(void) = #618;
 -void  sethostcachesort(float fld, float descending) = #619;
 -void  refreshhostcache(void) = #620;
 +float SLSF_DESCENDING = 1;
 +float SLSF_FAVORITES = 2;
 +float SLSF_CATEGORIES = 4;
 +void  sethostcachesort(float fld, float slsf) = #619;
 +void  refreshhostcache(...) = #620;  // optional boolean argument "clear_list"
  float gethostcachenumber(float fld, float hostnr) = #621;
  float gethostcacheindexforkey(string key) = #622;
  void  addwantedhostcachekey(string key) = #623;
diff --combined qcsrc/menu/menu.qc
index d2e7fe7f1e4239243855fe958c5e49d21ce16541,0f2a525aa3950116eeb01914845351ccfc862ee9..1e4caf78a0972fcea91f2b5e32a04a2150d8508e
@@@ -17,7 -17,7 +17,7 @@@ float menuNotTheFirstFrame
  float menuMouseMode;
  
  float conwidth_s, conheight_s, vidwidth_s, vidheight_s, vidpixelheight_s,
-       realconwidth, realconheight, screenconwidth, screenconheight;
+       realconwidth, realconheight;
  
  void m_sync()
  {
@@@ -77,8 -77,6 +77,8 @@@ void m_init(
        CALL_ACCUMULATED_FUNCTION(RegisterWeapons);
        CALL_ACCUMULATED_FUNCTION(RegisterGametypes);
  
 +      RegisterSLCategories();
 +
        float ddsload = cvar("r_texture_dds_load");
        float texcomp = cvar("gl_texturecompression");
        updateCompression();
  }
  
  const float MENU_ASPECT = 1.25; // 1280x1024
- const float MENU_MINHEIGHT = 600;
  
  void draw_reset_cropped()
  {
-       draw_reset(screenconwidth, screenconheight, 0.5 * (realconwidth - screenconwidth), 0.5 * (realconheight - screenconheight));
+       draw_reset(conwidth, conheight, 0.5 * (realconwidth - conwidth), 0.5 * (realconheight - conheight));
  }
  void draw_reset_full()
  {
@@@ -111,7 -108,8 +110,8 @@@ void UpdateConWidthHeight(float w, floa
  {
        if (w != vidwidth_s || h != vidheight_s || p != vidpixelheight_s)
        {
-               updateConwidths(w, h, p);
+               if (updateConwidths(w, h, p))
+                       localcmd(sprintf("\nexec %s\n", cvar_string("menu_font_cfg")));
                vidwidth_s = w;
                vidheight_s = h;
                vidpixelheight_s = p;
                conwidth = realconwidth;
                conheight = realconwidth / MENU_ASPECT;
        }
-       screenconwidth = conwidth;
-       screenconheight = conheight;
-       if(conwidth < MENU_MINHEIGHT * MENU_ASPECT)
-       {
-               conheight *= MENU_MINHEIGHT * MENU_ASPECT / conwidth;
-               conwidth = MENU_MINHEIGHT * MENU_ASPECT;
-       }
-       if(conheight < MENU_MINHEIGHT)
-       {
-               conwidth *= MENU_MINHEIGHT / conheight;
-               conheight = MENU_MINHEIGHT;
-       }
        if(main)
        {
                if(conwidth_s != conwidth || conheight_s != conheight)