Reorganized source files

Gui_Panel_Refactor
Joeyrp 4 years ago
parent 7ca93ababf
commit a0584b652c

@ -29,16 +29,15 @@ set(LUNARIUM_SRC
"src/core/version.cpp"
"src/core/iRunMode.cpp"
"src/window/window.cpp"
"src/tester/tester.cpp"
"src/graphics/opengl/glGraphics.cpp"
"src/graphics/opengl/glText.cpp"
"src/graphics/opengl/glShader.cpp"
"src/graphics/internalFont.cpp"
"src/input/keyboard.cpp"
"src/input/inputManager.cpp"
"src/graphics/gui/gui.cpp"
"src/graphics/gui/logGui.cpp"
"src/graphics/gui/luaConsole.cpp"
"src/gui/gui.cpp"
"src/gui/logGui.cpp"
"src/gui/luaConsole.cpp"
"src/scripting/scriptManager.cpp"
"src/scripting/coreAPI.cpp"
)
@ -93,13 +92,13 @@ add_subdirectory(external/glad/src)
add_subdirectory(external/glm)
# add dearimgui
add_subdirectory(src/graphics/dearimgui)
add_subdirectory(src/internal_libs/dearimgui)
# add utils
add_subdirectory(src/utils)
add_subdirectory(src/internal_libs/utils)
# add assets
add_subdirectory(src/assets)
add_subdirectory(src/internal_libs/assets)
# add lua -- https://github.com/walterschell/Lua
add_subdirectory(external/lua)
@ -110,14 +109,18 @@ add_subdirectory(external/pugixml)
# add freetype
add_subdirectory(external/freetype)
# add run mode tester
add_subdirectory(src/run_modes/tester)
target_include_directories(${PROJECT_NAME}
PUBLIC "${PROJECT_BINARY_DIR}"
PUBLIC src
PUBLIC src/internal_libs
PUBLIC external
PUBLIC external/glfw/include
PUBLIC external/glm
PUBLIC external/lua/lua5.4.3/include
PUBLIC src/graphics/dearimgui
PUBLIC src/internal_libs/dearimgui
PUBLIC external/pugixml/src
PUBLIC external/glad/include
PUBLIC external/freetype/include
@ -126,15 +129,18 @@ target_include_directories(${PROJECT_NAME}
target_link_directories(${PROJECT_NAME}
PRIVATE external/glfw/src
PRIVATE external/glm
PRIVATE src/graphics/dearimgui
PRIVATE src/utils
PRIVATE src/assets
PRIVATE src/internal_libs/dearimgui
PRIVATE src/internal_libs/utils
PRIVATE src/internal_libs/assets
PRIVATE src/run_modes/tester
PRIVATE external/glad/src
PRIVATE external/freetype/src
)
target_link_libraries(${PROJECT_NAME} glfw glad glm dearimgui utils assets lua_static pugixml freetype tester)
if(WIN32)
target_link_libraries(${PROJECT_NAME} opengl32.lib glfw glad glm dearimgui utils assets lua_static pugixml freetype)
target_link_libraries(${PROJECT_NAME} opengl32.lib)
elseif(UNIX)
target_link_libraries(${PROJECT_NAME} X11 GL glfw glad glm dearimgui utils assets lua_static pugixml freetype)
target_link_libraries(${PROJECT_NAME} X11 GL)
endif()

@ -13,15 +13,15 @@
#include <LunariumConfig.h>
// Run modes
#include <tester/tester.h>
#include <run_modes/tester/tester.h>
// Sub Systems
#include <window/window.h>
#include <input/inputManager.h>
#include <graphics/opengl/glGraphics.h>
#include <graphics/gui/gui.h>
#include <graphics/gui/logGui.h>
#include <graphics/gui/luaConsole.h>
#include <gui/gui.h>
#include <gui/logGui.h>
#include <gui/luaConsole.h>
#include <scripting/scriptManager.h>
#include <scripting/coreAPI.h>
@ -166,15 +166,15 @@ namespace lunarium
if (Failed(result))
{
Logger::Log(LogCategory::CORE, LogLevel::FATAL_ERROR,
"Could not initialize the Window system: %s", result.Description);
"Could not initialize the Window system: %s", result.Description.c_str());
return;
}
if (Renderer::OPENGL == mState.Display.RenderFramework)
if (RenderSystem::OPENGL == mState.Display.Renderer)
{
mpGraphics = new OglGraphics;
}
else if (Renderer::VULKAN == mState.Display.RenderFramework)
else if (RenderSystem::VULKAN == mState.Display.Renderer)
{
Logger::Log(LogCategory::CORE, LogLevel::FATAL_ERROR,
"Can not create Vulkan graphics system because it is not yet implemented. Must use OpenGL instead.");

@ -19,7 +19,7 @@ namespace lunarium
s.DataDirectory = "";
s.Display.FullScreenResolution.Width = 0;
s.Display.FullScreenResolution.Height = 0;
s.Display.RenderFramework = Renderer::OPENGL;
s.Display.Renderer = RenderSystem::OPENGL;
s.Display.IsFullScreen = false;
s.Display.VSyncEnabled = false;
s.Display.WindowedSize.Width = 0;
@ -40,7 +40,7 @@ namespace lunarium
Sizei size = System::GetScreenResolution();
s.Display.FullScreenResolution.Width = size.Width;
s.Display.FullScreenResolution.Height = size.Height;
s.Display.RenderFramework = Renderer::OPENGL;
s.Display.Renderer = RenderSystem::OPENGL;
s.Display.IsFullScreen = false;
s.Display.VSyncEnabled = true;
s.Display.WindowedSize.Width = 800;
@ -102,7 +102,7 @@ namespace lunarium
Sizei size = System::GetScreenResolution();
state.Display.FullScreenResolution.Width = size.Width;
state.Display.FullScreenResolution.Height = size.Height;
state.Display.RenderFramework = Renderer::OPENGL;
state.Display.Renderer = RenderSystem::OPENGL;
state.Display.IsFullScreen = false;
state.Display.VSyncEnabled = true;
state.Display.WindowedSize.Width = 800;
@ -115,18 +115,18 @@ namespace lunarium
state.Display.FullScreenResolution.Width = display.child("FullScreenResolution").attribute("Width").as_int();
state.Display.FullScreenResolution.Height = display.child("FullScreenResolution").attribute("Height").as_int();
std::string framework = display.attribute("RenderFramework").as_string();
if (String::StringToLower(framework) == "opengl")
std::string renderer = display.attribute("Renderer").as_string();
if (String::StringToLower(renderer) == "opengl")
{
state.Display.RenderFramework = Renderer::OPENGL;
state.Display.Renderer = RenderSystem::OPENGL;
}
else if (String::StringToLower(framework) == "vulkan")
else if (String::StringToLower(renderer) == "vulkan")
{
state.Display.RenderFramework = Renderer::VULKAN;
state.Display.Renderer = RenderSystem::VULKAN;
}
else
{
state.Display.RenderFramework = Renderer::UNKNOWN;
state.Display.Renderer = RenderSystem::UNKNOWN;
}
state.Display.IsFullScreen = display.attribute("IsFullScreen").as_bool();
@ -170,7 +170,7 @@ namespace lunarium
display.append_attribute("VSyncEnabled").set_value(Display.VSyncEnabled);
const char* names[] = { "opengl", "vulkan", "unknown" };
display.append_attribute("RenderFramework").set_value(names[Display.RenderFramework]);
display.append_attribute("Renderer").set_value(names[Display.Renderer]);
pugi::xml_node fsr = display.append_child("FullScreenResolution");
fsr.append_attribute("Width").set_value(Display.FullScreenResolution.Width);

@ -21,7 +21,7 @@ namespace lunarium
MODE_TEST
};
enum Renderer
enum RenderSystem
{
OPENGL,
VULKAN,
@ -52,7 +52,7 @@ namespace lunarium
int Height;
} FullScreenResolution;
Renderer RenderFramework;
RenderSystem Renderer;
bool IsFullScreen;
bool VSyncEnabled;
} Display;

