- remove top process option from settings (top process will be available always)

This commit is contained in:
Serhiy Mytrovtsiy
2020-07-28 21:35:06 +02:00
parent 6a609c6f04
commit cc58c16316
3 changed files with 4 additions and 38 deletions

View File

@@ -65,10 +65,6 @@ public class CPU: Module {
self.settingsView.setInterval = { [unowned self] value in
self.loadReader?.setInterval(value)
}
self.settingsView.topProcessesCallback = {
self.popupView = Popup(self.config.name, store: self.store)
self.replacePopup(self.popupView)
}
self.loadReader?.readyCallback = { [unowned self] in
self.readyHandler()

View File

@@ -154,13 +154,6 @@ public class ProcessReader: Reader<[TopProcess]> {
private var loadPrevious = host_cpu_load_info()
public override var enabled: Bool {
set {}
get {
return self.store?.pointee.bool(key: "CPU_topProcesses", defaultValue: false) ?? false
}
}
public override func setup() {
self.popup = true
}
@@ -200,7 +193,7 @@ public class ProcessReader: Reader<[TopProcess]> {
let pidString = str.findAndCrop(pattern: "^\\d+")
let usageString = str.findAndCrop(pattern: "^[0-9,.]+ ")
let command = str.trimmingCharacters(in: .whitespaces)
let pid = Int(pidString) ?? 0
let usage = Double(usageString.replacingOccurrences(of: ",", with: ".")) ?? 0

View File

@@ -18,13 +18,11 @@ internal class Settings: NSView, Settings_v {
private var hyperthreadState: Bool = false
private var updateIntervalValue: String = "1"
private let listOfUpdateIntervals: [String] = ["1", "2", "3", "5", "10", "15", "30"]
private var topProcessesState: Bool = false
private let title: String
private let store: UnsafePointer<Store>
public var callback: (() -> Void) = {}
public var topProcessesCallback: (() -> Void) = {}
public var setInterval: ((_ value: Double) -> Void) = {_ in }
private var hyperthreadView: NSView? = nil
@@ -34,7 +32,6 @@ internal class Settings: NSView, Settings_v {
self.store = store
self.hyperthreadState = store.pointee.bool(key: "\(self.title)_hyperhreading", defaultValue: self.hyperthreadState)
self.usagePerCoreState = store.pointee.bool(key: "\(self.title)_usagePerCore", defaultValue: self.usagePerCoreState)
self.topProcessesState = store.pointee.bool(key: "\(self.title)_topProcesses", defaultValue: self.topProcessesState)
self.updateIntervalValue = store.pointee.string(key: "\(self.title)_updateInterval", defaultValue: self.updateIntervalValue)
if !self.usagePerCoreState {
self.hyperthreadState = false
@@ -59,7 +56,7 @@ internal class Settings: NSView, Settings_v {
self.subviews.forEach{ $0.removeFromSuperview() }
let rowHeight: CGFloat = 30
let num: CGFloat = widget == .barChart ? 3 : 1
let num: CGFloat = widget == .barChart ? 2 : 0
self.addSubview(SelectTitleRow(
frame: NSRect(x: Constants.Settings.margin, y: Constants.Settings.margin + (rowHeight + Constants.Settings.margin) * num, width: self.frame.width - (Constants.Settings.margin*2), height: rowHeight),
@@ -71,14 +68,14 @@ internal class Settings: NSView, Settings_v {
if widget == .barChart {
self.addSubview(ToggleTitleRow(
frame: NSRect(x: Constants.Settings.margin, y: Constants.Settings.margin + (rowHeight + Constants.Settings.margin) * 2, width: self.frame.width - (Constants.Settings.margin*2), height: rowHeight),
frame: NSRect(x: Constants.Settings.margin, y: Constants.Settings.margin + (rowHeight + Constants.Settings.margin) * 1, width: self.frame.width - (Constants.Settings.margin*2), height: rowHeight),
title: "Show usage per core",
action: #selector(toggleUsagePerCore),
state: self.usagePerCoreState
))
self.hyperthreadView = ToggleTitleRow(
frame: NSRect(x: Constants.Settings.margin, y: Constants.Settings.margin + (rowHeight + Constants.Settings.margin) * 1, width: self.frame.width - (Constants.Settings.margin*2), height: rowHeight),
frame: NSRect(x: Constants.Settings.margin, y: Constants.Settings.margin + (rowHeight + Constants.Settings.margin) * 0, width: self.frame.width - (Constants.Settings.margin*2), height: rowHeight),
title: "Show hyper-threading cores",
action: #selector(toggleMultithreading),
state: self.hyperthreadState
@@ -90,13 +87,6 @@ internal class Settings: NSView, Settings_v {
self.addSubview(self.hyperthreadView!)
}
self.addSubview(ToggleTitleRow(
frame: NSRect(x: Constants.Settings.margin, y: Constants.Settings.margin + (rowHeight + Constants.Settings.margin) * 0, width: self.frame.width - (Constants.Settings.margin*2), height: rowHeight),
title: "Top processes",
action: #selector(toggleTopProcesses),
state: self.topProcessesState
))
self.setFrameSize(NSSize(width: self.frame.width, height: (rowHeight*(num+1)) + (Constants.Settings.margin*(2+num))))
}
@@ -142,17 +132,4 @@ internal class Settings: NSView, Settings_v {
self.store.pointee.set(key: "\(self.title)_hyperhreading", value: self.hyperthreadState)
self.callback()
}
@objc func toggleTopProcesses(_ sender: NSControl) {
var state: NSControl.StateValue? = nil
if #available(OSX 10.15, *) {
state = sender is NSSwitch ? (sender as! NSSwitch).state: nil
} else {
state = sender is NSButton ? (sender as! NSButton).state: nil
}
self.topProcessesState = state! == .on ? true : false
self.store.pointee.set(key: "\(self.title)_topProcesses", value: self.topProcessesState)
self.topProcessesCallback()
}
}