- add top processes to Network module

- add application names to CPU and RAM top processes view
This commit is contained in:
Serhiy Mytrovtsiy
2020-07-29 21:37:02 +02:00
parent 5b3898672a
commit 2c8a464d2d
10 changed files with 252 additions and 13 deletions

View File

@@ -57,8 +57,17 @@ public struct Network_Usage: value_t {
public var widget_value: Double = 0
}
public struct Network_Process {
var time: Date = Date()
var name: String = ""
var pid: String = ""
var download: Int = 0
var upload: Int = 0
}
public class Network: Module {
private var usageReader: UsageReader?
private var usageReader: UsageReader? = nil
private var processReader: ProcessReader? = nil
private let popupView: Popup = Popup()
private var settingsView: Settings
@@ -75,6 +84,8 @@ public class Network: Module {
self.usageReader = UsageReader()
self.usageReader?.store = store
self.processReader = ProcessReader()
self.usageReader?.readyCallback = { [unowned self] in
self.readyHandler()
}
@@ -82,6 +93,12 @@ public class Network: Module {
self.usageCallback(value)
}
self.processReader?.callbackHandler = { [unowned self] value in
if let list = value {
self.popupView.processCallback(list)
}
}
self.settingsView.callback = { [unowned self] in
self.usageReader?.getDetails()
self.usageReader?.read()
@@ -90,6 +107,9 @@ public class Network: Module {
if let reader = self.usageReader {
self.addReader(reader)
}
if let reader = self.processReader {
self.addReader(reader)
}
}
public override func isAvailable() -> Bool {