|
|
|
@ -1,17 +1,20 @@
|
|
|
|
|
package uca.baptistearthur.geocaching.ui.overlay
|
|
|
|
|
|
|
|
|
|
import android.app.AlertDialog
|
|
|
|
|
import android.content.Context
|
|
|
|
|
import android.graphics.Canvas
|
|
|
|
|
import android.graphics.Color
|
|
|
|
|
import android.graphics.Paint
|
|
|
|
|
import android.graphics.RectF
|
|
|
|
|
import android.provider.Settings.System.getString
|
|
|
|
|
import android.text.InputFilter
|
|
|
|
|
import android.util.Log
|
|
|
|
|
import android.view.MotionEvent
|
|
|
|
|
import android.widget.EditText
|
|
|
|
|
import android.widget.Toast
|
|
|
|
|
import androidx.core.content.ContextCompat
|
|
|
|
|
import androidx.fragment.app.viewModels
|
|
|
|
|
import androidx.lifecycle.ViewModelProvider
|
|
|
|
|
import androidx.lifecycle.ViewModelStoreOwner
|
|
|
|
|
import kotlinx.coroutines.CoroutineScope
|
|
|
|
|
import kotlinx.coroutines.Dispatchers
|
|
|
|
|
import kotlinx.coroutines.launch
|
|
|
|
@ -20,8 +23,12 @@ import org.osmdroid.views.MapView
|
|
|
|
|
import org.osmdroid.views.overlay.Overlay
|
|
|
|
|
import org.osmdroid.views.overlay.Polyline
|
|
|
|
|
import uca.baptistearthur.geocaching.R
|
|
|
|
|
import uca.baptistearthur.geocaching.application.RTApplication
|
|
|
|
|
import uca.baptistearthur.geocaching.model.Address
|
|
|
|
|
import uca.baptistearthur.geocaching.model.Place
|
|
|
|
|
import uca.baptistearthur.geocaching.model.RoadTripEntity
|
|
|
|
|
import uca.baptistearthur.geocaching.viewModels.RoadTripViewModel
|
|
|
|
|
import uca.baptistearthur.geocaching.viewModels.RoadTripViewModelFactory
|
|
|
|
|
import java.util.*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -29,6 +36,12 @@ class NewRoadtripOverlay(val points: MutableCollection<PlaceMarker>) : Overlay()
|
|
|
|
|
|
|
|
|
|
private var circleRectF=RectF()
|
|
|
|
|
|
|
|
|
|
fun getRoadTripViewModelFromOverlay(overlayContext: Context): RoadTripViewModel {
|
|
|
|
|
val roadTripDao = (overlayContext.applicationContext as RTApplication).db.roadTripDAO()
|
|
|
|
|
val viewModelFactory = RoadTripViewModelFactory(roadTripDao)
|
|
|
|
|
return ViewModelProvider(overlayContext as ViewModelStoreOwner, viewModelFactory).get(RoadTripViewModel::class.java)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
override fun draw(canvas: Canvas, mapView: MapView, shadow: Boolean) {
|
|
|
|
|
|
|
|
|
|
val circleSize = 300f
|
|
|
|
@ -96,7 +109,7 @@ class NewRoadtripOverlay(val points: MutableCollection<PlaceMarker>) : Overlay()
|
|
|
|
|
date = Date(),
|
|
|
|
|
places = places
|
|
|
|
|
)
|
|
|
|
|
// TODO: Persister le RoadTrip
|
|
|
|
|
getRoadTripViewModelFromOverlay(context).insertRoadTrip(newRoadTrip);
|
|
|
|
|
Toast.makeText(
|
|
|
|
|
context,
|
|
|
|
|
R.string.roadtripAdded,
|
|
|
|
|