0 | |
Index: process-viewer/Cargo.toml
|
1 | |
===================================================================
|
2 | |
--- process-viewer.orig/Cargo.toml
|
3 | |
+++ process-viewer/Cargo.toml
|
4 | |
@@ -55,7 +55,7 @@ version = "1.0"
|
|
0 |
--- a/Cargo.toml
|
|
1 |
+++ b/Cargo.toml
|
|
2 |
@@ -55,7 +55,7 @@
|
5 | 3 |
version = "1.0"
|
6 | 4 |
|
7 | 5 |
[dependencies.sysinfo]
|
|
10 | 8 |
|
11 | 9 |
[dependencies.toml]
|
12 | 10 |
version = "0.5"
|
|
11 |
--- a/src/display_sysinfo.rs
|
|
12 |
+++ b/src/display_sysinfo.rs
|
|
13 |
@@ -4,7 +4,7 @@
|
|
14 |
self, AdjustmentExt, BoxExt, ContainerExt, GridExt, LabelExt, ProgressBarExt,
|
|
15 |
ScrolledWindowExt, ToggleButtonExt, WidgetExt, WidgetExtManual, GtkWindowExt,
|
|
16 |
};
|
|
17 |
-use sysinfo::{self, ComponentExt, NetworkExt, ProcessorExt, SystemExt};
|
|
18 |
+use sysinfo::{self, ComponentExt, NetworkExt, NetworksExt, ProcessorExt, SystemExt};
|
|
19 |
|
|
20 |
use std::cell::RefCell;
|
|
21 |
use std::iter;
|
|
22 |
@@ -188,7 +188,7 @@
|
|
23 |
p.set_margin_end(5);
|
|
24 |
p.set_margin_start(5);
|
|
25 |
p.set_show_text(true);
|
|
26 |
- let processor_list = s.get_processor_list();
|
|
27 |
+ let processor_list = s.get_processors();
|
|
28 |
if !processor_list.is_empty() {
|
|
29 |
let pro = &processor_list[0];
|
|
30 |
p.set_text(Some(&format!("{:.2} %", pro.get_cpu_usage() * 100.)));
|
|
31 |
@@ -205,7 +205,7 @@
|
|
32 |
// PROCESS PART
|
|
33 |
//
|
|
34 |
let check_box = create_header("Process usage", &vertical_layout, settings.display_graph);
|
|
35 |
- for (i, pro) in sys.borrow().get_processor_list().iter().skip(1).enumerate() {
|
|
36 |
+ for (i, pro) in sys.borrow().get_processors().iter().skip(1).enumerate() {
|
|
37 |
let i = i + 1;
|
|
38 |
procs.push(gtk::ProgressBar::new());
|
|
39 |
let p: >k::ProgressBar = &procs[i];
|
|
40 |
@@ -241,10 +241,10 @@
|
|
41 |
//
|
|
42 |
// TEMPERATURES PART
|
|
43 |
//
|
|
44 |
- if !sys.borrow().get_components_list().is_empty() {
|
|
45 |
+ if !sys.borrow().get_components().is_empty() {
|
|
46 |
check_box3 = Some(create_header("Components' temperature", &vertical_layout,
|
|
47 |
settings.display_graph));
|
|
48 |
- for component in sys.borrow().get_components_list() {
|
|
49 |
+ for component in sys.borrow().get_components() {
|
|
50 |
let horizontal_layout = gtk::Box::new(gtk::Orientation::Horizontal, 10);
|
|
51 |
// TODO: add max and critical temperatures as well
|
|
52 |
let temp = gtk::Label::new(Some(&format!("{:.1} °C",
|
|
53 |
@@ -438,7 +438,7 @@
|
|
54 |
|
|
55 |
// temperature part
|
|
56 |
let mut t = self.temperature_usage_history.borrow_mut();
|
|
57 |
- for (pos, (component, label)) in sys.get_components_list()
|
|
58 |
+ for (pos, (component, label)) in sys.get_components()
|
|
59 |
.iter()
|
|
60 |
.zip(self.components.iter())
|
|
61 |
.enumerate() {
|
|
62 |
@@ -459,19 +459,21 @@
|
|
63 |
|
|
64 |
pub fn update_network(&mut self, sys: &sysinfo::System) {
|
|
65 |
let mut t = self.network_history.borrow_mut();
|
|
66 |
- self.in_usage.set_text(format_number(sys.get_network().get_income()).as_str());
|
|
67 |
- self.out_usage.set_text(format_number(sys.get_network().get_outcome()).as_str());
|
|
68 |
+ let received = sys.get_networks().iter().map(|(_,data)| data.get_received()).sum();
|
|
69 |
+ let transmitted = sys.get_networks().iter().map(|(_,data)| data.get_transmitted()).sum();
|
|
70 |
+ self.in_usage.set_text(format_number(received).as_str());
|
|
71 |
+ self.out_usage.set_text(format_number(transmitted).as_str());
|
|
72 |
t.data[0].move_start();
|
|
73 |
- *t.data[0].get_mut(0).expect("cannot get data 0") = sys.get_network().get_income() as f64;
|
|
74 |
+ *t.data[0].get_mut(0).expect("cannot get data 0") = received as f64;
|
|
75 |
t.data[1].move_start();
|
|
76 |
- *t.data[1].get_mut(0).expect("cannot get data 1") = sys.get_network().get_outcome() as f64;
|
|
77 |
+ *t.data[1].get_mut(0).expect("cannot get data 1") = transmitted as f64;
|
|
78 |
}
|
|
79 |
|
|
80 |
pub fn update_system_info_display(&mut self, sys: &sysinfo::System) {
|
|
81 |
let v = &*self.procs.borrow_mut();
|
|
82 |
let h = &mut *self.cpu_usage_history.borrow_mut();
|
|
83 |
|
|
84 |
- for (i, pro) in sys.get_processor_list().iter().enumerate() {
|
|
85 |
+ for (i, pro) in sys.get_processors().iter().enumerate() {
|
|
86 |
v[i].set_text(Some(&format!("{:.1} %", pro.get_cpu_usage() * 100.)));
|
|
87 |
v[i].set_show_text(true);
|
|
88 |
v[i].set_fraction(f64::from(pro.get_cpu_usage()));
|
|
89 |
--- a/src/process_viewer.rs
|
|
90 |
+++ b/src/process_viewer.rs
|
|
91 |
@@ -72,14 +72,14 @@
|
|
92 |
|
|
93 |
fn update_system_network(system: &Rc<RefCell<sysinfo::System>>, info: &mut DisplaySysInfo) {
|
|
94 |
let mut system = system.borrow_mut();
|
|
95 |
- system.refresh_network();
|
|
96 |
+ system.refresh_networks_list();
|
|
97 |
info.update_network(&system);
|
|
98 |
}
|
|
99 |
|
|
100 |
fn update_window(list: >k::ListStore, system: &Rc<RefCell<sysinfo::System>>) {
|
|
101 |
let mut system = system.borrow_mut();
|
|
102 |
system.refresh_processes();
|
|
103 |
- let entries: &HashMap<Pid, Process> = system.get_process_list();
|
|
104 |
+ let entries: &HashMap<Pid, Process> = system.get_processes();
|
|
105 |
let mut seen: HashSet<Pid> = HashSet::new();
|
|
106 |
|
|
107 |
if let Some(iter) = list.get_iter_first() {
|
|
108 |
@@ -344,7 +344,7 @@
|
|
109 |
let start_time = get_now();
|
|
110 |
let sys = Rc::new(RefCell::new(sys));
|
|
111 |
let mut note = NoteBook::new();
|
|
112 |
- let procs = Procs::new(sys.borrow().get_process_list(), &mut note);
|
|
113 |
+ let procs = Procs::new(sys.borrow().get_processes(), &mut note);
|
|
114 |
let current_pid = Rc::clone(&procs.current_pid);
|
|
115 |
let info_button = procs.info_button.clone();
|
|
116 |
|