create an isPastEvent inline variable for the model

This commit is contained in:
tibbi
2018-11-12 23:47:58 +01:00
parent 4ac956d315
commit 5ec19501f3
8 changed files with 34 additions and 34 deletions

View File

@@ -119,7 +119,7 @@ class DayEventsAdapter(activity: SimpleActivity, val events: ArrayList<Event>, r
} }
var newTextColor = textColor var newTextColor = textColor
if (dimPastEvents && event.getIsPastEvent()) { if (dimPastEvents && event.isPastEvent) {
newTextColor = newTextColor.adjustAlpha(LOW_ALPHA) newTextColor = newTextColor.adjustAlpha(LOW_ALPHA)
} }

View File

@@ -174,7 +174,7 @@ class EventListWidgetAdapter(val context: Context) : RemoteViewsService.RemoteVi
prevCode = code prevCode = code
} }
val listEvent = ListEvent(it.id!!, it.startTS, it.endTS, it.title, it.description, it.getIsAllDay(), it.color, it.location, it.getIsPastEvent(), it.repeatInterval > 0) val listEvent = ListEvent(it.id!!, it.startTS, it.endTS, it.title, it.description, it.getIsAllDay(), it.color, it.location, it.isPastEvent, it.repeatInterval > 0)
listItems.add(listEvent) listItems.add(listEvent)
} }

View File

@@ -425,7 +425,7 @@ fun Context.getEventListItems(events: List<Event>): ArrayList<ListItem> {
listItems.add(listSection) listItems.add(listSection)
prevCode = code prevCode = code
} }
val listEvent = ListEvent(it.id!!, it.startTS, it.endTS, it.title, it.description, it.getIsAllDay(), it.color, it.location, it.getIsPastEvent(), it.repeatInterval > 0) val listEvent = ListEvent(it.id!!, it.startTS, it.endTS, it.title, it.description, it.getIsAllDay(), it.color, it.location, it.isPastEvent, it.repeatInterval > 0)
listItems.add(listEvent) listItems.add(listEvent)
} }
return listItems return listItems

View File

