add task saving
This commit is contained in:
parent
e19145d13f
commit
f3b6eccfe3
|
@ -8,11 +8,12 @@ import android.view.MenuItem
|
||||||
import android.view.WindowManager
|
import android.view.WindowManager
|
||||||
import com.simplemobiletools.calendar.pro.R
|
import com.simplemobiletools.calendar.pro.R
|
||||||
import com.simplemobiletools.calendar.pro.extensions.config
|
import com.simplemobiletools.calendar.pro.extensions.config
|
||||||
|
import com.simplemobiletools.calendar.pro.extensions.seconds
|
||||||
|
import com.simplemobiletools.calendar.pro.helpers.*
|
||||||
import com.simplemobiletools.calendar.pro.helpers.Formatter
|
import com.simplemobiletools.calendar.pro.helpers.Formatter
|
||||||
import com.simplemobiletools.calendar.pro.helpers.NEW_EVENT_START_TS
|
|
||||||
import com.simplemobiletools.calendar.pro.helpers.TASK_ID
|
|
||||||
import com.simplemobiletools.calendar.pro.models.Task
|
import com.simplemobiletools.calendar.pro.models.Task
|
||||||
import com.simplemobiletools.commons.extensions.*
|
import com.simplemobiletools.commons.extensions.*
|
||||||
|
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
|
||||||
import kotlinx.android.synthetic.main.activity_task.*
|
import kotlinx.android.synthetic.main.activity_task.*
|
||||||
import org.joda.time.DateTime
|
import org.joda.time.DateTime
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
@ -50,7 +51,7 @@ class TaskActivity : SimpleActivity() {
|
||||||
|
|
||||||
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
||||||
when (item.itemId) {
|
when (item.itemId) {
|
||||||
R.id.save -> saveCurrentTask()
|
R.id.save -> saveTask()
|
||||||
R.id.delete -> deleteTask()
|
R.id.delete -> deleteTask()
|
||||||
R.id.duplicate -> duplicateTask()
|
R.id.duplicate -> duplicateTask()
|
||||||
else -> return super.onOptionsItemSelected(item)
|
else -> return super.onOptionsItemSelected(item)
|
||||||
|
@ -88,7 +89,31 @@ class TaskActivity : SimpleActivity() {
|
||||||
updateActionBarTitle(getString(R.string.new_task))
|
updateActionBarTitle(getString(R.string.new_task))
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun saveCurrentTask() {}
|
private fun saveTask() {
|
||||||
|
val newTitle = task_title.value
|
||||||
|
if (newTitle.isEmpty()) {
|
||||||
|
toast(R.string.title_empty)
|
||||||
|
runOnUiThread {
|
||||||
|
task_title.requestFocus()
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
mTask.apply {
|
||||||
|
startTS = mTaskDateTime.withSecondOfMinute(0).withMillisOfSecond(0).seconds()
|
||||||
|
title = newTitle
|
||||||
|
description = task_description.value
|
||||||
|
flags = mTask.flags.addBitIf(task_all_day.isChecked, FLAG_ALL_DAY)
|
||||||
|
lastUpdated = System.currentTimeMillis()
|
||||||
|
}
|
||||||
|
|
||||||
|
ensureBackgroundThread {
|
||||||
|
TasksHelper(this).insertTask(mTask) {
|
||||||
|
hideKeyboard()
|
||||||
|
finish()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private fun deleteTask() {}
|
private fun deleteTask() {}
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ class EventsHelper(val context: Context) {
|
||||||
private val eventsDB = context.eventsDB
|
private val eventsDB = context.eventsDB
|
||||||
private val eventTypesDB = context.eventTypesDB
|
private val eventTypesDB = context.eventTypesDB
|
||||||
|
|
||||||
fun getEventTypes(activity: Activity, showWritableOnly: Boolean, callback: (notes: ArrayList<EventType>) -> Unit) {
|
fun getEventTypes(activity: Activity, showWritableOnly: Boolean, callback: (eventTypes: ArrayList<EventType>) -> Unit) {
|
||||||
ensureBackgroundThread {
|
ensureBackgroundThread {
|
||||||
var eventTypes = ArrayList<EventType>()
|
var eventTypes = ArrayList<EventType>()
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
package com.simplemobiletools.calendar.pro.helpers
|
||||||
|
|
||||||
|
import android.app.Activity
|
||||||
|
import android.content.Context
|
||||||
|
import com.simplemobiletools.calendar.pro.extensions.eventTypesDB
|
||||||
|
import com.simplemobiletools.calendar.pro.extensions.tasksDB
|
||||||
|
import com.simplemobiletools.calendar.pro.extensions.updateWidgets
|
||||||
|
import com.simplemobiletools.calendar.pro.models.EventType
|
||||||
|
import com.simplemobiletools.calendar.pro.models.Task
|
||||||
|
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
|
||||||
|
|
||||||
|
class TasksHelper(val context: Context) {
|
||||||
|
private val tasksDB = context.tasksDB
|
||||||
|
private val eventTypesDB = context.eventTypesDB
|
||||||
|
|
||||||
|
fun getEventTypes(activity: Activity, callback: (notes: ArrayList<EventType>) -> Unit) {
|
||||||
|
ensureBackgroundThread {
|
||||||
|
var eventTypes = ArrayList<EventType>()
|
||||||
|
try {
|
||||||
|
eventTypes = eventTypesDB.getEventTypes().toMutableList() as ArrayList<EventType>
|
||||||
|
} catch (ignored: Exception) {
|
||||||
|
}
|
||||||
|
|
||||||
|
activity.runOnUiThread {
|
||||||
|
callback(eventTypes)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fun insertTask(task: Task, callback: () -> Unit) {
|
||||||
|
tasksDB.insertOrUpdate(task)
|
||||||
|
context.updateWidgets()
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue