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
|
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -55,7 +55,7 @@
version = "1.0"
[dependencies.sysinfo]
-version = "0.9"
+version = "0.13"
[dependencies.toml]
version = "0.5"
--- a/src/display_sysinfo.rs
+++ b/src/display_sysinfo.rs
@@ -4,7 +4,7 @@
self, AdjustmentExt, BoxExt, ContainerExt, GridExt, LabelExt, ProgressBarExt,
ScrolledWindowExt, ToggleButtonExt, WidgetExt, WidgetExtManual, GtkWindowExt,
};
-use sysinfo::{self, ComponentExt, NetworkExt, ProcessorExt, SystemExt};
+use sysinfo::{self, ComponentExt, NetworkExt, NetworksExt, ProcessorExt, SystemExt};
use std::cell::RefCell;
use std::iter;
@@ -188,7 +188,7 @@
p.set_margin_end(5);
p.set_margin_start(5);
p.set_show_text(true);
- let processor_list = s.get_processor_list();
+ let processor_list = s.get_processors();
if !processor_list.is_empty() {
let pro = &processor_list[0];
p.set_text(Some(&format!("{:.2} %", pro.get_cpu_usage() * 100.)));
@@ -205,7 +205,7 @@
// PROCESS PART
//
let check_box = create_header("Process usage", &vertical_layout, settings.display_graph);
- for (i, pro) in sys.borrow().get_processor_list().iter().skip(1).enumerate() {
+ for (i, pro) in sys.borrow().get_processors().iter().skip(1).enumerate() {
let i = i + 1;
procs.push(gtk::ProgressBar::new());
let p: >k::ProgressBar = &procs[i];
@@ -241,10 +241,10 @@
//
// TEMPERATURES PART
//
- if !sys.borrow().get_components_list().is_empty() {
+ if !sys.borrow().get_components().is_empty() {
check_box3 = Some(create_header("Components' temperature", &vertical_layout,
settings.display_graph));
- for component in sys.borrow().get_components_list() {
+ for component in sys.borrow().get_components() {
let horizontal_layout = gtk::Box::new(gtk::Orientation::Horizontal, 10);
// TODO: add max and critical temperatures as well
let temp = gtk::Label::new(Some(&format!("{:.1} °C",
@@ -438,7 +438,7 @@
// temperature part
let mut t = self.temperature_usage_history.borrow_mut();
- for (pos, (component, label)) in sys.get_components_list()
+ for (pos, (component, label)) in sys.get_components()
.iter()
.zip(self.components.iter())
.enumerate() {
@@ -459,19 +459,21 @@
pub fn update_network(&mut self, sys: &sysinfo::System) {
let mut t = self.network_history.borrow_mut();
- self.in_usage.set_text(format_number(sys.get_network().get_income()).as_str());
- self.out_usage.set_text(format_number(sys.get_network().get_outcome()).as_str());
+ let received = sys.get_networks().iter().map(|(_,data)| data.get_received()).sum();
+ let transmitted = sys.get_networks().iter().map(|(_,data)| data.get_transmitted()).sum();
+ self.in_usage.set_text(format_number(received).as_str());
+ self.out_usage.set_text(format_number(transmitted).as_str());
t.data[0].move_start();
- *t.data[0].get_mut(0).expect("cannot get data 0") = sys.get_network().get_income() as f64;
+ *t.data[0].get_mut(0).expect("cannot get data 0") = received as f64;
t.data[1].move_start();
- *t.data[1].get_mut(0).expect("cannot get data 1") = sys.get_network().get_outcome() as f64;
+ *t.data[1].get_mut(0).expect("cannot get data 1") = transmitted as f64;
}
pub fn update_system_info_display(&mut self, sys: &sysinfo::System) {
let v = &*self.procs.borrow_mut();
let h = &mut *self.cpu_usage_history.borrow_mut();
- for (i, pro) in sys.get_processor_list().iter().enumerate() {
+ for (i, pro) in sys.get_processors().iter().enumerate() {
v[i].set_text(Some(&format!("{:.1} %", pro.get_cpu_usage() * 100.)));
v[i].set_show_text(true);
v[i].set_fraction(f64::from(pro.get_cpu_usage()));
--- a/src/process_viewer.rs
+++ b/src/process_viewer.rs
@@ -72,14 +72,14 @@
fn update_system_network(system: &Rc<RefCell<sysinfo::System>>, info: &mut DisplaySysInfo) {
let mut system = system.borrow_mut();
- system.refresh_network();
+ system.refresh_networks_list();
info.update_network(&system);
}
fn update_window(list: >k::ListStore, system: &Rc<RefCell<sysinfo::System>>) {
let mut system = system.borrow_mut();
system.refresh_processes();
- let entries: &HashMap<Pid, Process> = system.get_process_list();
+ let entries: &HashMap<Pid, Process> = system.get_processes();
let mut seen: HashSet<Pid> = HashSet::new();
if let Some(iter) = list.get_iter_first() {
@@ -344,7 +344,7 @@
let start_time = get_now();
let sys = Rc::new(RefCell::new(sys));
let mut note = NoteBook::new();
- let procs = Procs::new(sys.borrow().get_process_list(), &mut note);
+ let procs = Procs::new(sys.borrow().get_processes(), &mut note);
let current_pid = Rc::clone(&procs.current_pid);
let info_button = procs.info_button.clone();
|