Example usage for android.support.v4.view MenuItem getSubMenu

List of usage examples for android.support.v4.view MenuItem getSubMenu

Introduction

In this page you can find the example usage for android.support.v4.view MenuItem getSubMenu.

Prototype

@Override
    SubMenu getSubMenu();

Source Link

Usage

From source file:com.actionbarsherlock.internal.view.menu.ActionMenuPresenter.java

@Override
public void onRestoreInstanceState(Parcelable state) {
    SavedState saved = (SavedState) state;
    if (saved.openSubMenuId > 0) {
        MenuItem item = mMenu.findItem(saved.openSubMenuId);
        if (item != null) {
            SubMenuBuilder subMenu = (SubMenuBuilder) item.getSubMenu();
            onSubMenuSelected(subMenu);//w  w  w  . j a  v a 2  s  .co m
        }
    }
}

From source file:com.actionbarsherlock.internal.view.menu.MenuBuilder.java

public void restoreActionViewStates(Bundle states) {
    if (states == null) {
        return;/*w w w .  j  ava  2s  .  co  m*/
    }

    SparseArray<Parcelable> viewStates = states.getSparseParcelableArray(getActionViewStatesKey());

    final int itemCount = size();
    for (int i = 0; i < itemCount; i++) {
        final MenuItem item = getItem(i);
        final View v = item.getActionView();
        if (v != null && v.getId() != View.NO_ID) {
            v.restoreHierarchyState(viewStates);
        }
        if (item.hasSubMenu()) {
            final SubMenuBuilder subMenu = (SubMenuBuilder) item.getSubMenu();
            subMenu.restoreActionViewStates(states);
        }
    }
}

From source file:com.actionbarsherlock.internal.view.menu.MenuBuilder.java

public boolean performItemAction(MenuItem item, int flags) {
    MenuItemImpl itemImpl = (MenuItemImpl) item;

    if (itemImpl == null || !itemImpl.isEnabled()) {
        return false;
    }/*  w  ww .j a v  a  2s  .  c om*/

    boolean invoked = itemImpl.invoke();

    if (item.hasSubMenu()) {
        close(false);

        final SubMenuBuilder subMenu = (SubMenuBuilder) item.getSubMenu();
        invoked |= dispatchSubMenuSelected(subMenu);
        if (!invoked)
            close(true);
    } else {
        if ((flags & FLAG_PERFORM_NO_CLOSE) == 0) {
            close(true);
        }
    }

    return invoked;
}

From source file:com.actionbarsherlock.internal.view.menu.MenuBuilder.java

public void saveActionViewStates(Bundle outStates) {
    SparseArray<Parcelable> viewStates = null;

    final int itemCount = size();
    for (int i = 0; i < itemCount; i++) {
        final MenuItem item = getItem(i);
        final View v = item.getActionView();
        if (v != null && v.getId() != View.NO_ID) {
            if (viewStates == null) {
                viewStates = new SparseArray<Parcelable>();
            }//from  w  ww.  j a va  2s.  c o m
            v.saveHierarchyState(viewStates);
        }
        if (item.hasSubMenu()) {
            final SubMenuBuilder subMenu = (SubMenuBuilder) item.getSubMenu();
            subMenu.saveActionViewStates(outStates);
        }
    }

    if (viewStates != null) {
        outStates.putSparseParcelableArray(getActionViewStatesKey(), viewStates);
    }
}