diff --git a/app/src/main/java/com/geeksville/mesh/model/map/ChildData.kt b/app/src/main/java/com/geeksville/mesh/model/map/ChildData.kt deleted file mode 100644 index 136c5e8e..00000000 --- a/app/src/main/java/com/geeksville/mesh/model/map/ChildData.kt +++ /dev/null @@ -1,3 +0,0 @@ -package com.geeksville.mesh.model.map - -data class ChildData(val childTitle: String) diff --git a/app/src/main/java/com/geeksville/mesh/model/map/Constants.kt b/app/src/main/java/com/geeksville/mesh/model/map/Constants.kt deleted file mode 100644 index 4ce04c5c..00000000 --- a/app/src/main/java/com/geeksville/mesh/model/map/Constants.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.geeksville.mesh.model.map - -object Constants { - const val PARENT = 0 - const val CHILD = 1 -} \ No newline at end of file diff --git a/app/src/main/java/com/geeksville/mesh/model/map/MapParentData.kt b/app/src/main/java/com/geeksville/mesh/model/map/MapParentData.kt deleted file mode 100644 index e99a28af..00000000 --- a/app/src/main/java/com/geeksville/mesh/model/map/MapParentData.kt +++ /dev/null @@ -1,8 +0,0 @@ -package com.geeksville.mesh.model.map - -data class MapParentData( - val title: String? = null, - var type:Int = Constants.PARENT, - var subList: MutableList = ArrayList(), - var isExpanded: Boolean = false -) diff --git a/app/src/main/java/com/geeksville/mesh/ui/MapFragment.kt b/app/src/main/java/com/geeksville/mesh/ui/MapFragment.kt index 9da27e27..829fb636 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/MapFragment.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/MapFragment.kt @@ -2,7 +2,6 @@ package com.geeksville.mesh.ui import android.app.AlertDialog import android.content.Context -import android.content.DialogInterface import android.content.SharedPreferences import android.graphics.Canvas import android.graphics.Color @@ -14,20 +13,15 @@ import android.view.* import android.widget.* import androidx.core.content.ContextCompat import androidx.fragment.app.activityViewModels -import androidx.recyclerview.widget.LinearLayoutManager -import androidx.recyclerview.widget.RecyclerView import com.geeksville.mesh.BuildConfig import com.geeksville.mesh.NodeInfo import com.geeksville.mesh.R import com.geeksville.mesh.android.Logging import com.geeksville.mesh.database.entity.Packet -import com.geeksville.mesh.databinding.MapMenuLayoutBinding import com.geeksville.mesh.databinding.MapViewBinding import com.geeksville.mesh.model.UIViewModel -import com.geeksville.mesh.model.map.ChildData import com.geeksville.mesh.model.map.CustomOverlayManager import com.geeksville.mesh.model.map.CustomTileSource -import com.geeksville.mesh.model.map.MapParentData import com.geeksville.mesh.util.SqlTileWriterExt import com.geeksville.mesh.util.formatAgo import com.google.android.material.dialog.MaterialAlertDialogBuilder @@ -40,7 +34,6 @@ import org.osmdroid.events.ZoomEvent import org.osmdroid.tileprovider.MapTileProviderBasic import org.osmdroid.tileprovider.cachemanager.CacheManager import org.osmdroid.tileprovider.cachemanager.CacheManager.CacheManagerCallback -import org.osmdroid.tileprovider.modules.SqlTileWriter import org.osmdroid.tileprovider.modules.SqliteArchiveTileWriter import org.osmdroid.tileprovider.tilesource.ITileSource import org.osmdroid.tileprovider.tilesource.OnlineTileSourceBase @@ -400,36 +393,18 @@ class MapFragment : ScreenFragment("Map"), Logging, View.OnClickListener { val mapStyles by lazy { resources.getStringArray(R.array.map_styles) } val builder = MaterialAlertDialogBuilder(context!!) - val listData: MutableList = ArrayList() - val parentData: Array = arrayOf("Map Source", "Map Layer") - val mapStyleData: MutableList = mutableListOf() - mapStyles.forEach { style -> - mapStyleData.add(ChildData(style)) - } - val mapLayerData: MutableList = mutableListOf(ChildData("test")) - - val mapStyleObj = MapParentData(title = parentData[0], subList = mapStyleData) - val mapLayerObj = MapParentData(title = parentData[1], subList = mapLayerData) - listData.add(mapStyleObj) - listData.add(mapLayerObj) - val exRecycleView = MapMenuLayoutBinding.inflate(layoutInflater) - exRecycleView.exRecycle.layoutManager = LinearLayoutManager(context) - exRecycleView.exRecycle.adapter = MapMenuRecyclerAdapter(context!!, listData) - - builder.setView(exRecycleView.root) /// Load preferences and its value - val editor: SharedPreferences.Editor = mPrefs.edit() val mapStyleInt = mPrefs.getInt(mapStyleId, 1) - debug("mapStyleId from prefs: $mapStyleInt") -// builder.setSingleChoiceItems(mapStyles, mapStyleInt) { dialog, which -> -// debug("Set mapStyleId pref to $which") -// editor.putInt(mapStyleId, which) -// editor.apply() -// dialog.dismiss() -// map.setTileSource(loadOnlineTileSourceBase()) -// renderDownloadButton() -// drawOverlays() -// } + builder.setSingleChoiceItems(mapStyles, mapStyleInt) { dialog, which -> + debug("Set mapStyleId pref to $which") + val editor: SharedPreferences.Editor = mPrefs.edit() + editor.putInt(mapStyleId, which) + editor.apply() + dialog.dismiss() + map.setTileSource(loadOnlineTileSourceBase()) + renderDownloadButton() + drawOverlays() + } val dialog = builder.create() dialog.show() } diff --git a/app/src/main/java/com/geeksville/mesh/ui/MapMenuRecyclerAdapter.kt b/app/src/main/java/com/geeksville/mesh/ui/MapMenuRecyclerAdapter.kt deleted file mode 100644 index 7290b467..00000000 --- a/app/src/main/java/com/geeksville/mesh/ui/MapMenuRecyclerAdapter.kt +++ /dev/null @@ -1,109 +0,0 @@ -package com.geeksville.mesh.ui - -import android.content.Context -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import android.widget.ImageView -import android.widget.TextView -import androidx.recyclerview.widget.RecyclerView -import com.geeksville.mesh.R -import com.geeksville.mesh.model.map.ChildData -import com.geeksville.mesh.model.map.Constants -import com.geeksville.mesh.model.map.MapParentData - -class MapMenuRecyclerAdapter(var mContext: Context, val list: MutableList) : - RecyclerView.Adapter() { - - override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder { - - return if (viewType == Constants.PARENT) { - val rowView: View = - LayoutInflater.from(parent.context).inflate(R.layout.parent_row, parent, false) - GroupViewHolder(rowView) - } else { - val rowView: View = - LayoutInflater.from(parent.context).inflate(R.layout.child_row, parent, false) - ChildViewHolder(rowView) - } - } - - override fun getItemCount(): Int = list.size - - override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { - - val dataList = list[position] - if (dataList.type == Constants.PARENT) { - holder as GroupViewHolder - holder.apply { - parentTV?.text = dataList.title - downIV?.setOnClickListener { - expandOrCollapseParentItem(dataList, position) - } - } - } else { - holder as ChildViewHolder - - holder.apply { - val singleService = dataList.subList.first() - childTV?.text = singleService.childTitle - } - } - } - - private fun expandOrCollapseParentItem(singleBoarding: MapParentData, position: Int) { - - if (singleBoarding.isExpanded) { - collapseParentRow(position) - } else { - expandParentRow(position) - } - } - - private fun expandParentRow(position: Int) { - val currentBoardingRow = list[position] - val services = currentBoardingRow.subList - currentBoardingRow.isExpanded = true - var nextPosition = position - if (currentBoardingRow.type == Constants.PARENT) { - - services.forEach { service -> - val parentModel = MapParentData() - parentModel.type = Constants.CHILD - val subList: ArrayList = ArrayList() - subList.add(service) - parentModel.subList = subList - list.add(++nextPosition, parentModel) - } - notifyDataSetChanged() - } - } - - private fun collapseParentRow(position: Int) { - val currentBoardingRow = list[position] - val services = currentBoardingRow.subList - list[position].isExpanded = false - if (list[position].type == Constants.PARENT) { - services.forEach { _ -> - list.removeAt(position + 1) - } - notifyDataSetChanged() - } - } - - override fun getItemViewType(position: Int): Int = list[position].type - - override fun getItemId(position: Int): Long { - return position.toLong() - } - - class GroupViewHolder(row: View) : RecyclerView.ViewHolder(row) { - val parentTV = row.findViewById(R.id.parent_Title) as TextView? - val downIV = row.findViewById(R.id.down_iv) as ImageView? - } - - class ChildViewHolder(row: View) : RecyclerView.ViewHolder(row) { - val childTV = row.findViewById(R.id.child_Title) as TextView? - - } -} diff --git a/app/src/main/res/layout/child_row.xml b/app/src/main/res/layout/child_row.xml deleted file mode 100644 index 3026a287..00000000 --- a/app/src/main/res/layout/child_row.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - diff --git a/app/src/main/res/layout/map_menu_layout.xml b/app/src/main/res/layout/map_menu_layout.xml deleted file mode 100644 index 7897978b..00000000 --- a/app/src/main/res/layout/map_menu_layout.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - diff --git a/app/src/main/res/layout/parent_row.xml b/app/src/main/res/layout/parent_row.xml deleted file mode 100644 index fb7f5eb1..00000000 --- a/app/src/main/res/layout/parent_row.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - -