Files
UnrealEngineUWP/Engine/Source/Developer/LogVisualizer/Private/SVisualLoggerSectionOverlay.h
Ben Marsh 7598af0532 Update copyright notices to 2019.
#rb none
#lockdown Nick.Penwarden

[CL 4662404 by Ben Marsh in Main branch]
2018-12-14 13:41:00 -05:00

53 lines
1.9 KiB
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Misc/Attribute.h"
#include "Input/Reply.h"
#include "Widgets/DeclarativeSyntaxSupport.h"
#include "Widgets/SCompoundWidget.h"
class FPaintArgs;
class FSlateWindowElementList;
class FVisualLoggerTimeSliderController;
/**
* An overlay that displays global information in the section area
*/
class SVisualLoggerSectionOverlay : public SCompoundWidget
{
public:
SLATE_BEGIN_ARGS( SVisualLoggerSectionOverlay )
: _DisplayTickLines( true )
, _DisplayScrubPosition( false )
{}
SLATE_ATTRIBUTE( bool, DisplayTickLines )
SLATE_ATTRIBUTE( bool, DisplayScrubPosition )
SLATE_END_ARGS()
void Construct(const FArguments& InArgs, TSharedRef<class FVisualLoggerTimeSliderController> InTimeSliderController)
{
bDisplayScrubPosition = InArgs._DisplayScrubPosition;
bDisplayTickLines = InArgs._DisplayTickLines;
TimeSliderController = InTimeSliderController;
}
private:
/** SWidget Interface */
virtual int32 OnPaint( const FPaintArgs& Args, const FGeometry& AllottedGeometry, const FSlateRect& MyCullingRect, FSlateWindowElementList& OutDrawElements, int32 LayerId, const FWidgetStyle& InWidgetStyle, bool bParentEnabled ) const override;
virtual FReply OnMouseButtonDown( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
virtual FReply OnMouseButtonUp( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
virtual FReply OnMouseMove( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
virtual FReply OnMouseWheel( const FGeometry& MyGeometry, const FPointerEvent& MouseEvent ) override;
private:
/** Controller for manipulating time */
TSharedPtr<class FVisualLoggerTimeSliderController> TimeSliderController;
/** Whether or not to display the scrub position */
TAttribute<bool> bDisplayScrubPosition;
/** Whether or not to display tick lines */
TAttribute<bool> bDisplayTickLines;
};