@Override public boolean onContextItemSelected(MenuItem item) { FFXICharacter charInfo = getFFXICharacter(); BlueMagicSetView ms; ms = (BlueMagicSetView) findViewById(R.id.Magics); switch (item.getItemId()) { case R.id.Set: charInfo.setBlueMagic(ms.getItemId(mLongClickingItemPosition), true); updateValues(); return true; case R.id.Remove: charInfo.setBlueMagic(ms.getItemId(mLongClickingItemPosition), false); updateValues(); return true; case R.id.RemoveAll: while (charInfo.getNumBlueMagic() > 0) { charInfo.setBlueMagic(charInfo.getBlueMagic(0).getId(), false); } updateValues(); return true; } return super.onContextItemSelected(item); }
@Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.bluemagicset_context, menu); BlueMagicSetView ms; boolean set; ms = (BlueMagicSetView) findViewById(R.id.Magics); set = getFFXICharacter().isBlueMagicSet(ms.getItemId(mLongClickingItemPosition)); MenuItem item; item = menu.findItem(R.id.Remove); if (item != null) item.setEnabled(set); item = menu.findItem(R.id.Set); if (item != null) item.setEnabled(!set); }
public void updateValues() { FFXICharacter charInfo = getFFXICharacter(); if (mUpdating) return; mUpdating = true; BlueMagicSetView ms; ms = (BlueMagicSetView) findViewById(R.id.Magics); if (ms != null) { ms.bindFFXICharacter(charInfo); } BlueMagicSelectionStatusView bmss; bmss = (BlueMagicSelectionStatusView) findViewById(R.id.StatusView); if (bmss != null) { bmss.bindFFXICharacter(charInfo); } mUpdating = false; }
@Override public void onStart() { super.onStart(); FFXICharacter charInfo = getFFXICharacter(); // setup controls { BlueMagicSetView ms; ms = (BlueMagicSetView) findViewById(R.id.Magics); if (ms != null) { ms.bindFFXICharacter(charInfo); ms.setOnItemClickListener( new OnItemClickListener() { public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {} }); ms.setOnItemLongClickListener( new OnItemLongClickListener() { public boolean onItemLongClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { mLongClickingItemPosition = arg2; openContextMenu(arg0); return true; } }); registerForContextMenu(ms); } } { BlueMagicSelectionStatusView bmss; bmss = (BlueMagicSelectionStatusView) findViewById(R.id.StatusView); if (bmss != null) { bmss.bindFFXICharacter(charInfo); } } }