skia2/tools/skottie_ios_app/SkottieUIView.h
Hal Canary efb4ed86cf SkMetalDeviceToGrContext: no longer needs any Skia headers
Also: mv experimental/skottie_ios tools/skottie_ios_app

Motivation:  make using SkMetalViewBridge that much easier for clients.

Change-Id: I985930ae0751d218e89c48c57b69d85ad7a1e703
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259279
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-12-16 18:09:40 +00:00

42 lines
1.0 KiB
Objective-C

// Copyright 2019 Google LLC.
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
#ifndef SkottieUIView_DEFINED
#define SkottieUIView_DEFINED
#import <UIKit/UIKit.h>
class GrContext;
@interface SkottieUIView : UIView
// When set, pauses at end of loop.
- (void)setStopAtEnd:(BOOL)stop;
// Override of the UIView interface. Uses Skia+Skottie+Metal to draw.
- (void)drawRect:(CGRect)rect;
// Load an animation from a Lottie JSON file. Returns Yes on success.
- (BOOL)loadAnimation:(NSData*)d;
// Jump to the specified location in the animation.
- (void)seek:(float)seconds;
// Toggle paused mode. Return paused state.
- (BOOL)togglePaused;
// Return the current paused state.
- (BOOL)isPaused;
// Return the default size of the Lottie animation.
- (CGSize)size;
// Return the length of the animation loop.
- (float)animationDurationSeconds;
// Return the current position in the animation in seconds (between zero and
// animationDurationSeconds).
- (float)currentTime;
@end
#endif // SkottieUIView_DEFINED