diff --git a/app/src/main/java/it/danieleverducci/lunatracker/MainActivity.kt b/app/src/main/java/it/danieleverducci/lunatracker/MainActivity.kt index 2f4fea2..947ab4f 100644 --- a/app/src/main/java/it/danieleverducci/lunatracker/MainActivity.kt +++ b/app/src/main/java/it/danieleverducci/lunatracker/MainActivity.kt @@ -12,6 +12,7 @@ import android.view.View import android.view.ViewGroup import android.widget.AdapterView import android.widget.ArrayAdapter +import android.widget.Button import android.widget.EditText import android.widget.NumberPicker import android.widget.PopupWindow @@ -330,7 +331,7 @@ class MainActivity : AppCompatActivity() { alertDialog.show() } - fun datePickerHelper(time: Long, dateTextView: TextView): Calendar { + fun datePickerHelper(time: Long, dateTextView: TextView, onChange: (Long) -> Unit = {}): Calendar { dateTextView.text = DateUtils.formatDateTime(time) val dateTime = Calendar.getInstance() @@ -349,6 +350,7 @@ class MainActivity : AppCompatActivity() { { _, hour, minute -> dateTime.set(year, month, day, hour, minute) dateTextView.text = DateUtils.formatDateTime(dateTime.time.time / 1000) + onChange.invoke(dateTime.time.time / 1000) }, startHour, startMinute, @@ -371,6 +373,97 @@ class MainActivity : AppCompatActivity() { saveLogbook() } + fun addSleepEvent(event: LunaEvent) { + askSleepValue(event) { saveEvent(event) } + } + + fun askSleepValue(event: LunaEvent, onPositive: () -> Unit) { + val d = AlertDialog.Builder(this) + val dialogView = layoutInflater.inflate(R.layout.dialog_edit_duration, null) + d.setTitle(event.getTypeDescription(this)) + d.setMessage(event.getDialogMessage(this)) + d.setView(dialogView) + + val durationTextView = dialogView.findViewById(R.id.dialog_date_duration) + val durationNowButton = dialogView.findViewById