class Elm_Panes (Elm_Layout)
{
   eo_prefix: elm_obj_panes;
   properties {
      content_left_size {
         set {
            /*@
            @MOBILE_ONLY

            @brief Set the size proportion of panes widget's left side.

            @if MOBILE @since_tizen 2.3
            @endif

            @remark By default it's homogeneous, i.e., both sides have the same size.

            @remark If something different is required, it can be set with this function.
            For example, if the left content should be displayed over
            75% of the panes size, @p size should be passed as @c 0.75.
            This way, right content will be resized to 25% of panes size.

            @remark If displayed vertically, left content is displayed at top, and
            right content at bottom.

            @remark This proportion will change when user drags the panes bar.

            @see elm_panes_content_left_size_get()

            @ingroup Panes */
         }
         get {
            /*@
            @MOBILE_ONLY

            @brief Get the size proportion of panes widget's left side.

            @if MOBILE @since_tizen 2.3
            @endif

            @return float value between 0.0 and 1.0 representing size proportion
            of left side.

            @see elm_panes_content_left_size_set() for more details.

            @ingroup Panes */
         }
         values {
            double size; /*@ Value between 0.0 and 1.0 representing size proportion
            of left side. */
         }
      }
      horizontal {
         set {
            /*@
            @MOBILE_ONLY

            @brief Set how to split and dispose each content.

            @if MOBILE @since_tizen 2.3
            @endif

            @remark Use this function to change how your panes is to be disposed:
            vertically or horizontally.
            Horizontal panes have "top" and "bottom" contents, vertical panes have
            "left" and "right" contents.

            @remark By default panes is in a vertical mode.

            @see elm_panes_horizontal_get()

            @ingroup Panes */
         }
         get {
            /*@
            @MOBILE_ONLY

            @brief Get the split direction of a given panes widget.

            @if MOBILE @since_tizen 2.3
            @endif

            @return @c EINA_TRUE, if @p obj is set to be @b horizontal,
            @c EINA_FALSE if it's @b vertical (and on errors).

            @see elm_panes_horizontal_set() for more details.

            @ingroup Panes */
         }
         values {
            bool horizontal; /*@ Use @c EINA_TRUE to make @p obj to split panes
            horizontally ("top" and "bottom" contents). @c EINA_FALSE to make it
            vertically ("left" and "right" contents) */
         }
      }
      fixed {
         set {
            /*@
            @MOBILE_ONLY

            @brief Set whether the left and right panes can be resized by user interaction.

            @if MOBILE @since_tizen 2.3
            @endif

            @remark By default panes' contents are resizable by user interaction.

            @see elm_panes_fixed_get()
            @see elm_panes_content_left_size_set()
            @see elm_panes_content_right_size_set()

            @ingroup Panes */
         }
         get {
            /*@
            @MOBILE_ONLY

            @brief Get the resize mode for the panes of a given panes widget.

            @if MOBILE @since_tizen 2.3
            @endif

            @return @c EINA_TRUE, if @p obj is set to be resizable by user interaction.

            @see elm_panes_fixed_set() for more details.
            @see elm_panes_content_left_size_get()
            @see elm_panes_content_right_size_get()

            @ingroup Panes */
         }
         values {
            bool fixed; /*@ Use @c EINA_TRUE to fix the left and right panes sizes and make
            them not to be resized by user interaction. Use @c EINA_FALSE to make them
            resizable. */
         }
      }
      content_right_size {
         set {
            /*@
            @MOBILE_ONLY

            @brief Set the size proportion of panes widget's right side.

            @if MOBILE @since_tizen 2.3
            @endif

            @remark By default it's homogeneous, i.e., both sides have the same size.

            @remark If something different is required, it can be set with this function.
            For example, if the right content should be displayed over
            75% of the panes size, @p size should be passed as @c 0.75.
            This way, left content will be resized to 25% of panes size.

            @remark If displayed vertically, left content is displayed at top, and
            right content at bottom.

            @remark This proportion will change when user drags the panes bar.

            @see elm_panes_content_right_size_get()

            @ingroup Panes */
         }
         get {
            /*@
            @MOBILE_ONLY

            @brief Get the size proportion of panes widget's right side.

            @if MOBILE @since_tizen 2.3
            @endif

            @return float value between 0.0 and 1.0 representing size proportion
            of right side.

            @see elm_panes_content_right_size_set() for more details.

            @ingroup Panes */
         }
         values {
            double size; /*@ Value between 0.0 and 1.0 representing size proportion
            of right side. */
         }
      }
      content_left_min_relative_size {
         set {
            /*@
             @internal

             Set the relative minimum size of panes widget's left side.

             @param obj The panes object.
             @param size double value between 0.0 and 1.0 representing size
             proportion of minimum size of left side.

             @see elm_panes_content_left_min_size_relative_get()

             @ingroup Panes */
         }
         get {
            /*@
             @internal

             Get the relative minimum size of panes widget's left side.

             @param obj The panes object.
             @return double value between 0.0 and 1.0 representing size proportion
             of minimum size of left side.

             @see elm_panes_content_left_min_relative_size_set() for more details.

             @ingroup Panes */
         }
         values {
            double size; /*@ value between 0.0 and 1.0 representing size proportion
                           of minimum size of left side. */
         }
      }
      content_right_min_relative_size {
         set {
            /*@
             @internal

             Set the relative minimum size of panes widget's right side.

             @param obj The panes object.
             @param size double value between 0.0 and 1.0 representing size proportion
             of minimum size of right side.

             @see elm_panes_content_right_min_relative_size_get()

             @ingroup Panes */
         }
         get {
            /*@
             @internal

             Get the relative minimum size of panes widget's right side.

             @param obj The panes object.
             @return double value between 0.0 and 1.0 representing size proportion
             of minimum size of right side.

             @see elm_panes_content_right_min_size_set() for more details.

             @ingroup Panes */
         }
         values {
            double size; /*@ value between 0.0 and 1.0 representing size proportion
                           of minimum size of right side. */
         }
      }
      content_left_min_size {
         set {
            /*@
            @internal

            Set the absolute minimum size of panes widget's left side.

            @param obj The panes object.
            @param size int value representing minimum size of left side in pixels.

            @see elm_panes_content_left_min_size_get()

            @ingroup Panes */
         }
         get {
            /*@
            @internal

            Get the absolute minimum size of panes widget's left side.

            @param obj The panes object.
            @retur int value representing minimum size of left side in pixels.

            @see elm_panes_content_left_min_size_set() for more details.

            @ingroup Panes */
         }
         values {
            Evas_Coord size; /*@ value representing minimum size of left side
                               in pixels. */
         }
      }
      content_right_min_size {
         set {
            /*@
            @internal

            Set the absolute minimum size of panes widget's right side.

            @param obj The panes object.
            @param size int value representing minimum size of right side in pixels.

            @see elm_panes_content_right_min_size_get()

            @ingroup Panes */
         }
         get {
            /*@
            @internal

            Get the absolute minimum size of panes widget's right side.

            @param obj The panes object.
            @retur int value representing minimum size of right side in pixels.

            @see elm_panes_content_right_min_size_set() for more details.

            @ingroup Panes */
         }
         values {
            Evas_Coord size; /*@ value representing minimum size of right side
                               in pixels. */
         }
      }
   }
   implements {
      class.constructor;
      Eo.Base.constructor;
      Evas.Object_Smart.add;
      Elm_Widget.focus_next_manager_is;
      Elm_Widget.focus_next;
      Elm_Widget.theme_apply;
      Elm_Layout.content_aliases.get;
   }
   events {
      clicked;
      press;
      unpress;
      clicked,double;
   }

}
