Esempio n. 1
0
 public ImGuiSDL2CSWindow(
     string title = "ImGui.NET-SDL2-CS Window",
     int x        = SDL.SDL_WINDOWPOS_CENTERED, int y = SDL.SDL_WINDOWPOS_CENTERED,
     int width    = 800, int height = 600,
     SDL.SDL_WindowFlags flags = SDL.SDL_WindowFlags.SDL_WINDOW_OPENGL | SDL.SDL_WindowFlags.SDL_WINDOW_RESIZABLE | SDL.SDL_WindowFlags.SDL_WINDOW_HIDDEN
     ) : base(title, x, y, width, height, flags)
 {
     _IsSuperClass = GetType() == typeof(ImGuiSDL2CSWindow);
     ImGuiSDL2CSHelper.Init();
     OnEvent = ImGuiOnEvent;
     OnLoop  = ImGuiOnLoop;
 }
Esempio n. 2
0
        public virtual void ImGuiRender()
        {
            int  mouseX, mouseY;
            uint mouseMask = SDL.SDL_GetMouseState(out mouseX, out mouseY);

            if ((SDL.SDL_GetWindowFlags(Handle) & (uint)SDL.SDL_WindowFlags.SDL_WINDOW_MOUSE_FOCUS) == 0)
            {
                mouseX = mouseY = -1;
            }
            ImGuiSDL2CSHelper.NewFrame(Size, System.Numerics.Vector2.One, new System.Numerics.Vector2(mouseX, mouseY), mouseMask, ref g_MouseWheel, g_MousePressed, ref g_Time);

            ImGuiLayout();

            ImGuiSDL2CSHelper.Render(Size);
        }
Esempio n. 3
0
 public bool ImGuiOnEvent(SDL2Window window, SDL.SDL_Event e)
 => ImGuiSDL2CSHelper.HandleEvent(e, ref g_MouseWheel, g_MousePressed);