|
@@ -1,20 +1,22 @@
|
|
|
package ui.view;
|
|
|
|
|
|
import javax.swing.JPanel;
|
|
|
+import javax.swing.JProgressBar;
|
|
|
import javax.swing.JLabel;
|
|
|
import java.awt.Font;
|
|
|
import java.awt.Dimension;
|
|
|
import java.awt.Color;
|
|
|
import javax.swing.JSplitPane;
|
|
|
+import javax.swing.border.EmptyBorder;
|
|
|
|
|
|
public class FlexibleData extends JPanel {
|
|
|
private JLabel name_lbl;
|
|
|
- private JLabel lblProdVal;
|
|
|
- private JLabel lblConsVal;
|
|
|
+ private JProgressBar prodVal;
|
|
|
+ private JProgressBar consVal;
|
|
|
private JLabel lblProdConsVal;
|
|
|
private JPanel subnetColorPanel;
|
|
|
- public FlexibleData(String name, float prod, float cons) {
|
|
|
- setPreferredSize(new Dimension(430, 100));
|
|
|
+ public FlexibleData(String name, float prod, float cons, float maxProd, float maxCons) {
|
|
|
+ setPreferredSize(new Dimension(563, 100));
|
|
|
setMinimumSize(new Dimension(550, 100));
|
|
|
setLayout(null);
|
|
|
|
|
@@ -26,32 +28,38 @@ public class FlexibleData extends JPanel {
|
|
|
|
|
|
JLabel lblFlProd = new JLabel("Flex. Prod.:");
|
|
|
lblFlProd.setForeground(new Color(0, 128, 0));
|
|
|
- lblFlProd.setBounds(31, 46, 85, 27);
|
|
|
+ lblFlProd.setBounds(31, 46, 64, 27);
|
|
|
add(lblFlProd);
|
|
|
|
|
|
JLabel lblFlexCons = new JLabel("Flex. Cons.:\r\n");
|
|
|
lblFlexCons.setForeground(new Color(255, 0, 0));
|
|
|
- lblFlexCons.setBounds(160, 46, 85, 27);
|
|
|
+ lblFlexCons.setBounds(188, 46, 64, 27);
|
|
|
add(lblFlexCons);
|
|
|
|
|
|
JLabel lblProdCons = new JLabel("Prod./Cons.:");
|
|
|
lblProdCons.setForeground(new Color(218, 165, 32));
|
|
|
- lblProdCons.setBounds(300, 46, 85, 27);
|
|
|
+ lblProdCons.setBounds(348, 46, 85, 27);
|
|
|
add(lblProdCons);
|
|
|
|
|
|
- lblProdVal = new JLabel();
|
|
|
- setProd(prod);
|
|
|
- lblProdVal.setBounds(106, 47, 72, 24);
|
|
|
- add(lblProdVal);
|
|
|
+ prodVal = new JProgressBar();
|
|
|
+ setProd(maxProd, prod);
|
|
|
+ prodVal.setBounds(94, 46, 85, 24);
|
|
|
+ prodVal.setBorder(new EmptyBorder(0, 0, 0, 0));
|
|
|
+ prodVal.setStringPainted(true);
|
|
|
+ prodVal.setForeground(new Color(0, 128, 0));
|
|
|
+ add(prodVal);
|
|
|
|
|
|
- lblConsVal = new JLabel();
|
|
|
- setCons(cons);
|
|
|
- lblConsVal.setBounds(240, 47, 72, 24);
|
|
|
- add(lblConsVal);
|
|
|
+ consVal = new JProgressBar();
|
|
|
+ setCons(maxCons, cons);
|
|
|
+ consVal.setBounds(253, 46, 85, 24);
|
|
|
+ consVal.setBorder(new EmptyBorder(0, 0, 0, 0));
|
|
|
+ consVal.setStringPainted(true);
|
|
|
+ consVal.setForeground(Color.RED);
|
|
|
+ add(consVal);
|
|
|
|
|
|
lblProdConsVal = new JLabel();
|
|
|
- setProdConsVal(prod,cons);
|
|
|
- lblProdConsVal.setBounds(380, 46, 240, 24);
|
|
|
+ setProdConsVal(prod, cons);
|
|
|
+ lblProdConsVal.setBounds(415, 46, 103, 24);
|
|
|
add(lblProdConsVal);
|
|
|
|
|
|
subnetColorPanel = new JPanel();
|
|
@@ -61,12 +69,22 @@ public class FlexibleData extends JPanel {
|
|
|
add(subnetColorPanel);
|
|
|
}
|
|
|
|
|
|
- public void setProd(float p){
|
|
|
- lblProdVal.setText(Float.toString(p));
|
|
|
+ public void setProd(float max, float current){
|
|
|
+ int val = prodVal.getMaximum();
|
|
|
+ if(max != 0){
|
|
|
+ val = Math.round((current/max)*prodVal.getMaximum());
|
|
|
+ }
|
|
|
+ prodVal.setValue(val);
|
|
|
+ prodVal.setString(Float.toString(current));
|
|
|
}
|
|
|
|
|
|
- public void setCons(float c){
|
|
|
- lblConsVal.setText(Float.toString(c));
|
|
|
+ public void setCons(float max, float current){
|
|
|
+ int val = prodVal.getMaximum();
|
|
|
+ if(max != 0){
|
|
|
+ val = Math.round((current/max)*prodVal.getMaximum());
|
|
|
+ }
|
|
|
+ consVal.setValue(val);
|
|
|
+ consVal.setString(Float.toString(current));
|
|
|
}
|
|
|
|
|
|
public void setProdConsVal(float prod, float cons){
|