Skip to content

Commit

Permalink
restructured waterway form, completed navigation
Browse files Browse the repository at this point in the history
  • Loading branch information
Samuelford24 authored and Samuelford24 committed Mar 23, 2021
1 parent fcf0776 commit 0bdce9b
Show file tree
Hide file tree
Showing 2 changed files with 257 additions and 31 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.RecyclerView;

import com.addisonelliott.segmentedbutton.SegmentedButton;
import com.sf.stormwaterutilityandroid.R;
import com.sf.stormwaterutilityandroid.SampleFordm;

Expand All @@ -20,24 +21,62 @@
import me.riddhimanadib.formmaster.FormBuilder;
import me.riddhimanadib.formmaster.model.BaseFormElement;
import me.riddhimanadib.formmaster.model.FormElementTextNumber;
import me.riddhimanadib.formmaster.model.FormElementTextSingleLine;
import me.riddhimanadib.formmaster.model.FormHeader;


public class WaterWayFormFragment extends Fragment {
RecyclerView recyclerView;
FormBuilder formBuilder;
Button gen,dws,ct,bm,hq;
RecyclerView rvGen, rvDWS, rvHQ, rvBM,rvCT;
FormBuilder fbGEn,fbDWS,fbBM,fbHQ,fbCT;
SegmentedButton gen,dws,ct,bm,hq;
Button submit;
Boolean boolgen,booldws,boolct,boolbm,boolhq;
List<BaseFormElement> formItemsHQ, formItemsGen, formItemsBM, formItemsCT, formItemsDWS;

public View onCreateView(@NonNull LayoutInflater inflater,
ViewGroup container, Bundle savedInstanceState) {

View root = inflater.inflate(R.layout.fragment_wwform, container, false);
recyclerView = root.findViewById(R.id.rvWWF);
setupForm();
//recylerViews for each piece of the form
submit = root.findViewById(R.id.submitForm);
rvGen = root.findViewById(R.id.rvWWF);
rvDWS = root.findViewById(R.id.rvDWS);
rvHQ = root.findViewById(R.id.rvHQ);
rvBM = root.findViewById(R.id.rvBM);
rvCT = root.findViewById(R.id.rvCT);

//making recyclerViews invisible
rvDWS.setVisibility(View.INVISIBLE);
rvHQ.setVisibility(View.INVISIBLE);
rvBM.setVisibility(View.INVISIBLE);
rvCT.setVisibility(View.INVISIBLE);
setupFormGen();
//Segemented Control Bar buttons
gen = root.findViewById(R.id.gen);
dws = root.findViewById(R.id.dws);
ct = root.findViewById(R.id.ct);
bm = root.findViewById(R.id.bm);
hq = root.findViewById(R.id.hq);
//setting booleans to false. If they are true, then an instance of the form section has been created.
boolbm = false;
boolct = false;
booldws = false;
boolhq = false;
boolgen = false;
gen.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
rvGen.setVisibility(View.VISIBLE);
rvDWS.setVisibility(View.INVISIBLE);
rvHQ.setVisibility(View.INVISIBLE);
rvBM.setVisibility(View.INVISIBLE);
rvCT.setVisibility(View.INVISIBLE);
if (!boolgen)
setupFormGen();

}
});
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

Expand All @@ -46,35 +85,66 @@ public void onClick(View v) {
dws.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
rvGen.setVisibility(View.INVISIBLE);
rvDWS.setVisibility(View.VISIBLE);
rvHQ.setVisibility(View.INVISIBLE);
rvBM.setVisibility(View.INVISIBLE);
rvCT.setVisibility(View.INVISIBLE);
if (!booldws)
setupFormDWS();

}
});
ct.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

rvGen.setVisibility(View.INVISIBLE);
rvDWS.setVisibility(View.INVISIBLE);
rvHQ.setVisibility(View.INVISIBLE);
rvBM.setVisibility(View.INVISIBLE);
rvCT.setVisibility(View.VISIBLE);
if (!boolct)
setupFormCT();

}
});
bm.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

rvGen.setVisibility(View.INVISIBLE);
rvDWS.setVisibility(View.INVISIBLE);
rvHQ.setVisibility(View.INVISIBLE);
rvBM.setVisibility(View.VISIBLE);
rvCT.setVisibility(View.INVISIBLE);
if (!boolbm)
setupFormBM();
}
});
hq.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {


rvGen.setVisibility(View.INVISIBLE);
rvDWS.setVisibility(View.INVISIBLE);
rvHQ.setVisibility(View.VISIBLE);
rvBM.setVisibility(View.INVISIBLE);
rvCT.setVisibility(View.INVISIBLE);
if (!boolhq)
setupFormHQ();
}
});
return root;
}

