package art.client.GUI.components.devices.window.colors.rtz32.realtime; import art.client.GUI.components.devices.window.colors.rtz32.realtime.components.distribution.Diagram_Distribution_Realtime; import art.client.GUI.components.devices.window.colors.rtz32.realtime.components.distribution.Diagram_Distribution_Realtime_Content; import art.client.GUI.components.devices.window.colors.rtz32.realtime.components.distribution.Diagram_Distribution_Realtime_Header_X; import art.client.GUI.components.devices.window.colors.rtz32.realtime.components.distribution.Diagram_Distribution_Realtime_Header_Y; import art.library.model.devices.colors.controller.RTZ32.RTZ32_Controller; import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.event.ComponentAdapter; import java.awt.event.ComponentEvent; import javax.swing.JPanel; public class RTZ32_PanelRealtime_Colors_Content extends JPanel { private RTZ32_Controller rtz32 = null; private Diagram_Distribution_Realtime_Header_Y diagram_Distribution_Realtime_Header_Y = null; private Diagram_Distribution_Realtime_Header_X diagram_Distribution_Realtime_Header_X = null; private Diagram_Distribution_Realtime_Content diagram_Distribution_Realtime_Content = null; public RTZ32_PanelRealtime_Colors_Content(RTZ32_Controller rtz32) { this.rtz32 = rtz32; this.diagram_Distribution_Realtime_Header_X = new Diagram_Distribution_Realtime_Header_X(rtz32, 150); this.diagram_Distribution_Realtime_Header_Y = new Diagram_Distribution_Realtime_Header_Y(rtz32); diagram_Distribution_Realtime_Content = new Diagram_Distribution_Realtime_Content(rtz32, 150); this.addComponentListener(new ComponentAdapter() { public void componentResized(ComponentEvent e) { int w = RTZ32_PanelRealtime_Colors_Content.this.getWidth(); int h = RTZ32_PanelRealtime_Colors_Content.this.getHeight(); int dy = (h - 100) - ((int)((h - 100)/rtz32.getDeviceConfiguration().rtz32.groups.length) * rtz32.getDeviceConfiguration().rtz32.groups.length); diagram_Distribution_Realtime_Header_X.setBounds(315, 75, w - 315, h); diagram_Distribution_Realtime_Header_Y.setBounds(0, 100, 315, h - 100 - dy); diagram_Distribution_Realtime_Content.setBounds(315, 100, w - 315, h - 100 - dy); } }); } public void timer() { repaint(); } public void paint(Graphics graphics) { Graphics2D g2 = (Graphics2D)graphics; Diagram_Distribution_Realtime.format(g2); g2.setBackground(Color.white); g2.clearRect(0, 0, getWidth(), getHeight()); // Header g2.setComposite(Diagram_Distribution_Realtime_Content.composite1); g2.translate(315, 0); diagram_Distribution_Realtime_Header_X.paintTimeline(g2); g2.translate(-315, 0); g2.translate(0, 25); diagram_Distribution_Realtime_Header_Y.paintPhases(g2, 100); g2.translate(0, -25); g2.translate(0, getHeight()-240); diagram_Distribution_Realtime_Header_Y.paintFooter(g2, 240); g2.translate(0, -(getHeight()-240)); g2.translate(0, 125); diagram_Distribution_Realtime_Header_Y.paintGroups(g2, getHeight()-100-240); g2.translate(0, -125); // Content diagram_Distribution_Realtime_Content.updateCycle(); g2.translate(315, 33); diagram_Distribution_Realtime_Content.paintSaturation(g2, 33); g2.translate(-315, -33); g2.translate(315, 66); diagram_Distribution_Realtime_Content.paintPhases(g2, 33); g2.translate(-315, -66); g2.translate(315, 125); diagram_Distribution_Realtime_Content.paintGroups(g2, getHeight()-100-240); g2.translate(-315, -125); g2.translate(315, 125); diagram_Distribution_Realtime_Content.paintCycleReference(g2, getHeight()-100-240); g2.translate(-315, -125); g2.translate(315, getHeight()-190); diagram_Distribution_Realtime_Content.paintACR(g2, 30); g2.translate(-315, -(getHeight()-190)); g2.translate(315, getHeight()-135); diagram_Distribution_Realtime_Content.paintTrolleyDetectors(g2, 30, 1); g2.translate(-315, -(getHeight()-135)); g2.translate(315, getHeight()-110); diagram_Distribution_Realtime_Content.paintTrolleyDetectors(g2, 30, 2); g2.translate(-315, -(getHeight()-110)); g2.translate(315, getHeight()-85); diagram_Distribution_Realtime_Content.paintTrolleyDetectors(g2, 30, 3); g2.translate(-315, -(getHeight()-85)); g2.translate(315, getHeight()-55); diagram_Distribution_Realtime_Content.paintTrolleyDetectors(g2, 30, 4); g2.translate(-315, -(getHeight()-55)); } }