projects
/
platform
/
core
/
uifw
/
dali-toolkit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[dali_2.3.27] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git]
/
dali-toolkit
/
internal
/
visuals
/
animated-vector-image
/
animated-vector-image-visual.h
diff --git
a/dali-toolkit/internal/visuals/animated-vector-image/animated-vector-image-visual.h
b/dali-toolkit/internal/visuals/animated-vector-image/animated-vector-image-visual.h
index
4b14fc3
..
874a88a
100644
(file)
--- a/
dali-toolkit/internal/visuals/animated-vector-image/animated-vector-image-visual.h
+++ b/
dali-toolkit/internal/visuals/animated-vector-image/animated-vector-image-visual.h
@@
-2,7
+2,7
@@
#define DALI_TOOLKIT_INTERNAL_ANIMATED_VECTOR_IMAGE_VISUAL_H
/*
#define DALI_TOOLKIT_INTERNAL_ANIMATED_VECTOR_IMAGE_VISUAL_H
/*
- * Copyright (c) 202
2
Samsung Electronics Co., Ltd.
+ * Copyright (c) 202
4
Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@
-53,7
+53,7
@@
using AnimatedVectorImageVisualPtr = IntrusivePtr<AnimatedVectorImageVisual>;
* | url | STRING |
*
*/
* | url | STRING |
*
*/
-class AnimatedVectorImageVisual : public Visual::Base, public ConnectionTracker
, public VectorAnimationManager::LifecycleObserver
+class AnimatedVectorImageVisual : public Visual::Base, public ConnectionTracker
{
public:
/**
{
public:
/**
@@
-73,9
+73,10
@@
public:
* @param[in] factoryCache A pointer pointing to the VisualFactoryCache object
* @param[in] shaderFactory The ImageVisualShaderFactory object
* @param[in] imageUrl The URL to an animated vector image to use
* @param[in] factoryCache A pointer pointing to the VisualFactoryCache object
* @param[in] shaderFactory The ImageVisualShaderFactory object
* @param[in] imageUrl The URL to an animated vector image to use
+ * @param[in] size The width and height of the rasterized buffer. The visual size will be used if these are 0.
* @return A smart-pointer to the newly allocated visual.
*/
* @return A smart-pointer to the newly allocated visual.
*/
- static AnimatedVectorImageVisualPtr New(VisualFactoryCache& factoryCache, ImageVisualShaderFactory& shaderFactory, const VisualUrl& imageUrl);
+ static AnimatedVectorImageVisualPtr New(VisualFactoryCache& factoryCache, ImageVisualShaderFactory& shaderFactory, const VisualUrl& imageUrl
, ImageDimensions size = ImageDimensions()
);
public: // from Visual
/**
public: // from Visual
/**
@@
-98,12
+99,6
@@
public: // from Visual
*/
void EnablePreMultipliedAlpha(bool preMultiplied) override;
*/
void EnablePreMultipliedAlpha(bool preMultiplied) override;
-protected: // From VectorAnimationManager::LifecycleObserver:
- /**
- * @copydoc VectorAnimationManager::LifecycleObserver::VectorAnimationManagerDestroyed()
- */
- void VectorAnimationManagerDestroyed() override;
-
protected:
/**
* @brief Constructor.
protected:
/**
* @brief Constructor.
@@
-111,8
+106,9
@@
protected:
* @param[in] factoryCache A pointer pointing to the VisualFactoryCache object
* @param[in] shaderFactory The ImageVisualShaderFactory object
* @param[in] imageUrl The URL to an animated vector image to use
* @param[in] factoryCache A pointer pointing to the VisualFactoryCache object
* @param[in] shaderFactory The ImageVisualShaderFactory object
* @param[in] imageUrl The URL to an animated vector image to use
+ * @param[in] size The width and height of the rasterized buffer. The visual size will be used if these are 0.
*/
*/
- AnimatedVectorImageVisual(VisualFactoryCache& factoryCache, ImageVisualShaderFactory& shaderFactory, const VisualUrl& imageUrl);
+ AnimatedVectorImageVisual(VisualFactoryCache& factoryCache, ImageVisualShaderFactory& shaderFactory, const VisualUrl& imageUrl
, ImageDimensions size
);
/**
* @brief A reference counted object may only be deleted by calling Unreference().
/**
* @brief A reference counted object may only be deleted by calling Unreference().
@@
-159,6
+155,11
@@
protected:
*/
void OnDoAction(const Property::Index actionId, const Property::Value& attributes) override;
*/
void OnDoAction(const Property::Index actionId, const Property::Value& attributes) override;
+ /**
+ * @copydoc Visual::Base::OnDoActionExtension
+ */
+ void OnDoActionExtension(const Property::Index actionId, const Dali::Any& attributes) override;
+
private:
/**
* Helper method to set individual values by index key.
private:
/**
* Helper method to set individual values by index key.
@@
-168,14
+169,17
@@
private:
void DoSetProperty(Property::Index index, const Property::Value& value);
/**
void DoSetProperty(Property::Index index, const Property::Value& value);
/**
- * @brief Called when the texture upload is completed.
+ * @brief Called when the resource is ready.
+ * @param[in] status The resource status
*/
*/
- void On
UploadCompleted(
);
+ void On
ResourceReady(VectorAnimationTask::ResourceStatus status
);
/**
* @brief Event callback from rasterize thread. This is called after the animation is finished.
/**
* @brief Event callback from rasterize thread. This is called after the animation is finished.
+ *
+ * @param[in] playStateId The play state id
*/
*/
- void OnAnimationFinished();
+ void OnAnimationFinished(
uint32_t playStateId
);
/**
* @brief Send animation data to the rasterize thread.
/**
* @brief Send animation data to the rasterize thread.
@@
-210,7
+214,7
@@
private:
/**
* @brief Callback when the visibility of the actor is changed.
*/
/**
* @brief Callback when the visibility of the actor is changed.
*/
- void OnControl
VisibilityChanged(Actor actor, bool visible, DevelActor::VisibilityChange::Type typ
e);
+ void OnControl
InheritedVisibilityChanged(Actor actor, bool visibl
e);
/**
* @brief Callback when the visibility of the window is changed.
/**
* @brief Callback when the visibility of the window is changed.
@@
-229,7
+233,8
@@
private:
AnimatedVectorImageVisual& operator=(const AnimatedVectorImageVisual& visual) = delete;
private:
AnimatedVectorImageVisual& operator=(const AnimatedVectorImageVisual& visual) = delete;
private:
- VisualUrl mUrl;
+ WeakHandle<Window> mPlacementWindow;
+ VisualUrl mImageUrl;
VectorAnimationTask::AnimationData mAnimationData;
VectorAnimationTaskPtr mVectorAnimationTask;
ImageVisualShaderFactory& mImageVisualShaderFactory;
VectorAnimationTask::AnimationData mAnimationData;
VectorAnimationTaskPtr mVectorAnimationTask;
ImageVisualShaderFactory& mImageVisualShaderFactory;
@@
-237,13
+242,19
@@
private:
PropertyNotification mSizeNotification;
Vector2 mVisualSize;
Vector2 mVisualScale;
PropertyNotification mSizeNotification;
Vector2 mVisualSize;
Vector2 mVisualScale;
+ Dali::ImageDimensions mDesiredSize{};
WeakHandle<Actor> mPlacementActor;
DevelImageVisual::PlayState::Type mPlayState;
CallbackBase* mEventCallback; // Not owned
WeakHandle<Actor> mPlacementActor;
DevelImageVisual::PlayState::Type mPlayState;
CallbackBase* mEventCallback; // Not owned
- bool mLoadFailed;
- bool mRendererAdded;
- bool mCoreShutdown;
- bool mRedrawInScalingDown;
+
+ uint32_t mLastSentPlayStateId;
+
+ bool mLoadFailed : 1;
+ bool mRendererAdded : 1;
+ bool mRedrawInScalingDown : 1;
+ bool mEnableFrameCache : 1;
+ bool mUseNativeImage : 1;
+ bool mNotifyAfterRasterization : 1;
};
} // namespace Internal
};
} // namespace Internal