Advertisement
Guest User

Untitled

a guest
May 24th, 2016
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.07 KB | None | 0 0
  1. class SetTaskAsDone implements Runnable, View.OnClickListener {
  2.  
  3. final int taskId;
  4. final boolean done;
  5.  
  6. public SetTaskAsDone(int taskId, boolean done) {
  7.  
  8. this.taskId = taskId;
  9. this.done = done;
  10. }
  11.  
  12. @SuppressWarnings("WrongConstant") @Override
  13. public void run() {
  14.  
  15. int updated = updateTask(done);
  16.  
  17. UndoTaskLayout.make(fragment.getView(), 5000).setAction(this).show();
  18.  
  19. // Snackbar snackbar = Snackbar.make(fragment.getView(),
  20. // "Task Completed", Snackbar.LENGTH_INDEFINITE);
  21. // snackbar.setDuration(5000);
  22. // snackbar.setAction("Undo", this);
  23. // snackbar.show();
  24.  
  25. if (updated != 1) Log.e("TaskUpdateError",
  26. "Set task(id:" + taskId + ") as completed returned " + updated + " instead of 1");
  27.  
  28. TasksAdapter.this.refreshList();
  29. }
  30.  
  31. private int updateTask(boolean b) {
  32. HauteDbHelper dbHelper = HauteDbHelper.getInstance(fragment.getContext());
  33. SQLiteDatabase db = dbHelper.getReadableDatabase();
  34.  
  35. ContentValues cv;
  36.  
  37. if (b) {
  38.  
  39. cv = new ContentValues(2);
  40. cv.put(TasksEntry.COLUMN_DONE, 1);
  41. cv.put(TasksEntry.COLUMN_DONE_DATETIME, System.currentTimeMillis());
  42.  
  43. } else {
  44.  
  45. cv = new ContentValues(1);
  46. cv.put(TasksEntry.COLUMN_DONE, 0);
  47. }
  48.  
  49. return db.update(TasksEntry.TABLE_NAME, cv,
  50. TasksEntry.FULL_ID + " = " + taskId, null);
  51. }
  52.  
  53. @Override
  54. public void onClick(View v) {
  55.  
  56. int updated = updateTask(!done);
  57.  
  58. if (updated != 1) Log.e("TaskUpdateError",
  59. "Set task(id:" + taskId + ") as completed returned " + updated + " instead of 1");
  60.  
  61. TasksAdapter.this.refreshList();
  62. }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement