mirror of
https://github.com/Ryujinx/Opentk.git
synced 2025-01-12 13:25:36 +00:00
* OpenTK/Test/GameWindowStates.cs: Print information on pressed
keyboard keys and mouse buttons.
This commit is contained in:
parent
4a8cb59028
commit
2db6f74ec1
|
@ -104,6 +104,47 @@ namespace Examples.Tests
|
||||||
gfx.DrawString(str, TextFont, Brushes.White, new PointF(0, line * TextFont.Height));
|
gfx.DrawString(str, TextFont, Brushes.White, new PointF(0, line * TextFont.Height));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void DrawString(Graphics gfx, string str, int line, float offset)
|
||||||
|
{
|
||||||
|
gfx.DrawString(str, TextFont, Brushes.White, new PointF(offset, line * TextFont.Height));
|
||||||
|
}
|
||||||
|
|
||||||
|
static void DrawKeyboard(Graphics gfx, KeyboardState keyboard, int line)
|
||||||
|
{
|
||||||
|
const string str = "Keys pressed:";
|
||||||
|
float space = gfx.MeasureString(" ", TextFont).Width;
|
||||||
|
float offset = gfx.MeasureString(str, TextFont).Width + space;
|
||||||
|
DrawString(gfx, str, line);
|
||||||
|
for (int i = 0; i < (int)Key.LastKey; i++)
|
||||||
|
{
|
||||||
|
Key k = (Key)i;
|
||||||
|
if (keyboard[k])
|
||||||
|
{
|
||||||
|
string key = k.ToString();
|
||||||
|
DrawString(gfx, key, line, offset);
|
||||||
|
offset += gfx.MeasureString(key, TextFont).Width + space;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void DrawMouse(Graphics gfx, MouseState mouse, int line)
|
||||||
|
{
|
||||||
|
const string str = "Buttons pressed:";
|
||||||
|
float space = gfx.MeasureString(" ", TextFont).Width;
|
||||||
|
float offset = gfx.MeasureString(str, TextFont).Width + space;
|
||||||
|
DrawString(gfx, str, line);
|
||||||
|
for (int i = 0; i < (int)MouseButton.LastButton; i++)
|
||||||
|
{
|
||||||
|
MouseButton b = (MouseButton)i;
|
||||||
|
if (mouse[b])
|
||||||
|
{
|
||||||
|
string button = b.ToString();
|
||||||
|
DrawString(gfx, button, line, offset);
|
||||||
|
offset += gfx.MeasureString(button, TextFont).Width + space;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected override void OnUpdateFrame(FrameEventArgs e)
|
protected override void OnUpdateFrame(FrameEventArgs e)
|
||||||
{
|
{
|
||||||
mouse = OpenTK.Input.Mouse.GetState();
|
mouse = OpenTK.Input.Mouse.GetState();
|
||||||
|
@ -137,6 +178,8 @@ namespace Examples.Tests
|
||||||
DrawString(gfx, String.Format("Window.Location: {0}, Size: {1}", Location, Size), line++);
|
DrawString(gfx, String.Format("Window.Location: {0}, Size: {1}", Location, Size), line++);
|
||||||
DrawString(gfx, String.Format("Window.{{X={0}, Y={1}, Width={2}, Height={3}}}", X, Y, Width, Height), line++);
|
DrawString(gfx, String.Format("Window.{{X={0}, Y={1}, Width={2}, Height={3}}}", X, Y, Width, Height), line++);
|
||||||
DrawString(gfx, String.Format("Window.ClientRectangle: {0}", ClientRectangle), line++);
|
DrawString(gfx, String.Format("Window.ClientRectangle: {0}", ClientRectangle), line++);
|
||||||
|
DrawKeyboard(gfx, keyboard, line++);
|
||||||
|
DrawMouse(gfx, mouse, line++);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue