about summary refs log tree commit diff
path: root/src/engine/external/glfw/lib/fullscreen.c
diff options
context:
space:
mode:
authorMagnus Auvinen <magnus.auvinen@gmail.com>2007-08-22 07:52:33 +0000
committerMagnus Auvinen <magnus.auvinen@gmail.com>2007-08-22 07:52:33 +0000
commit8b3c16e6152a527f9aec1a88a9eed74119de7000 (patch)
treef0bde5cea15e696e42cade06a3b12ff6b13acc57 /src/engine/external/glfw/lib/fullscreen.c
parent9899666a7ce6679a3b9667ab09f615f4d0769c16 (diff)
downloadzcatch-8b3c16e6152a527f9aec1a88a9eed74119de7000.tar.gz
zcatch-8b3c16e6152a527f9aec1a88a9eed74119de7000.zip
major engine cleanup. dependency on baselib removed. engine is now C code (not ansi tho). some other cruft removed aswell
Diffstat (limited to 'src/engine/external/glfw/lib/fullscreen.c')
-rw-r--r--src/engine/external/glfw/lib/fullscreen.c95
1 files changed, 95 insertions, 0 deletions
diff --git a/src/engine/external/glfw/lib/fullscreen.c b/src/engine/external/glfw/lib/fullscreen.c
new file mode 100644
index 00000000..e9f09cc6
--- /dev/null
+++ b/src/engine/external/glfw/lib/fullscreen.c
@@ -0,0 +1,95 @@
+//========================================================================

+// GLFW - An OpenGL framework

+// File:        fullscreen.c

+// Platform:    Any

+// API version: 2.6

+// WWW:         http://glfw.sourceforge.net

+//------------------------------------------------------------------------

+// Copyright (c) 2002-2006 Camilla Berglund

+//

+// This software is provided 'as-is', without any express or implied

+// warranty. In no event will the authors be held liable for any damages

+// arising from the use of this software.

+//

+// Permission is granted to anyone to use this software for any purpose,

+// including commercial applications, and to alter it and redistribute it

+// freely, subject to the following restrictions:

+//

+// 1. The origin of this software must not be misrepresented; you must not

+//    claim that you wrote the original software. If you use this software

+//    in a product, an acknowledgment in the product documentation would

+//    be appreciated but is not required.

+//

+// 2. Altered source versions must be plainly marked as such, and must not

+//    be misrepresented as being the original software.

+//

+// 3. This notice may not be removed or altered from any source

+//    distribution.

+//

+//========================================================================

+

+#include "internal.h"

+

+

+//************************************************************************

+//****                    GLFW user functions                         ****

+//************************************************************************

+

+//========================================================================

+// glfwGetVideoModes() - Get a list of available video modes

+//========================================================================

+

+GLFWAPI int GLFWAPIENTRY glfwGetVideoModes( GLFWvidmode *list,

+    int maxcount )

+{

+    int         count, i, swap, res1, res2, depth1, depth2;

+    GLFWvidmode vm;

+

+    if( !_glfwInitialized || maxcount <= 0 || list == (GLFWvidmode*) 0 )

+    {

+        return 0;

+    }

+

+    // Get list of video modes

+    count = _glfwPlatformGetVideoModes( list, maxcount );

+

+    // Sort list (bubble sort)

+    do

+    {

+        swap = 0;

+        for( i = 0; i < count-1; ++ i )

+        {

+            res1   = list[i].Width*list[i].Height;

+            depth1 = list[i].RedBits+list[i].GreenBits+list[i].BlueBits;

+            res2   = list[i+1].Width*list[i+1].Height;

+            depth2 = list[i+1].RedBits+list[i+1].GreenBits+

+                     list[i+1].BlueBits;

+            if( (depth2<depth1) || ((depth2==depth1) && (res2<res1)) )

+            {

+                vm = list[i];

+                list[i] = list[i+1];

+                list[i+1] = vm;

+                swap = 1;

+            }

+        }

+    }

+    while( swap );

+

+    return count;

+}

+

+

+//========================================================================

+// glfwGetDesktopMode() - Get the desktop video mode

+//========================================================================

+

+GLFWAPI void GLFWAPIENTRY glfwGetDesktopMode( GLFWvidmode *mode )

+{

+    if( !_glfwInitialized || mode == (GLFWvidmode*) 0 )

+    {

+        return;

+    }

+

+    _glfwPlatformGetDesktopMode( mode );

+}

+