private void setupForm() {
private void setupFormGen() {
boolgen = true;


formBuilder = new FormBuilder(getContext(), recyclerView);
}
private void setupFormHQ() {
boolhq = true;
fbHQ = new FormBuilder(getContext(),rvHQ);
FormElementTextNumber element2 = FormElementTextNumber.createInstance().setTitle("Substrate Size").setValue("0");
FormElementTextNumber element3 = FormElementTextNumber.createInstance().setTitle("Smothering").setValue("0");
FormElementTextNumber element4 = FormElementTextNumber.createInstance().setTitle("Silting").setValue("0");
Expand All @@ -94,29 +164,139 @@ private void setupForm() {
FormElementTextNumber element18 = FormElementTextNumber.createInstance().setTitle("Land Use").setValue("0");
FormElementTextNumber element19 = FormElementTextNumber.createInstance().setTitle("Bank Erosion").setValue("0");

List<BaseFormElement> formItems = new ArrayList<>();
formItems.add(element2);
formItems.add(element3);
formItems.add(element4);
formItems.add(element5);
formItems.add(element6);
formItems.add(element7);
formItems.add(element8);
formItems.add(element9);
formItems.add(element10);
formItems.add(element11);
formItems.add(element12);
formItems.add(element13);
formItems.add(element14);
formItems.add(element15);
formItems.add(element16);
formItems.add(element17);
formItems.add(element18);
formItems.add(element19);
formBuilder.addFormElements(formItems);
formItemsHQ = new ArrayList<>();

formItemsHQ.add(element2);
formItemsHQ.add(element3);
formItemsHQ.add(element4);
formItemsHQ.add(element5);
formItemsHQ.add(element6);
formItemsHQ.add(element7);
formItemsHQ.add(element8);
formItemsHQ.add(element9);
formItemsHQ.add(element10);
formItemsHQ.add(element11);
formItemsHQ.add(element12);
formItemsHQ.add(element13);
formItemsHQ.add(element14);
formItemsHQ.add(element15);
formItemsHQ.add(element16);
formItemsHQ.add(element17);
formItemsHQ.add(element18);
formItemsHQ.add(element19);
fbHQ.addFormElements(formItemsHQ);

}
private void setupFormDWS() {
booldws = true;
fbDWS = new FormBuilder(getContext(), rvDWS);
FormHeader title = (FormHeader) new FormHeader().setTitle("Dry Weather Screening");

//Outfall --> Question: How do you do a subheading?
FormElementTextSingleLine flow = new FormElementTextSingleLine().setTitle("Presence of Flow");
FormElementTextNumber flowData = FormElementTextNumber.createInstance(); //what data type is this?

FormElementTextSingleLine odor = new FormElementTextSingleLine().setTitle("Unusual Odor");
FormElementTextNumber odorData = FormElementTextNumber.createInstance();

FormElementTextSingleLine color = new FormElementTextSingleLine().setTitle("Unusual Color");
FormElementTextNumber colorData = FormElementTextNumber.createInstance();

FormElementTextSingleLine polutants = new FormElementTextSingleLine().setTitle("Polutants Nearby");
FormElementTextNumber polutantsData = FormElementTextNumber.createInstance();
polutantsData.setTitle("Polutants Data");

FormElementTextSingleLine obstruction = new FormElementTextSingleLine().setTitle("Obstruction");
FormElementTextNumber obstructionData = FormElementTextNumber.createInstance();

FormElementTextSingleLine maintenance = new FormElementTextSingleLine().setTitle("Needs Maintenance");
FormElementTextNumber maintenanceData = FormElementTextNumber.createInstance();

FormElementTextSingleLine screen = new FormElementTextSingleLine().setTitle("Screen OK");
FormElementTextNumber screenData = FormElementTextNumber.createInstance();

formItemsDWS = new ArrayList<>();

formItemsDWS.add(flow);
formItemsDWS.add(flowData);
formItemsDWS.add(odor);
formItemsDWS.add(odorData);
formItemsDWS.add(color);
formItemsDWS.add(colorData);
formItemsDWS.add(polutants);
formItemsDWS.add(polutantsData);
formItemsDWS.add(obstruction);
formItemsDWS.add(obstructionData);
formItemsDWS.add(maintenance);
formItemsDWS.add(maintenanceData);
formItemsDWS.add(screen);
formItemsDWS.add(screenData);

fbDWS.addFormElements(formItemsDWS);
}
private void setupFormCT() {
boolct = true;
fbCT = new FormBuilder(getContext(), rvCT);

FormHeader title = (FormHeader) new FormHeader().setTitle("Chemical Testing");

//Outfall --> Question: How do you do a subheading?

FormElementTextSingleLine temperature = new FormElementTextSingleLine().setTitle("Temperature (C) Change");
//FormHeader temp = FormHeader.createInstance("Temperature (C) Change");
FormElementTextNumber tempData = FormElementTextNumber.createInstance(); //what data type is this?

FormElementTextSingleLine tubidity = new FormElementTextSingleLine().setTitle("Tubidity (NTU)");
FormElementTextNumber tubidityData = FormElementTextNumber.createInstance();

FormElementTextSingleLine pH = new FormElementTextSingleLine().setTitle("pH");
FormElementTextNumber pHData = FormElementTextNumber.createInstance();

FormElementTextSingleLine nitrate = new FormElementTextSingleLine().setTitle("Nitrate (mg/L)");
FormElementTextNumber nitrateData = FormElementTextNumber.createInstance();

FormElementTextSingleLine phosphate = new FormElementTextSingleLine().setTitle("Total Phosphate (mg/L)");
FormElementTextNumber phosphateData = FormElementTextNumber.createInstance();

FormElementTextSingleLine oxygen = new FormElementTextSingleLine().setTitle("Dissolved Oxygen (mg/L)");
FormElementTextNumber oxygenData = FormElementTextNumber.createInstance();

FormElementTextSingleLine coli = new FormElementTextSingleLine().setTitle("E Coli (col/100mL)");
FormElementTextNumber coliData = FormElementTextNumber.createInstance();

FormElementTextSingleLine other1 = new FormElementTextSingleLine().setTitle("Other 1");
FormElementTextNumber other1Data = FormElementTextNumber.createInstance();

FormElementTextSingleLine other2 = new FormElementTextSingleLine().setTitle("Other 2");
FormElementTextNumber other2Data = FormElementTextNumber.createInstance();

formItemsCT = new ArrayList<>();

formItemsCT.add(title);
formItemsCT.add(temperature);
formItemsCT.add(tempData);
formItemsCT.add(tubidity);
formItemsCT.add(tubidityData);
formItemsCT.add(pH);
formItemsCT.add(pHData);
formItemsCT.add(nitrate);
formItemsCT.add(nitrateData);
formItemsCT.add(phosphate);
formItemsCT.add(phosphateData);
formItemsCT.add(oxygen);
formItemsCT.add(oxygenData);
formItemsCT.add(coli);
formItemsCT.add(coliData);
formItemsCT.add(other1);
formItemsCT.add(other1Data);
formItemsCT.add(other2);
formItemsCT.add(other2Data);

fbCT.addFormElements(formItemsCT);

}
private void setupFormBM() {
boolbm = true;

}
}
50 changes: 48 additions & 2 deletions app/src/main/res/layout/fragment_wwform.xml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
app:text="Gen"
app:textColor="@color/indigo_800"
app:textSize="18sp" />

<com.addisonelliott.segmentedbutton.SegmentedButton
android:id="@+id/dws"
android:layout_width="0dp"
Expand All @@ -56,6 +57,7 @@
app:text="DWS"
app:textColor="@color/indigo_800"
app:textSize="18sp" />

<com.addisonelliott.segmentedbutton.SegmentedButton
android:id="@+id/ct"
android:layout_width="0dp"
Expand All @@ -71,6 +73,7 @@
app:text="CT"
app:textColor="@color/indigo_800"
app:textSize="18sp" />

<com.addisonelliott.segmentedbutton.SegmentedButton
android:id="@+id/bm"
android:layout_width="0dp"
Expand Down Expand Up @@ -109,9 +112,52 @@
android:id="@+id/rvWWF"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginBottom="14dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintBottom_toTopOf="@+id/submitForm"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/buttonGroup_vectorDrawable" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rvDWS"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@+id/submitForm"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/buttonGroup_vectorDrawable" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rvCT"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@+id/submitForm"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/buttonGroup_vectorDrawable" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rvBM"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@+id/submitForm"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/buttonGroup_vectorDrawable" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rvHQ"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@+id/submitForm"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/buttonGroup_vectorDrawable" />

<Button
android:id="@+id/submitForm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:text="Submit"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/rvWWF" />

</androidx.constraintlayout.widget.ConstraintLayout>

0 comments on commit 0bdce9b

Please sign in to comment.