GFXSetup.h

00001 
00002 //Luke Lenhart, 2008
00003 //See /docs/License.txt for details on how this code may be used.
00004 
00005 #pragma once
00006 #include "../base/Types.h"
00007 #include <string>
00008 
00010 namespace GFX
00011 {
00013     struct ScreenSize
00014     {
00016         int Width;
00017 
00019         int Height;
00020     };
00021 
00023     struct GraphicsSetup: public ScreenSize
00024     {
00026         std::string Name;
00027 
00030         bool FullScreen;
00031 
00033         bool Resizable;
00034 
00036         bool Minimized;
00037 
00038         //TODO: stencil buffer and vsync options
00039 
00040         inline GraphicsSetup()
00041         {
00042             Name="App";
00043             FullScreen=false;
00044             Resizable=true;
00045             Minimized=false;
00046             Width=800;
00047             Height=600;
00048         }
00049     };
00050 
00052     bool SetupWindow(const GraphicsSetup &newState);
00053 
00055     void ShutdownWindow();
00056 
00058     const GraphicsSetup* GetWindowState();
00059 
00061     void UpdateWindow();
00062 
00064     bool WindowHasFocus();
00065 
00067     ScreenSize GetCurrentScreenSize();
00068 
00069     //TODO: An api to get a list of supported screen resolutions
00070     //TODO: An api to change the current screen resolution
00071 }

Generated on Sat Aug 9 15:05:05 2008 for MPMA Framework by  doxygen 1.5.6