mirror of
https://github.com/RetroDECK/ES-DE.git
synced 2024-11-25 23:55:38 +00:00
Merge commit '1d638b192417fc3afac05edb4d46305d9e9ad9b3' into new-svg-renderer
This commit is contained in:
commit
1b18adee0e
1
external/rlottie/example/lottieview.cpp
vendored
1
external/rlottie/example/lottieview.cpp
vendored
|
@ -109,7 +109,6 @@ void LottieView::seek(float pos)
|
||||||
{
|
{
|
||||||
if (!mRenderDelegate) return;
|
if (!mRenderDelegate) return;
|
||||||
|
|
||||||
|
|
||||||
mPos = mapProgress(pos);
|
mPos = mapProgress(pos);
|
||||||
|
|
||||||
// check if the pos maps to the current frame
|
// check if the pos maps to the current frame
|
||||||
|
|
23
external/rlottie/example/lottieviewer.cpp
vendored
23
external/rlottie/example/lottieviewer.cpp
vendored
|
@ -62,12 +62,13 @@ _layout_del_cb(void *data, Evas *, Evas_Object *, void *)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_update_frame_info(AppInfo *info, double pos)
|
_update_frame_info(AppInfo *info)
|
||||||
{
|
{
|
||||||
int frameNo = pos * info->view->getTotalFrame();
|
long currFrameNo = info->view->mCurFrame;
|
||||||
char buf[64];
|
long totalFrameNo = info->view->getTotalFrame();
|
||||||
|
|
||||||
sprintf(buf, "%d / %ld", frameNo, info->view->getTotalFrame());
|
char buf[64];
|
||||||
|
sprintf(buf, "%ld (total: %ld)", currFrameNo, totalFrameNo);
|
||||||
elm_object_part_text_set(info->layout, "text", buf);
|
elm_object_part_text_set(info->layout, "text", buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -96,7 +97,7 @@ _animator_cb(void *data)
|
||||||
if (info && info->autoPlaying && info->view)
|
if (info && info->autoPlaying && info->view)
|
||||||
{
|
{
|
||||||
float pos = info->view->getPos();
|
float pos = info->view->getPos();
|
||||||
_update_frame_info(info, pos);
|
_update_frame_info(info);
|
||||||
elm_slider_value_set(info->slider, (double)pos);
|
elm_slider_value_set(info->slider, (double)pos);
|
||||||
evas_object_image_pixels_dirty_set(info->view->getImage(), EINA_TRUE);
|
evas_object_image_pixels_dirty_set(info->view->getImage(), EINA_TRUE);
|
||||||
if (pos >= 1.0)
|
if (pos >= 1.0)
|
||||||
|
@ -111,20 +112,20 @@ _slider_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
|
||||||
double val = elm_slider_value_get(obj);
|
double val = elm_slider_value_get(obj);
|
||||||
AppInfo *info = (AppInfo *)data;
|
AppInfo *info = (AppInfo *)data;
|
||||||
|
|
||||||
_update_frame_info(info, val);
|
|
||||||
|
|
||||||
if (!info->autoPlaying)
|
if (!info->autoPlaying)
|
||||||
{
|
{
|
||||||
info->view->seek(val);
|
info->view->seek(val);
|
||||||
evas_object_image_pixels_dirty_set(info->view->getImage(), EINA_TRUE);
|
evas_object_image_pixels_dirty_set(info->view->getImage(), EINA_TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_update_frame_info(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_button_clicked_cb(void *data, Evas_Object */*obj*/, void */*event_info*/)
|
_button_clicked_cb(void *data, Evas_Object */*obj*/, void */*event_info*/)
|
||||||
{
|
{
|
||||||
AppInfo *info = (AppInfo *)data;
|
AppInfo *info = (AppInfo *)data;
|
||||||
|
if (info->view->getPos() >= 1.0f) info->view->mPos = 0.0f;
|
||||||
_toggle_start_button(info);
|
_toggle_start_button(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -133,7 +134,6 @@ create_layout(Evas_Object *parent, const char *file)
|
||||||
{
|
{
|
||||||
Evas_Object *layout, *slider, *image, *button;
|
Evas_Object *layout, *slider, *image, *button;
|
||||||
Ecore_Animator *animator;
|
Ecore_Animator *animator;
|
||||||
char buf[64];
|
|
||||||
AppInfo *info = (AppInfo *)calloc(sizeof(AppInfo), 1);
|
AppInfo *info = (AppInfo *)calloc(sizeof(AppInfo), 1);
|
||||||
|
|
||||||
//LAYOUT
|
//LAYOUT
|
||||||
|
@ -176,10 +176,9 @@ create_layout(Evas_Object *parent, const char *file)
|
||||||
info->animator = animator;
|
info->animator = animator;
|
||||||
evas_object_event_callback_add(layout, EVAS_CALLBACK_DEL, _layout_del_cb, (void *)info);
|
evas_object_event_callback_add(layout, EVAS_CALLBACK_DEL, _layout_del_cb, (void *)info);
|
||||||
|
|
||||||
sprintf(buf, "%d / %ld", 0, view->getTotalFrame());
|
|
||||||
elm_object_part_text_set(layout, "text", buf);
|
|
||||||
|
|
||||||
view->seek(0.0);
|
view->seek(0.0);
|
||||||
|
_update_frame_info(info);
|
||||||
|
|
||||||
return layout;
|
return layout;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
BIN
external/rlottie/src/binding/.lottieplayer.cpp.swp
vendored
BIN
external/rlottie/src/binding/.lottieplayer.cpp.swp
vendored
Binary file not shown.
2
external/rlottie/src/lottie/lottieitem.cpp
vendored
2
external/rlottie/src/lottie/lottieitem.cpp
vendored
|
@ -443,7 +443,7 @@ VMatrix renderer::Layer::matrix(int frameNo) const
|
||||||
bool renderer::Layer::visible() const
|
bool renderer::Layer::visible() const
|
||||||
{
|
{
|
||||||
return (frameNo() >= mLayerData->inFrame() &&
|
return (frameNo() >= mLayerData->inFrame() &&
|
||||||
frameNo() < mLayerData->outFrame());
|
frameNo() <= mLayerData->outFrame());
|
||||||
}
|
}
|
||||||
|
|
||||||
void renderer::Layer::preprocess(const VRect &clip)
|
void renderer::Layer::preprocess(const VRect &clip)
|
||||||
|
|
4
external/rlottie/src/lottie/lottiemodel.h
vendored
4
external/rlottie/src/lottie/lottiemodel.h
vendored
|
@ -539,8 +539,8 @@ public:
|
||||||
{
|
{
|
||||||
return long(frameAtPos(timeInSec / duration()));
|
return long(frameAtPos(timeInSec / duration()));
|
||||||
}
|
}
|
||||||
size_t totalFrame() const { return mEndFrame - mStartFrame; }
|
size_t totalFrame() const { return mEndFrame - mStartFrame + 1; }
|
||||||
long frameDuration() const { return mEndFrame - mStartFrame - 1; }
|
long frameDuration() const { return mEndFrame - mStartFrame; }
|
||||||
float frameRate() const { return mFrameRate; }
|
float frameRate() const { return mFrameRate; }
|
||||||
size_t startFrame() const { return mStartFrame; }
|
size_t startFrame() const { return mStartFrame; }
|
||||||
size_t endFrame() const { return mEndFrame; }
|
size_t endFrame() const { return mEndFrame; }
|
||||||
|
|
4
external/rlottie/src/lottie/lottieparser.cpp
vendored
4
external/rlottie/src/lottie/lottieparser.cpp
vendored
|
@ -665,9 +665,9 @@ void LottieParserImpl::parseComposition()
|
||||||
} else if (0 == strcmp(key, "h")) {
|
} else if (0 == strcmp(key, "h")) {
|
||||||
comp->mSize.setHeight(GetInt());
|
comp->mSize.setHeight(GetInt());
|
||||||
} else if (0 == strcmp(key, "ip")) {
|
} else if (0 == strcmp(key, "ip")) {
|
||||||
comp->mStartFrame = GetDouble();
|
comp->mStartFrame = std::lround(GetDouble());
|
||||||
} else if (0 == strcmp(key, "op")) {
|
} else if (0 == strcmp(key, "op")) {
|
||||||
comp->mEndFrame = GetDouble();
|
comp->mEndFrame = std::lround(GetDouble());
|
||||||
} else if (0 == strcmp(key, "fr")) {
|
} else if (0 == strcmp(key, "fr")) {
|
||||||
comp->mFrameRate = GetDouble();
|
comp->mFrameRate = GetDouble();
|
||||||
} else if (0 == strcmp(key, "assets")) {
|
} else if (0 == strcmp(key, "assets")) {
|
||||||
|
|
Loading…
Reference in a new issue