Giter Site home page Giter Site logo

qtimgui's Introduction

QtImGui

Qt (QOpenGLWidget / QOpenGLWindow) backend for ImGui

It enables ImGui to run in QOpenGLWidget / QOpenGLWindow.

https://gyazo.com/eb68699c96b9147cca3d5ea9fadfc263

How to use

  • Add QtImGui sources and headers to your project
    • If you are using git submodule, run git submodule update --init --recursive to ensure that the inner submodule is initialized as well.
  • Add include(path/to/qtimgui.pri) to your .pro file
  • Subclass QOpenGLWindow or QOpenGLWidget and:
class DemoWindow : public QOpenGLWindow
{
protected:
    void initializeGL() override
    {
        QtImGui::initialize(this);
    }
    void paintGL() override
    {
        // you can do custom GL rendering as well in paintGL

        QtImGui::newFrame();

        ImGui::Text("Hello");
        // more widgets...

        ImGui::Render();
    }
};

See QOpenGLWidget example and QOpenGLWindow example for details.

Specific notes for Android, when using cmake

Two projects are provided: qtimgui.pro and CMakaLists.txt.

When using cmake under Android, this project will uses qt-android-cmake, which is a CMake utility for building and deploying Qt based applications on Android without QtCreator.

In order to successfuly deploy the app to a device, the cmake variable ANDROID_NATIVE_API_LEVEL should elevated to 21 or 26 (depending on the native levels installed in your android sdk) You will need to set it via the cmake command line, or inside Qt Creator (in the project view).

qtimgui's People

Contributors

crolando avatar pthom avatar seanchas116 avatar xaekai avatar

Watchers

 avatar

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.