Skip to content

Commit 8cce607

Browse files
committed
added enum widget class
1 parent 89a58aa commit 8cce607

File tree

2 files changed

+31
-21
lines changed

2 files changed

+31
-21
lines changed

app/src/main/java/com/rafsan/dynamicui_fromjson/GenerateFormActivity.kt

Lines changed: 18 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,7 @@ import com.rafsan.dynamicui_fromjson.data.CollectData.Companion.getDataFromRadio
3131
import com.rafsan.dynamicui_fromjson.data.CollectData.Companion.getDataFromSpinner
3232
import com.rafsan.dynamicui_fromjson.databinding.ActivityGenerateFormBinding
3333
import com.rafsan.dynamicui_fromjson.databinding.FormButtonsLayoutBinding
34-
import com.rafsan.dynamicui_fromjson.model.FormComponent
35-
import com.rafsan.dynamicui_fromjson.model.FormComponentItem
36-
import com.rafsan.dynamicui_fromjson.model.FormViewComponent
37-
import com.rafsan.dynamicui_fromjson.model.Value
34+
import com.rafsan.dynamicui_fromjson.model.*
3835
import com.rafsan.dynamicui_fromjson.utils.Utils
3936
import com.rafsan.dynamicui_fromjson.utils.Utils.Companion.getCurrentDate
4037
import com.rafsan.dynamicui_fromjson.utils.Utils.Companion.getCustomColorStateList
@@ -82,19 +79,19 @@ class GenerateFormActivity : AppCompatActivity() {
8279
formComponent?.let {
8380
it.forEach { component ->
8481
when (component.type) {
85-
"header" -> binding.miniAppFormContainer.addView(
82+
WidgetItems.HEADER.label -> binding.miniAppFormContainer.addView(
8683
createHeaderView(
8784
component
8885
)
8986
)
90-
"text" -> createEditableTextWithLabel(component, viewId++)
91-
"textarea" -> createEditableTextWithLabel(component, viewId++)
92-
"select" -> createSpinner(component, viewId++)
93-
"radio-group" -> createRadioGroup(component, viewId++)
94-
"paragraph" -> createParagraph(component)
95-
"date" -> createDatePicker(component)
96-
"checkbox-group" -> createCheckBoxGroup(component, viewId++)
97-
"number" -> createNumberEditText(component)
87+
WidgetItems.TEXT.label -> createEditableTextWithLabel(component, viewId++)
88+
WidgetItems.TEXTAREA.label -> createEditableTextWithLabel(component, viewId++)
89+
WidgetItems.SELECT.label -> createSpinner(component, viewId++)
90+
WidgetItems.RADIO_GROUP.label -> createRadioGroup(component, viewId++)
91+
WidgetItems.PARAGRAPH.label -> createParagraph(component)
92+
WidgetItems.DATE.label -> createDatePicker(component)
93+
WidgetItems.CHECKBOX_GROUP.label -> createCheckBoxGroup(component, viewId++)
94+
WidgetItems.NUMBER.label -> createNumberEditText(component)
9895
}
9996
}
10097
}
@@ -132,7 +129,7 @@ class GenerateFormActivity : AppCompatActivity() {
132129
LinearLayoutCompat.LayoutParams.MATCH_PARENT,
133130
LinearLayout.LayoutParams.WRAP_CONTENT
134131
)
135-
if (component.type.equals("textarea")) editText.gravity = Gravity.NO_GRAVITY
132+
if (component.type.equals(WidgetItems.TEXTAREA.label)) editText.gravity = Gravity.NO_GRAVITY
136133

137134
editText.setPadding(20, 30, 20, 30)
138135
editText.setBackgroundResource(R.drawable.edit_text_background)
@@ -854,48 +851,48 @@ class GenerateFormActivity : AppCompatActivity() {
854851
val viewComponentModel: FormComponentItem =
855852
formViewComponent.getViewComponentModel()
856853
when (viewComponentModel.type) {
857-
"text" ->
854+
WidgetItems.TEXT.label ->
858855
if (!getDataFromEditText(view, viewComponentModel)) {
859856
submitPropertyArrayJson = JsonArray()
860857
} else {
861858
viewComponentModel.label?.let { labelStr ->
862859
showRequiredDialog(labelStr)
863860
}
864861
}
865-
"textarea" ->
862+
WidgetItems.TEXTAREA.label ->
866863
if (!getDataFromEditText(view, viewComponentModel)) {
867864
submitPropertyArrayJson = JsonArray()
868865
} else {
869866
viewComponentModel.label?.let { labelStr ->
870867
showRequiredDialog(labelStr)
871868
}
872869
}
873-
"select" ->
870+
WidgetItems.SELECT.label ->
874871
if (!getDataFromSpinner(view, viewComponentModel)) {
875872
submitPropertyArrayJson = JsonArray()
876873
} else {
877874
viewComponentModel.label?.let { labelStr ->
878875
showRequiredDialog(labelStr)
879876
}
880877
}
881-
"radio-group" ->
878+
WidgetItems.RADIO_GROUP.label ->
882879
if (!getDataFromRadioGroup(view, viewComponentModel)) {
883880
submitPropertyArrayJson = JsonArray()
884881
} else {
885882
viewComponentModel.label?.let { labelStr ->
886883
showRequiredDialog(labelStr)
887884
}
888885
}
889-
"date" -> getDataFromDateTextView(view, viewComponentModel)
890-
"checkbox-group" ->
886+
WidgetItems.DATE.label -> getDataFromDateTextView(view, viewComponentModel)
887+
WidgetItems.CHECKBOX_GROUP.label ->
891888
if (!getDataFromCheckBoxGroup(view, viewComponentModel)) {
892889
submitPropertyArrayJson = JsonArray()
893890
} else {
894891
viewComponentModel.label?.let { labelStr ->
895892
showRequiredDialog(labelStr)
896893
}
897894
}
898-
"number" -> {
895+
WidgetItems.NUMBER.label -> {
899896
if (!getDataFromEditText(view, viewComponentModel)) {
900897
submitPropertyArrayJson = JsonArray()
901898
} else {
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package com.rafsan.dynamicui_fromjson.model
2+
3+
enum class WidgetItems(val label: String) {
4+
HEADER("header"),
5+
TEXT("text"),
6+
TEXTAREA("textarea"),
7+
SELECT("select"),
8+
RADIO_GROUP("radio-group"),
9+
PARAGRAPH("paragraph"),
10+
DATE("date"),
11+
CHECKBOX_GROUP("checkbox-group"),
12+
NUMBER("number")
13+
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy