1cb93a386Sopenharmony_ci/* 2cb93a386Sopenharmony_ci* Copyright 2016 Google Inc. 3cb93a386Sopenharmony_ci* 4cb93a386Sopenharmony_ci* Use of this source code is governed by a BSD-style license that can be 5cb93a386Sopenharmony_ci* found in the LICENSE file. 6cb93a386Sopenharmony_ci*/ 7cb93a386Sopenharmony_ci 8cb93a386Sopenharmony_ci#include "tools/viewer/ImageSlide.h" 9cb93a386Sopenharmony_ci 10cb93a386Sopenharmony_ci#include "include/core/SkCanvas.h" 11cb93a386Sopenharmony_ci#include "include/core/SkData.h" 12cb93a386Sopenharmony_ci#include "include/core/SkImage.h" 13cb93a386Sopenharmony_ci 14cb93a386Sopenharmony_ciImageSlide::ImageSlide(const SkString& name, const SkString& path) : fPath(path) { 15cb93a386Sopenharmony_ci fName = name; 16cb93a386Sopenharmony_ci} 17cb93a386Sopenharmony_ci 18cb93a386Sopenharmony_ciSkISize ImageSlide::getDimensions() const { 19cb93a386Sopenharmony_ci return fImage ? fImage->dimensions() : SkISize::Make(0, 0); 20cb93a386Sopenharmony_ci} 21cb93a386Sopenharmony_ci 22cb93a386Sopenharmony_civoid ImageSlide::draw(SkCanvas* canvas) { 23cb93a386Sopenharmony_ci SkASSERT(fImage); 24cb93a386Sopenharmony_ci canvas->drawImage(fImage, 0, 0); 25cb93a386Sopenharmony_ci} 26cb93a386Sopenharmony_ci 27cb93a386Sopenharmony_civoid ImageSlide::load(SkScalar, SkScalar) { 28cb93a386Sopenharmony_ci sk_sp<SkData> encoded = SkData::MakeFromFileName(fPath.c_str()); 29cb93a386Sopenharmony_ci fImage = SkImage::MakeFromEncoded(encoded); 30cb93a386Sopenharmony_ci} 31cb93a386Sopenharmony_ci 32cb93a386Sopenharmony_civoid ImageSlide::unload() { 33cb93a386Sopenharmony_ci fImage.reset(nullptr); 34cb93a386Sopenharmony_ci} 35