Skip to content

Commit

Permalink
🚧Replace all UI controls with IMGUI (#860)
Browse files Browse the repository at this point in the history
* Start work for issue #859

* perf: add file headers

* chore: change enum values to improve control creation

* ide: add word to rider dictionary and ignore suggestion

* deps: add Silk.NET.OpenGL.Extensions.ImGui nuget package version v2.20.0

* BREAKING CHANGE: limit max size of font to 100

* feat: set the corner radius properties as init

* refactor: inject silk window directly instead of the window factory

* test: refactor tests to use nsubstitute and fix failing tests

* chore: remove redundant clear invoke

* refactor: change name of interface method param to match implementations

* refactor: clean up code

* feat: create thin wrapper for ImGui functions

* feat: create reactable for push notifications data for imgui controller

* feat: create class to abstract ImGuiController and simplify code

* feat: create service to simplify and extend imgui related operations

* feat: add opengl func to set pixel storage modes to aid in imgui font loading

* feat: create class to combine other types to greatly simplify imgui integration

* feat: add method to reactable factory

* feat: setup dependency injection for new imgui types

* refactor: replace standard exception with custom exception

* feat: integrate imgui into GLWindow and hence Velaptor

* refactor: perform simple cleanup

* chore: dispose of GL object in GLInvoker dispose method

* chore: make small perf boost by setting method to static

* config: set velaptor testing project to have access to velaptor internals

* chore: create imgui extension methods

* cleanup: add, remove, and improve extension methods for testing app

* chore: setup di registration for testing app

* chore: create basic ui controls for testing app

* refactor: replace old ui controls with imgui controls

* refactor: replace old ui controls with imgui controls

* chore: further improvements

* feat: implement a stats window into the core of velaptor

* chore: add small perf improvement to AppStats

* refactor: move opengl service types to a new namespace

* ide: update live template for unit test null ctor param snippet

* test: create tests for stats window service

* docs: improve code docs

* cleanup: remove disabled code

* fix: fix title issue between control groups

* fix: fix issue with incorrect style pop count

* chore: add size changed event

* chore: fix control group placement issue

* chore: fix various issues in shape scene

* chore: replace init event to fix placement & size issues
  • Loading branch information
CalvinWilkinson authored Jan 15, 2024
1 parent a025e6d commit d5f119d
Show file tree
Hide file tree
Showing 119 changed files with 5,513 additions and 2,941 deletions.
2 changes: 2 additions & 0 deletions Performance/KeyboardPerf/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,15 @@
// </copyright>

// ReSharper disable RedundantUsingDirective
// ReSharper disable UnusedVariable
using BenchmarkDotNet.Configs;
using BenchmarkDotNet.Running;
using KeyboardPerf;

#if DEBUG

var keyboardStateBenchMarks = new KeyboardBenchmarks();
keyboardStateBenchMarks.GetState();

#elif RELEASE

Expand Down
4 changes: 3 additions & 1 deletion Performance/MousePerf/Program.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
// See https://aka.ms/new-console-template for more information
// <copyright file="Program.cs" company="KinsonDigital">
// Copyright (c) KinsonDigital. All rights reserved.
// </copyright>

// ReSharper disable UnusedVariable
// ReSharper disable RedundantUsingDirective
Expand Down
5 changes: 4 additions & 1 deletion Performance/MousePerf/ReactableFactoryFake.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,17 @@ namespace MousePerf;
/// <summary>
/// Used for the purpose of performance testing.
/// </summary>
internal class ReactableFactoryFake : IReactableFactory
internal sealed class ReactableFactoryFake : IReactableFactory
{
/// <inheritdoc/>
public IPushReactable CreateNoDataPushReactable() => throw new NotImplementedException();

/// <inheritdoc/>
public IPushReactable<GL> CreateGLReactable() => throw new NotImplementedException();

/// <inheritdoc/>
public IPushReactable<GLObjectsData> CreateGLObjectsReactable() => throw new NotImplementedException();

/// <inheritdoc/>
public IPushReactable<BatchSizeData> CreateBatchSizeReactable() => throw new NotImplementedException();

Expand Down
4 changes: 2 additions & 2 deletions Testing/VelaptorTesting/Enums.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,12 @@ public enum ShapeType
/// <summary>
/// A rectangle.
/// </summary>
Rectangle = 1,
Rectangle = 0,

/// <summary>
/// A circle.
/// </summary>
Circle = 2,
Circle = 1,
}

/// <summary>
Expand Down
Loading

0 comments on commit d5f119d

Please sign in to comment.