Files
UnrealEngineUWP/Engine/Source/Developer/LogVisualizer/Private/SVisualLoggerStatusView.h
Ben Marsh 13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00

41 lines
1.5 KiB
C++

// Copyright 1998-2018 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Widgets/DeclarativeSyntaxSupport.h"
#include "Framework/Commands/UICommandList.h"
#include "VisualLogger/VisualLoggerTypes.h"
#include "Developer/LogVisualizer/Private/LogVisualizerPrivate.h"
#include "Widgets/Views/STableViewBase.h"
#include "Widgets/Views/STableRow.h"
#include "Widgets/Views/STreeView.h"
struct FLogStatusItem;
struct FVisualLoggerDBRow;
class SVisualLoggerStatusView : public SVisualLoggerBaseWidget
{
public:
SLATE_BEGIN_ARGS(SVisualLoggerStatusView){}
SLATE_END_ARGS();
virtual ~SVisualLoggerStatusView();
void Construct(const FArguments& InArgs, const TSharedRef<FUICommandList>& InCommandList);
void ResetData();
protected:
void OnObjectSelectionChanged(const TArray<FName>& SelectedRows);
void OnItemSelectionChanged(const FVisualLoggerDBRow& DBRow, int32 ItemIndex);
void GenerateStatusData(const FVisualLogDevice::FVisualLogEntryItem&, bool bAddHeader);
TSharedRef<ITableRow> HandleGenerateLogStatus(TSharedPtr<struct FLogStatusItem> InItem, const TSharedRef<STableViewBase>& OwnerTable);
void OnLogStatusGetChildren(TSharedPtr<struct FLogStatusItem> InItem, TArray< TSharedPtr<FLogStatusItem> >& OutItems);
void OnExpansionChanged(TSharedPtr<FLogStatusItem> Item, bool);
protected:
TArray<FString> ExpandedCategories;
TSharedPtr< STreeView< TSharedPtr<FLogStatusItem> > > StatusItemsView;
TArray< TSharedPtr<FLogStatusItem> > StatusItems;
};