bck
Alejandro Acuña
2024-11-11 f1cb4443aede6d4657bdc3396c8914d3a9f4fa93
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
package art.servers.gui.components;
 
import art.library.gui.flat.FlatPanel;
import art.library.gui.flat.FlatSplitPane;
import art.library.gui.flat.FlatWindow;
import art.library.model.devices.application.ApplicationStatus;
import art.servers.Shared;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import javax.swing.JSplitPane;
 
 
public class PanelProcess extends PanelGeneric
{
    private FlatWindow window = null;
    private FlatSplitPane flatSplitPane1 = null;
    private PanelProcess_Information panelSystem_Information = null;
    private PanelProcess_Chart panelSystem_CPU = null;
    private PanelProcess_Chart panelSystem_Memory = null;
    private PanelProcess_Chart panelProcess_CPU = null;
    private PanelProcess_Chart panelProcess_Memory = null;
 
    
    public PanelProcess(FlatWindow window) 
    {
        this.window = window;
        initialise();
    }
    
    
    public void selection() 
    {
    }
    
    
    public void deselection() 
    {
    }
    
    
    public void timer()
    {
        ApplicationStatus status = Shared.controllerProcessInformation.getApplicationStatus();
                
        if (panelSystem_Information != null) panelSystem_Information.reload(status);
        if (panelSystem_CPU != null) panelSystem_CPU.reload(status.system.systemCpuLoad * 100);
        if (panelSystem_Memory != null) 
        {
            long totalPhysicalMemory = status.system.totalPhysicalMemorySize / 1048576;
            long usedMemory = (status.system.totalPhysicalMemorySize - status.system.freePhysicalMemorySize) / 1048576;
            panelSystem_Memory.reload(totalPhysicalMemory, usedMemory);
        }
        if (panelProcess_CPU != null) panelProcess_CPU.reload(status.system.processCpuLoad * 100);
        if (panelProcess_Memory != null) 
        {
            long totalPhysicalMemory = status.memory.heapMemoryUsage_max / 1048576;
            long usedMemory = status.memory.usedMemory / 1048576L;
            panelProcess_Memory.reload(totalPhysicalMemory, usedMemory);
        }
    }
 
 
    
    private void initialise()
    {
        flatSplitPane1 = new FlatSplitPane();
        {
            FlatPanel panel1 = new FlatPanel();
            {
                panelSystem_Information = new PanelProcess_Information();
                panel1.setLayout(new BorderLayout());
                panel1.add(panelSystem_Information, BorderLayout.CENTER);
            }
            
            FlatPanel panel2 = new FlatPanel();
            {
                panelSystem_CPU = new PanelProcess_Chart("System %CPU", "System %CPU");
                panelSystem_Memory = new PanelProcess_Chart("System, used memory (MB)", "System, used memory (MB)");
                panelProcess_CPU = new PanelProcess_Chart("Process %CPU", "Process %CPU");
                panelProcess_Memory = new PanelProcess_Chart("Process, used memory (MB)", "Process, used memory (MB)");
                panel2.setLayout(new GridLayout(2, 2));
                panel2.add(panelSystem_CPU);
                panel2.add(panelSystem_Memory);
                panel2.add(panelProcess_CPU);
                panel2.add(panelProcess_Memory);
            }
            
            flatSplitPane1.setOrientation(JSplitPane.HORIZONTAL_SPLIT);
            flatSplitPane1.setLeftComponent(panel1);
            flatSplitPane1.setRightComponent(panel2);
            flatSplitPane1.setOneTouchExpandable();
            flatSplitPane1.changeDividerSize(16);
 
            flatSplitPane1.addComponentListener(new ComponentAdapter() 
            {
                public void componentResized(ComponentEvent e) 
                {
                    flatSplitPane1.setDividerLocation(480);
                }       
            });                
            
        }
        
        this.setLayout(new BorderLayout());
        this.add(flatSplitPane1, BorderLayout.CENTER);
        
    }
    
    
    
    
    
    
 
    
    
    
    
}