@@ -270,7 +270,7 @@ class WeekFragment : Fragment(), WeeklyCalendar {
(inflater.inflate(R.layout.week_event_marker, null, false) as TextView).apply { (inflater.inflate(R.layout.week_event_marker, null, false) as TextView).apply {
var backgroundColor = eventTypeColors.get(event.eventType, primaryColor) var backgroundColor = eventTypeColors.get(event.eventType, primaryColor)
var textColor = backgroundColor.getContrastColor() var textColor = backgroundColor.getContrastColor()
if (dimPastEvents && event.getIsPastEvent()) { if (dimPastEvents && event.isPastEvent) {
backgroundColor = backgroundColor.adjustAlpha(LOW_ALPHA) backgroundColor = backgroundColor.adjustAlpha(LOW_ALPHA)
textColor = textColor.adjustAlpha(LOW_ALPHA) textColor = textColor.adjustAlpha(LOW_ALPHA)
} }
@@ -339,7 +339,7 @@ class WeekFragment : Fragment(), WeeklyCalendar {
(inflater.inflate(R.layout.week_all_day_event_marker, null, false) as TextView).apply { (inflater.inflate(R.layout.week_all_day_event_marker, null, false) as TextView).apply {
var backgroundColor = eventTypeColors.get(event.eventType, primaryColor) var backgroundColor = eventTypeColors.get(event.eventType, primaryColor)
var textColor = backgroundColor.getContrastColor() var textColor = backgroundColor.getContrastColor()
if (dimPastEvents && event.getIsPastEvent()) { if (dimPastEvents && event.isPastEvent) {
backgroundColor = backgroundColor.adjustAlpha(LOW_ALPHA) backgroundColor = backgroundColor.adjustAlpha(LOW_ALPHA)
textColor = textColor.adjustAlpha(LOW_ALPHA) textColor = textColor.adjustAlpha(LOW_ALPHA)
} }

View File

@@ -650,14 +650,14 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
if (event.startTS.isTsOnProperDay(event)) { if (event.startTS.isTsOnProperDay(event)) {
if (isOnProperWeek(event, startTimes)) { if (isOnProperWeek(event, startTimes)) {
event.copy().apply { event.copy().apply {
setIsPastEvent(getIsPastEvent(this)) updateIsPastEvent()
events.add(this) events.add(this)
} }
} }
} }
} else { } else {
event.copy().apply { event.copy().apply {
setIsPastEvent(getIsPastEvent(this)) updateIsPastEvent()
events.add(this) events.add(this)
} }
} }
@@ -668,7 +668,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
if (event.endTS >= toTS && event.startTS.isTsOnProperDay(event)) { if (event.endTS >= toTS && event.startTS.isTsOnProperDay(event)) {
if (isOnProperWeek(event, startTimes)) { if (isOnProperWeek(event, startTimes)) {
event.copy().apply { event.copy().apply {
setIsPastEvent(getIsPastEvent(this)) updateIsPastEvent()
events.add(this) events.add(this)
} }
} }
@@ -678,7 +678,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
val endDayCode = Formatter.getDayCodeFromTS(event.endTS) val endDayCode = Formatter.getDayCodeFromTS(event.endTS)
if (dayCode == endDayCode) { if (dayCode == endDayCode) {
event.copy().apply { event.copy().apply {
setIsPastEvent(getIsPastEvent(this)) updateIsPastEvent()
events.add(this) events.add(this)
} }
} }
@@ -698,7 +698,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
if (isOnProperWeek(event, startTimes)) { if (isOnProperWeek(event, startTimes)) {
if (event.endTS >= fromTS) { if (event.endTS >= fromTS) {
event.copy().apply { event.copy().apply {
setIsPastEvent(getIsPastEvent(this)) updateIsPastEvent()
events.add(this) events.add(this)
} }
} }
@@ -708,7 +708,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
} else { } else {
if (event.endTS >= fromTS) { if (event.endTS >= fromTS) {
event.copy().apply { event.copy().apply {
setIsPastEvent(getIsPastEvent(this)) updateIsPastEvent()
events.add(this) events.add(this)
} }
} else if (event.getIsAllDay()) { } else if (event.getIsAllDay()) {
@@ -716,7 +716,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
val endDayCode = Formatter.getDayCodeFromTS(event.endTS) val endDayCode = Formatter.getDayCodeFromTS(event.endTS)
if (dayCode == endDayCode) { if (dayCode == endDayCode) {
event.copy().apply { event.copy().apply {
setIsPastEvent(getIsPastEvent(this)) updateIsPastEvent()
events.add(this) events.add(this)
} }
} }
@@ -879,7 +879,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
val event = Event(id, startTS, endTS, title, description, reminder1Minutes, reminder2Minutes, reminder3Minutes, val event = Event(id, startTS, endTS, title, description, reminder1Minutes, reminder2Minutes, reminder3Minutes,
repeatInterval, importId, flags, repeatLimit, repeatRule, eventType, 0, lastUpdated, source, color, location) repeatInterval, importId, flags, repeatLimit, repeatRule, eventType, 0, lastUpdated, source, color, location)
event.setIsPastEvent(getIsPastEvent(event)) event.updateIsPastEvent()
events.add(event) events.add(event)
} while (cursor.moveToNext()) } while (cursor.moveToNext())
@@ -960,13 +960,4 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont
} }
return daycodes return daycodes
} }
private fun getIsPastEvent(event: Event): Boolean {
val endTSToCheck = if (event.startTS < getNowSeconds() && event.getIsAllDay()) {
Formatter.getDayEndTS(Formatter.getDayCodeFromTS(event.endTS))
} else {
event.endTS
}
return endTSToCheck < getNowSeconds()
}
} }

View File

@@ -125,7 +125,7 @@ class MyWidgetMonthlyProvider : AppWidgetProvider() {
var backgroundColor = it.color var backgroundColor = it.color
var eventTextColor = backgroundColor.getContrastColor() var eventTextColor = backgroundColor.getContrastColor()
if (!day.isThisMonth || (dimPastEvents && it.getIsPastEvent())) { if (!day.isThisMonth || (dimPastEvents && it.isPastEvent)) {
eventTextColor = eventTextColor.adjustAlpha(0.25f) eventTextColor = eventTextColor.adjustAlpha(0.25f)
backgroundColor = backgroundColor.adjustAlpha(0.25f) backgroundColor = backgroundColor.adjustAlpha(0.25f)
} }

View File

@@ -95,16 +95,6 @@ data class Event(var id: Long?, var startTS: Int = 0, var endTS: Int = 0, var ti
fun getIsAllDay() = flags and FLAG_ALL_DAY != 0 fun getIsAllDay() = flags and FLAG_ALL_DAY != 0
fun getIsPastEvent() = flags and FLAG_IS_PAST_EVENT != 0
fun setIsPastEvent(isPastEvent: Boolean) {
flags = if (isPastEvent) {
flags.addBit(FLAG_IS_PAST_EVENT)
} else {
flags.removeBit(FLAG_IS_PAST_EVENT)
}
}
fun getReminders() = setOf(reminder1Minutes, reminder2Minutes, reminder3Minutes).filter { it != REMINDER_OFF } fun getReminders() = setOf(reminder1Minutes, reminder2Minutes, reminder3Minutes).filter { it != REMINDER_OFF }
// properly return the start time of all-day events as midnight // properly return the start time of all-day events as midnight
@@ -125,4 +115,23 @@ data class Event(var id: Long?, var startTS: Int = 0, var endTS: Int = 0, var ti
} }
fun getCalDAVCalendarId() = if (source.startsWith(CALDAV)) (source.split("-").lastOrNull() ?: "0").toString().toInt() else 0 fun getCalDAVCalendarId() = if (source.startsWith(CALDAV)) (source.split("-").lastOrNull() ?: "0").toString().toInt() else 0
fun updateIsPastEvent() {
val endTSToCheck = if (startTS < getNowSeconds() && getIsAllDay()) {
Formatter.getDayEndTS(Formatter.getDayCodeFromTS(endTS))
} else {
endTS
}
isPastEvent = endTSToCheck < getNowSeconds()
}
var isPastEvent: Boolean
get() = flags and FLAG_IS_PAST_EVENT != 0
set(isPastEvent) {
flags = if (isPastEvent) {
flags.addBit(FLAG_IS_PAST_EVENT)
} else {
flags.removeBit(FLAG_IS_PAST_EVENT)
}
}
} }

View File

@@ -106,7 +106,7 @@ class MonthView(context: Context, attrs: AttributeSet, defStyle: Int) : View(con
val daysCnt = getEventLastingDaysCount(event) val daysCnt = getEventLastingDaysCount(event)
if (lastEvent == null || lastEvent.startDayIndex + daysCnt <= day.indexOnMonthView) { if (lastEvent == null || lastEvent.startDayIndex + daysCnt <= day.indexOnMonthView) {
val monthViewEvent = MonthViewEvent(event.id!!, event.title, event.startTS, event.color, day.indexOnMonthView, val monthViewEvent = MonthViewEvent(event.id!!, event.title, event.startTS, event.color, day.indexOnMonthView,
daysCnt, day.indexOnMonthView, event.getIsAllDay(), event.getIsPastEvent()) daysCnt, day.indexOnMonthView, event.getIsAllDay(), event.isPastEvent)
allEvents.add(monthViewEvent) allEvents.add(monthViewEvent)
} }
} }