mirror of
https://github.com/Ed94/Cog.git
synced 2026-07-21 23:12:02 -07:00
moved metric to CogDebug
This commit is contained in:
@@ -77,9 +77,8 @@ void UCogWindow::DrawMenuItem(const FString& MenuItemName)
|
||||
{
|
||||
if (bShowInsideMenu && bIsVisible == false)
|
||||
{
|
||||
static const ImVec2 TEXT_BASE_SIZE = ImGui::CalcTextSize("A");
|
||||
ImGui::SetNextWindowSizeConstraints(ImVec2(TEXT_BASE_SIZE.x * 40, TEXT_BASE_SIZE.y * 1),
|
||||
ImVec2(TEXT_BASE_SIZE.x * 50, TEXT_BASE_SIZE.y * 60));
|
||||
ImGui::SetNextWindowSizeConstraints(ImVec2(FCogWindowWidgets::TextBaseWidth * 40, FCogWindowWidgets::TextBaseHeight * 1),
|
||||
ImVec2(FCogWindowWidgets::TextBaseWidth * 50, FCogWindowWidgets::TextBaseHeight * 60));
|
||||
|
||||
if (ImGui::BeginMenu(TCHAR_TO_ANSI(*MenuItemName)))
|
||||
{
|
||||
|
||||
@@ -108,10 +108,18 @@ void UCogWindowManager::Render(float DeltaTime)
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------------------------------
|
||||
void UCogWindowManager::AddWindow(UCogWindow* Window)
|
||||
void UCogWindowManager::AddWindow(UCogWindow* Window, bool AddToMainMenu /*= true*/)
|
||||
{
|
||||
Window->SetOwner(this);
|
||||
Windows.Add(Window);
|
||||
|
||||
if (AddToMainMenu)
|
||||
{
|
||||
if (FMenu* Menu = AddMenu(Window->GetFullName()))
|
||||
{
|
||||
Menu->Window = Window;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------------------------------
|
||||
@@ -169,16 +177,21 @@ void UCogWindowManager::SaveLayout(int LayoutIndex)
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------------------------------
|
||||
void UCogWindowManager::RebuildMenu()
|
||||
void UCogWindowManager::SortMainMenu()
|
||||
{
|
||||
MainMenu.SubMenus.Empty();
|
||||
|
||||
for (UCogWindow* Window : Windows)
|
||||
{
|
||||
check(Window);
|
||||
Windows.Sort();
|
||||
|
||||
FMenu* NewMenu = AddMenu(Window->GetFullName());
|
||||
NewMenu->Window = Window;
|
||||
TArray<UCogWindow*> SortedWindows = Windows;
|
||||
SortedWindows.Sort([](UCogWindow& Lhs, UCogWindow& Rhs) { return Lhs.GetFullName() < Rhs.GetFullName(); });
|
||||
|
||||
for (UCogWindow* Window : SortedWindows)
|
||||
{
|
||||
if (FMenu* Menu = AddMenu(Window->GetFullName()))
|
||||
{
|
||||
Menu->Window = Window;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -23,23 +23,23 @@ public:
|
||||
|
||||
void Shutdown();
|
||||
|
||||
void RebuildMenu();
|
||||
void SortMainMenu();
|
||||
|
||||
void Render(float DeltaTime);
|
||||
|
||||
void Tick(float DeltaTime);
|
||||
|
||||
template<class T>
|
||||
T* CreateWindow(const FString& Name)
|
||||
T* CreateWindow(const FString& Name, bool AddToMainMenu = true)
|
||||
{
|
||||
T* Window = NewObject<T>(this);
|
||||
Window->SetFullName(Name);
|
||||
Window->Initialize();
|
||||
AddWindow(Window);
|
||||
AddWindow(Window, AddToMainMenu);
|
||||
return Window;
|
||||
}
|
||||
|
||||
void AddWindow(UCogWindow* Window);
|
||||
void AddWindow(UCogWindow* Window, bool AddToMainMenu = true);
|
||||
|
||||
void AddMainMenuWidget(UCogWindow* Window);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user