Something went wrong. Try again.
art software for the rest of us
drawing paint image sdl art
Something went wrong. Try again.
6.0 kB · 139 lines
C++
at master
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139#include "StyleManagmentContext.h"#include "../PrimitivesBuilder/StyleBuilder.h"#include <imgui.h>
std::stack<StyleUsage> StyleManagmentContext::usingStyles;
std::unordered_map<StyleUsage, Style> StyleManagmentContext::Styles = { {BASE, StyleBuilder() .AddStyle(ImGuiStyleVar_FramePadding, ImVec2(8, 4)) .AddStyle(ImGuiStyleVar_FrameRounding, 8) .AddStyle(ImGuiStyleVar_GrabRounding, 6) .AddStyle(ImGuiStyleVar_GrabMinSize, 16) .AddStyle(ImGuiStyleVar_ChildRounding, 8) .AddStyle(ImGuiStyleVar_WindowRounding, 16) .AddStyle(ImGuiStyleVar_PopupRounding, 16) .AddStyle(ImGuiStyleVar_WindowTitleAlign, ImVec2(0.5, 0.5)) .AddStyle(ImGuiStyleVar_FrameBorderSize, 1.0f) .AddColor(ImGuiCol_ModalWindowDimBg, ImVec4(0.0, 0.0, 0.0, 0.5)) .AddColor(ImGuiCol_Button, ImVec4(0.0f, 0.0f, 0.0f, 0.0f)) .AddColor(ImGuiCol_FrameBg, ImVec4(1.0f, 1.0f, 1.0f, 1.0f)) .AddColor(ImGuiCol_ChildBg, ImVec4(1.0f, 1.0f, 1.0f, 1.0f)) .AddColor(ImGuiCol_ButtonActive, ImVec4(0.0f, 1.0f, 0.6f, 1.0f)) .AddColor(ImGuiCol_Header, ImVec4(0.0f, 1.0f, 0.6f, 1.0f)) .AddColor(ImGuiCol_SliderGrabActive, ImVec4(0.0f, 1.0f, 0.6f, 1.0f)) .AddColor(ImGuiCol_HeaderHovered, ImVec4(0.0f, 1.0f, 0.6f, 0.25f)) .AddColor(ImGuiCol_ButtonHovered, ImVec4(0.0f, 1.0f, 0.6f, 0.25f)) .AddColor(ImGuiCol_SliderGrab, ImVec4(0.0f, 1.0f, 0.6f, 0.5f)) .AddColor(ImGuiCol_HeaderActive, ImVec4(0.0f, 0.8f, 0.4f, 1.0f)) .AddColor(ImGuiCol_WindowBg, ImVec4(0.2f, 0.2f, 0.2f, 0.5f)) .AddColor(ImGuiCol_Text, ImVec4(1.0f, 1.0f, 1.0f, 1.0f)) .Build() }, {BASECONTENTS, StyleBuilder() .AddColor(ImGuiCol_Text, ImVec4(0.0f, 0.0f, 0.0f, 1.0f)) .Build() }, {ICONSLIST, StyleBuilder() .AddStyle(ImGuiStyleVar_FramePadding, ImVec2(6, 4)) .AddStyle(ImGuiStyleVar_FrameRounding, 8) .Build() }, {BRUSHLIST, StyleBuilder() .AddStyle(ImGuiStyleVar_FramePadding, ImVec2(0, 0)) .Build() }, {TOOLBAR, StyleBuilder() .AddColor(ImGuiCol_WindowBg, ImVec4(0.2f, 0.2f, 0.2f, 0.5f)) .AddColor(ImGuiCol_Text, ImVec4(1.0f, 1.0f, 1.0f, 1.0f)) .AddColor(ImGuiCol_FrameBg, ImVec4(0.0f, 0.0f, 0.0f, 0.0f)) .AddStyle(ImGuiStyleVar_FramePadding, ImVec2(6.0f, 6.0f)) .AddStyle(ImGuiStyleVar_WindowPadding, ImVec2(8.0f, 8.0f)) .AddStyle(ImGuiStyleVar_ItemSpacing, ImVec2(8.0f, 8.0f)) .AddStyle(ImGuiStyleVar_FrameBorderSize, 1.0f) .Build() }, {NOTIFY, StyleBuilder() .AddColor(ImGuiCol_WindowBg, ImVec4(0.2f, 0.2f, 0.2f, 0.5f)) .AddColor(ImGuiCol_Text, ImVec4(1.0f, 1.0f, 1.0f, 1.0f)) .AddStyle(ImGuiStyleVar_WindowPadding, ImVec2(16.0f, 8.0f)) .AddStyle(ImGuiStyleVar_ItemSpacing, ImVec2(8.0f, 8.0f)) .Build() }, {LAYERMANAGER, StyleBuilder() .AddStyle(ImGuiStyleVar_FramePadding, ImVec2(6.0f, 4.0f)) .AddStyle(ImGuiStyleVar_FrameBorderSize, 1.0f) .AddStyle(ImGuiStyleVar_ItemSpacing, ImVec2(8.0f, 8.0f)) .Build() }, {SELECTED, StyleBuilder() .AddColor(ImGuiCol_Border, ImVec4(0.0f, 1.0f, 0.6f, 1.0f)) .AddColor(ImGuiCol_Button, ImVec4(0.0f, 1.0f, 0.6f, 0.25f)) .Build() }, {POPUP, StyleBuilder() .AddColor(ImGuiCol_PopupBg, ImVec4(0.2f, 0.2f, 0.2f, 0.5f)) .AddColor(ImGuiCol_WindowBg, ImVec4(0.2f, 0.2f, 0.2f, 0.5f)) .AddStyle(ImGuiStyleVar_ItemSpacing, ImVec2(8.0f, 8.0f)) .AddStyle(ImGuiStyleVar_ButtonTextAlign, ImVec2(0.0f, 0.5f)) .AddColor(ImGuiCol_Text, ImVec4(0.0f, 0.0f, 0.0f, 1.0f)) .Build() }, {POPUPINNER, StyleBuilder() .AddStyle(ImGuiStyleVar_ItemSpacing, ImVec2(0.0f, 0.0f)) .AddStyle(ImGuiStyleVar_WindowPadding, ImVec2(0.0f, 0.0f)) .AddStyle(ImGuiStyleVar_ButtonTextAlign, ImVec2(0.0f, 0.5f)) .AddColor(ImGuiCol_Text, ImVec4(0.0f, 0.0f, 0.0f, 1.0f)) .Build() }, {NOBORDER, StyleBuilder() .AddStyle(ImGuiStyleVar_WindowBorderSize, 0.0f) .AddStyle(ImGuiStyleVar_ChildBorderSize, 0.0f) .AddStyle(ImGuiStyleVar_PopupBorderSize, 0.0f) .AddStyle(ImGuiStyleVar_FrameBorderSize, 0.0f) .AddStyle(ImGuiStyleVar_ImageBorderSize, 0.0f) .AddStyle(ImGuiStyleVar_TabBorderSize, 0.0f) .AddStyle(ImGuiStyleVar_TabBarBorderSize, 0.0f) .AddStyle(ImGuiStyleVar_SeparatorTextBorderSize, 0.0f) .Build() }, {PROJECTSWINDOW, StyleBuilder() .AddStyle(ImGuiStyleVar_WindowBorderSize, 0.0f) .AddStyle(ImGuiStyleVar_ChildBorderSize, 1.0f) .AddStyle(ImGuiStyleVar_PopupBorderSize, 1.0f) .AddStyle(ImGuiStyleVar_FrameBorderSize, 1.0f) .AddStyle(ImGuiStyleVar_ImageBorderSize, 1.0f) .AddStyle(ImGuiStyleVar_TabBorderSize, 1.0f) .AddStyle(ImGuiStyleVar_TabBarBorderSize, 1.0f) .AddStyle(ImGuiStyleVar_SeparatorTextBorderSize, 1.0f) .AddStyle(ImGuiStyleVar_WindowRounding, 0) .AddColor(ImGuiCol_WindowBg, ImVec4(1.0f, 1.0f, 1.0f, 1.0f)) .AddColor(ImGuiCol_ChildBg, ImVec4(1.0f, 1.0f, 1.0f, 1.0f)) .AddColor(ImGuiCol_Text, ImVec4(0.0f, 0.0f, 0.0f, 1.0f)) .Build() }};
void StyleManagmentContext::Push(StyleUsage usage){ Styles.at(usage).Push(); usingStyles.push(usage);}
void StyleManagmentContext::Pop(){ Styles.at(usingStyles.top()).Pop(); usingStyles.pop();}