]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/menu/xonotic/slider_resolution.c
stuff
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / slider_resolution.c
index 8bd47e799983abe4207446224c390a6441e4d1bc..f29b35e173af6dde24a961735857fd0be95fd7ad 100644 (file)
@@ -6,15 +6,15 @@ CLASS(XonoticResolutionSlider) EXTENDS(XonoticTextSlider)
        METHOD(XonoticResolutionSlider, saveCvars, void(entity))
 ENDCLASS(XonoticResolutionSlider)
 entity makeXonoticResolutionSlider();
-void initConwidths();
+void initConwidths(float width, float height);
 void updateConwidths();
 #endif
 
 #ifdef IMPLEMENTATION
-void initConwidths()
+void initConwidths(float width, float height)
 {
-       cvar_set("_menu_vid_width", cvar_string("vid_width"));
-       cvar_set("_menu_vid_height", cvar_string("vid_height"));
+       cvar_set("_menu_vid_width", ftos(width));
+       cvar_set("_menu_vid_height", ftos(height));
        cvar_set("_menu_vid_pixelheight", cvar_string("vid_pixelheight"));
 }
 void updateConwidths()
@@ -72,6 +72,7 @@ void XonoticResolutionSlider_addResolution(entity me, float w, float h, float pi
        me.addValue(me, strzone(sprintf(_("%dx%d"), w, h)), strzone(strcat(ftos(w), " ", ftos(h), " ", ftos(pixelheight))));
        // FIXME (in case you ever want to dynamically instantiate this): THIS IS NEVER FREED
 }
+float autocvar_menu_vid_allowdualscreenresolution;
 void XonoticResolutionSlider_configureXonoticResolutionSlider(entity me)
 {
        float i;
@@ -93,7 +94,9 @@ void XonoticResolutionSlider_configureXonoticResolutionSlider(entity me)
                if(r_x < 640 || r_y < 480)
                        continue;
                if(r_x > 2 * r_y) // likely dualscreen resolution, skip this one
-                       continue;
+                       if(autocvar_menu_vid_allowdualscreenresolution <= 0)
+                               continue;
+                       
                me.addResolution(me, r_x, r_y, r_z);
        }