Removed style selection

Set charcoal to default style
Tweeked styles
master
Joey Pollack 3 years ago
parent 0da94313d2
commit ed6fdbdb5b

@ -77,6 +77,93 @@ namespace lunarium
ImGui::PopID(); ImGui::PopID();
} }
void ImGuiExt::Vec2Control(const std::string& label, glm::vec3& values, float resetValue, float columnWidth)
{
ImGui::PushID(label.c_str());
ImGui::Columns(2);
ImGui::SetColumnWidth(0, columnWidth);
ImGui::Text(label.c_str());
ImGui::NextColumn();
ImGui::PushMultiItemsWidths(3, ImGui::CalcItemWidth());
ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2{ 0, 0 });
float lineHeight = GImGui->Font->FontSize + GImGui->Style.FramePadding.y * 2.0f;
ImVec2 buttonSize = { lineHeight + 3.0f, lineHeight };
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4{ 0.8f, 0.1f, 0.15f, 1.0f });
ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4{ 0.9f, 0.2f, 0.2f, 1.0f });
ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4{ 0.8f, 0.1f, 0.15f, 1.0f });
//ImGui::PushFont(boldFont);
if (ImGui::Button("X", buttonSize))
values.x = resetValue;
//ImGui::PopFont();
ImGui::PopStyleColor(3);
ImGui::SameLine();
ImGui::DragFloat("##X", &values.x, 0.1f, 0.0f, 0.0f, "%.2f");
ImGui::PopItemWidth();
ImGui::SameLine();
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4{ 0.2f, 0.7f, 0.2f, 1.0f });
ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4{ 0.3f, 0.8f, 0.3f, 1.0f });
ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4{ 0.2f, 0.7f, 0.2f, 1.0f });
//ImGui::PushFont(boldFont);
if (ImGui::Button("Y", buttonSize))
values.y = resetValue;
//ImGui::PopFont();
ImGui::PopStyleColor(3);
ImGui::SameLine();
ImGui::DragFloat("##Y", &values.y, 0.1f, 0.0f, 0.0f, "%.2f");
ImGui::PopItemWidth();
ImGui::PopStyleVar();
ImGui::Columns(1);
ImGui::PopID();
}
void ImGuiExt::FloatControl(const std::string& label, float& value, float resetValue, float columnWidth)
{
ImGui::PushID(label.c_str());
ImGui::Columns(2);
ImGui::SetColumnWidth(0, columnWidth);
ImGui::Text(label.c_str());
ImGui::NextColumn();
ImGui::PushMultiItemsWidths(3, ImGui::CalcItemWidth());
ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2{ 0, 0 });
float lineHeight = GImGui->Font->FontSize + GImGui->Style.FramePadding.y * 2.0f;
ImVec2 buttonSize = { lineHeight + 3.0f, lineHeight };
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4{ 0.8f, 0.1f, 0.15f, 1.0f });
ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4{ 0.9f, 0.2f, 0.2f, 1.0f });
ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4{ 0.8f, 0.1f, 0.15f, 1.0f });
//ImGui::PushFont(boldFont);
if (ImGui::Button("R", buttonSize))
value = resetValue;
//ImGui::PopFont();
ImGui::PopStyleColor(3);
ImGui::SameLine();
ImGui::DragFloat("##X", &value, 0.1f, 0.0f, 0.0f, "%.2f");
ImGui::PopItemWidth();
ImGui::PopStyleVar();
ImGui::Columns(1);
ImGui::PopID();
}
/// Only works if this is the only item on the line /// Only works if this is the only item on the line
void ImGuiExt::TextCentered(const std::string text) void ImGuiExt::TextCentered(const std::string text)

@ -22,6 +22,8 @@ namespace lunarium
/// This function was taken from the Hazel engine written by Cherno! /// This function was taken from the Hazel engine written by Cherno!
/// https://github.com/TheCherno/Hazel/blob/master/Hazelnut/src/Panels/SceneHierarchyPanel.cpp /// https://github.com/TheCherno/Hazel/blob/master/Hazelnut/src/Panels/SceneHierarchyPanel.cpp
static void Vec3Control(const std::string& label, glm::vec3& values, float resetValue = 0.0f, float columnWidth = 100.0f); static void Vec3Control(const std::string& label, glm::vec3& values, float resetValue = 0.0f, float columnWidth = 100.0f);
static void Vec2Control(const std::string& label, glm::vec3& values, float resetValue = 0.0f, float columnWidth = 100.0f);
static void FloatControl(const std::string& label, float& values, float resetValue = 0.0f, float columnWidth = 100.0f);
static void TextCentered(const std::string text); static void TextCentered(const std::string text);
static bool ButtonCentered(const char* label, float alignment = 0.5f); static bool ButtonCentered(const char* label, float alignment = 0.5f);
}; };

