GithubHelp home page GithubHelp logo

7thfactor / horus_ui Goto Github PK

View Code? Open in Web Editor NEW
141.0 12.0 13.0 75.81 MB

HorusUI Immediate Mode Graphical User Interface

License: MIT License

Shell 0.56% Batchfile 0.02% C++ 10.25% Lua 0.51% Makefile 0.56% Python 0.11% Raku 0.11% Perl 0.67% HTML 7.25% C 79.57% CMake 0.33% Gnuplot 0.01% CSS 0.06%
imgui docking-framework gui ui widget-toolkit widgets user-interface

horus_ui's Issues

DPI Awareness for fonts

Two windows might live on different displays, so the fonts need to have dynamic pixel perfect scaling. No SDF fonts used for now, try to generate fonts for all current displays, if they differ in size/DPI. Try also SDF gen tho, if it's fast enough to gen now.

generate.sh error

2024-03-08_09-59

Trying to build on arch linux, after running sh ./setup.sh, when running sh ./generate.sh I am seeing this error

DX11 support

DX11 requires every window to have it's own swap chain. #10 may not the right place for it. We could convert windows to handles (unsigned int) and store windows in the context along side driver specific info like the swapchains that could also use this handle to lookup the swapchain of that window. In sdl2_input_provider.h we could also replace the sdlOpenGLCtx with a struct that would contain all the driver specific info and pass that off to the driver to allow specific info like this to be stored/managed. Reusing makecurrent would be able to handle setting the swapchain correctly for both drivers this way as well. You can assign this one to me if you like since I'm already working that out. Right now it's working but only for the main window and I added a global disable for detaching windows atm. We could also just allow a Window struct to store specific data like this and forget a handle, the driver would know it's data stored in the window itself. I would rather go that route. Any thoughts?

Linking with SFML fails on linux

Linking custom_render_and_input fails on linux. This is what we get:

/usr/bin/x86_64-linux-gnu-ld: ../3rdparty/sfml/linux/lib/libsfml-window-s.a(JoystickManager.cpp.o): relocation R_X86_64_32S against symbol `_ZNSbIjSt11char_traitsIjESaIjEE4_Rep20_S_empty_rep_storageE' can not be used when making a PIE object; recompile with -fPIC

Fix it.

Improve error handling

Add or improve error handling related to theme resources loading. Try to define a consistent error handling policy and apply it throughout the API where it makes sense.

Scrollbars never get released

Steps to reproduce the issue:

  • run without_docking
  • press the left mouse button on the scrollbar in order to drag it
  • release the left mouse button and see how it continues to act as if it is pressed

Expected behavior:

  • scrolling should stop once the left mouse button is released

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.