static void DrawGUI(float Dt) { Game.DrawGUI(Dt); NuklearAPI.Frame(() => { GConsole.NuklearDraw(10, 10); }); }
static void Main(string[] args) { Console.Title = "Nuklear SFML .NET"; Stopwatch SWatch = Stopwatch.StartNew(); VideoMode VMode = new VideoMode(1366, 768); RenderWindow RWind = new RenderWindow(VMode, Console.Title, Styles.Close); Color ClearColor = new Color(50, 50, 50); RWind.Closed += (S, E) => RWind.Close(); SFMLDevice Dev = new SFMLDevice(RWind); RWind.MouseButtonPressed += (S, E) => Dev.OnMouseButton((NuklearEvent.MouseButton)E.Button, E.X, E.Y, true); RWind.MouseButtonReleased += (S, E) => Dev.OnMouseButton((NuklearEvent.MouseButton)E.Button, E.X, E.Y, false); RWind.MouseMoved += (S, E) => Dev.OnMouseMove(E.X, E.Y); RWind.MouseWheelMoved += (S, E) => Dev.OnScroll(0, E.Delta); RWind.TextEntered += (S, E) => Dev.OnText(E.Unicode); RWind.KeyPressed += (S, E) => OnKey(Dev, E, true); RWind.KeyReleased += (S, E) => OnKey(Dev, E, false); NuklearAPI.Init(Dev); NuklearCalculator CalcA = new NuklearCalculator("Calc A", 50, 50); NuklearCalculator CalcB = new NuklearCalculator("Calc B", 300, 50); float Dt = 0.1f; while (RWind.IsOpen) { RWind.DispatchEvents(); RWind.Clear(ClearColor); NuklearAPI.SetDeltaTime(Dt); NuklearAPI.Frame(() => { if (CalcA.Open) { CalcA.Calculator(); } if (CalcB.Open) { CalcB.Calculator(); } TestWindow(400, 350); }); RWind.Display(); Dt = SWatch.ElapsedMilliseconds / 1000.0f; SWatch.Restart(); } Environment.Exit(0); }
public static void DrawLoop(float DeltaTime = 0) { NuklearAPI.SetDeltaTime(DeltaTime); NuklearAPI.Frame(() => { if (CalcA.Open) { CalcA.Calculator(); } if (CalcB.Open) { CalcB.Calculator(); } TestWindow(400, 350); ConsoleThing(450, 200, ConsoleBuffer, InputBuffer); }); }
public void Draw() { Dev.WindowSize = RWind.WindowSize; NuklearAPI.Frame(() => { foreach (var D in Docs) { PaintTags(D.Tags); } /*const NkPanelFlags Flags = NkPanelFlags.BorderTitle | NkPanelFlags.MovableScalable | NkPanelFlags.Minimizable | NkPanelFlags.ScrollAutoHide; * * NuklearAPI.Window("Test Window", 100, 100, 200, 200, Flags, () => { * NuklearAPI.LayoutRowDynamic(35); * * for (int i = 0; i < 10; i++) { * if (NuklearAPI.ButtonLabel("Some Button #" + i)) * Console.WriteLine("You pressed Some Button #" + i); * } * });*/ }); Docs.Clear(); }