5 * @image html plug_inheritance_tree.png
6 * @image latex plug_inheritance_tree.eps
8 * An object that allows one to show an image which other process created.
9 * It can be used anywhere like any other elementary widget.
19 * @typedef Elm_Plug_Message
21 * Structure holding the message
22 * which elm plug received from ecore evas
25 struct _Elm_Plug_Message
33 typedef struct _Elm_Plug_Message Elm_Plug_Message;
36 * Add a new plug image to the parent.
38 * @param parent The parent object
39 * @return The new plug image object or NULL if it cannot be created
43 EAPI Evas_Object *elm_plug_add(Evas_Object *parent);
46 * Connect a plug widget to service provided by socket image.
48 * @param obj The Evas_Object where the new image object will live.
49 * @param svcname The service name to connect to set up by the socket.
50 * @param svcnum The service number to connect to (set up by socket).
51 * @param svcsys Boolean to set if the service is a system one or not (set up by socket).
52 * @return (@c EINA_TRUE = success, @c EINA_FALSE = error)
56 EAPI Eina_Bool elm_plug_connect(Evas_Object *obj, const char *svcname, int svcnum, Eina_Bool svcsys);
59 * Get the basic Evas_Image object from this object (widget).
61 * @param obj The image object to get the inlined image from
62 * @return The inlined image object, or NULL if none exists
64 * This function allows one to get the underlying @c Evas_Object of type
65 * Image from this elementary widget. It can be useful to do things like get
66 * the pixel data, save the image to a file, etc.
68 * @note Be careful to not manipulate it, as it is under control of
73 EAPI Evas_Object *elm_plug_image_object_get(const Evas_Object *obj);
76 * Send message to plug widget's socket
78 * @param obj The plug object to send message
79 * @param msg_domain The domain of message
80 * @param msg_id The id of message
81 * @param data The data of message
82 * @param size The size of message data
84 * @warning Support for this depends on the underlying windowing system.
88 EAPI Eina_Bool elm_plug_msg_send(Evas_Object *obj, int msg_domain, int msg_id, void *data, int size);