@ -22,7 +22,8 @@ namespace lunarium { namespace editor
{ {
ImVec2 top_left(ImGui::GetWindowPos().x, ImGui::GetCursorScreenPos().y - ImGui::GetStyle().FramePadding.y); ImVec2 top_left(ImGui::GetWindowPos().x, ImGui::GetCursorScreenPos().y - ImGui::GetStyle().FramePadding.y);
ImVec2 bot_right(top_left.x + ImGui::GetWindowSize().x, ImGui::GetCursorScreenPos().y + ImGui::GetFrameHeight()); ImVec2 bot_right(top_left.x + ImGui::GetWindowSize().x, ImGui::GetCursorScreenPos().y + ImGui::GetFrameHeight());
ImU32 color = ImGui::ColorConvertFloat4ToU32(ImVec4(0.1f, 0.3f, 0.8f, 1.0f)); //ImU32 color = ImGui::ColorConvertFloat4ToU32(ImVec4(0.1f, 0.3f, 0.8f, 1.0f));
ImU32 color = ImGui::ColorConvertFloat4ToU32(ImVec4(0.3f, 0.3f, 0.3f, 1.0f));
ImGui::GetWindowDrawList()->AddRectFilled(top_left, bot_right, color); ImGui::GetWindowDrawList()->AddRectFilled(top_left, bot_right, color);
ImGuiExt::TextCentered(title.c_str()); ImGuiExt::TextCentered(title.c_str());
} }
@ -47,12 +48,15 @@ namespace lunarium { namespace editor
/// https://github.com/TheCherno/Hazel/blob/master/Hazelnut/src/Panels/SceneHierarchyPanel.cpp /// https://github.com/TheCherno/Hazel/blob/master/Hazelnut/src/Panels/SceneHierarchyPanel.cpp
void CompGui::RenderTransformComp(TransformComponent& comp) void CompGui::RenderTransformComp(TransformComponent& comp)
{ {
DrawTitle("Tag Component"); ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(ImGui::GetStyle().ItemSpacing.x, ImGui::GetStyle().ItemSpacing.y + 10.0f));
DrawTitle("Transform Component");
ImGui::PopStyleVar();
ImGuiExt::Vec3Control("Translation", comp.Position, 0.0f, 85.0f); ImGuiExt::Vec2Control("Translation", comp.Position, 0.0f, 85.0f);
glm::vec3 rotation = glm::degrees(comp.Rotation); glm::vec3 rotation = glm::degrees(comp.Rotation);
ImGuiExt::Vec3Control("Rotation", rotation, 0.0f, 85.0f); //ImGuiExt::Vec3Control("Rotation", rotation, 0.0f, 85.0f);
ImGuiExt::FloatControl("Rotation", rotation.z, 0.0f, 85.0f);
comp.Rotation = glm::radians(rotation); comp.Rotation = glm::radians(rotation);
ImGuiExt::Vec3Control("Scale", comp.Scale, 1.0f, 85.0f); ImGuiExt::Vec2Control("Scale", comp.Scale, 1.0f, 85.0f);
} }
}} }}

@ -58,6 +58,7 @@ namespace editor
DataManager::Initialize(); DataManager::Initialize();
ImGui::GetIO().ConfigWindowsMoveFromTitleBarOnly = true; ImGui::GetIO().ConfigWindowsMoveFromTitleBarOnly = true;
GUI::GetInstance().SetStyle(GuiStyle::STYLE_CHARCOAL);
// Init editor panels // Init editor panels
mAboutPanel.SetOpen(false); mAboutPanel.SetOpen(false);
@ -284,62 +285,62 @@ namespace editor
if (ImGui::BeginMenu("View")) if (ImGui::BeginMenu("View"))
{ {
if (ImGui::BeginMenu("Styles")) // if (ImGui::BeginMenu("Styles"))
{ // {
if (ImGui::MenuItem("Classic")) // if (ImGui::MenuItem("Classic"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_DEFAULT_CLASSIC); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_DEFAULT_CLASSIC);
} // }
if (ImGui::MenuItem("Default Dark")) // if (ImGui::MenuItem("Default Dark"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_DEFAULT_DARK); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_DEFAULT_DARK);
} // }
if (ImGui::MenuItem("Default Light")) // if (ImGui::MenuItem("Default Light"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_DEFAULT_LIGHT); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_DEFAULT_LIGHT);
} // }
ImGui::Separator(); // ImGui::Separator();
if (ImGui::MenuItem("Deep Dark")) // if (ImGui::MenuItem("Deep Dark"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_DEEP_DARK); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_DEEP_DARK);
} // }
if (ImGui::MenuItem("Red Dark")) // if (ImGui::MenuItem("Red Dark"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_RED_DARK); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_RED_DARK);
} // }
if (ImGui::MenuItem("Green Blue")) // if (ImGui::MenuItem("Green Blue"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_GREEN_BLUE); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_GREEN_BLUE);
} // }
if (ImGui::MenuItem("OverShifted Dark")) // if (ImGui::MenuItem("OverShifted Dark"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_OVERSHIFTED_DARK); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_OVERSHIFTED_DARK);
} // }
if (ImGui::MenuItem("Charcoal")) // if (ImGui::MenuItem("Charcoal"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_CHARCOAL); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_CHARCOAL);
} // }
if (ImGui::MenuItem("Corporate Gray")) // if (ImGui::MenuItem("Corporate Gray"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_CORPORATE_GRAY); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_CORPORATE_GRAY);
} // }
if (ImGui::MenuItem("Corporate Gray 3D")) // if (ImGui::MenuItem("Corporate Gray 3D"))
{ // {
GUI::GetInstance().SetStyle(GuiStyle::STYLE_CORPORATE_GRAY_3D); // GUI::GetInstance().SetStyle(GuiStyle::STYLE_CORPORATE_GRAY_3D);
} // }
ImGui::EndMenu(); // ImGui::EndMenu();
} // }
ImGui::EndMenu(); ImGui::EndMenu();
} }

Loading…
Cancel
Save