class Elm.Naviframe_Item(Elm.Widget_Item)
{
   eo_prefix: elm_obj_naviframe_item;
   methods {
        @property style {
             get {
                 [[Get an item style.

                   \@if MOBILE \@since_tizen 2.3
                   \@elseif WEARABLE \@since_tizen 2.3.1
                   \@endif
                 ]]
             }
             set {
                 [[Set an item style.

                   \@if MOBILE \@since_tizen 2.3
                   \@elseif WEARABLE \@since_tizen 2.3.1
                   \@endif
                 ]]
             }
             values {
                 style: const (char) * @nullable; [[The current item style name. $null would be default]]
             }
        }
      pop_to {
            [[Pop the top item and delete the items between the top and the
              above one on the given item.

              The items between the top and the given item will be deleted
              first, and then the top item will be popped at last.

              Warning: The pop callback function set by
              elm_naviframe_item_pop_cb_set is not called for items between the
              top item and the destination item since those items are deleted
              without being popped.

              \@if MOBILE \@since_tizen 2.3
              \@elseif WEARABLE \@since_tizen 2.3.1
              \@endif
            ]]
        }
      title_enabled_get @const {
            [[Get a value whether title area is enabled or not.

              \@if MOBILE \@since_tizen 2.3
              \@elseif WEARABLE \@since_tizen 2.3.1
              \@endif
            ]]
            return: bool; [[If $true, title area will be enabled, disabled otherwise]]
        }
      title_enabled_set {
            [[Enable/Disable the title area with transition effect

              When the title area is disabled, then the controls would be
              hidden so as to expand the content area to full-size.

              \@if MOBILE \@since_tizen 2.3
              \@elseif WEARABLE \@since_tizen 2.3.1
              \@endif
            ]]
            params {
                @in enable: bool; [[If $true, title area will be enabled, disabled otherwise]]
                @in transition: bool; [[If $true, transition effect of the title will be visible, invisible otherwise]]
            }
        }
      promote {
            [[Promote an item already in the naviframe stack to the top of
              the stack.

              This will take the indicated item and promote it to the top of
              the stack as if it had been pushed there. The item must already
              be inside the naviframe stack to work.

              \@if MOBILE \@since_tizen 2.3
              \@elseif WEARABLE \@since_tizen 2.3.1
              \@endif
            ]]
        }

      pop_cb_set {
            [[Set a function to be called when an item of the naviframe is
              going to be popped.

              Warning: Don't set "clicked" callback to the prev button
              additionally if the function does an exact same logic with
              this $func. When hardware back key is pressed then both
              callbacks will be called.
              Warning: The pop callback function is called only if the item is
              popped. Therefore, the pop callback function is not called if the
              item is deleted without being popped.

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

              @since 1.8
            ]]
            params {
                  @in func: Elm_Naviframe_Item_Pop_Cb @nullable; [[The callback function.]]
                  @in data: void * @optional; [[Data to be passed to func call.]]
            }
        }
   }
   implements {
        Eo.Base.constructor;
        Eo.Base.destructor;
        Elm.Widget_Item.signal_emit;
        Elm.Widget_Item.part_text.set;
        Elm.Widget_Item.part_text.get;
        Elm.Widget_Item.part_content.get;
        Elm.Widget_Item.part_content.set;
        Elm.Widget_Item.part_content_unset;
        //TIZEN_ONLY(20161213) Using VIEW(item) for naviframe, naviframe item accessible information
        Elm_Interface_Atspi_Accessible.name.get;
        Elm_Interface_Atspi_Accessible.name.set;
        Elm_Interface_Atspi_Accessible.description.set;
        Elm_Interface_Atspi_Accessible.description.get;
        //
   }
}
