83 lines
2.1 KiB
Java
83 lines
2.1 KiB
Java
package com.benith.mailiverse;
|
|
|
|
import core.callback.CallbackDefault;
|
|
import mail.client.Events;
|
|
import mail.client.model.Conversation;
|
|
import android.content.Context;
|
|
import android.content.Intent;
|
|
import android.view.LayoutInflater;
|
|
import android.view.View;
|
|
import android.view.View.OnClickListener;
|
|
import android.widget.AdapterView.OnItemClickListener;
|
|
import android.widget.AdapterView;
|
|
import android.widget.Button;
|
|
import android.widget.ListView;
|
|
|
|
public class FolderView extends ViewContainer
|
|
{
|
|
ListView list;
|
|
MainActivity context;
|
|
ConversationListAdapter conversationListAdapter;
|
|
|
|
public FolderView(MainActivity context)
|
|
{
|
|
this.context = context;
|
|
|
|
LayoutInflater inflater = LayoutInflater.from(context);
|
|
view = inflater.inflate(R.layout.folder, null);
|
|
|
|
conversationListAdapter = new ConversationListAdapter(view.getContext());
|
|
list = (ListView) view.findViewById(R.id.conversationList);
|
|
list.setOnItemClickListener(listener);
|
|
list.setAdapter(conversationListAdapter);
|
|
|
|
Button backButton = (Button) view.findViewById(R.id.folderRevealButton);
|
|
backButton.setOnClickListener(new OnClickListener() {
|
|
public void onClick(View v) {
|
|
FolderView.this.context.getSlidingMenu().showMenu(true);
|
|
}
|
|
});
|
|
|
|
setupEvents();
|
|
}
|
|
|
|
public void setupEvents ()
|
|
{
|
|
Application.getInstance().state.client.getMaster().getEventPropagator().add(
|
|
Events.Initialized, this, new CallbackDefault() {
|
|
public void onSuccess(Object... arguments) throws Exception {
|
|
chooseInitialFolder();
|
|
}
|
|
}
|
|
);
|
|
|
|
}
|
|
|
|
public void chooseInitialFolder ()
|
|
{
|
|
conversationListAdapter.setFolder(
|
|
Application.getInstance().state.client.getMaster().getIndexer().getInbox()
|
|
);
|
|
}
|
|
|
|
|
|
public View getView ()
|
|
{
|
|
return view;
|
|
}
|
|
|
|
OnItemClickListener listener = new OnItemClickListener() {
|
|
|
|
@Override
|
|
public void onItemClick(AdapterView<?> parent, View v, int position, long id)
|
|
{
|
|
Application.getInstance().state.conversation =
|
|
(Conversation)conversationListAdapter.getItem(position);
|
|
|
|
Intent intent = new Intent(context, ConversationActivity.class);
|
|
context.startActivity(intent);
|
|
}
|
|
|
|
};
|
|
}
|