Fast, flexible and simple GUI.

Owner
Fast, flexible and simple GUI development!
null
Comments
  • OgrePlatform - OpenGL: Sampler value sampler has not been set.

    OgrePlatform - OpenGL: Sampler value sampler has not been set.

    The Fragment Program is not receiving the sampler value.

    The GUI shows anyway but in OpenGL the log is being filled with the following message:

    11:08:59: Error prior to using GLSL Program Object : GL_INVALID_VALUE
    Validation warning! - Sampler value sampler has not been set.
    Validation successful.
    
  • cross-platform support with SDL2

    cross-platform support with SDL2

    Changes: implemented cross-platform support with SDL2/SDL2_image (only if OpenGL is set as the render system). All projects (demos, editors) compile and run in Windows and Linux (assume Freetype and SDL2/SDL2_image are installed).

    Known issues:

    1. some MyGUI keycodes are not mapping to corresponding SDL keycodes, some may be broken, e.g., Tab key not working.
    2. Not compile on Mac yet.
  • MyGUI for Arch Linux ARM

    MyGUI for Arch Linux ARM

    Is there a MyGUI for Arch Linux ARM?

    I see there is for Debian ARM and Fedora ARM.

    If there isn't, how would you build it for Arch Linux ARM (step-by-step)?

    Thanks, and please answer!

  • Merge @paroj changes while avoiding the use of the RTSS and OgreBites.

    Merge @paroj changes while avoiding the use of the RTSS and OgreBites.

    Hello @altren,

    I don't expect you to merge this pull request but I want you to review the code since I am having some problems that I am unable to solve:

    • UnitTest_RTTLayer: I don't know what happened with this Test, it was working at some point in time and then I changed something that broke it, perhaps you can figure it out.
    • UnitTest_TextureAnimations: Nothing shows, I think it suffers the same problem as UnitTest_RTTLayer, it was also working at some point in my code but now it doesn't.
    • UnitTest_Layers: I'm lost on this one, don't even know where to start.
    • Demo_Colors: In DirectX11 the color selection texture is half the vertical size, quite a mystery. This also happends in @paroj's code, so it might be an OGRE bug.

    The good thing is that thanks to the changes made by @paroj these issues got fixed:

    • In DirectX11 now the text is working
    • In OpenGL3+ now the text is black instead of white
    • Demo_MsdfFont now works (except DirectX9 where OGRE crashes because the shader model 4.0 is not supported)

    I will try to keep working on these problems, especially UnitTest_RTTLayer not working since at some point it did work...

    However I am getting very frustrated with this and need to do something else for the moment.

    Best regards, Guillermo

  • Ogre 2.1

    Ogre 2.1

    Support for ogre 2.x using OpenGL3.x+ and DirectX11. Check option 8 in platforms for Ogre 2.x.

    http://www.ogre3d.org/forums/viewtopic.php?f=25&t=83569

  • Boost System missing from CMake?

    Boost System missing from CMake?

    On my system (Ubuntu 14.04) the Demos and Tools didn't compile, instead I got a linker error: "undefined symbol: _ZN5boost6system15system_categoryEv"

    I fixed this by modiying MyGUI's CMakeLists files. I added: find_package( Boost COMPONENTS system REQUIRED ) and linking against it by adding ${Boost_SYSTEM_LIBRARIES} into the "target_link_libraries" in the function "mygui_app" in CMake/Utils/MyGUIConfigTargets.cmake

    I know too little about cmake in order to know if this is a "good" fix or not, so I didn't make a pull request.

  • Fixes with Demos and Unit Tests

    Fixes with Demos and Unit Tests

    @Altren This pull request contains the following fixes:

    • UnitTest_GraphView did not compile with MinGW 8.1.0 due to the Singleton initialization
    • UnitTest_GraphView was refrencing the robot.mesh with the wrong name
    • BaseManager.cpp was initializing the Resource Groups before the OGRE RenderManager was initialized
    • BaseManager.cpp was registering resources into the AUTODETECT_RESOURCE_GROUP_NAME wich makes no sense
    • BaseManager.cpp: params["vsync"] = "true" (this change was not a fix, if you want to change it later let me know)
  • Implement Tools and Demos build using OpenGL Render System on Linux

    Implement Tools and Demos build using OpenGL Render System on Linux

    While targeting the Ogre Render System, everything compiles just fine with:

    cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DMYGUI_RENDERSYSTEM=3 ../mygui; make -j8

    as shown here: https://travis-ci.org/psi29a/mygui/jobs/34474097

    however using the OpenGL Render System, it bombs out because it requires windows.h and the rabbit hole goes downwards from there. Doing this:

    cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DMYGUI_RENDERSYSTEM=4 ../mygui; make -j8

    fails as shown here: https://travis-ci.org/psi29a/mygui/jobs/34474098

    The only way to make it through is to disable the tools and demos, as either would require compiling Common which is where the problem is.

    cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DMYGUI_RENDERSYSTEM=4 -DMYGUI_BUILD_DEMOS=FALSE -DMYGUI_BUILD_TOOLS=FALSE ../mygui; make -j8

    I would expect that I should be able to do both with demos and tools without requiring windows. Perhaps there is some misplaced #ifdef logic going on?

  • Split out libraries as shared libraries

    Split out libraries as shared libraries

    Currently on Debian (and Ubuntu), we carry a patch around to split out the MyGUIEngine into separate shared libraries. In addition to this, we also correct the SOVERSION for these new shared libs.

    Is it possible to make this the default behavior?

    I haven't forked and asked for a PR because I wasn't sure how best this should be done or if needed to discuss it more.

    Here is our patch:

    Description: build the library as a shared library
    Author: Scott Howard 
    
    --- a/Platforms/Ogre/OgrePlatform/CMakeLists.txt
    +++ b/Platforms/Ogre/OgrePlatform/CMakeLists.txt
    @@ -8,11 +8,12 @@ include_directories(
     
     include(${PROJECTNAME}.list)
     
    -add_library(${PROJECTNAME} ${HEADER_FILES} ${SOURCE_FILES})
    +add_library(${PROJECTNAME} SHARED ${HEADER_FILES} ${SOURCE_FILES})
    +set_target_properties(${PROJECTNAME} PROPERTIES VERSION 0debian1.0.0 SOVERSION 0debian1)
     
     add_dependencies(${PROJECTNAME} MyGUIEngine)
     
    -target_link_libraries(${PROJECTNAME} ${OGRE_LIBRARIES})
    +target_link_libraries(${PROJECTNAME} ${OGRE_LIBRARIES} MyGUIEngine boost_system)
     link_directories(${OGRE_LIB_DIR})
     
     install(FILES ${HEADER_FILES}
    --- a/Plugins/CMakeLists.txt
    +++ b/Plugins/CMakeLists.txt
    @@ -1,7 +1,7 @@
     option(MYGUI_BUILD_HIKARI_PLUGIN "Build Plugin HikariWidget" FALSE)
     option(MYGUI_BUILD_BERKELIUM_PLUGIN "Build Plugin BerkeliumWidget" FALSE)
     
    -add_subdirectory(Plugin_StrangeButton)
    +#add_subdirectory(Plugin_StrangeButton)
     
     if (MYGUI_BUILD_HIKARI_PLUGIN)
        if (WIN32)
    --- a/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt
    +++ b/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt
    @@ -9,14 +9,15 @@ include_directories(
     
     include(${PROJECTNAME}.list)
     
    -add_definitions(-DGLEW_STATIC)
    +#add_definitions(-DGLEW_STATIC)
     add_definitions(-DGL_GLEXT_PROTOTYPES)
     
    -add_library(${PROJECTNAME} ${HEADER_FILES} ${SOURCE_FILES})
    +add_library(${PROJECTNAME} SHARED ${HEADER_FILES} ${SOURCE_FILES})
    +set_target_properties(${PROJECTNAME} PROPERTIES VERSION 0debian1.0.0 SOVERSION 0debian1)
     
     add_dependencies(${PROJECTNAME} MyGUIEngine)
     
    -target_link_libraries(${PROJECTNAME} ${OPENGL_LIBRARIES} ${PNG_LIBRARIES} ${ZLIB_LIBRARIES})
    +target_link_libraries(${PROJECTNAME} GL ${PNG_LIBRARIES} ${ZLIB_LIBRARIES} MyGUIEngine GLEW)
     link_directories(${OPENGL_LIB_DIR} ${PNG_LIBRARY})
     
     # installation rules
    --- a/Platforms/OpenGL/OpenGLPlatform/MyGUI.OpenGLPlatform.list
    +++ b/Platforms/OpenGL/OpenGLPlatform/MyGUI.OpenGLPlatform.list
    @@ -8,7 +8,6 @@ set (HEADER_FILES
       include/MyGUI_OpenGLVertexBuffer.h
     )
     set (SOURCE_FILES
    -  include/GL/glew.c
       src/MyGUI_OpenGLDataManager.cpp
       src/MyGUI_OpenGLPlatform.cpp
       src/MyGUI_OpenGLRTTexture.cpp
    @@ -26,7 +25,6 @@ SOURCE_GROUP("Header Files" FILES
       include/MyGUI_OpenGLVertexBuffer.h
     )
     SOURCE_GROUP("Source Files" FILES
    -  include/GL/glew.c
       src/MyGUI_OpenGLDataManager.cpp
       src/MyGUI_OpenGLPlatform.cpp
       src/MyGUI_OpenGLRTTexture.cpp
    --- a/MyGUIEngine/CMakeLists.txt
    +++ b/MyGUIEngine/CMakeLists.txt
    @@ -44,7 +44,8 @@ endif ()
     
     # setup MyGUIEngine target
     add_library(${PROJECTNAME} ${MYGUI_LIB_TYPE} ${HEADER_FILES} ${SOURCE_FILES})
    -set_target_properties(${PROJECTNAME} PROPERTIES VERSION ${MYGUI_VERSION} SOVERSION ${MYGUI_VERSION_MAJOR})
    +set_target_properties(${PROJECTNAME} PROPERTIES VERSION ${MYGUI_VERSION} SOVERSION ${MYGUI_VERSION_MAJOR} LINK_INTERFACE_LIBRARIES "")
    +target_link_libraries(${PROJECTNAME} dl)
     if (MYGUI_USE_FREETYPE)
        target_link_libraries(${PROJECTNAME}
            ${FREETYPE_LIBRARIES}
    
  • Using Ogre the RenderSystem_GL works but not the other rendersystems

    Using Ogre the RenderSystem_GL works but not the other rendersystems

    In Ogre I tried RenderSystem_Direct3D11 and RenderSystem_GL3Plus but neither worked. I think I remember perhaps seeing it has something to do with the fixed graphics pipeline but not sure.

    The commit from the last few days seems to have fixed the resource loading issues that I was struggling with.

  • Flipped RTTLayer

    Flipped RTTLayer

    Hi,

    I believe this to be a bug. If you need more code examples, I can provide them.

    I have multiple RTTLayers in the scene. I use the new LayerManager::createLayerAt function to create them on the fly.

    The first layer (which holds content on it), is - for some reason - flipped vertically. By first layer, I mean mLayerNodes[0].

    Layers which are empty (to be filled later) don't seem to be affected by this (?).

    Here's a screenshot showing the issue (Front, small texture is correct, back texture is flipped). screenshot05262015_202328854

    For now, my (very ugly) workaround is to create a texture which is not shown before creating other textures.

  • Managed MyGUI : call InputManager.Instance.InjectMouseReleased cause AccessViolationException

    Managed MyGUI : call InputManager.Instance.InjectMouseReleased cause AccessViolationException

    When I use btnConnect.EventMouseButtonClick += new Widget.HandleMouseButtonClick(BtnConnect_EventMouseButtonClick); to add the event handler to the Button, it will notice such error.

  • OpenGL rendering issue

    OpenGL rendering issue

    Hi! With latest MyGUI master branch we experience a rendering issue in Rigs of Rods:

    DirectX: dx

    OpenGL: gl

    MyGUI 3.4.0 works fine on both. Any idea how to fix it?

  • scrolling a scrollView doesn't scroll open comboBox

    scrolling a scrollView doesn't scroll open comboBox

    -open a comboBox -scroll the scrollView with the mouse wheel ->the comboBox items stay at the same position and don't scroll with the other widgets

    combo

  • SDL2 platform

    SDL2 platform

    Hi there!

    This is a new platform for MyGUI using SDL2. It requires SDL >= 2.0.18 because that's the version that added the required API for this to actually work (direct geometry rendering).

    There are some issues that can hopefully be worked out before merging, I'll add some comments inline.

    I have another platform in the works (for BGFX) but I'll finish that one once we finish merging this one, as I think some of the issues will be present there as well.

    I hope this is useful, and thanks!

  • MyGUI is crashing on a second monitor

    MyGUI is crashing on a second monitor

    Tried the demos (ex: Demo_PanelView.exe), with Ogre 1.13.2, using directX9 and they crash when I move the window on my second screen.

    Could be an issue with the font textures: From Paroj: My guess would be that the MyGUI Fonts are manually created but without providing a loader callback, so we cannot auto-restore them.

  • Combobox with image and text

    Combobox with image and text

    I'd like to create comboBox displaying text and a small icon to the left of the text. For instance: a list of textures, with a small preview to the left of the texture name. Is it possible with templates modifications? (I can't manage to do it this way) Or would I need to create a new type of combobox inside MyGUI code?

Related tags
This is a collection of widgets and utilities for the immediate mode GUI (imgui) that I am developing for the critic2 GUI
This is a collection of widgets and utilities for the immediate mode GUI (imgui) that I am developing for the critic2 GUI

ImGui Goodies This is a collection of widgets and utilities for the immediate mode GUI (imgui) that I am developing for the critic2 GUI. Currently, th

Nov 19, 2022
XClicker - Fast gui autoclicker for x11 linux desktops
XClicker - Fast gui autoclicker for x11 linux desktops

What is XClicker? XClicker is an open-source, easy to use, feature-rich, blazing fast Autoclicker for linux desktops using x11. Main features Fairly s

Dec 24, 2022
FLTK - Fast Light Tool Kit - a cross-platform C++ GUI toolkit for UNIX(r)/Linux(r) (X11)

FLTK - Fast Light Tool Kit - a cross-platform C++ GUI toolkit for UNIX(r)/Linux(r) (X11)

Dec 25, 2022
super duper simple gui for C, wrapping imgui and stb

super duper simle gui for C, wrapping imgui and stb You can use it as a static library with cmake. See the example directory for a complete example. E

May 19, 2022
raygui is a simple and easy-to-use immediate-mode-gui library.
raygui is a simple and easy-to-use immediate-mode-gui library.

raygui is a simple and easy-to-use immediate-mode-gui library.

Dec 30, 2022
It's a simple Canvas GUI for Unreal Engine 4 with mouse operation
It's a simple Canvas GUI for Unreal Engine 4 with mouse operation

ue4-canvas-gui It's a simple Canvas GUI for Unreal Engine 4 with mouse operation. Included elements: Rendering Text (left/center); Rendering Rects; Re

Dec 26, 2022
rCalc is a Simple GUI Calculator
rCalc is a Simple GUI Calculator

rCalc is a simple calculator created as a hobby project to improve my C programming language knowledge and GUI creation skills. GTK3 toolkit is used to create the GUI.

Aug 1, 2022
Free open-source modern C++17 / C++20 framework to create console, forms (GUI like WinForms) and unit test applications on Microsoft Windows, Apple macOS and Linux.
Free open-source modern C++17 / C++20 framework to create console, forms (GUI like WinForms) and unit test applications on Microsoft Windows, Apple macOS and Linux.

xtd Modern C++17/20 framework to create console (CLI), forms (GUI like WinForms) and tunit (unit tests like Microsoft Unit Testing Framework) applicat

Jan 4, 2023
Purely native C++ cross-platform GUI framework for Android and iOS development. https://www.boden.io
Purely native C++ cross-platform GUI framework for Android and iOS development. https://www.boden.io

BODEN CROSS-PLATFORM FRAMEWORK Build purely native cross-platform experiences with Boden Website ⬡ Getting Started ⬡ API Reference ⬡ Guides ⬡ Twitter

Dec 27, 2022
Minimalistic C++/Python GUI library for OpenGL, GLES2/3, Metal, and WebAssembly/WebGL
Minimalistic C++/Python GUI library for OpenGL, GLES2/3, Metal, and WebAssembly/WebGL

NanoGUI NanoGUI is a minimalistic cross-platform widget library for OpenGL 3+, GLES 2/3, and Metal. It supports automatic layout generation, stateful

Dec 28, 2022
A barebones single-header GUI library for Win32 and X11.
A barebones single-header GUI library for Win32 and X11.

luigi A barebones single-header GUI library for Win32 and X11. Building example Windows Update luigi_example.c to #define UI_WINDOWS at the top of the

Dec 30, 2022
Nvui: A NeoVim GUI written in C++ and Qt
Nvui: A NeoVim GUI written in C++ and Qt

Nvui: A NeoVim GUI written in C++ and Qt

Jan 7, 2023
U++ is a C++ cross-platform rapid application development framework focused on programmer's productivity. It includes a set of libraries (GUI, SQL, Network etc.), and integrated development environment (TheIDE).
U++ is a C++ cross-platform rapid application development framework focused on programmer's productivity. It includes a set of libraries (GUI, SQL, Network etc.), and integrated development environment (TheIDE).

Ultimate++ Ultimate++ is a C++ cross-platform rapid application development framework focused on programmers productivity. It includes a set of librar

Jan 8, 2023
A wallpaper changer using Wallhaven api. Written with C++/CLR, only 0.5 MB and have a GUI.
A wallpaper changer using Wallhaven api. Written with C++/CLR, only 0.5 MB and have a GUI.

WHaven Wallpaper WHaven Wallpaper is a desktop wallpaper change program for change your wallpapers directly from wallhaven. Features You have a search

Aug 1, 2022
win-vind provides a lightweight hybrid UI system of CUI and GUI for Windows
win-vind provides a lightweight hybrid UI system of CUI and GUI for Windows

win-vind provides a lightweight hybrid UI system of CUI and GUI for Windows. And everything is inspired by Vim and its plugins. Simply put, it is a Vim-oriented toy box consisting of various useful features.

Jan 4, 2023
wxWidgets is a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls.
wxWidgets is a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls.

About wxWidgets is a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls. wxWidgets allows y

Jan 7, 2023
Examples, tutorials and applications for the LVGL embedded GUI library
Examples, tutorials and applications for the LVGL embedded GUI library

Examples, tutorials and applications for the LVGL embedded GUI library

Nov 11, 2022
Window and GUI system based on Dear ImGui from OCornut
Window and GUI system based on Dear ImGui from OCornut

ImWindow Window and GUI system based on ImGui from OCornut. Include docking/floating window, multi window and multi render support. Platform Actually

Dec 20, 2022
FlatUI is a immediate mode C++ GUI library for games and graphical applications.

FlatUI is a immediate mode C++ GUI library for games and graphical applications. Go to our landing page to browse our documentation.

Dec 23, 2022