From 44f4444ad027afa53b909c47e597191b6d543056 Mon Sep 17 00:00:00 2001 From: jancoow Date: Thu, 11 Jun 2015 19:11:20 +0200 Subject: [PATCH] Network buttons --- control/NetworkHandler.java | 31 ++++++++++++++++---------- control/button/Button.java | 14 ++++++------ control/button/ButtonHandler.java | 36 +++++++++++++++++-------------- main/Window.java | 4 +++- 4 files changed, 51 insertions(+), 34 deletions(-) diff --git a/control/NetworkHandler.java b/control/NetworkHandler.java index 0d043d3..52d8bd7 100644 --- a/control/NetworkHandler.java +++ b/control/NetworkHandler.java @@ -39,12 +39,11 @@ public class NetworkHandler implements Runnable{ send = new byte[1024]; receive = new byte[1024]; - try { - udp = new DatagramSocket(); - udp.connect(InetAddress.getByName(host), port); - } catch (SocketException | UnknownHostException e) { - e.printStackTrace(); - } + try { + udp = new DatagramSocket(1112); + } catch (SocketException e) { + e.printStackTrace(); + } running = true; t = new Thread(this); @@ -84,15 +83,25 @@ public class NetworkHandler implements Runnable{ while(running) { - DatagramPacket pckg = new DatagramPacket(receive, receive.length); + DatagramPacket receivePacket = new DatagramPacket(receive, receive.length); try { - udp.receive(pckg); + udp.receive(receivePacket); } catch (IOException e) { e.printStackTrace(); - } + } + String sentence = new String( receivePacket.getData()); + System.out.println("RECEIVED: " + sentence); - String str = new String(pckg.getData()); - System.out.println(str); + String[] controls = sentence.split("\\|"); + for(int i = 0; i < 7; i++){ + if(Integer.parseInt(controls[i]) != ButtonHandler.getButton(i).pressed) + { + System.out.println("PRESS BITCH " + controls[i]); + ButtonHandler.getButton(i).pressed = Integer.parseInt(controls[i]); + if(Integer.parseInt(controls[i]) == 0) + bth.buttonPress(ButtonHandler.getButton(i)); + } + } } } diff --git a/control/button/Button.java b/control/button/Button.java index 21df2b2..e9389fc 100644 --- a/control/button/Button.java +++ b/control/button/Button.java @@ -3,21 +3,23 @@ package control.button; import java.awt.Color; import main.Window; -import control.LedHandler; +import control.NetworkHandler; public class Button { Color color; int ledID; int buttonID; - LedHandler led; + NetworkHandler ntw; + public int pressed; - public Button(int buttonID, int ledID, LedHandler led) + public Button(int buttonID, int ledID, NetworkHandler ntw) { color = new Color(255,255,255); this.ledID = ledID; this.buttonID = buttonID; - this.led = led; + this.ntw = ntw; + pressed = 1; setLed(); } @@ -25,8 +27,8 @@ public class Button { { if(Window.ON_RASP) { - led.setLed(ledID, color.getGreen(), color.getRed(), color.getBlue()); - led.show(); + ntw.setLed(ledID, color.getGreen(), color.getRed(), color.getBlue()); + ntw.show(); } } diff --git a/control/button/ButtonHandler.java b/control/button/ButtonHandler.java index 396b85a..54b4102 100644 --- a/control/button/ButtonHandler.java +++ b/control/button/ButtonHandler.java @@ -16,28 +16,20 @@ import com.pi4j.io.gpio.RaspiPin; import com.pi4j.io.gpio.event.GpioPinDigitalStateChangeEvent; import com.pi4j.io.gpio.event.GpioPinListenerDigital; -import control.LedHandler; +import control.NetworkHandler; public class ButtonHandler implements KeyListener{ List listeners; static List