class sample_app: public ui_app
{
public:
- sample_app(const char*pkg, const char *locale_dir)
- : ui_app(pkg, locale_dir)
+ sample_app()
+ : ui_app(PACKAGE, LOCALE_DIR)
{
}
~sample_app()
class page1: public ui_standard_view
{
protected:
+ //on_load() will be called when this page1 is requested to be shown.
void on_load()
{
ui_standard_view::on_load();
/**
* @class ui_base_view
*
- * @ingroup viewmgr
+ * @ingroup efl_viewmanager
*
* @brief UI View Class. This is the class of view. A view must have one content instance which represents a view for a current screen.
* UI View may have it's own show/hide transition styles. That means, it's available that views have different show/hide effects on demands.
/**
* @class ui_base_viewmgr
*
- * @ingroup viewmgr
+ * @ingroup efl_viewmanager
*
- * @brief This is a class of viewmgr. One viewmgr represents a window which contains multiple views.
- * A viewmgr manages not only views life-cycle but constructs basic infrastructures such as key events handling, transition effects, transient views.
- * This interface guide you a basic policy of a view manager.
+ * @brief This is a base class of viewmgr. One viewmgr represents a class which contains multiple views.
+ * A viewmgr manages not only views life-cycle but constructs basic infrastructures such as key events handling, transition effects, transient views,
+ * etc. This interface guides you a basic policy and behaviors of a view manager. Basically, View manager must have a default window internally.
*
* @warning viewmgr will remove all containing views when it's destroyed.
*/
class ui_iface_view;
+/**
+ * @class ui_iface_overlay
+ *
+ * @internal
+ * @ingroup ui_viewmanager
+ *
+ * @brief This is a base class to support overlay view which could be active on other ui_iface_view. So an overlay should be a subordinates of a ui_iface_view.
+ * The specific behaviors are totally depended on the derived class but it must be communicated with ui_iface_view to work cooperatively. Fundamentally,
+ * overlay view provides simpler interfaces than ui_iface_view since most of the overlay views are active temporarily. This class is inherited to
+ * ui_iface_rotatable class to handle view's rotation state.
+ */
class ui_iface_overlay: public ui_iface_rotatable
{
public:
namespace ui_viewmanager
{
+
+/**
+ * @class ui_iface_rotatable
+ *
+ * @internal
+ * @ingroup ui_viewmanager
+ *
+ * @brief This is an interface class to support rotation behavior of views (or overlay). This class just defines status such as rotate, portrait, landscape
+ * so the derived class must implement the behavior body in its concept.
+ */
class ui_iface_rotatable
{
protected:
* @class ui_iface_view
*
* @internal
- * @ingroup viewmgr
+ * @ingroup ui_viewmanager
*
- * @brief UI View Base Class. This is the base class of view. A view must have one content instance which represents a view for a current screen.
- * UI View may have it's own show/hide transition styles. That means, it's available that views have different show/hide effects on demands.
- * It's not mandatory but view should describe the transitions in this class.
+ * @brief This is the base class of view. A view must have one actual view content instance which represents a view for a current screen.
+ * The content type could be any types with regards to UI systems (ie, Eo*, Layer, Window...) A derived class must implement the view body based on the
+ * actual content in its UI system. This view will be belongs to a ui_iface_viewmgr instance and dominated its state by ui_iface_viewmgr. Basically,
+ * a view communicates with ui_iface_viewmgr to active cooperatively. This class is inherited to ui_iface_rotatable class to handle view's rotation
+ * state. Also, user can handle a view's life-cycle events with these -load, unload, activate, deactivate, pause, resume, destroy-. A view may have
+ * it's own show/hide transition styles. That means, it's available that views have different show/hide effects on demands. It's not mandatory but view
+ * should describe the transitions in this class. Please be full aware of view life-cycle to understand view's behavior.
*
* @warning When the transitions are finished, the view must to call ui_iface_viewmgr :: _push_finished(), ui_iface_viewmgr :: _pop_finished() in order that
* The ui_iface_viewmgr keeps the view states exactly.
* @class ui_iface_viewmgr
*
* @internal
- * @ingroup viewmgr
+ * @ingroup ui_viewmanager
*
- * @brief This is a interface class of viewmgr. One viewmgr represents a window which contains multiple views.
- * A viewmgr manages not only views life-cycle but constructs basic infrastructures such as key events handling, transition effects, transient views.
- * This interface guide you a basic policy of a view manager.
+ * @brief This is a base class of viewmgr. One viewmgr represents a class which contains multiple views.
+ * A viewmgr manages not only views life-cycle but constructs basic infrastructures such as key events handling, transition effects, transient views,
+ * etc. This interface guides you a basic policy and behaviors of a view manager. Basically, View manager must have a default window internally.
*
* @warning viewmgr will remove all containing views when it's destroyed.
*/
/**
* @brief Return the number of views which this viewmgr has.
*
- * @return the number of view
+ * @return the count of views
*/
unsigned int get_view_count();
* @note Normally, the current view will be hidden by a new view. In default, when user calls this API, view will be switched to @p view instantly,
* only when viewmgr state is activated. Otherwise, the @p view will be shown later when viewmgr is activated. push_view() is designed for providing
* view transition effect. If you want push view instantly without any transition, you could use insert_view_before() or insert_view_after().
+ * or use the view transition style function.
* If you want to pop the current view, the please use pop_view().
*
* @param view A view to insert at the end of viewmgr view list.
* @see insert_view_before()
* @see insert_view_after()
* @see pop_view()
+ * @see ui_iface_view::set_transition_style()
*/
ui_iface_view *push_view(ui_iface_view *view);
/**
* @brief Pop the top(last) view from this viewmgr view list.
- * This function is used for application switches the current view back to the previous view.
+ * This function is used when application switches the current view back to the previous view.
* The top view will be removed from the view stack and then it will be deleted by the viewmgr.
*
- * @note If the view is just one left, then viewmgr would be deactivated since the ui application might be invalid anymore. Otherwise, the application will
- * be terminated. It's up to system configuration.
+ * @note If the view is just one left, then viewmgr would be deactivated automatically since the ui application might be invalid anymore. Otherwise,
+ * the application will be terminated. It's up to system configuration.
*
* @return @c true on success or @c false otherwise.
*
*
* @param view A view to query the index.
*
- * @return An index of the give @p view on success, otherwise, -1.
+ * @return An index of the given @p view on success, otherwise, -1.
*
* @warning The index number of views are variable since the view list is variable.
*/