diff --git a/app/src/main/java/eu/konggdev/strikemaps/ui/element/item/InlineItem.java b/app/src/main/java/eu/konggdev/strikemaps/ui/element/item/InlineItem.java new file mode 100644 index 0000000..d63e586 --- /dev/null +++ b/app/src/main/java/eu/konggdev/strikemaps/ui/element/item/InlineItem.java @@ -0,0 +1,28 @@ +package eu.konggdev.strikemaps.ui.element.item; + +import android.view.View; +import android.widget.TextView; +import eu.konggdev.strikemaps.R; +import eu.konggdev.strikemaps.ui.UIComponent; + +public class InlineItem implements UIItem { + public String text; + public Runnable onClick; + + public InlineItem(String refText) { + this.text = refText; + } + + public InlineItem(String refText, Runnable onClick) { + this.text = refText; + this.onClick = onClick; + } + + @Override + public View makeView(UIComponent spawner) { + View view = spawner.inflateUi(R.layout.item_inline); + ((TextView) view.findViewById(R.id.inline)).setText(text); + if(onClick != null) view.findViewById(R.id.inline).setOnClickListener(click(onClick)); + return view; + } +} diff --git a/app/src/main/java/eu/konggdev/strikemaps/ui/fragment/layout/content/main/FragmentLayoutContentOfflineMaps.java b/app/src/main/java/eu/konggdev/strikemaps/ui/fragment/layout/content/main/FragmentLayoutContentOfflineMaps.java index 840f36d..d37e30f 100644 --- a/app/src/main/java/eu/konggdev/strikemaps/ui/fragment/layout/content/main/FragmentLayoutContentOfflineMaps.java +++ b/app/src/main/java/eu/konggdev/strikemaps/ui/fragment/layout/content/main/FragmentLayoutContentOfflineMaps.java @@ -3,6 +3,7 @@ package eu.konggdev.strikemaps.ui.fragment.layout.content.main; import android.os.Bundle; import android.view.View; import android.widget.LinearLayout; +import android.widget.Toast; import androidx.annotation.NonNull; import androidx.fragment.app.Fragment; import eu.konggdev.strikemaps.R; @@ -11,6 +12,7 @@ import eu.konggdev.strikemaps.data.helper.FileHelper; import eu.konggdev.strikemaps.map.source.MapSource; import eu.konggdev.strikemaps.map.style.MapStyle; import eu.konggdev.strikemaps.ui.element.item.GenericItem; +import eu.konggdev.strikemaps.ui.element.item.InlineItem; import eu.konggdev.strikemaps.ui.element.item.PreviewItem; import java.util.ArrayList; @@ -50,9 +52,9 @@ public class FragmentLayoutContentOfflineMaps extends Fragment implements MainCo LinearLayout sourcesLayout = view.findViewById(R.id.llDownloadContainer); for (MapSource source : sources) { if (!Objects.equals(source.type, "raster")) - sourcesLayout.addView(new PreviewItem(source.url, "").makeView(app.getUi())); + sourcesLayout.addView(new InlineItem(source.url, () -> Toast.makeText(app.getActivity(), "Work in progress", Toast.LENGTH_SHORT).show()).makeView(app.getUi())); else - sourcesLayout.addView(new PreviewItem(source.tiles.toString(), "").makeView(app.getUi())); + sourcesLayout.addView(new InlineItem(source.tiles.toString(), () -> Toast.makeText(app.getActivity(), "Work in progress", Toast.LENGTH_SHORT).show()).makeView(app.getUi())); } } } \ No newline at end of file diff --git a/app/src/main/res/layout/item_inline.xml b/app/src/main/res/layout/item_inline.xml new file mode 100644 index 0000000..0e48b64 --- /dev/null +++ b/app/src/main/res/layout/item_inline.xml @@ -0,0 +1,28 @@ + + + + + + \ No newline at end of file