Add clear data buttons.
This commit is contained in:
parent
0585fb3eb1
commit
372896ac34
|
|
@ -330,6 +330,7 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
_menu.findItem(R.id.action_active_vibration_object).setIcon(getResources().getDrawable(
|
||||
serviceTrackingDog.isVibrationNearObjectEnabled() ? R.drawable.ic_check_box_checked : R.drawable.ic_check_box_unchecked));
|
||||
_menu.findItem(R.id.action_active_vibration_object).setChecked(serviceTrackingDog.isVibrationNearObjectEnabled());
|
||||
navigationView.getMenu().findItem(R.id.action_clear_dog).setEnabled(false);
|
||||
updateSendTraceMenu();
|
||||
return false;
|
||||
//return super.onCreateOptionsMenu(menu);
|
||||
|
|
@ -340,6 +341,8 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
boolean isXmppActive = serviceTrackingDog.isXmppEnabled();
|
||||
navigationView.getMenu().findItem(R.id.action_send_gpx_trail).setEnabled(isTrailFileExist);
|
||||
navigationView.getMenu().findItem(R.id.action_send_gpx_trail_by_xmpp).setEnabled(isXmppActive && isTrailFileExist);
|
||||
navigationView.getMenu().findItem(R.id.action_clear_trail).setEnabled(isTrailFileExist);
|
||||
navigationView.getMenu().findItem(R.id.action_clear_dog).setEnabled(lastDogPolyline != null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -363,6 +366,14 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
startActivitySendGpxFile();
|
||||
mDrawerLayout.closeDrawers();
|
||||
return true;
|
||||
} else if (id == R.id.action_clear_trail) {
|
||||
clearTrail();
|
||||
mDrawerLayout.closeDrawers();
|
||||
return true;
|
||||
} else if (id == R.id.action_clear_dog) {
|
||||
clearDog();
|
||||
mDrawerLayout.closeDrawers();
|
||||
return true;
|
||||
} else if (id == R.id.action_active_vibration_object) {
|
||||
activeVibrationObject(item);
|
||||
return true;
|
||||
|
|
@ -407,6 +418,30 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
}
|
||||
}
|
||||
|
||||
private void clearTrail() {
|
||||
serviceTrackingDog.clearTrail();
|
||||
updateSendTraceMenu();
|
||||
if (lastTrailPolyline != null) {
|
||||
map.getOverlayManager().remove(lastTrailPolyline);
|
||||
lastTrailPolyline = null;
|
||||
}
|
||||
map.getOverlayManager().removeAll(listTrailObject);
|
||||
listTrailObject.clear();
|
||||
this.textViewCurrentLocation.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
private void clearDog() {
|
||||
serviceTrackingDog.clearDog();
|
||||
navigationView.getMenu().findItem(R.id.action_clear_dog).setEnabled(false);
|
||||
if (lastDogPolyline != null) {
|
||||
map.getOverlayManager().remove(lastDogPolyline);
|
||||
lastDogPolyline = null;
|
||||
}
|
||||
map.getOverlayManager().removeAll(listDogObject);
|
||||
listDogObject.clear();
|
||||
this.textViewCurrentLocation.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
private void activeVibrationObject(MenuItem item) {
|
||||
boolean checked = item.isChecked();
|
||||
item.setChecked(!checked);
|
||||
|
|
@ -570,6 +605,11 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
|
||||
|
||||
//<editor-fold defaultstate="collapsed" desc="Map management">
|
||||
private Polyline lastDogPolyline = null;
|
||||
private Polyline lastTrailPolyline = null;
|
||||
private final List<Marker> listTrailObject = new ArrayList<>();
|
||||
private final List<Marker> listDogObject = new ArrayList<>();
|
||||
|
||||
private void changeStatusTrace() {
|
||||
serviceTrackingDog.toggleTraceurActivation();
|
||||
if (serviceTrackingDog.isTraceurActivated()) {
|
||||
|
|
@ -599,6 +639,7 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
this.start_stop_dog_trace.setText(R.string.dog_start);
|
||||
this.add_object.setVisibility(View.GONE);
|
||||
this.start_stop_trace.setVisibility(View.VISIBLE);
|
||||
navigationView.getMenu().findItem(R.id.action_clear_dog).setEnabled(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -625,6 +666,11 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
}
|
||||
});
|
||||
map.getOverlays().add(marker);
|
||||
if (isFound) {
|
||||
listDogObject.add(marker);
|
||||
} else {
|
||||
listTrailObject.add(marker);
|
||||
}
|
||||
}
|
||||
|
||||
private void markAsFound() {
|
||||
|
|
@ -663,15 +709,18 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
return ;
|
||||
}
|
||||
|
||||
Polyline line = new Polyline(map);
|
||||
line.setTitle("Chien");
|
||||
line.setSubDescription("Départ: "+listLoc.getFirstLocation().getDatePrint());
|
||||
line.setColor(Color.BLUE);
|
||||
line.setPoints(convertListLocation(listLoc));
|
||||
line.setWidth(LINE_WIDTH_BIG);
|
||||
line.setGeodesic(true);
|
||||
line.setInfoWindow(new BasicInfoWindow(R.layout.bonuspack_bubble, map));
|
||||
map.getOverlayManager().add(line);
|
||||
if (lastDogPolyline != null) {
|
||||
map.getOverlayManager().remove(lastDogPolyline);
|
||||
}
|
||||
lastDogPolyline = new Polyline(map);
|
||||
lastDogPolyline.setTitle("Chien");
|
||||
lastDogPolyline.setSubDescription("Départ: "+listLoc.getFirstLocation().getDatePrint());
|
||||
lastDogPolyline.setColor(Color.BLUE);
|
||||
lastDogPolyline.setPoints(convertListLocation(listLoc));
|
||||
lastDogPolyline.setWidth(LINE_WIDTH_BIG);
|
||||
lastDogPolyline.setGeodesic(true);
|
||||
lastDogPolyline.setInfoWindow(new BasicInfoWindow(R.layout.bonuspack_bubble, map));
|
||||
map.getOverlayManager().add(lastDogPolyline);
|
||||
map.invalidate();
|
||||
}
|
||||
|
||||
|
|
@ -681,15 +730,18 @@ public class MainActivity extends AppCompatActivity implements IOrientationConsu
|
|||
return ;
|
||||
}
|
||||
|
||||
Polyline line = new Polyline(map);
|
||||
line.setTitle("Traceur");
|
||||
line.setSubDescription("Départ: "+listLoc.getFirstLocation().getDatePrint());
|
||||
line.setColor(Color.RED);
|
||||
line.setPoints(convertListLocation(listLoc));
|
||||
line.setWidth(LINE_WIDTH_BIG);
|
||||
line.setGeodesic(true);
|
||||
line.setInfoWindow(new BasicInfoWindow(R.layout.bonuspack_bubble, map));
|
||||
map.getOverlayManager().add(line);
|
||||
if (lastTrailPolyline != null) {
|
||||
map.getOverlayManager().remove(lastTrailPolyline);
|
||||
}
|
||||
lastTrailPolyline = new Polyline(map);
|
||||
lastTrailPolyline.setTitle("Traceur");
|
||||
lastTrailPolyline.setSubDescription("Départ: "+listLoc.getFirstLocation().getDatePrint());
|
||||
lastTrailPolyline.setColor(Color.RED);
|
||||
lastTrailPolyline.setPoints(convertListLocation(listLoc));
|
||||
lastTrailPolyline.setWidth(LINE_WIDTH_BIG);
|
||||
lastTrailPolyline.setGeodesic(true);
|
||||
lastTrailPolyline.setInfoWindow(new BasicInfoWindow(R.layout.bonuspack_bubble, map));
|
||||
map.getOverlayManager().add(lastTrailPolyline);
|
||||
map.invalidate();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -92,4 +92,17 @@ public class Traces {
|
|||
public boolean isDogActivated() {
|
||||
return this.dogActivated;
|
||||
}
|
||||
|
||||
public void clearListPointTraceur() {
|
||||
listPointTraceur.clear();
|
||||
}
|
||||
public void clearListPointDog() {
|
||||
listPointDog.clear();
|
||||
}
|
||||
public void clearListObjectsTrail() {
|
||||
listPointObjectsTrail.clear();
|
||||
}
|
||||
public void clearListObjectDog() {
|
||||
listPointObjectsDog.clear();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -230,6 +230,15 @@ public class ServiceTrackingDog implements Observer {
|
|||
}
|
||||
return distance;
|
||||
}
|
||||
public void clearTrail() {
|
||||
traces.clearListObjectsTrail();
|
||||
traces.clearListPointTraceur();
|
||||
lastExportedTrailFile = null;
|
||||
}
|
||||
public void clearDog() {
|
||||
traces.clearListObjectDog();
|
||||
traces.clearListPointDog();
|
||||
}
|
||||
//</editor-fold>
|
||||
//</editor-fold>
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,9 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
|
||||
</vector>
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
|
||||
</vector>
|
||||
|
|
@ -8,6 +8,14 @@
|
|||
android:id="@+id/action_send_gpx_trail"
|
||||
android:title="@string/action_send_gpx_trail"
|
||||
android:icon="@drawable/ic_share" />
|
||||
<item
|
||||
android:id="@+id/action_clear_trail"
|
||||
android:title="@string/action_clear_trail"
|
||||
android:icon="@drawable/ic_clear_trail" />
|
||||
<item
|
||||
android:id="@+id/action_clear_dog"
|
||||
android:title="@string/action_clear_dog"
|
||||
android:icon="@drawable/ic_clear_dog" />
|
||||
<item
|
||||
android:id="@+id/action_active_vibration_object"
|
||||
android:title="@string/action_active_vibration_object"
|
||||
|
|
|
|||
|
|
@ -10,10 +10,12 @@
|
|||
<string name="action_import_gpx">Import GPX</string>
|
||||
<string name="action_send_gpx_trail">Envoyer trace du traceur</string>
|
||||
<string name="action_send_to">Envoyer par</string>
|
||||
<string name="action_clear_trail">Supprimer données traceur</string>
|
||||
<string name="action_clear_dog">Supprimer données chien</string>
|
||||
<string name="action_active_vibration_object">Active vibration objets</string>
|
||||
<string name="action_qr_code_generator">Affiche identifiant</string>
|
||||
<string name="action_qr_code_reader">Lecture identifiant</string>
|
||||
<string name="menu_title_xmpp">XMPP</string>
|
||||
<string name="action_active_xmpp">Active XMPP</string>
|
||||
<string name="action_send_gpx_trail_by_xmpp">Envoyer trace du traceur par XMPP</string>
|
||||
<string name="action_send_gpx_trail_by_xmpp">Envoyer trace du traceur</string>
|
||||
</resources>
|
||||
|
|
|
|||
Loading…
Reference in New Issue