[3.0] Resource ready signal for Controls (for ImageLoading) 24/131924/13
authorNick Holland <nick.holland@partner.samsung.com>
Wed, 31 May 2017 08:21:24 +0000 (09:21 +0100)
committerNick Holland <nick.holland@partner.samsung.com>
Fri, 16 Jun 2017 09:58:07 +0000 (09:58 +0000)
commit52d2f22df80f4285b5679c976168dcf4e27a8c3d
tree15818bb3c1b76574fa53fdb751f458f3f61a8e5c
parentd03f4c6330ab1eabee1d07fbfa4a6bdf40e49314
[3.0] 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
Add RegisterVisual + allow the control to store a list of visuals

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.

Example to test change:
https://review.tizen.org/gerrit/#/c/132789

Change-Id: I60ebccb4ea257165a1fa1dd33ac23233f8762638
25 files changed:
dali-toolkit/devel-api/controls/control-devel.cpp [new file with mode: 0644]
dali-toolkit/devel-api/controls/control-devel.h [new file with mode: 0644]
dali-toolkit/devel-api/file.list
dali-toolkit/devel-api/visual-factory/visual-base.cpp
dali-toolkit/devel-api/visual-factory/visual-base.h
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/controls/image-view/image-view-impl.cpp
dali-toolkit/internal/file.list
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/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