You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#rb zack.neyland #preflight skip (not built) [CL 21856949 by Josh Adams in ue5-main branch]
42 lines
843 B
C++
42 lines
843 B
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "UGSTab.h"
|
|
#include "ScheduledSyncTimer.h"
|
|
#include "Widgets/Docking/SDockTab.h"
|
|
|
|
namespace UGSCore
|
|
{
|
|
struct FUserSettings;
|
|
}
|
|
|
|
class UGSTabManager
|
|
{
|
|
public:
|
|
UGSTabManager();
|
|
void ConstructTabs();
|
|
|
|
void Tick();
|
|
|
|
TSharedRef<SDockTab> SpawnTab(int Index, const FSpawnTabArgs& Args);
|
|
void ActivateTab();
|
|
FName GetTabId(int TabIndex) const;
|
|
|
|
// Will setup a schedule sync, as well as tear down an existing one and make a new one
|
|
void SetupScheduledSync();
|
|
void StopScheduledSyncTimer();
|
|
|
|
private:
|
|
void StartScheduledSyncTimer();
|
|
void ScheduleTimerElapsed();
|
|
|
|
static constexpr int MaxTabs = 10;
|
|
TStaticArray<UGSTab, MaxTabs> Tabs;
|
|
|
|
TSharedPtr<UGSCore::FUserSettings> UserSettings;
|
|
|
|
std::atomic<bool> bScheduledTimerElapsed;
|
|
ScheduledSyncTimer SyncTimer;
|
|
};
|