package com.code44.finance.ui.tags;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.content.CursorLoader;
import android.util.Pair;
import android.view.Menu;
import android.widget.TextView;
import com.code44.finance.R;
import com.code44.finance.data.db.Tables;
import com.code44.finance.data.model.Tag;
import com.code44.finance.data.providers.TagsProvider;
import com.code44.finance.ui.common.ModelActivity;
import com.code44.finance.utils.analytics.Analytics;
public class TagActivity extends ModelActivity<Tag> {
private TextView titleTextView;
public static void start(Context context, String tagId) {
final Intent intent = makeIntent(context, TagActivity.class, tagId);
startActivity(context, intent);
}
@Override public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
menu.findItem(R.id.action_settings).setVisible(false);
return true;
}
@Override protected int getLayoutId() {
return R.layout.activity_tag;
}
@Override protected void onViewCreated(Bundle savedInstanceState) {
super.onViewCreated(savedInstanceState);
// Get views
titleTextView = (TextView) findViewById(R.id.titleTextView);
}
@Override protected CursorLoader getModelCursorLoader(String modelId) {
return Tables.Tags.getQuery().asCursorLoader(this, TagsProvider.uriTag(modelId));
}
@Override protected Tag getModelFrom(Cursor cursor) {
return Tag.from(cursor);
}
@Override protected void onModelLoaded(Tag model) {
titleTextView.setText(model.getTitle());
}
@Override protected Uri getDeleteUri() {
return TagsProvider.uriTags();
}
@Override protected Pair<String, String[]> getDeleteSelection() {
return Pair.create(Tables.Tags.ID + "=?", new String[]{String.valueOf(modelId)});
}
@Override protected void startModelEdit(String modelId) {
TagEditActivity.start(this, modelId);
}
@Override protected Analytics.Screen getScreen() {
return Analytics.Screen.Tag;
}
}