android-ibc-forum

Unnamed repository; edit this file 'description' to name the repository.
git clone http://git.code.weiherhei.de/android-ibc-forum.git
Log | Files | Refs

MailboxActivity.java (3678B)


      1 package de.mtbnews.android;
      2 
      3 import java.util.List;
      4 
      5 import android.app.ListActivity;
      6 import android.content.Intent;
      7 import android.content.SharedPreferences;
      8 import android.os.Bundle;
      9 import android.os.Parcelable;
     10 import android.preference.PreferenceManager;
     11 import android.view.Menu;
     12 import android.view.MenuInflater;
     13 import android.view.MenuItem;
     14 import android.view.View;
     15 import android.widget.AdapterView;
     16 import android.widget.ListAdapter;
     17 import android.widget.ListView;
     18 import android.widget.AdapterView.OnItemClickListener;
     19 import de.mtbnews.android.adapter.ListEntryContentAdapter;
     20 import de.mtbnews.android.tapatalk.TapatalkClient;
     21 import de.mtbnews.android.tapatalk.TapatalkException;
     22 import de.mtbnews.android.tapatalk.wrapper.Mailbox;
     23 import de.mtbnews.android.util.ServerAsyncTask;
     24 import de.mtbnews.android.util.Utils;
     25 
     26 public class MailboxActivity extends ListActivity
     27 {
     28 	private List<Mailbox> mailboxList;
     29 	private SharedPreferences prefs;
     30 
     31 	@Override
     32 	protected void onCreate(Bundle savedInstanceState)
     33 	{
     34 		super.onCreate(savedInstanceState);
     35 
     36 		setTheme(((IBCApplication) getApplication()).themeResId);
     37 		setContentView(R.layout.listing);
     38 
     39 		prefs = PreferenceManager.getDefaultSharedPreferences(this);
     40 
     41 		new ServerAsyncTask(this, R.string.waitingforcontent)
     42 		{
     43 
     44 			@Override
     45 			protected void callServer() throws TapatalkException
     46 			{
     47 				TapatalkClient client = ((IBCApplication) getApplication()).getTapatalkClient();
     48 
     49 				// Login.
     50 				if (Utils.loginExceeded(client))
     51 					client.login(prefs.getString("username", ""), prefs.getString("password", ""));
     52 
     53 				mailboxList = client.getMailbox();
     54 
     55 			}
     56 
     57 			protected void doOnSuccess()
     58 			{
     59 				ListAdapter adapter = new ListEntryContentAdapter(MailboxActivity.this, mailboxList);
     60 				// IBCActivity.this.setTitle(feed.getTitle());
     61 				setListAdapter(adapter);
     62 			}
     63 
     64 		}.execute();
     65 
     66 		final ListView list2 = getListView();
     67 
     68 		list2.setOnItemClickListener(new OnItemClickListener()
     69 		{
     70 
     71 			@Override
     72 			public void onItemClick(AdapterView<?> parent, View view, int position, long id)
     73 			{
     74 				final Mailbox mailbox = mailboxList.get(position);
     75 
     76 				if (Intent.ACTION_CREATE_SHORTCUT.equals(getIntent().getAction()))
     77 				{
     78 
     79 					Intent shortcutIntent = new Intent(MailboxActivity.this, MailActivity.class);
     80 					// Intent shortcutIntent = new Intent(Intent.ACTION_MAIN);
     81 					shortcutIntent.setClassName(MailboxActivity.this, MailActivity.class.getName());
     82 					shortcutIntent.putExtra("box_id", mailbox.getId());
     83 
     84 					// Then, set up the container intent (the response to the
     85 					// caller)
     86 
     87 					Intent intent = new Intent();
     88 					intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
     89 					intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, mailbox.getTitle());
     90 					Parcelable iconResource = Intent.ShortcutIconResource.fromContext(MailboxActivity.this,
     91 							R.drawable.ibc_icon);
     92 					intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconResource);
     93 
     94 					// Now, return the result to the launcher
     95 
     96 					setResult(RESULT_OK, intent);
     97 					finish();
     98 
     99 				}
    100 				else
    101 				{
    102 
    103 					Intent i = new Intent(MailboxActivity.this, MailActivity.class);
    104 					i.putExtra("box_id", mailbox.getId());
    105 					startActivity(i);
    106 				}
    107 			}
    108 		});
    109 
    110 	}
    111 
    112 	@Override
    113 	public boolean onCreateOptionsMenu(Menu menu)
    114 	{
    115 		super.onCreateOptionsMenu(menu);
    116 		MenuInflater mi = new MenuInflater(getApplication());
    117 
    118 		mi.inflate(R.menu.mailbox, menu);
    119 
    120 		return true;
    121 	}
    122 
    123 	public boolean onOptionsItemSelected(MenuItem item)
    124 	{
    125 		switch (item.getItemId())
    126 		{
    127 			case R.id.menu_new_message:
    128 				Intent intent = new Intent(this, ReplyMailActivity.class);
    129 				startActivity(intent);
    130 				return true;
    131 		}
    132 		return false;
    133 	}
    134 
    135 }