imgui-filebrowser is a header-only file browser implementation for dear-imgui. C++ 17 is required.

Overview

imgui-filebrowser

imgui-filebrowser is a header-only file browser implementation for dear-imgui. C++ 17 is required.

IMG

Getting Started

imfilebrowser.h should be included after imgui.h:

#include <imgui.h>
#include <imfilebrowser.h>

Instead of creating a file dialog with an immediate function call, you need to create a ImGui::FileBrowser instance, open it with member function Open(), and call Display() in each frame. Here is a simple example:

#include <imgui.h>
#include <imfilebrowser.h>

int main()
{
    //...initialize rendering window and imgui
    
    // create a file browser instance
    ImGui::FileBrowser fileDialog;
    
    // (optional) set browser properties
    fileDialog.SetTitle("title");
    fileDialog.SetTypeFilters({ ".h", ".cpp" });
    
    // mainloop
    while(continueRendering)
    {
        //...do other stuff like ImGui::NewFrame();
        
        if(ImGui::Begin("dummy window"))
        {
            // open file dialog when user clicks this button
            if(ImGui::Button("open file dialog"))
                fileDialog.Open();
        }
        ImGui::End();
        
        fileDialog.Display();
        
        if(fileDialog.HasSelected())
        {
            std::cout << "Selected filename" << fileDialog.GetSelected().string() << std::endl;
            fileDialog.ClearSelected();
        }
        
        //...do other stuff like ImGui::Render();
    }
    
    //...shutdown
}

Options

Various options can be combined with '|' and passed to the constructor:

enum ImGuiFileBrowserFlags_
{
    ImGuiFileBrowserFlags_SelectDirectory   = 1 << 0, // select directory instead of regular file
    ImGuiFileBrowserFlags_EnterNewFilename  = 1 << 1, // allow user to enter new filename when selecting regular file
    ImGuiFileBrowserFlags_NoModal           = 1 << 2, // file browsing window is modal by default. specify this to use a popup window
    ImGuiFileBrowserFlags_NoTitleBar        = 1 << 3, // hide window title bar
    ImGuiFileBrowserFlags_NoStatusBar       = 1 << 4, // hide status bar at the bottom of browsing window
    ImGuiFileBrowserFlags_CloseOnEsc        = 1 << 5, // close file browser when pressing 'ESC'
    ImGuiFileBrowserFlags_CreateNewDir      = 1 << 6, // allow user to create new directory
    ImGuiFileBrowserFlags_MultipleSelection = 1 << 7, // allow user to select multiple files. this will hide ImGuiFileBrowserFlags_EnterNewFilename
};

When ImGuiFileBrowserFlags_MultipleSelection is enabled, use fileBrowser.GetMultiSelected() to get all selected filenames (instead of fileBrowser.GetSelected(), which returns only one of them).

Here are some common examples:

// select single regular file for opening
0
// select multiple regular files for opening
ImGuiFileBrowserFlags_MultipleSelection
// select single directory for opening
ImGuiFileBrowserFlags_SelectDirectory
// select multiple directories for opening
ImGuiFileBrowserFlags_SelectDirectory | ImGuiFileBrowserFlags_MultipleSelection
// select single regular file for saving
ImGuiFileBrowserFlags_EnterNewFilename | ImGuiFileBrowserFlags_CreateNewDir
// select single directory for saving
ImGuiFileBrowserFlags_SelectDirectory | ImGuiFileBrowserFlags_CreateNewDir

Usage

  • double click to enter a directory
  • single click to (de)select a regular file (or directory, when ImGuiFileBrowserFlags_SelectDirectory is enabled)
  • When ImGuiFileBrowserFlags_SelectDirectory is enabled and no directory is selected, click ok to choose the current directory as selected result
  • When ImGuiFileBrowserFlags_MultipleSelection is enabled, hold Shift or Ctrl to select more than one file
  • When ImGuiFileBrowserFlags_CreateNewDir is enabled, click the top-right little button "+" to create a new directory
  • When ImGuiFileBrowserFlags_SelectDirectory is not specified, double click to choose a regular file as selected result.

Type Filters

  • (optionally) use browser.SetTypeFilters({".h", ".cpp"}) to set file extension filters.
  • ".*" matches with any extension
  • filters are case-insensitive on Windows platform

Note

The filebrowser implementation queries drive list via Win32 API (only on Windows). Thus is included in , which may pollute the global namespace. This can be solved by simply moving the GetDrivesBitMask() definition into a cpp file.

