merged with remote

This commit is contained in:
paul-loedige 2021-01-08 01:54:57 +01:00
commit 17f1278c20
2 changed files with 56 additions and 11 deletions

View File

@ -1,13 +1,15 @@
package com.example.aped.ui.plots; package com.example.aped.ui.plots;
import android.net.sip.SipSession; import android.net.sip.SipSession;
import android.content.DialogInterface;
import android.os.Bundle; import android.os.Bundle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import android.util.Log; import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;
import com.example.aped.MainActivity; import com.example.aped.MainActivity;
import com.example.aped.R; import com.example.aped.R;
import com.example.aped.communication.Communicator; import com.example.aped.communication.Communicator;
@ -16,9 +18,9 @@ import com.jjoe64.graphview.GraphView;
import com.jjoe64.graphview.series.DataPoint; import com.jjoe64.graphview.series.DataPoint;
import com.jjoe64.graphview.series.LineGraphSeries; import com.jjoe64.graphview.series.LineGraphSeries;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -30,6 +32,8 @@ public class PlotFragment extends Fragment {
private List<String> bufferedDevices; private List<String> bufferedDevices;
/** Line Chart View that is displayed **/ /** Line Chart View that is displayed **/
private GraphView graphView; private GraphView graphView;
/** List of all the devices with buffers. **/
private List<String> bufferedDevicesSelected;
/** /**
* paul * paul
@ -51,10 +55,44 @@ public class PlotFragment extends Fragment {
getBufferedValues(mainActivity.getDelivery(), mainActivity.getXml()); getBufferedValues(mainActivity.getDelivery(), mainActivity.getXml());
mainActivity.getConfigurationHandler().setCurrentView(R.id.nav_plots); mainActivity.getConfigurationHandler().setCurrentView(R.id.nav_plots);
Button buttonChoseDevice = view.findViewById(R.id.button_alert);
buttonChoseDevice.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View v) {
bufferedDevicesSelected = new ArrayList<>();
MaterialAlertDialogBuilder alertDialogBuilder = new MaterialAlertDialogBuilder(mainActivity);
alertDialogBuilder.setTitle("Choose your devices");
alertDialogBuilder.setMultiChoiceItems(bufferedDevices.toArray(new String[bufferedDevices.size()]), null, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(final DialogInterface dialog, final int which, final boolean isChecked) {
if (isChecked) {
bufferedDevicesSelected.add(bufferedDevices.get(which));
} else if (bufferedDevices.contains(bufferedDevices.get(which))) {
bufferedDevicesSelected.remove(bufferedDevices.get(which));
}
}
});
alertDialogBuilder.setPositiveButton("display", new DialogInterface.OnClickListener() {
@Override
public void onClick(final DialogInterface dialog, final int which) {
String data = "";
for (String item:bufferedDevicesSelected) {
data = data + " " + item;
}
Toast.makeText(mainActivity, data, Toast.LENGTH_SHORT).show();
}
});
alertDialogBuilder.create();
alertDialogBuilder.show();
}
});
return view; return view;
} }
private List<String> getBufferedDevices(IXML xml){ private List<String> getBufferedDevices(final IXML xml) {
List<String> returnList = new ArrayList<>(); List<String> returnList = new ArrayList<>();
for (String deviceName : xml.getDeviceNames()) { for (String deviceName : xml.getDeviceNames()) {
if (xml.getBufferSize(deviceName) > 0) { if (xml.getBufferSize(deviceName) > 0) {
@ -64,7 +102,7 @@ public class PlotFragment extends Fragment {
return returnList; return returnList;
} }
private void getBufferedValues(Communicator communicator, IXML xml){ private void getBufferedValues(final Communicator communicator, final IXML xml) {
for (String deviceName : this.bufferedDevices) { for (String deviceName : this.bufferedDevices) {
communicator.readBuffer(deviceName, response -> { communicator.readBuffer(deviceName, response -> {
try { try {

View File

@ -9,4 +9,11 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:id="@+id/graph"/> android:id="@+id/graph"/>
android:layout_height="match_parent"/>
<Button
android:id="@+id/button_alert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="chose devices" />
</FrameLayout> </FrameLayout>