You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#rb Per.Larsson #jira UE-162600 #rnx #preflight 631597667562a90dfa991913 - Up until now we have been piggybacking off the DDC editor module as the VA statistics panel was originally based on the DDC statistic panel but now we are starting to do more VA editor/UX work so we should probably have our own module. - This does mean we need to remove the the VA statistics panel from the DDC status bar, but it didn't really belong there and the panel can still be opened via the menu 'Tool->Audit->Virtual Assets' [CL 21790583 by paul chipchase in ue5-main branch]
70 lines
2.3 KiB
C++
70 lines
2.3 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "VirtualizationEditorModule.h"
|
|
|
|
#include "Editor/WorkspaceMenuStructure/Public/WorkspaceMenuStructure.h"
|
|
#include "Editor/WorkspaceMenuStructure/Public/WorkspaceMenuStructureModule.h"
|
|
#include "Framework/Application/SlateApplication.h"
|
|
#include "Framework/Docking/TabManager.h"
|
|
#include "SVirtualAssetsStatistics.h"
|
|
#include "Textures/SlateIcon.h"
|
|
#include "Widgets/Docking/SDockTab.h"
|
|
|
|
#define LOCTEXT_NAMESPACE "VirtualizationEditor"
|
|
|
|
IMPLEMENT_MODULE(FVirtualizationEditorModule, VirtualizationEditor);
|
|
|
|
static const FName VirtualAssetsStatisticsTabName = FName(TEXT("VirtualAssetsStatistics"));
|
|
|
|
void FVirtualizationEditorModule::StartupModule()
|
|
{
|
|
const FSlateIcon VirtaulAssetsStatisticsIcon(FAppStyle::GetAppStyleSetName(), "DerivedData.Cache.Statistics");
|
|
|
|
FGlobalTabmanager::Get()->RegisterNomadTabSpawner(VirtualAssetsStatisticsTabName, FOnSpawnTab::CreateRaw(this, &FVirtualizationEditorModule::CreateVirtualAssetsStatisticsTab))
|
|
.SetDisplayName(LOCTEXT("VirtualAssetsStatisticsTabTitle", "Virtual Assets"))
|
|
.SetTooltipText(LOCTEXT("VirtualAssetsStatisticsTabToolTipText", "Virtual Assets Statistics"))
|
|
.SetGroup(WorkspaceMenu::GetMenuStructure().GetDeveloperToolsAuditCategory())
|
|
.SetIcon(VirtaulAssetsStatisticsIcon);
|
|
|
|
#if WITH_RELOAD
|
|
// This code attempts to relaunch the tabs when you reload this module
|
|
if (IsReloadActive() && FSlateApplication::IsInitialized())
|
|
{
|
|
ShowVirtualAssetsStatisticsTab();
|
|
}
|
|
#endif // WITH_RELOAD
|
|
|
|
}
|
|
|
|
void FVirtualizationEditorModule::ShutdownModule()
|
|
{
|
|
if (FSlateApplication::IsInitialized())
|
|
{
|
|
if (VirtualAssetsStatisticsTab.IsValid())
|
|
{
|
|
VirtualAssetsStatisticsTab.Pin()->RequestCloseTab();
|
|
}
|
|
|
|
FGlobalTabmanager::Get()->UnregisterNomadTabSpawner(VirtualAssetsStatisticsTabName);
|
|
}
|
|
}
|
|
|
|
void FVirtualizationEditorModule::ShowVirtualAssetsStatisticsTab()
|
|
{
|
|
FGlobalTabmanager::Get()->TryInvokeTab(FTabId(VirtualAssetsStatisticsTabName));
|
|
}
|
|
|
|
TSharedPtr<SWidget> FVirtualizationEditorModule::CreateVirtualAssetsStatisticsDialog()
|
|
{
|
|
return SNew(SVirtualAssetsStatisticsDialog);
|
|
}
|
|
|
|
TSharedRef<SDockTab> FVirtualizationEditorModule::CreateVirtualAssetsStatisticsTab(const FSpawnTabArgs& Args)
|
|
{
|
|
return SAssignNew(VirtualAssetsStatisticsTab, SDockTab)
|
|
.TabRole(ETabRole::NomadTab)
|
|
[
|
|
CreateVirtualAssetsStatisticsDialog().ToSharedRef()
|
|
];
|
|
}
|