48 lines
1.4 KiB
C#
48 lines
1.4 KiB
C#
using System;
|
|
|
|
class TestMain
|
|
{
|
|
private static int[,] colors = new int[,] {
|
|
{255, 0, 0},
|
|
{0, 255, 0},
|
|
{0, 0, 255}
|
|
};
|
|
|
|
static void Main(string[] args)
|
|
{
|
|
int color_index = 0;
|
|
|
|
Efl.All.Init();
|
|
|
|
Efl.Loop loop = new Efl.Loop();
|
|
EcoreEvas ecore_evas = new EcoreEvas();
|
|
Efl.Canvas.Object canvas = ecore_evas.canvas;
|
|
canvas.SetVisible(true);
|
|
|
|
Efl.Object parent = canvas.GetParent();
|
|
System.Diagnostics.Debug.Assert(parent.raw_handle != IntPtr.Zero);
|
|
|
|
Efl.Canvas.Rectangle rect = new Efl.Canvas.Rectangle(canvas);
|
|
rect.Color = (colors[0, 0], colors[0, 1], colors[0, 2], 255);
|
|
Eina.Size2D size = new Eina.Size2D();
|
|
size.W = 640;
|
|
size.H = 480;
|
|
rect.Size = size;
|
|
rect.SetVisible(true);
|
|
|
|
canvas.KeyDownEvent += (object sender, Efl.Input.Interface.KeyDownEventArgs e) => {
|
|
color_index = (color_index + 1) % 3;
|
|
Console.WriteLine("Key Down");
|
|
Console.WriteLine("Got key obj at {0}", e.arg.raw_handle.ToString("X"));
|
|
Console.WriteLine("Got key_get() == [{0}]", e.arg.GetKey());
|
|
rect.SetColor(colors[color_index, 0],
|
|
colors[color_index, 1],
|
|
colors[color_index, 2], 255);
|
|
};
|
|
|
|
loop.Begin();
|
|
|
|
Efl.All.Shutdown();
|
|
}
|
|
}
|