summaryrefslogtreecommitdiff
path: root/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java
diff options
context:
space:
mode:
authorMike Beattie <mike@ethernal.org>2013-04-21 14:51:07 +1200
committerMike Beattie <mike@ethernal.org>2013-04-21 14:51:07 +1200
commit49caac78786014d443d9c05f47b5eb3070ec9bd3 (patch)
treed00d60c1d16e6468545d6d5077369d3e5715292b /altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java
parent5b7bbf183e558330d27702aa1bebf205f0e094aa (diff)
parentcbf38c557a2046b6d6af3a9aebc0cef8e0dc5f11 (diff)
Merge branch 'altosdroid'
Diffstat (limited to 'altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java')
-rw-r--r--altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java b/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java
index 0f95bc22..8e8d9c03 100644
--- a/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java
+++ b/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java
@@ -23,6 +23,8 @@ import android.widget.ImageView;
public class GoNoGoLights {
private Boolean state;
+ private Boolean missing;
+ private Boolean set;
private ImageView red;
private ImageView green;
@@ -35,16 +37,23 @@ public class GoNoGoLights {
red = in_red;
green = in_green;
state = false;
+ missing = true;
+ set = false;
dRed = r.getDrawable(R.drawable.redled);
dGreen = r.getDrawable(R.drawable.greenled);
dGray = r.getDrawable(R.drawable.grayled);
}
- public void set(Boolean s) {
- if (s == state) return;
+ public void set(Boolean s, Boolean m) {
+ if (set && s == state && m == missing) return;
state = s;
- if (state) {
+ missing = m;
+ set = true;
+ if (missing) {
+ red.setImageDrawable(dGray);
+ green.setImageDrawable(dGray);
+ } else if (state) {
red.setImageDrawable(dGray);
green.setImageDrawable(dGreen);
} else {