diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2012-07-13 12:23:47 +0200 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2012-07-13 12:23:47 +0200 |
commit | ba2d2afbbc6cbb79fc75493703425b5d6d040530 (patch) | |
tree | e731a1209160e8224679cb238c0a964c3e757590 /src/de/danoeh/antennapod/fragment/QueueFragment.java | |
parent | 1ae00a0f2531fdb05a44877dda88ee2300e3ffec (diff) | |
download | AntennaPod-ba2d2afbbc6cbb79fc75493703425b5d6d040530.zip |
Renamed package and application
Diffstat (limited to 'src/de/danoeh/antennapod/fragment/QueueFragment.java')
-rw-r--r-- | src/de/danoeh/antennapod/fragment/QueueFragment.java | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/src/de/danoeh/antennapod/fragment/QueueFragment.java b/src/de/danoeh/antennapod/fragment/QueueFragment.java new file mode 100644 index 000000000..ff2a682ad --- /dev/null +++ b/src/de/danoeh/antennapod/fragment/QueueFragment.java @@ -0,0 +1,104 @@ +package de.danoeh.antennapod.fragment; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.os.Bundle; + +import com.actionbarsherlock.view.ActionMode; +import com.actionbarsherlock.view.Menu; +import com.actionbarsherlock.view.MenuInflater; +import com.actionbarsherlock.view.MenuItem; + +import de.danoeh.antennapod.feed.FeedManager; +import de.danoeh.antennapod.R; + +public class QueueFragment extends ItemlistFragment { + + public QueueFragment() { + super(FeedManager.getInstance().getQueue(), true); + } + + @Override + public boolean onCreateActionMode(ActionMode mode, Menu menu) { + super.onCreateActionMode(mode, menu); + menu.add(Menu.NONE, R.id.move_up_item, Menu.NONE, + R.string.move_up_label); + menu.add(Menu.NONE, R.id.move_down_item, Menu.NONE, + R.string.move_down_label); + return true; + } + + @Override + public void onPause() { + super.onPause(); + try { + getActivity().unregisterReceiver(queueUpdate); + } catch (IllegalArgumentException e) { + + } + } + + @Override + public void onResume() { + super.onResume(); + getActivity().registerReceiver(queueUpdate, + new IntentFilter(FeedManager.ACTION_QUEUE_UPDATE)); + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setHasOptionsMenu(true); + } + + @Override + public boolean onActionItemClicked(ActionMode mode, MenuItem item) { + boolean handled = false; + switch (item.getItemId()) { + case R.id.move_up_item: + manager.moveQueueItem(getActivity(), selectedItem, -1); + handled = true; + break; + case R.id.move_down_item: + manager.moveQueueItem(getActivity(), selectedItem, 1); + handled = true; + break; + default: + handled = super.onActionItemClicked(mode, item); + } + fila.notifyDataSetChanged(); + mode.finish(); + return handled; + } + + private BroadcastReceiver queueUpdate = new BroadcastReceiver() { + + @Override + public void onReceive(Context context, Intent intent) { + fila.notifyDataSetChanged(); + } + + }; + + @Override + public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { + super.onCreateOptionsMenu(menu, inflater); + menu.add(Menu.NONE, R.id.clear_queue_item, Menu.NONE, getActivity() + .getString(R.string.clear_queue_label)); + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.clear_queue_item: + manager.clearQueue(getActivity()); + break; + default: + return false; + } + return true; + } + +} |