mirror of
https://github.com/danbulant/Cosmos
synced 2026-05-19 12:30:32 +00:00
38 lines
1.3 KiB
C#
38 lines
1.3 KiB
C#
//#define COSMOSDEBUG
|
|
using Cosmos.System.Graphics;
|
|
|
|
namespace Cosmos.System.Graphics
|
|
{
|
|
public static class FullScreenCanvas
|
|
{
|
|
/*
|
|
* For now we hardcode that the VideoDriver is always VBE when we have more that a driver supported we need to find
|
|
* what to use when we do the 'new' (inside GetFullScreenCanvas() static methods). MyVideoDriver should be
|
|
* of type Canvas
|
|
*/
|
|
static private Canvas MyVideoDriver = null;
|
|
|
|
public static Canvas GetFullScreenCanvas(Mode mode)
|
|
{
|
|
Global.mDebugger.SendInternal("GetFullScreenCanvas() with mode " + mode);
|
|
|
|
if (MyVideoDriver == null)
|
|
return MyVideoDriver = new VBEScreen(mode);
|
|
|
|
/* We have already got a VideoDriver istance simple change its mode */
|
|
MyVideoDriver.Mode = mode;
|
|
return MyVideoDriver;
|
|
}
|
|
|
|
public static Canvas GetFullScreenCanvas()
|
|
{
|
|
Global.mDebugger.SendInternal($"GetFullScreenCanvas() with default mode");
|
|
if (MyVideoDriver == null)
|
|
return new VBEScreen();
|
|
|
|
/* We have already got a VideoDriver istance simple reset its mode to DefaultGraphicMode */
|
|
MyVideoDriver.Mode = MyVideoDriver.DefaultGraphicMode;
|
|
return MyVideoDriver;
|
|
}
|
|
}
|
|
}
|