private void setMenu(int windowID) { if (!isSet) { // GUILayout.Label("----- Sendhost -----"); GUILayout.BeginHorizontal(); GUILayout.Label("IPAddress"); sendhost = GUILayout.TextField(UDPSender.HOST, 50); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Port"); sendport = int.Parse(GUILayout.TextField(UDPSender.PORT.ToString(), 10)); GUILayout.EndHorizontal(); GUILayout.Label("----- Receivehost -----"); GUILayout.BeginHorizontal(); GUILayout.Label("LocalPort"); localport = int.Parse(GUILayout.TextField(localport.ToString(), 10)); GUILayout.EndHorizontal(); if (GUILayout.Button("Address Set", GUILayout.MinHeight(BUTTON_HEIGHT))) { SetUdpClient(); isSet = true; } } else { // GUILayout.Label("----- Sendhost -----"); if (GUILayout.Button("Disconnect", GUILayout.MinHeight(BUTTON_HEIGHT * 0.5f))) { ReleaseUdpClient(); isSet = false; } GUILayout.Label("SendMessage"); GUILayout.BeginHorizontal(); if (GUILayout.Button("ALL_ON", GUILayout.MinHeight(BUTTON_HEIGHT))) { udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ALL_ON)); show_sendms = "ALL_ON"; } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); if (GUILayout.Button("ALL_OFF", GUILayout.MinHeight(BUTTON_HEIGHT))) { udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ALL_OFF)); show_sendms = "ALL_OFF"; } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); if (GUILayout.Button("ALL_WHITE", GUILayout.MinHeight(BUTTON_HEIGHT))) { udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ALL_CHANGE_WARM), this); show_sendms = "ALL_WHITE"; } GUILayout.EndHorizontal(); // GUILayout.Label("----- ZONE -----"); GUILayout.BeginHorizontal(); if (GUILayout.Button("1", GUILayout.MinHeight(BUTTON_HEIGHT))) { zoneID = 1; diffColorSlider = (int)(lights[1].Color()); diffBrightnessSlider = (int)(lights[1].Brightness()); } if (GUILayout.Button("2", GUILayout.MinHeight(BUTTON_HEIGHT))) { zoneID = 2; diffColorSlider = (int)(lights[2].Color()); diffBrightnessSlider = (int)(lights[2].Brightness()); } if (GUILayout.Button("3", GUILayout.MinHeight(BUTTON_HEIGHT))) { zoneID = 3; diffColorSlider = (int)(lights[3].Color()); diffBrightnessSlider = (int)(lights[3].Brightness()); } if (GUILayout.Button("4", GUILayout.MinHeight(BUTTON_HEIGHT))) { zoneID = 4; diffColorSlider = (int)(lights[4].Color()); diffBrightnessSlider = (int)(lights[4].Brightness()); } if (GUILayout.Button("All", GUILayout.MinHeight(BUTTON_HEIGHT))) { zoneID = 0; diffColorSlider = (int)(lights[0].Color()); diffBrightnessSlider = (int)(lights[0].Brightness()); } GUILayout.EndHorizontal(); // GUILayout.Label("----- Switch -----"); GUILayout.BeginHorizontal(); if (GUILayout.Button("ON", GUILayout.MinHeight(BUTTON_HEIGHT))) { switch (zoneID) { case 1: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ZONE_1_ON)); lights[1].State(true); show_sendms = "ZONE_1_ON"; break; case 2: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ZONE_2_ON)); show_sendms = "ZONE_2_ON"; lights[2].State(true); break; case 3: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ZONE_3_ON)); show_sendms = "ZONE_3_ON"; lights[3].State(true); break; case 4: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ZONE_4_ON)); show_sendms = "ZONE_4_ON"; lights[4].State(true); break; case 0: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ALL_ON)); show_sendms = "ALL_ON"; foreach (var light in lights) { lights[light.Key].State(true); } break; default: break; } } if (GUILayout.Button("OFF", GUILayout.MinHeight(BUTTON_HEIGHT))) { switch (zoneID) { case 1: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ZONE_1_OFF)); show_sendms = "ZONE_1_OFF"; lights[1].State(false); break; case 2: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ZONE_2_OFF)); show_sendms = "ZONE_2_OFF"; lights[2].State(false); break; case 3: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ZONE_3_OFF)); show_sendms = "ZONE_3_OFF"; lights[3].State(false); break; case 4: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ZONE_4_OFF)); show_sendms = "ZONE_4_OFF"; lights[4].State(false); break; case 0: udp_send.SendCode(OrderConstants.hexCode2byteArray(OrderConstants.ALL_OFF)); show_sendms = "ALL_OFF"; foreach (var light in lights) { lights[light.Key].State(false); } break; default: break; } } GUILayout.EndHorizontal(); // GUILayout.Label("----- Color -----"); GUILayout.BeginHorizontal(); var color = GUILayout.HorizontalSlider(lights[zoneID].Color(), 0.0f, 255.0f, GUILayout.MinHeight(BUTTON_HEIGHT)); lights[zoneID].Color(color); doSlider("Color", (int)color); GUILayout.EndHorizontal(); // GUILayout.Label("----- Brightness -----"); GUILayout.BeginHorizontal(); var brightness = GUILayout.HorizontalSlider(lights[zoneID].Brightness(), 0.0f, 26.0f, GUILayout.MinHeight(BUTTON_HEIGHT)); lights[zoneID].Brightness(brightness); doSlider("Brightness", (int)brightness); GUILayout.EndHorizontal(); // GUILayout.Label("----- AutoSending -----"); GUILayout.BeginHorizontal(); GUILayout.Label("Send Interval"); waitT = GUILayout.TextField(waitT, 10); GUILayout.Label("(s)"); GUILayout.EndHorizontal(); if (waitT != "") { wait_time = float.Parse(waitT); } GUILayout.BeginHorizontal(); if (GUILayout.Button("Auto=ON", GUILayout.MinHeight(BUTTON_HEIGHT))) { isStartSending = true; isStopSending = false; } if (GUILayout.Button("Auto=OFF", GUILayout.MinHeight(BUTTON_HEIGHT))) { isStartSending = false; isStopSending = true; } GUILayout.EndHorizontal(); // GUILayout.Label("----- SendMessage -----"); GUILayout.Label(show_sendms); } //GUI.DragWindow(); }