aboutsummaryrefslogtreecommitdiffstats
path: root/com_actionbarsherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java
diff options
context:
space:
mode:
Diffstat (limited to 'com_actionbarsherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java')
-rw-r--r--com_actionbarsherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java150
1 files changed, 150 insertions, 0 deletions
diff --git a/com_actionbarsherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java b/com_actionbarsherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java
new file mode 100644
index 000000000..183e87a56
--- /dev/null
+++ b/com_actionbarsherlock/src/com/actionbarsherlock/internal/view/menu/MenuMule.java
@@ -0,0 +1,150 @@
+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 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);
+ }
+}