Resource ready signal for Controls (for ImageLoading) 64/123864/10
authorNick Holland <nick.holland@partner.samsung.com>
Fri, 7 Apr 2017 08:52:32 +0000 (09:52 +0100)
committerNick Holland <nick.holland@partner.samsung.com>
Wed, 19 Apr 2017 08:18:57 +0000 (01:18 -0700)
commit95bc87993608242c8eaff49551ae85b4b78c4de7
tree067e2797b1afce56b072fbc022b3206825a7a1f0
parentbd2d757678d8d92dd3f25101b9ad5fc34010ab09
Resource ready signal for Controls (for ImageLoading)

Change does the following:

Add Observer to Visual::Base for resource ready
Add signal to Control (Base)
Implement Observer in Control::Impl when Visual is Registered

Call the Observer from Image/Svg/etc Visual when they add the Renderer to Actor (this is usually when the visual is placed or stage or when async load completes).

Currently the signal will only fire when the control is on stage and all resources are loaded (async and sync).

Public API change note: This patch changes the declaration of Control::Impl from private to public, however this does not effect any exported symbols, so should keep binary compatibility. Also the class is not accessible externally as it's definition is not exposed.

Change-Id: I6e906e4f29de0af3b0ed465a643c078fc902b1e5
25 files changed:
automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp
dali-toolkit/devel-api/controls/control-devel.cpp [new file with mode: 0644]
dali-toolkit/devel-api/controls/control-devel.h
dali-toolkit/devel-api/file.list
dali-toolkit/internal/controls/control/control-data-impl.cpp [new file with mode: 0644]
dali-toolkit/internal/controls/control/control-data-impl.h [new file with mode: 0644]
dali-toolkit/internal/file.list
dali-toolkit/internal/visuals/animated-image/animated-image-visual.cpp
dali-toolkit/internal/visuals/border/border-visual.cpp
dali-toolkit/internal/visuals/color/color-visual.cpp
dali-toolkit/internal/visuals/gradient/gradient-visual.cpp
dali-toolkit/internal/visuals/image/image-visual.cpp
dali-toolkit/internal/visuals/mesh/mesh-visual.cpp
dali-toolkit/internal/visuals/npatch/npatch-visual.cpp
dali-toolkit/internal/visuals/primitive/primitive-visual.cpp
dali-toolkit/internal/visuals/svg/svg-visual.cpp
dali-toolkit/internal/visuals/text/text-visual.cpp
dali-toolkit/internal/visuals/visual-base-data-impl.cpp
dali-toolkit/internal/visuals/visual-base-data-impl.h
dali-toolkit/internal/visuals/visual-base-impl.cpp
dali-toolkit/internal/visuals/visual-base-impl.h
dali-toolkit/internal/visuals/visual-resource-observer.h [new file with mode: 0644]
dali-toolkit/internal/visuals/wireframe/wireframe-visual.cpp
dali-toolkit/public-api/controls/control-impl.cpp
dali-toolkit/public-api/controls/control-impl.h