@ -129,6 +129,12 @@ namespace lunarium
ImVec4 color(1.0f, 1.0f, 1.0f, 1.0f);
if (mMsgHistory[i].find("[LUA]") != std::string::npos)
{
color = ImVec4(0.25f, 0.5f, 0.95f, 1.0f);
}
if (mMsgHistory[i].find("WARNING") != std::string::npos)
{
color = ImVec4(0.75f, 0.75f, 0.0f, 1.0f);
@ -139,11 +145,6 @@ namespace lunarium
color = ImVec4(1.0f, 0.0f, 0.0f, 1.0f);
}
if (mMsgHistory[i].find("[LUA]") != std::string::npos)
{
color = ImVec4(0.25f, 0.5f, 0.95f, 1.0f);
}
const char* msg = mMsgHistory[i].c_str();
int len = strlen(msg);

@ -10,7 +10,7 @@
#include <window/window.h>
#include "inputManager.h"
#include <graphics/gui/gui.h>
#include <gui/gui.h>
#include <utils/logger.h>
#include <cstring>

@ -7,5 +7,6 @@ target_link_directories(assets
target_include_directories(assets
PUBLIC ../
PUBLIC ../../external/glm
PUBLIC ../../
PUBLIC ../../../external/glm
)

@ -3,7 +3,5 @@ add_library(utils stb/stb_image_write.cpp stb/stb_image.cpp args.cpp binaryFileB
target_include_directories(utils
PUBLIC "${PROJECT_BINARY_DIR}"
PUBLIC ../../external/glm
PUBLIC ../../../external/glm
)
message( " current source dir: ${CMAKE_CURRENT_SOURCE_DIR}" )

@ -0,0 +1,10 @@
add_library(tester tester.cpp)
target_include_directories(tester
PUBLIC "${PROJECT_BINARY_DIR}"
PUBLIC ../../
PUBLIC ../../internal_libs
PUBLIC ../../../external/glm
PUBLIC ../../../external/glad/include
PUBLIC ../../../external/glfw/include
)

@ -29,12 +29,12 @@ namespace lunarium
return OpRes::Fail("A window is already initialized. Multiple windows is not yet supported");
}
if (state.Display.RenderFramework == Renderer::VULKAN)
if (state.Display.Renderer == RenderSystem::VULKAN)
{
return OpRes::Fail("Render Framework VULKAN is not yet implemented");
}
if (state.Display.RenderFramework == Renderer::OPENGL)
if (state.Display.Renderer == RenderSystem::OPENGL)
{
int width, height;

@ -1,7 +1,7 @@
<State>
<DataDirectory>data/</DataDirectory>
<Mode Type="test" />
<Display RenderFramework="opengl" IsFullScreen="false" VSyncEnabled="true">
<Display Renderer="opengl" IsFullScreen="false" VSyncEnabled="true">
<FullScreenResolution Width="1920" Height="1080" />
<WindowedSize Width="1280" Height="720" />
<WindowStartPosition X="100" Y="100" />

Loading…
Cancel
Save