소스 검색

Better button handling and other improvements

Added the new air pressure class and improved the order in which the
values appear. Also massively improved button handling, now it will
respond instantly to a button press
Kenneth van Ewijk 11 년 전
부모
커밋
d143164e43
1개의 변경된 파일30개의 추가작업 그리고 4개의 파일을 삭제
  1. 30 4
      Weerstation.java

+ 30 - 4
Weerstation.java

@@ -26,14 +26,15 @@ public class Weerstation {
         //All the different screen classes
     
         final List<Grootheid> lstScreens = new ArrayList<Grootheid>();
+        lstScreens.add(new OutsideTemp(meting1, meting2));
+        lstScreens.add(new WindChill(meting1, meting2));
+        lstScreens.add(new OutsideHum(meting1, meting2));
+        lstScreens.add(new Barometer(meting1, meting2));
         lstScreens.add(new AvgWindSpeed(meting1, meting2));
         lstScreens.add(new RainRate(meting1, meting2));
-        lstScreens.add(new OutsideTemp(meting1, meting2));
         lstScreens.add(new InsideTemp(meting1, meting2));
-        lstScreens.add(new OutsideHum(meting1, meting2));
         lstScreens.add(new InsideHum(meting1, meting2));
         lstScreens.add(new CloudHeight(meting1, meting2));
-        lstScreens.add(new WindChill(meting1, meting2));
         lstScreens.add(new UVLevel(meting1, meting2));
         
         
@@ -87,13 +88,38 @@ public class Weerstation {
             public void run() {
                 if(IO.readShort(0x100) == 1){
                     if(IO.readShort(0x80) == 1){
-                        wait = true;   
+                        wait = true;
+                        if(!graph)
+                        {
+                            Grootheid obj = lstScreens.get(currentScreen);
+                            obj.displayGraph();
+                        }
                         graph = true;
                     }else if(IO.readShort(0x80) == 0){
                         wait = false;
+                        if(graph)
+                        {
+                            Grootheid obj = lstScreens.get(currentScreen);
+                            obj.display();
+                        }
                         graph = false;
                     }
                 }else if(IO.readShort(0x100) == 0){
+                    if(IO.readShort(0x80) == 1){
+                        if(!graph)
+                        {
+                            Grootheid obj = lstScreens.get(currentScreen);
+                            obj.displayGraph();
+                        }
+                        graph = true;
+                    }else if(IO.readShort(0x80) == 0){
+                        if(graph)
+                        {
+                            Grootheid obj = lstScreens.get(currentScreen);
+                            obj.display();
+                        }
+                        graph = false;
+                    }
                     wait = true;
                 }               
             }