Files
AronaSlate/Source/Arona/UI/Widget/PatternThumbnail/SSamplePatternThumbnail.h
2024-01-25 11:21:15 +08:00

38 lines
817 B
C++

// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "SCompoundWidget.h"
#include "SPatternThumbnail.h"
#include "Render/UpdatableTexture.h"
#include "UI/Widget/WaveformViewer.h"
class FSampler;
class FSampleWaveformHandle : public IWaveformHandle
{
public:
FSamplePatternInstance* SampleInstance = nullptr;
virtual TArray<float> GetWaveform(int32 SizeX) const override;
};
/**
*
*/
class ARONA_API SSamplePatternThumbnail : public SPatternThumbnail
{
public:
SLATE_BEGIN_ARGS(SSamplePatternThumbnail)
{}
SLATE_END_ARGS()
/** Constructs this widget with InArgs */
void Construct(const FArguments& InArgs, FSampler* InSampler);
virtual void Redraw() override;
private:
FSampleWaveformHandle* WaveformHandle = nullptr;
};