8#ifndef SkottieSlide_DEFINED
9#define SkottieSlide_DEFINED
13#if defined(SK_ENABLE_SKOTTIE)
23namespace sksg {
class Scene; }
25class SkottieSlide :
public Slide {
28 ~SkottieSlide()
override =
default;
47 class TransformTracker;
48 class SlotManagerInterface;
56 std::unique_ptr<SlotManagerInterface>fSlotManagerInterface;
58 std::vector<float> fFrameTimes;
62 const char* fFrameRateLabel =
nullptr;
63 float fCurrentFrame = 0;
64 bool fShowAnimationInval =
false,
65 fShowAnimationStats =
false,
67 fShowTrackerUI =
false,
68 fShowSlotManager =
false,
69 fDraggingProgress =
false,
70 fPreferGlyphPaths =
false;
virtual bool onMouse(SkScalar x, SkScalar y, skui::InputState state, skui::ModifierKey modifiers)
virtual bool onChar(SkUnichar c)
virtual void resize(SkScalar winWidth, SkScalar winHeight)
virtual void load(SkScalar winWidth, SkScalar winHeight)
virtual bool animate(double nanos)
virtual void draw(SkCanvas *canvas)=0
static constexpr SkSize MakeEmpty()