Comments
  • add SetInputName

    add SetInputName

    fix: copy only has 3 parameters and fix: my spacing was set to 2, this file is 5. fix: selectedFilenames_ must be set. fix: #include <string_view> - I was trying to not include extra headers fix: formatting again. - parenthesis are on the wrong line. fix: remove noexcept - call to .at() can throw. fix: forward declare function and place the function definition at end of file. fix: remove comment fix: string_view doesn't have a resize function. So swapping for substr. fix: missing inline

    This function lets you set pre-fill the filename in the dialog.

    I didn't see a way to do this. So I added a function.

    opened by Sebanisu 4
  • A lot of errors when compiling with GCC.

    A lot of errors when compiling with GCC.

    CMakeLists.txt:

    cmake_minimum_required(VERSION 3.15)
    
    project(YMVD VERSION 0.3)
    
    set(CMAKE_CXX_STANDARD 17)
    set(CMAKE_CXX_STANDARD_REQUIRED True)
    
    set(LIBS "${CMAKE_SOURCE_DIR}/lib/opengl32.dll" imm32.lib "${CMAKE_SOURCE_DIR}/lib/glfw3.dll")
    
    file (
        GLOB SOURCE_FILES 
        "${CMAKE_SOURCE_DIR}/sources/*.cpp"
        "${CMAKE_SOURCE_DIR}/sources/*.c"
        "${CMAKE_SOURCE_DIR}/libraries/glad/src/glad.c"
        "${CMAKE_SOURCE_DIR}/libraries/ImGui/*.cpp"
    )
    
    add_executable(YMVD ${SOURCE_FILES})
    
    target_include_directories (
        YMVD PUBLIC
        "${CMAKE_SOURCE_DIR}/libraries/GLFW/include"
        "${CMAKE_SOURCE_DIR}/libraries/glm/include"
        "${CMAKE_SOURCE_DIR}/libraries/glad/include"
        "${CMAKE_SOURCE_DIR}/libraries/ImGui"
    )
    
    target_link_libraries(YMVD ${LIBS})
    

    cmake-tools-kits.json:

    [
      {
        "name": "Clang 12.0.0 x86_64-pc-windows-msvc",
        "compilers": {
          "C": "C:\\Program Files\\LLVM\\bin\\clang.exe",
          "CXX": "C:\\Program Files\\LLVM\\bin\\clang++.exe"
        },
        "preferredGenerator": {
          "name": "MinGW Makefiles"
        },
        "environmentVariables": {
          "CMT_MINGW_PATH": "C:\\MinGW\\bin"
        }
      },
      {
        "name": "GCC 6.3.0 mingw32",
        "compilers": {
          "C": "C:\\Program Files\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\bin\\gcc.exe",
          "CXX": "C:\\Program Files\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\bin\\g++.exe"
        },
        "preferredGenerator": {
          "name": "MinGW Makefiles"
        },
        "environmentVariables": {
          "CMT_MINGW_PATH": "C:\\Program Files\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\bin"
        },
        "keep": true
      },
      {
        "name": "Visual Studio Community 2019 Release - amd64",
        "visualStudio": "93248eac",
        "visualStudioArchitecture": "x64",
        "preferredGenerator": {
          "name": "Visual Studio 16 2019",
          "platform": "x64",
          "toolset": "host=x64"
        }
      },
      {
        "name": "Visual Studio Community 2019 Release - amd64_x86",
        "visualStudio": "93248eac",
        "visualStudioArchitecture": "x64",
        "preferredGenerator": {
          "name": "Visual Studio 16 2019",
          "platform": "win32",
          "toolset": "host=x64"
        }
      },
      {
        "name": "Visual Studio Community 2019 Release - x86",
        "visualStudio": "93248eac",
        "visualStudioArchitecture": "x86",
        "preferredGenerator": {
          "name": "Visual Studio 16 2019",
          "platform": "win32",
          "toolset": "host=x86"
        }
      },
      {
        "name": "Visual Studio Community 2019 Release - x86_amd64",
        "visualStudio": "93248eac",
        "visualStudioArchitecture": "x86",
        "preferredGenerator": {
          "name": "Visual Studio 16 2019",
          "platform": "x64",
          "toolset": "host=x86"
        }
      }
    ]
    

    Error:

    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h: In member function 'std::filesystem::__cxx11::path& std::filesystem::__cxx11::path::operator/=(const std::filesystem::__cxx11::path&)':
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:47: error: no match for 'operator!=' (operand types are 'std::filesystem::__cxx11::path' and 'std::filesystem::__cxx11::path')
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                   ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/utility:70,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/algorithm:60,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:3,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_pair.h:456:5: note: candidate: 'template<class _T1, class _T2> constexpr bool std::operator!=(const std::pair<_T1, _T2>&, const std::pair<_T1, _T2>&)'
         operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_pair.h:456:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::pair<_T1, _T2>'     
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_algobase.h:67,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/algorithm:61,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:3,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:311:5: note: candidate: 'template<class _Iterator> constexpr bool std::operator!=(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_Iterator>&)'
         operator!=(const reverse_iterator<_Iterator>& __x,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:311:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::reverse_iterator<_Iterator>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_algobase.h:67,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/algorithm:61,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:3,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:349:5: note: candidate: 'template<class _IteratorL, class _IteratorR> constexpr bool std::operator!=(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)'
         operator!=(const reverse_iterator<_IteratorL>& __x,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:349:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::reverse_iterator<_Iterator>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_algobase.h:67,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/algorithm:61,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:3,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:1124:5: note: candidate: 'template<class _IteratorL, class _IteratorR> constexpr bool std::operator!=(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)'
         operator!=(const move_iterator<_IteratorL>& __x,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:1124:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::move_iterator<_IteratorL>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_algobase.h:67,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/algorithm:61,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:3,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:1130:5: note: candidate: 'template<class _Iterator> constexpr bool std::operator!=(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorL>&)'
         operator!=(const move_iterator<_Iterator>& __x,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:1130:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::move_iterator<_IteratorL>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/char_traits.h:40,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:40,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/postypes.h:221:5: note: candidate: 'template<class _StateT> bool std::operator!=(const std::fpos<_StateT>&, const std::fpos<_StateT>&)'
         operator!=(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/postypes.h:221:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::fpos<_StateT>'      
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:41,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/allocator.h:158:5: note: candidate: 'template<class _T1, class _T2> bool std::operator!=(const std::allocator<_Tp>&, const std::allocator<_Tp>&)'
         operator!=(const allocator<_T1>&, const allocator<_T2>&)
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/allocator.h:158:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::allocator<_Tp>'     
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:41,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/allocator.h:164:5: note: candidate: 'template<class _Tp> bool std::operator!=(const std::allocator<_Tp>&, const std::allocator<_Tp>&)'
         operator!=(const allocator<_Tp>&, const allocator<_Tp>&)
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/allocator.h:164:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::allocator<_Tp>'     
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:48,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:52,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string_view:454:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator!=(std::basic_string_view<_CharT, _Traits>, std::basic_string_view<_CharT, _Traits>)'
         operator!=(basic_string_view<_CharT, _Traits> __x,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string_view:454:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'std::basic_string_view<_CharT, 
    _Traits>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:48,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:52,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string_view:460:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator!=(std::basic_string_view<_CharT, _Traits>, std::__detail::__idt<std::basic_string_view<_CharT, _Traits> >)'
         operator!=(basic_string_view<_CharT, _Traits> __x,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string_view:460:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'std::basic_string_view<_CharT, 
    _Traits>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:48,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:52,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string_view:466:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator!=(std::__detail::__idt<std::basic_string_view<_CharT, _Traits> >, std::basic_string_view<_CharT, _Traits>)'
         operator!=(__detail::__idt<basic_string_view<_CharT, _Traits>> __x,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string_view:466:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'std::basic_string_view<_CharT, 
    _Traits>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:52,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:6056:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)'
         operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:6056:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:52,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:6069:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const _CharT*, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)'
         operator!=(const _CharT* __lhs,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:6069:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   mismatched types 'const _CharT*' and 'std::filesystem::__cxx11::path'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/string:52,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/stdexcept:39,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:39,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:6081:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _CharT*)'
         operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/basic_string.h:6081:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:4,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:257:5: note: candidate: 'template<class _Tp, long long unsigned int _Nm> bool std::operator!=(const std::array<_Tp, _Nm>&, const std::array<_Tp, _Nm>&)'
         operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/array:257:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::array<_Tp, _Nm>'    
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_fwd.h:35,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:36,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/system_error:319:3: note: candidate: 'bool std::operator!=(const std::error_code&, const std::error_code&)'
       operator!=(const error_code& __lhs, const error_code& __rhs) noexcept
       ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/system_error:319:3: note:   no known conversion for argument 1 from 'std::filesystem::__cxx11::path' to 'const std::error_code&'
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/system_error:323:3: note: candidate: 'bool std::operator!=(const std::error_code&, const std::error_condition&)'    
       operator!=(const error_code& __lhs, const error_condition& __rhs) noexcept
       ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/system_error:323:3: note:   no known conversion for argument 1 from 'std::filesystem::__cxx11::path' to 'const std::error_code&'
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/system_error:327:3: note: candidate: 'bool std::operator!=(const std::error_condition&, const std::error_code&)'    
       operator!=(const error_condition& __lhs, const error_code& __rhs) noexcept
       ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/system_error:327:3: note:   no known conversion for argument 1 from 'std::filesystem::__cxx11::path' to 'const std::error_condition&'
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/system_error:331:3: note: candidate: 'bool std::operator!=(const std::error_condition&, const std::error_condition& 
    '
       operator!=(const error_condition& __lhs,
       ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/system_error:331:3: note:   no known conversion for argument 1 from 'std::filesystem::__cxx11::path' to 'const std::error_condition&'
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/vector:64,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:37,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_vector.h:1772:5: note: candidate: 'template<class _Tp, class _Alloc> bool std::operator!=(const std::vector<_Tp, _Alloc>&, const std::vector<_Tp, _Alloc>&)'
         operator!=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_vector.h:1772:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::vector<_Tp, _Alloc>'    || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/locale_facets.h:48,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/locale:40,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:38,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/streambuf_iterator.h:209:5: note: candidate: 'template<class _CharT, class _Traits> bool std::operator!=(const 
    std::istreambuf_iterator<_CharT, _Traits>&, const std::istreambuf_iterator<_CharT, _Traits>&)'
         operator!=(const istreambuf_iterator<_CharT, _Traits>& __a,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/streambuf_iterator.h:209:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::istreambuf_iterator<_CharT, _Traits>'
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/unique_ptr.h:37,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/locale_conv.h:41,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/locale:43,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:38,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/tuple:1439:5: note: candidate: 'template<class ... _TElements, class ... _UElements> constexpr bool std::operator!=(const std::tuple<_Tps ...>&, const std::tuple<_Elements ...>&)'
         operator!=(const tuple<_TElements...>& __t,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/tuple:1439:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::tuple<_Tps ...>'    
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/locale_conv.h:41,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/locale:43,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:38,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/unique_ptr.h:706:5: note: candidate: 'template<class _Tp, class _Dp, class _Up, class _Ep> bool std::operator!=(const std::unique_ptr<_Tp, _Dp>&, const std::unique_ptr<_Up, _Ep>&)'
         operator!=(const unique_ptr<_Tp, _Dp>& __x,
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/unique_ptr.h:706:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::unique_ptr<_Tp, _Dp 
    '
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/locale_conv.h:41,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/locale:43,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:38,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/unique_ptr.h:712:5: note: candidate: 'template<class _Tp, class _Dp> bool std::operator!=(const std::unique_ptr<_Tp, _Dp>&, std::nullptr_t)'
         operator!=(const unique_ptr<_Tp, _Dp>& __x, nullptr_t) noexcept
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/unique_ptr.h:712:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::unique_ptr<_Tp, _Dp 
    '
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/locale_conv.h:41,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/locale:43,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:38,
                     from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/unique_ptr.h:717:5: note: candidate: 'template<class _Tp, class _Dp> bool std::operator!=(std::nullptr_t, const std::unique_ptr<_Tp, _Dp>&)'
         operator!=(nullptr_t, const unique_ptr<_Tp, _Dp>& __x) noexcept
         ^~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/unique_ptr.h:717:5: note:   template argument deduction/substitution failed:
    In file included from C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
                     from C:/Users/alexa/Desktop/YMVD/headers/imfilebrowser.h:6,
                     from C:\Users\alexa\Desktop\YMVD\sources\window.cpp:234:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:60: note:   'std::filesystem::__cxx11::path' is not derived from 'const std::unique_ptr<_Tp, _Dp 
    '
        || (__p.has_root_name() && __p.root_name() != root_name()))
                                                                ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h: At global scope:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:511:18: error: specialization of 'std::filesystem::__cxx11::path::__is_encoded_char<wchar_t>' after instantiation
         struct path::__is_encoded_char<wchar_t> : std::true_type
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h: In function 'decltype (std::filesystem::__cxx11::path(__source, std::locale::classic())) std::filesystem::__cxx11::u8path(const _Source&)':
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:589:68: error: no matching function for call to 'u8path(std::__cxx11::basic_string<char>::const_iterator, std::__cxx11::basic_string<char>::const_iterator)'
           return std::filesystem::u8path(__u8str.begin(), __u8str.end());
                                                                        ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:584:5: note: candidate: 'template<class _Source> decltype (std::filesystem::__cxx11::path(__source, std::locale::classic())) std::filesystem::__cxx11::u8path(const _Source&)'
         u8path(const _Source& __source)
         ^~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:584:5: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:589:68: note:   candidate expects 1 argument, 2 provided
           return std::filesystem::u8path(__u8str.begin(), __u8str.end());
                                                                        ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h: In function 'decltype (std::filesystem::__cxx11::path(__first, __last, std::locale::classic())) std::filesystem::__cxx11::u8path(_InputIterator, _InputIterator)':
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:601:20: error: 'value_type' was not declared in this scope
           codecvt_utf8<value_type> __cvt;
                        ^~~~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:601:20: note: suggested alternative: 'false_type'
           codecvt_utf8<value_type> __cvt;
                        ^~~~~~~~~~
                        false_type
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:601:30: error: template argument 1 is invalid
           codecvt_utf8<value_type> __cvt;
                                  ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:602:7: error: 'string_type' was not declared in this scope
           string_type __tmp;
           ^~~~~~~~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:602:7: note: suggested alternative: 'string_view'
           string_type __tmp;
           ^~~~~~~~~~~
           string_view
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:603:45: error: '__tmp' was not declared in this scope
           if (__str_codecvt_in(__first, __last, __tmp, __cvt))
                                                 ^~~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:603:45: note: suggested alternative: 'rmtmp'
           if (__str_codecvt_in(__first, __last, __tmp, __cvt))
                                                 ^~~~~
                                                 rmtmp
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h: In member function 'int std::filesystem::__cxx11::path::compare(const string_type&) const':
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1014:72: error: no matching function for call to 'std::filesystem::__cxx11::path::path(const string_type&)'
       path::compare(const string_type& __s) const { return compare(path(__s)); }
                                                                            ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:402:5: note: candidate: 'std::filesystem::__cxx11::path::path(std::filesystem::__cxx11::path::string_type, std::filesystem::__cxx11::path::_Type)'
         path(string_type __str, _Type __type) : _M_pathname(__str), _M_type(__type)
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:402:5: note:   candidate expects 2 arguments, 1 provided
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:202:7: note: candidate: 'template<class _InputIterator, class _Require, class _Require2> std::filesystem::__cxx11::path::path(_InputIterator, _InputIterator, const std::locale&, std::filesystem::__cxx11::path::format)'
           path(_InputIterator __first, _InputIterator __last, const locale& __loc,
           ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:202:7: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1014:72: note:   candidate expects 4 arguments, 1 provided
       path::compare(const string_type& __s) const { return compare(path(__s)); }
                                                                            ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:194:7: note: candidate: 'template<class _Source, class _Require, class _Require2> std::filesystem::__cxx11::path::path(const _Source&, const std::locale&, std::filesystem::__cxx11::path::format)'
           path(_Source const& __source, const locale& __loc, format = auto_format)
           ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:194:7: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1014:72: note:   candidate expects 3 arguments, 1 provided
       path::compare(const string_type& __s) const { return compare(path(__s)); }
                                                                            ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:187:7: note: candidate: 'template<class _InputIterator, class _Require> std::filesystem::__cxx11::path::path(_InputIterator, _InputIterator, std::filesystem::__cxx11::path::format)'
           path(_InputIterator __first, _InputIterator __last, format = auto_format)
           ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:187:7: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1014:72: note:   candidate expects 3 arguments, 1 provided
       path::compare(const string_type& __s) const { return compare(path(__s)); }
                                                                            ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:180:7: note: candidate: 'template<class _Source, class _Require> std::filesystem::__cxx11::path::path(const _Source&, std::filesystem::__cxx11::path::format)'
           path(_Source const& __source, format = auto_format)
           ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:180:7: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:174:5: note: candidate: 'std::filesystem::__cxx11::path::path(std::filesystem::__cxx11::path::string_type&&, std::filesystem::__cxx11::path::format)' <near match>
         path(string_type&& __source, format = auto_format)
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:174:5: note:   conversion of argument 1 would be ill-formed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1014:69: error: cannot bind rvalue reference of type 'std::filesystem::__cxx11::path::string_type&&' 
    {aka 'std::__cxx11::basic_string<wchar_t>&&'} to lvalue of type 'const string_type' {aka 'const std::__cxx11::basic_string<wchar_t>'}
       path::compare(const string_type& __s) const { return compare(path(__s)); }
                                                                         ^~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:167:5: note: candidate: 'std::filesystem::__cxx11::path::path(std::filesystem::__cxx11::path&&)'     
         path(path&& __p) noexcept
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:167:5: note:   no known conversion for argument 1 from 'const string_type' {aka 'const std::__cxx11::basic_string<wchar_t>'} to 'std::filesystem::__cxx11::path&&'
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:165:5: note: candidate: 'std::filesystem::__cxx11::path::path(const std::filesystem::__cxx11::path&)'     path(const path& __p) = default;
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:165:5: note:   no known conversion for argument 1 from 'const string_type' {aka 'const std::__cxx11::basic_string<wchar_t>'} to 'const std::filesystem::__cxx11::path&'
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:163:5: note: candidate: 'std::filesystem::__cxx11::path::path()'
         path() noexcept { }
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:163:5: note:   candidate expects 0 arguments, 1 provided
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h: In member function 'int std::filesystem::__cxx11::path::compare(std::basic_string_view<wchar_t>) const':
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1021:28: error: no matching function for call to 'std::filesystem::__cxx11::path::path(std::basic_string_view<wchar_t>&)'
       { return compare(path(__s)); }
                                ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:402:5: note: candidate: 'std::filesystem::__cxx11::path::path(std::filesystem::__cxx11::path::string_type, std::filesystem::__cxx11::path::_Type)'
         path(string_type __str, _Type __type) : _M_pathname(__str), _M_type(__type)
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:402:5: note:   candidate expects 2 arguments, 1 provided
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:202:7: note: candidate: 'template<class _InputIterator, class _Require, class _Require2> std::filesystem::__cxx11::path::path(_InputIterator, _InputIterator, const std::locale&, std::filesystem::__cxx11::path::format)'
           path(_InputIterator __first, _InputIterator __last, const locale& __loc,
           ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:202:7: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1021:28: note:   candidate expects 4 arguments, 1 provided
       { return compare(path(__s)); }
                                ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:194:7: note: candidate: 'template<class _Source, class _Require, class _Require2> std::filesystem::__cxx11::path::path(const _Source&, const std::locale&, std::filesystem::__cxx11::path::format)'
           path(_Source const& __source, const locale& __loc, format = auto_format)
           ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:194:7: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1021:28: note:   candidate expects 3 arguments, 1 provided
       { return compare(path(__s)); }
                                ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:187:7: note: candidate: 'template<class _InputIterator, class _Require> std::filesystem::__cxx11::path::path(_InputIterator, _InputIterator, std::filesystem::__cxx11::path::format)'
           path(_InputIterator __first, _InputIterator __last, format = auto_format)
           ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:187:7: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:1021:28: note:   candidate expects 3 arguments, 1 provided
       { return compare(path(__s)); }
                                ^
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:180:7: note: candidate: 'template<class _Source, class _Require> std::filesystem::__cxx11::path::path(const _Source&, std::filesystem::__cxx11::path::format)'
           path(_Source const& __source, format = auto_format)
           ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:180:7: note:   template argument deduction/substitution failed:
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:174:5: note: candidate: 'std::filesystem::__cxx11::path::path(std::filesystem::__cxx11::path::string_type&&, std::filesystem::__cxx11::path::format)'
         path(string_type&& __source, format = auto_format)
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:174:5: note:   no known conversion for argument 1 from 'std::basic_string_view<wchar_t>' to 'std::filesystem::__cxx11::path::string_type&&' {aka 'std::__cxx11::basic_string<wchar_t>&&'}
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:167:5: note: candidate: 'std::filesystem::__cxx11::path::path(std::filesystem::__cxx11::path&&)'     
         path(path&& __p) noexcept
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:167:5: note:   no known conversion for argument 1 from 'std::basic_string_view<wchar_t>' to 'std::filesystem::__cxx11::path&&'
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:165:5: note: candidate: 'std::filesystem::__cxx11::path::path(const std::filesystem::__cxx11::path&)'     path(const path& __p) = default;
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:165:5: note:   no known conversion for argument 1 from 'std::basic_string_view<wchar_t>' to 'const std::filesystem::__cxx11::path&'
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:163:5: note: candidate: 'std::filesystem::__cxx11::path::path()'
         path() noexcept { }
         ^~~~
    C:/PROGRA~1/mingw-w64/x86_64-8.1.0-win32-seh-rt_v6-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:163:5: note:   candidate expects 0 arguments, 1 provided
    make[2]: *** [CMakeFiles\YMVD.dir\build.make:211: CMakeFiles/YMVD.dir/sources/window.cpp.obj] Error 1
    make[1]: *** [CMakeFiles\Makefile2:82: CMakeFiles/YMVD.dir/all] Error 2
    make: *** [Makefile:90: all] Error 2
    
    opened by CaptainHandyman 4
  • Double-click file selection

    Double-click file selection

    Hi, nice filebrowser! For single file selection it would be nice to be able to double click a file to open it.

    An incomplete solution is doing something like

    if (IsItemClicked(0) && IsMouseDoubleClicked(0)) {
        if(rsc.isDir)
        {
            setNewPwd = true;
            newPwd = (rsc.name != "..") ? (pwd_ / rsc.name) :
                                        pwd_.parent_path();
        } else if (selected && !(flags_ & ImGuiFileBrowserFlags_SelectDirectory)) { // double click on file
            ok_ = true;
            CloseCurrentPopup();
        }
    }
    

    but that only works for double-clicking a non-selected file. Double-clicking an already selected file deselect and forgets the file with the first click.

    opened by Getshi 3
  • No mapping for the Unicode character

    No mapping for the Unicode character

    Sup, i have a small problem, every time i try to go to "AppData\Local" i get a "No mapping for the Unicode character exists in the target..." I was trying to find a solution for like 3 hours before but i didn't figure out anything.

    opened by Friendlyman66 3
  • Mouse position bug on multiple monitors

    Mouse position bug on multiple monitors

    It seems like if you use this library on a pc with multiple monitors with different resolutions the mouse position is not correct on the other display. I don't know if this bus is specific to this library or to ImGui.

    image

    opened by meemknight 2
  • File browser turns gray instead of background with recent ImGui version.

    File browser turns gray instead of background with recent ImGui version.

    Hi, first of: I love your work!

    I recently updated the ImGui files in my project to the newest version. This seems to have broken the "gray turning" (not sure what this is called in ImGui-slang). Instead of the background, the file browser turns gray. This seems to be only a visual bug.

    This is a screenshot of your "Getting Started"-Example code, with the old ImGui-files (v1.67): screenshot-1

    And this is a screenshot of the same code, but using the most recent ImGui (v1.88): screenshot-2

    I'm having the same issue on Mac and Windows. Do you know what the reason for this could be? Thank you. <3

    opened by Centicus1000 2
  • 请问怎么才能设置成多选

    请问怎么才能设置成多选

    请问怎么设置成多选。这是为写的代码,但是失败了 if (show_upload_images_window){ fileDialog.Open();

            fileDialog.Display();
            if(fileDialog.HasSelected())
            {
               
                fileDialog.GetMultiSelected();
                fileDialog.Close();
            }
            
        }
    
    opened by 168762321 2
  • Which compiler should I use to compile this library?

    Which compiler should I use to compile this library?

    Which compiler should I use to compile this library: Visual C++ or GCC?

    Look at this code:

    #include "headers/imfilebrowser.h"
    
    #include <glad/glad.h>
    #include <GLFW/glfw3.h>
    #include <glm/glm.hpp>
    #include <imgui.h>
    #include <imgui_impl_glfw.h>
    #include <imgui_impl_opengl3.h>
    #include <bits/stdc++.h>
    using namespace std;
    
    GLFWwindow *window = NULL;
    
    ImGui::FileBrowser fileBrowser;
    
    int main(int argc, char **argv) {
    	glfwInit();
    
    	glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
    	glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
    	glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
    
    	window = glfwCreateWindow(800, 600, "File browser", NULL, NULL);
    
    	glfwSetWindowPos(window, (1920 / 2) - 400, (1080 / 2) - 300);
    
    	glfwSwapInterval(GLFW_TRUE);
    
    	glfwMakeContextCurrent(window);
    
    	gladLoadGLLoader((GLADloadproc)glfwGetProcAddress);
    
    	IMGUI_CHECKVERSION();
    	ImGui::CreateContext();
    	ImGuiIO &io = ImGui::GetIO();
    	(void)io;
    
    	io.IniFilename = NULL;
    
    	ImGui_ImplGlfw_InitForOpenGL(window, true);
    	ImGui_ImplOpenGL3_Init();
    
    	do {
    		glfwPollEvents();
    
    		ImGui_ImplOpenGL3_NewFrame();
    		ImGui_ImplGlfw_NewFrame();
    		ImGui::NewFrame();
    
    		ImGui::Render();
    
    		glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
    		glClear(GL_COLOR_BUFFER_BIT);
    
    		ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData());
    
    		glfwSwapBuffers(window);
    	} while (!glfwWindowShouldClose(window));
    
    	ImGui_ImplOpenGL3_Shutdown();
    	ImGui_ImplGlfw_Shutdown();
    	ImGui::DestroyContext();
    
    	glfwDestroyWindow(window);
    
    	glfwTerminate();
    }
    
    ImGui::FileBrowser fileBrowser;
    

    If you remove this line, the program will start, and if you leave it, the program will not respond at all and will not start, without any error.

    What can I do in this situation?

    I compiled this code with MinGW.

    opened by CaptainHandyman 2
  • Missing some extensions when using SetTypeFilters()

    Missing some extensions when using SetTypeFilters()

    When I try to use SetTypeFilters() like this

        fileDialog.SetTypeFilters({ ".*", ".dds" });
    

    And make filter combobox to ",*". Then I'll get this image

    But I think it should be image (2 hdr file missed.)

    So I switched location of these two code segments

        // all type filters
        if(typeFilters_.size() > 1 && typeFilterIndex_ == 0)
        {
            for(size_t i = 1; i < typeFilters_.size(); ++i)
            {
                if(extension == typeFilters_[i])
                    return true;
            }
            return false;
        }
    
        // universal filter
        if(typeFilters_[typeFilterIndex_] == std::string_view(".*"))
            return true;
    

    to

        // universal filter
        if(typeFilters_[typeFilterIndex_] == std::string_view(".*"))
            return true;
    
        // all type filters
        if(typeFilters_.size() > 1 && typeFilterIndex_ == 0)
        {
            for(size_t i = 1; i < typeFilters_.size(); ++i)
            {
                if(extension == typeFilters_[i])
                    return true;
            }
            return false;
        }
    

    And it will be fixed... image

    It's good for me. But I'm not sure will this cause any other problems...

    opened by moso31 2
  • Capitalized extensions are ignored

    Capitalized extensions are ignored

    For example if a file has the extension .TXT. Calling SetTypeFilters({".txt", ".TXT"}), won't show any files with capitalized extensions.

    opened by MonJamp 2
  • Flags are not modifiable after construction

    Flags are not modifiable after construction

    Title says it all. I am wondering why there is no ImGui::FileBrowser::GetFlags() function or a ImGui::FileBrowser::SetFlags(ImGuiFileBrowserFlags flags) function? Instead it can only be done upon construction of the browser object.

    For my case I want to be able to save and load things and when saving I want to enable the entering of a file name and when loading I do not. To do so should I be creating a different file browser for each?

    opened by cianjinks 2
  • Read access violation when setting type filters on release

    Read access violation when setting type filters on release

    Can't seem to replicate consistently, But when using the file browser I will sometimes get an "Exception thrown at 0x00007FF776436552 in ProjectName.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFF8."

    the call stack shows that this is caused by SetTypeFilter(). Capture (2)

    Also important to note that this only happens in release

    opened by naorliron2 4
  • paths containing

    paths containing "double quotes" are not listed (MINGW64/Wine)

    When I cross-compile for Windows 64bit using MINGW64 and run in Wine on Linux, imgui-filebrowser does not list any paths that have "double quotes" in the name. They are simply missing from the listing. Other paths in the same directory are listed correctly, including those with spaces and/or 'apostrophes'.

    • not a WIne bug (other Windows EXEs not using imgui-filebrowser can list paths with "double quotes")
    • nor a MINGW64 bug (simple command line test program using #include <filesystem> can list paths with "double quotes")
    • problem does not occur in a native Linux build (my host OS is Debian Bullseye/testing), the paths with "double quotes" are listed as expected
    • I haven't tested behaviour on real Microsoft Windows (I don't have any such machine).
    $ wine --version
    wine-5.0.2
    
    $ x86_64-w64-mingw32-g++ --version
    x86_64-w64-mingw32-g++ (GCC) 10-win32 20200525
    Copyright (C) 2020 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    opened by claudeha 2
Owner
Z Guan
Student
Z Guan
Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

Dear ImGui (This library is available under a free and permissive license, but needs financial support to sustain its continued improvements. In addit

omar 44.5k Jan 7, 2023
Advanced 2D Plotting for Dear ImGui

ImPlot ImPlot is an immediate mode, GPU accelerated plotting library for Dear ImGui. It aims to provide a first-class API that ImGui fans will love. I

Evan Pezent 2.9k Jan 9, 2023
Real-time GUI layout creator/editor for Dear ImGui

ImStudio Real-time GUI layout creator/editor for Dear ImGui Inspired by Code-Building/ImGuiBuilder Features Drag edit Property edit Covers most of the

null 303 Jan 9, 2023
Dear ImGui prototyping wrapper.

LabImGui Prototyping framework LabImGui wraps up creating a window, GL bindings, and a full screen docking set up with ImGui so that all of the boiler

Nick Porcino 1 Dec 5, 2022
An integrated information center created with dear ImGui using modern C++ design / coding style.

ImGui info-center Introduction An integrated notification and information center created with dear ImGui. Interfaces and variables are designed under

Feej 7 Oct 29, 2022
Addon widgets for GUI library Dear ImGui.

ImGui-Addons Addon widgets for GUI library Dear ImGui. File Dialog A simple cross-platform file dialog that uses dirent interface for reading director

null 286 Jan 7, 2023
This is a software renderer for Dear ImGui. I built it not out of a specific need, but because it was fun

Dear ImGui software renderer This is a software renderer for Dear ImGui. I built it not out of a specific need, but because it was fun. The goal was t

Emil Ernerfeldt 214 Dec 22, 2022
Immediate mode 3D gizmo for scene editing and other controls based on Dear Imgui

ImGuizmo Latest stable tagged version is 1.83. Current master version is 1.84 WIP. What started with the gizmo is now a collection of dear imgui widge

Cedric Guillemet 2.3k Dec 27, 2022
This is a thin c-api wrapper programmatically generated for the excellent C++ immediate mode gui Dear ImGui.

cimgui This is a thin c-api wrapper programmatically generated for the excellent C++ immediate mode gui Dear ImGui. All imgui.h functions are programm

Victor Bombi 22 Jul 5, 2021
Nice things to use along dear imgui

Mini hexadecimal editor! Right-click for option menu. Features: Keyboard controls. Read-only mode. Optional Ascii display. Optional HexII display. Goto address. Highlight range/function. Read/Write handlers.

omar 664 Jan 1, 2023
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

Thibault Hennequin 715 Dec 20, 2022
Sample Unreal Engine 5.0.1 C++ Project That Incorporates Dear ImGui

UE5 With Dear ImGui A sample Unreal Engine 5.0.1 C++ project that incorporates the Dear ImGui graphical user interface library. YouTube Tutorial This

Kyle Geske 36 Dec 25, 2022
The required packages to build the control GUI for Ohmnibot

ohmni-ros-gui The required packages to build the control GUI for Ohmnibot These packages alow us to perfrom certain tasks on OHmnibot: Prequisite sett

Phoenix Ly 1 Jan 2, 2022
Simple ImGui external base. Uses ImGui DX9.

ImGui External Base ??️ What is this? ⚡ Hello all! I used to use noteffex's loader base for all my external ImGui projects. I got bored of using this

Alfie 11 Jun 29, 2022
An addon of imgui for supporting docks in the imgui's window

An addon of imgui for support dock in the window

BB 207 Nov 29, 2022
An implementation of node editor with ImGui-like API.

Node Editor in ImGui About An implementation of node editor with ImGui-like API. Project purpose is to serve as a basis for more complex solutions lik

Michał Cichoń 2.4k Jan 9, 2023
glw_imgui - C++ IMGUI implementation

glw_imgui - C++ IMGUI implementation Immediate Mode UI C++ implementation. IMGUI is a code-driven, simple and bloat-free GUI system, widely used in mo

null 51 Feb 8, 2022
✔️The smallest header-only GUI library(4 KLOC) for all platforms

Welcome to GUI-lite The smallest header-only GUI library (4 KLOC) for all platforms. 中文 Lightweight ✂️ Small: 4,000+ lines of C++ code, zero dependenc

null 6.6k Jan 8, 2023
Windows GUI version of the age file encryption tool (built on rage, the Rust implementation)

Windows GUI version of the age file encryption tool (built on rage, the Rust implementation)

Theron Spiegl 42 Dec 21, 2022