package com.newsrob.activities;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.Spinner;
import android.widget.TextView;
import com.newsrob.EntryManager;
import com.newsrob.Feed;
import com.newsrob.threetosix.R;
public class ManageFeedActivity extends Activity {
public static final String EXTRA_FEED_ID = "extra_feed_id";
static final int DOWNLOAD_PREF_DEFAULT = 0;
static final int DOWNLOAD_PREF_DONT_DOWNLOAD = 1;
static final int DOWNLOAD_PREF_FEED_ONLY = 2;
static final int DOWNLOAD_PREF_FEED_AND_WEBPAGE = 3;
static final int DISPLAY_PREF_DEFAULT = 0;
static final int DISPLAY_PREF_FEED = 1;
static final int DISPLAY_PREF_WEBPAGE = 2;
private Feed feed;
private Spinner downloadTypeSpinner;
private Spinner displayTypeSpinner;
private CheckBox notificationEnabledCheckBox;
private CheckBox javaScriptEnabledCheckBox;
private CheckBox ftwEnabledCheckBox;
@SuppressWarnings("unchecked")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.manage_feed);
long feedId = getIntent().getExtras().getLong(EXTRA_FEED_ID);
if (feedId == 0l)
finish();
feed = EntryManager.getInstance(this).findFeedById(feedId);
if (feed == null)
finish();
TextView feedTitle = (TextView) findViewById(R.id.feed_title);
feedTitle.setText(feed.getTitle());
// download type
downloadTypeSpinner = (Spinner) findViewById(R.id.download_type_spinner);
ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.download_prefs,
android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
downloadTypeSpinner.setAdapter(adapter);
downloadTypeSpinner.setSelection(feed.getDownloadPref());
// display type
displayTypeSpinner = (Spinner) findViewById(R.id.display_type_spinner);
adapter = ArrayAdapter.createFromResource(this, R.array.display_prefs, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
displayTypeSpinner.setAdapter(adapter);
displayTypeSpinner.setSelection(feed.getDisplayPref());
notificationEnabledCheckBox = (CheckBox) findViewById(R.id.notification_enabled_checkbox);
notificationEnabledCheckBox.setChecked(feed.isNotificationEnabled());
javaScriptEnabledCheckBox = (CheckBox) findViewById(R.id.javascript_enabled_checkbox);
javaScriptEnabledCheckBox.setChecked(feed.isJavaScriptEnabled());
ftwEnabledCheckBox = (CheckBox) findViewById(R.id.ftw_enabled_checkbox);
ftwEnabledCheckBox.setChecked(feed.isFitToWidthEnabled());
Button closeButton = (Button) findViewById(R.id.close_button);
closeButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (feed != null) {
feed.setDownloadPref(downloadTypeSpinner.getSelectedItemPosition());
feed.setDisplayPref(displayTypeSpinner.getSelectedItemPosition());
feed.setNotificationEnabled(notificationEnabledCheckBox.isChecked());
feed.setJavaScriptEnabled(javaScriptEnabledCheckBox.isChecked());
feed.setFitToWidthEnabled(ftwEnabledCheckBox.isChecked());
getEntryManager().updateFeed(feed);
}
finish();
}
});
}
private EntryManager getEntryManager() {
return EntryManager.getInstance(this);
}
}