class Elm_App_Server (Eo.Base) { legacy_prefix: null; eo_prefix: elm_app_server; methods { @property icon { set { } get { } values { icon: Eina_Stringshare *; /*@ title of icon */ } } @property views { get { /*@ Return a iterator with all views of application */ } values { ret: free(own(iterator *), eina_iterator_free); /*@ Iterator with all views of application, you must free iterator after use */ } } @property path { get { } values { ret: const(char)*; } } @property package { get { } values { ret: Eina_Stringshare *; } } @property pixels { get { /*@ Get application raw icon. */ } set { /*@ Set icon to application, using the raw pixels of image. */ } values { w: uint; h: uint; has_alpha: bool; pixels: const(ubyte)*; } } constructor { /*@ Class constructor of elm_app_server */ legacy: null; params { @in packageid: const(char)*; /*@ package of application */ @in create_view_cb: Elm_App_Server_Create_View_Cb; /*@ callback to be called when user whants to open some application view */ } } close_all { /*@ Close all views of application */ } view_check { /*@ If view id is available and unique, return the full DBus object path of view */ params { @in id: const(char)*; /*@ view identifier */ } return: bool; /*@ @c EINA_TRUE if id is valid or @c EINA_FALSE if not */ } view_add { /*@ Add a view to elm_app_server. This should only be used if the application open a view that was not requested by create_view_cb. */ params { @in view: Elm_App_Server_View *; /*@ elm_app_server_view */ } } title_set { /*@ Set a title to application. */ params { @in title: const(char)* @nullable; /*@ title of application */ } } title_get { /*@ Get title of application */ return: Eina_Stringshare *; /*@ title of application */ } save { /*@ Save the state of all views */ } } implements { Eo.Base.destructor; Eo.Base.finalize; } constructors { .constructor; } events { terminate; /*@ Called when application must be terminated. */ } }