summaryrefslogtreecommitdiffstats
path: root/src/ryuslash/org/dvdroid/AddDVDActivity.java
diff options
context:
space:
mode:
authorGravatar Tom Willemsen2012-08-10 22:03:34 +0200
committerGravatar Tom Willemsen2012-08-10 22:03:34 +0200
commitf30b4fcd3a525d2fa3c2d85fb11e8e7aa3a6a031 (patch)
tree00cdeeb15ca9de3574e9c1e80ece9c849e926eb6 /src/ryuslash/org/dvdroid/AddDVDActivity.java
parent2689fd0c5010d6e97616dfbc8557d0828b3d4064 (diff)
downloaddvdroid-f30b4fcd3a525d2fa3c2d85fb11e8e7aa3a6a031.tar.gz
dvdroid-f30b4fcd3a525d2fa3c2d85fb11e8e7aa3a6a031.zip
Add edit and delete functionality
* res/values/strings.xml: Add strings for `main_context_menu_edit' and `main_context_menu_delete'. * src/ryuslash/org/dvdroid/AddDVDActivity.java (saveDVD): Renamed from `createDVD'. When ID is greater than 0 update, otherwise create. (onCreate): Get ID from the `Intent' that was used to start this activity. If ID is greater than 0, show known information in the inputs. * src/ryuslash/org/dvdroid/DVDDataSource.java: (createValues): (updateDVD): (getById): New functions. (createDVD): Use `createValues' to get the values for the database. (deleteDVD): Add overloaded function that takes a `long', make the original function use this to delete a `DVD'. * src/ryuslash/org/dvdroid/DVDroidActivity.java: Implement `ActionMode.Callback'. (onActivityResult): If REQUESTCODE is `2' reset the intent information so as not to confuse it during its next invocation. Finish action mode. (onActionItemClicked): (onCreateActionMode): (onDestroyActionMode): (onListItemClick): (onPrepareActionMode): (reloadList): (showEditDVD): New functions. (onCreate): Instantiate the ADD_DVD `Intent'.
Diffstat (limited to 'src/ryuslash/org/dvdroid/AddDVDActivity.java')
-rw-r--r--src/ryuslash/org/dvdroid/AddDVDActivity.java34
1 files changed, 29 insertions, 5 deletions
diff --git a/src/ryuslash/org/dvdroid/AddDVDActivity.java b/src/ryuslash/org/dvdroid/AddDVDActivity.java
index f5244c3..cd7b853 100644
--- a/src/ryuslash/org/dvdroid/AddDVDActivity.java
+++ b/src/ryuslash/org/dvdroid/AddDVDActivity.java
@@ -13,8 +13,9 @@ import android.widget.EditText;
public class AddDVDActivity extends Activity
{
private DVDDataSource datasource;
+ private long id;
- public void createDVD()
+ public void saveDVD()
{
EditText name_entry = (EditText)findViewById(R.id.name_entry);
CheckBox watched_entry =
@@ -22,9 +23,15 @@ public class AddDVDActivity extends Activity
CheckBox wishlist_entry =
(CheckBox)findViewById(R.id.wishlist_entry);
- datasource.createDVD(name_entry.getText().toString(),
- watched_entry.isChecked() ? 1 : 0,
- wishlist_entry.isChecked() ? 1 : 0);
+ if (id > 0) {
+ datasource.updateDVD(id, name_entry.getText().toString(),
+ watched_entry.isChecked() ? 1 : 0,
+ wishlist_entry.isChecked() ? 1 : 0);
+ } else {
+ datasource.createDVD(name_entry.getText().toString(),
+ watched_entry.isChecked() ? 1 : 0,
+ wishlist_entry.isChecked() ? 1 : 0);
+ }
}
@Override
@@ -35,6 +42,23 @@ public class AddDVDActivity extends Activity
datasource = new DVDDataSource(this);
datasource.open();
+
+ Intent intent = getIntent();
+ id = intent.getLongExtra(SQLiteHelper.COLUMN_ID, 0l);
+
+ if (id > 0) {
+ DVD dvd = datasource.getById(id);
+ EditText name_entry =
+ (EditText) findViewById(R.id.name_entry);
+ CheckBox watched_entry =
+ (CheckBox) findViewById(R.id.watched_entry);
+ CheckBox wishlist_entry =
+ (CheckBox) findViewById(R.id.wishlist_entry);
+
+ name_entry.setText(dvd.getTitle());
+ watched_entry.setChecked(dvd.getWatched() == 1);
+ wishlist_entry.setChecked(dvd.getWishlist() == 1);
+ }
}
@Override
@@ -57,7 +81,7 @@ public class AddDVDActivity extends Activity
{
switch (item.getItemId()) {
case R.id.add_menu_save:
- createDVD();
+ saveDVD();
finish();
return true;
}