package com.actionbarsherlock.internal.view.menu; import android.annotation.TargetApi; import android.content.Intent; import android.graphics.drawable.Drawable; import android.view.ActionProvider; import android.view.MenuItem; import android.view.SubMenu; import android.view.View; import android.view.ContextMenu.ContextMenuInfo; /** Used to carry an instance of our version of MenuItem through a native channel. */ @TargetApi(14) public class MenuItemMule implements MenuItem { 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.MenuItem mItem; public MenuItemMule(com.actionbarsherlock.view.MenuItem item) { mItem = item; } public com.actionbarsherlock.view.MenuItem unwrap() { return mItem; } @Override public boolean collapseActionView() { throw new IllegalStateException(ERROR); } @Override public boolean expandActionView() { throw new IllegalStateException(ERROR); } @Override public ActionProvider getActionProvider() { throw new IllegalStateException(ERROR); } @Override public View getActionView() { throw new IllegalStateException(ERROR); } @Override public char getAlphabeticShortcut() { throw new IllegalStateException(ERROR); } @Override public int getGroupId() { throw new IllegalStateException(ERROR); } @Override public Drawable getIcon() { throw new IllegalStateException(ERROR); } @Override public Intent getIntent() { throw new IllegalStateException(ERROR); } @Override public int getItemId() { throw new IllegalStateException(ERROR); } @Override public ContextMenuInfo getMenuInfo() { throw new IllegalStateException(ERROR); } @Override public char getNumericShortcut() { throw new IllegalStateException(ERROR); } @Override public int getOrder() { throw new IllegalStateException(ERROR); } @Override public SubMenu getSubMenu() { throw new IllegalStateException(ERROR); } @Override public CharSequence getTitle() { throw new IllegalStateException(ERROR); } @Override public CharSequence getTitleCondensed() { return mItem.getTitleCondensed(); //throw new IllegalStateException(ERROR); } @Override public boolean hasSubMenu() { throw new IllegalStateException(ERROR); } @Override public boolean isActionViewExpanded() { throw new IllegalStateException(ERROR); } @Override public boolean isCheckable() { throw new IllegalStateException(ERROR); } @Override public boolean isChecked() { throw new IllegalStateException(ERROR); } @Override public boolean isEnabled() { throw new IllegalStateException(ERROR); } @Override public boolean isVisible() { throw new IllegalStateException(ERROR); } @Override public MenuItem setActionProvider(ActionProvider arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setActionView(View arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setActionView(int arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setAlphabeticShortcut(char arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setCheckable(boolean arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setChecked(boolean arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setEnabled(boolean arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setIcon(Drawable arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setIcon(int arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setIntent(Intent arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setNumericShortcut(char arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setOnActionExpandListener(OnActionExpandListener arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setOnMenuItemClickListener(OnMenuItemClickListener arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setShortcut(char arg0, char arg1) { throw new IllegalStateException(ERROR); } @Override public void setShowAsAction(int arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setShowAsActionFlags(int arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setTitle(CharSequence arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setTitle(int arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setTitleCondensed(CharSequence arg0) { throw new IllegalStateException(ERROR); } @Override public MenuItem setVisible(boolean arg0) { throw new IllegalStateException(ERROR); } }