package com.actionbarsherlock.internal.view.menu; import android.content.ComponentName; import android.content.Intent; import android.view.KeyEvent; import android.view.Menu; import android.view.MenuItem; import android.view.SubMenu; /** Used to carry an instance of our version of Menu through a native channel. */ public class MenuMule implements Menu { private static final String ERROR = "Cannot interact with object designed for temporary " + "instance passing. Make sure you using both SherlockFragmentActivity and " + "SherlockFragment."; private final com.actionbarsherlock.view.Menu mMenu; public boolean mDispatchShow = false; public MenuMule(com.actionbarsherlock.view.Menu menu) { mMenu = menu; } public com.actionbarsherlock.view.Menu unwrap() { return mMenu; } @Override public MenuItem add(CharSequence arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem add(int arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem add(int arg0, int arg1, int arg2, CharSequence arg3) { throw new IllegalStateException(ERROR); } @Override public MenuItem add(int arg0, int arg1, int arg2, int arg3) { throw new IllegalStateException(ERROR); } @Override public int addIntentOptions(int arg0, int arg1, int arg2, ComponentName arg3, Intent[] arg4, Intent arg5, int arg6, MenuItem[] arg7) { throw new IllegalStateException(ERROR); } @Override public SubMenu addSubMenu(CharSequence arg0) { throw new IllegalStateException(ERROR); } @Override public SubMenu addSubMenu(int arg0) { throw new IllegalStateException(ERROR); } @Override public SubMenu addSubMenu(int arg0, int arg1, int arg2, CharSequence arg3) { throw new IllegalStateException(ERROR); } @Override public SubMenu addSubMenu(int arg0, int arg1, int arg2, int arg3) { throw new IllegalStateException(ERROR); } @Override public void clear() { throw new IllegalStateException(ERROR); } @Override public void close() { throw new IllegalStateException(ERROR); } @Override public MenuItem findItem(int arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem getItem(int arg0) { throw new IllegalStateException(ERROR); } @Override public boolean hasVisibleItems() { return mMenu.hasVisibleItems(); //throw new IllegalStateException(ERROR); } @Override public boolean isShortcutKey(int arg0, KeyEvent arg1) { throw new IllegalStateException(ERROR); } @Override public boolean performIdentifierAction(int arg0, int arg1) { throw new IllegalStateException(ERROR); } @Override public boolean performShortcut(int arg0, KeyEvent arg1, int arg2) { throw new IllegalStateException(ERROR); } @Override public void removeGroup(int arg0) { throw new IllegalStateException(ERROR); } @Override public void removeItem(int arg0) { throw new IllegalStateException(ERROR); } @Override public void setGroupCheckable(int arg0, boolean arg1, boolean arg2) { throw new IllegalStateException(ERROR); } @Override public void setGroupEnabled(int arg0, boolean arg1) { throw new IllegalStateException(ERROR); } @Override public void setGroupVisible(int arg0, boolean arg1) { throw new IllegalStateException(ERROR); } @Override public void setQwertyMode(boolean arg0) { throw new IllegalStateException(ERROR); } @Override public int size() { throw new IllegalStateException(ERROR); } }