class Elm_Plug (Elm_Widget)
{
   eo_prefix: elm_obj_plug;
   data: null;
   properties {
      image_object {
         get {
            /*@
            @brief Get the basic Evas_Image object from this object (widget).

            @if MOBILE @since_tizen 2.3
            @elseif WEARABLE @since_tizen 2.3.1
            @endif

            @return The inlined image object, or NULL if none exists

            @remark This function allows one to get the underlying @c Evas_Object of type
            Image from this elementary widget. It can be useful to do things like get
            the pixel data, save the image to a file, etc.

            @remark Be careful to not manipulate it, as it is under control of
            elementary.

            @ingroup Plug */
            return: Evas_Object *;
         }
      }
   }
   methods {
      connect {
         /*@
         @brief Connect a plug widget to service provided by socket image.

         @if MOBILE @since_tizen 2.3
         @elseif WEARABLE @since_tizen 2.3.1
         @endif

         @return (@c EINA_TRUE = success, @c EINA_FALSE = error)

         @ingroup Plug */

         return: bool;
         params {
            @in const(char)* svcname; /*@ The service name to connect to set up by the socket. */
            @in int svcnum; /*@ The service number to connect to (set up by socket). */
            @in bool svcsys; /*@ Boolean to set if the service is a system one or not (set up by socket). */
         }
      }
   }
   implements {
      class.constructor;
      Eo.Base.constructor;
      Evas.Object_Smart.add;
      Elm_Widget.theme_apply;
      Elm_Widget.on_focus;
   }
   events {
      clicked;
      image,deleted;
      image,resized; /*@ ii */
   }

}
