diff options
author | Roopesh Chander <roop@roopc.net> | 2019-01-07 13:04:50 +0530 |
---|---|---|
committer | Roopesh Chander <roop@roopc.net> | 2019-01-14 14:52:33 +0530 |
commit | f7b2f73015b51d939d38ed5284f40cd46c73237f (patch) | |
tree | 31f9f8cb939107aae21215dd6b7a572e447ef239 /WireGuard/WireGuard/UI/macOS/View/TunnelListCell.swift | |
parent | macOS: On adding the first tunnel, select it (diff) | |
download | wireguard-apple-f7b2f73015b51d939d38ed5284f40cd46c73237f.tar.xz wireguard-apple-f7b2f73015b51d939d38ed5284f40cd46c73237f.zip |
macOS: Rename *Cell to *Row
Signed-off-by: Roopesh Chander <roop@roopc.net>
Diffstat (limited to 'WireGuard/WireGuard/UI/macOS/View/TunnelListCell.swift')
-rw-r--r-- | WireGuard/WireGuard/UI/macOS/View/TunnelListCell.swift | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/WireGuard/WireGuard/UI/macOS/View/TunnelListCell.swift b/WireGuard/WireGuard/UI/macOS/View/TunnelListCell.swift deleted file mode 100644 index 11bf73c..0000000 --- a/WireGuard/WireGuard/UI/macOS/View/TunnelListCell.swift +++ /dev/null @@ -1,75 +0,0 @@ -// SPDX-License-Identifier: MIT -// Copyright © 2018 WireGuard LLC. All Rights Reserved. - -import Cocoa - -class TunnelListCell: NSView { - var tunnel: TunnelContainer? { - didSet(value) { - // Bind to the tunnel's name - nameLabel.stringValue = tunnel?.name ?? "" - nameObservationToken = tunnel?.observe(\TunnelContainer.name) { [weak self] tunnel, _ in - self?.nameLabel.stringValue = tunnel.name - } - // Bind to the tunnel's status - statusImageView.image = TunnelListCell.image(for: tunnel?.status) - statusObservationToken = tunnel?.observe(\TunnelContainer.status) { [weak self] tunnel, _ in - self?.statusImageView.image = TunnelListCell.image(for: tunnel.status) - } - } - } - - let nameLabel: NSTextField = { - let nameLabel = NSTextField() - nameLabel.isEditable = false - nameLabel.isSelectable = false - nameLabel.isBordered = false - nameLabel.maximumNumberOfLines = 1 - nameLabel.lineBreakMode = .byTruncatingTail - return nameLabel - }() - - let statusImageView = NSImageView() - - private var statusObservationToken: AnyObject? - private var nameObservationToken: AnyObject? - - init() { - super.init(frame: CGRect.zero) - - addSubview(statusImageView) - addSubview(nameLabel) - statusImageView.translatesAutoresizingMaskIntoConstraints = false - nameLabel.translatesAutoresizingMaskIntoConstraints = false - nameLabel.backgroundColor = .clear - NSLayoutConstraint.activate([ - self.leadingAnchor.constraint(equalTo: statusImageView.leadingAnchor), - statusImageView.trailingAnchor.constraint(equalTo: nameLabel.leadingAnchor), - statusImageView.widthAnchor.constraint(equalToConstant: 20), - nameLabel.trailingAnchor.constraint(equalTo: self.trailingAnchor), - statusImageView.centerYAnchor.constraint(equalTo: self.centerYAnchor), - nameLabel.centerYAnchor.constraint(equalTo: self.centerYAnchor) - ]) - } - - required init?(coder decoder: NSCoder) { - fatalError("init(coder:) has not been implemented") - } - - static func image(for status: TunnelStatus?) -> NSImage? { - guard let status = status else { return nil } - switch status { - case .active, .restarting, .reasserting: - return NSImage(named: NSImage.statusAvailableName) - case .activating, .waiting: - return NSImage(named: NSImage.statusPartiallyAvailableName) - case .deactivating, .inactive: - return nil - } - } - - override func prepareForReuse() { - nameLabel.stringValue = "" - statusImageView.image = nil - } -} |