|
|
@ -3,12 +3,14 @@ package org.tasks.data
|
|
|
|
import androidx.room.ColumnInfo
|
|
|
|
import androidx.room.ColumnInfo
|
|
|
|
import androidx.room.Embedded
|
|
|
|
import androidx.room.Embedded
|
|
|
|
import com.todoroo.astrid.data.Task
|
|
|
|
import com.todoroo.astrid.data.Task
|
|
|
|
|
|
|
|
import org.tasks.data.CaldavAccount.Companion.TYPE_GOOGLE_TASKS
|
|
|
|
|
|
|
|
import org.tasks.data.CaldavAccount.Companion.TYPE_MICROSOFT
|
|
|
|
|
|
|
|
|
|
|
|
data class TaskContainer(
|
|
|
|
data class TaskContainer(
|
|
|
|
@Embedded val task: Task,
|
|
|
|
@Embedded val task: Task,
|
|
|
|
@Embedded val caldavTask: CaldavTask? = null,
|
|
|
|
@Embedded val caldavTask: CaldavTask? = null,
|
|
|
|
@Embedded val location: Location? = null,
|
|
|
|
@Embedded val location: Location? = null,
|
|
|
|
val isGoogleTask: Boolean = false,
|
|
|
|
val accountType: Int = CaldavAccount.TYPE_LOCAL,
|
|
|
|
val parentComplete: Boolean = false,
|
|
|
|
val parentComplete: Boolean = false,
|
|
|
|
@ColumnInfo(name = "tags") val tagsString: String? = null,
|
|
|
|
@ColumnInfo(name = "tags") val tagsString: String? = null,
|
|
|
|
val children: Int = 0,
|
|
|
|
val children: Int = 0,
|
|
|
@ -18,6 +20,15 @@ data class TaskContainer(
|
|
|
|
var indent: Int = 0,
|
|
|
|
var indent: Int = 0,
|
|
|
|
var targetIndent: Int = 0,
|
|
|
|
var targetIndent: Int = 0,
|
|
|
|
){
|
|
|
|
){
|
|
|
|
|
|
|
|
val isGoogleTask: Boolean
|
|
|
|
|
|
|
|
get() = accountType == TYPE_GOOGLE_TASKS
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
val isSingleLevelSubtask: Boolean
|
|
|
|
|
|
|
|
get() = when (accountType) {
|
|
|
|
|
|
|
|
TYPE_GOOGLE_TASKS, TYPE_MICROSOFT -> true
|
|
|
|
|
|
|
|
else -> false
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
val caldav: String?
|
|
|
|
val caldav: String?
|
|
|
|
get() = caldavTask?.calendar
|
|
|
|
get() = caldavTask?.calendar
|
|
|
|
|
|
|
|
|
|
|
|