android-openrat

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

PageElementsActivity.java (2115B)


      1 /**
      2  * 
      3  */
      4 package de.openrat.android.client;
      5 
      6 import java.io.IOException;
      7 import java.util.ArrayList;
      8 import java.util.Arrays;
      9 import java.util.Map;
     10 
     11 import android.app.ListActivity;
     12 import android.content.Intent;
     13 import android.os.Bundle;
     14 import android.view.View;
     15 import android.widget.AdapterView;
     16 import android.widget.ListView;
     17 import android.widget.AdapterView.OnItemClickListener;
     18 import de.openrat.android.client.adapter.SimpleNameAdapter;
     19 import de.openrat.android.client.util.OpenRatClientAsyncTask;
     20 import de.openrat.client.OpenRatClient;
     21 
     22 /**
     23  * @author dankert
     24  * 
     25  */
     26 public class PageElementsActivity extends ListActivity
     27 {
     28 	public static final String ID = "id";
     29 	public static final String CLIENT = "client";
     30 	private String objectid;
     31 	private OpenRatClient client;
     32 
     33 	Map<String, String> data;
     34 
     35 	@Override
     36 	protected void onCreate(Bundle savedInstanceState)
     37 	{
     38 		super.onCreate(savedInstanceState);
     39 
     40 		setContentView(R.layout.listing);
     41 
     42 		client = (OpenRatClient) getIntent().getSerializableExtra(CLIENT);
     43 
     44 		new OpenRatClientAsyncTask(this, R.string.waitingforcontent)
     45 		{
     46 
     47 			@Override
     48 			protected void callServer() throws IOException
     49 			{
     50 				objectid = getIntent().getStringExtra(ID);
     51 				data = client.getPageElements(objectid);
     52 			}
     53 
     54 			protected void doOnSuccess()
     55 			{
     56 				SimpleNameAdapter adapter = new SimpleNameAdapter(
     57 						PageElementsActivity.this, new ArrayList<String>(data
     58 								.values()), android.R.drawable.ic_menu_edit);
     59 				setListAdapter(adapter);
     60 			}
     61 
     62 		}.execute();
     63 
     64 		ListView list = getListView();
     65 		list.setOnItemClickListener(new OnItemClickListener()
     66 		{
     67 
     68 			@Override
     69 			public void onItemClick(AdapterView<?> parent, View view,
     70 					int position, long id)
     71 			{
     72 				String elementid = Arrays.asList(
     73 						data.keySet().toArray(new String[] {})).get(position);
     74 
     75 				Intent intent = new Intent(PageElementsActivity.this,
     76 						EditorActivity.class);
     77 				intent.putExtra(EditorActivity.ELEMENTID, elementid);
     78 				intent.putExtra(EditorActivity.OBJECTID, objectid);
     79 				intent.putExtra(EditorActivity.CLIENT, client);
     80 				startActivity(intent);
     81 			}
     82 		});
     83 
     84 	}
     85 
     86 }