- 实时 CPU/GPU/内存/Swap 监控 + Top 进程 - 5 种计量器样式(圆环/条状/纯文本/扇形/紧凑) - 半透明悬浮窗 + 菜单栏图标控制 - 独立设置窗口,每模块可指定行号+列位布局 - 窗口宽高/透明度/字体全局可调
28 lines
974 B
Swift
28 lines
974 B
Swift
import AppKit
|
|
|
|
/// 半透明悬浮窗口
|
|
final class FloatingWindow: NSWindow {
|
|
override var canBecomeKey: Bool { true }
|
|
override var canBecomeMain: Bool { false }
|
|
|
|
override init(
|
|
contentRect: NSRect = NSRect(x: 0, y: 0, width: 250, height: 300),
|
|
styleMask style: NSWindow.StyleMask = [.borderless, .resizable],
|
|
backing backingStoreType: NSWindow.BackingStoreType = .buffered,
|
|
defer flag: Bool = false
|
|
) {
|
|
super.init(contentRect: contentRect, styleMask: style, backing: backingStoreType, defer: flag)
|
|
|
|
self.level = .floating
|
|
self.collectionBehavior = [.canJoinAllSpaces, .stationary, .fullScreenAuxiliary]
|
|
|
|
self.isOpaque = false
|
|
self.backgroundColor = .clear
|
|
self.hasShadow = true
|
|
self.isMovableByWindowBackground = true
|
|
self.minSize = NSSize(width: 240, height: 200)
|
|
self.titlebarAppearsTransparent = true
|
|
self.titleVisibility = .hidden
|
|
}
|
|
}
|