.../Source/App/Preferences/PreferencesThemePreview.swift
Line | Count | Source (jump to first uncovered line) |
1 | | // |
2 | | // PreferencesThemePreview.swift |
3 | | // CutBox |
4 | | // |
5 | | // Created by Jason Milkins on 22/5/18. |
6 | | // Copyright © 2018-2023 ocodo. All rights reserved. |
7 | | // |
8 | | |
9 | | import Cocoa |
10 | | import RxSwift |
11 | | |
12 | | class PreferencesThemePreview: CutBoxBaseBox { |
13 | | |
14 | | @IBOutlet weak var topBar: CutBoxBaseBox! |
15 | | @IBOutlet weak var searchCutBox: CutBoxBaseTextField! |
16 | | @IBOutlet weak var footerBox: CutBoxBaseBox! |
17 | | @IBOutlet weak var itemsBox: CutBoxBaseBox! |
18 | | |
19 | | @IBOutlet weak var previewBox: CutBoxBaseBox! |
20 | | @IBOutlet weak var previewText: CutBoxBaseTextField! |
21 | | |
22 | | @IBOutlet weak var selectedItem: CutBoxBaseTextField! |
23 | | |
24 | | @IBOutlet weak var label1: CutBoxBaseTextField! |
25 | | @IBOutlet weak var label2: CutBoxBaseTextField! |
26 | | @IBOutlet weak var label3: CutBoxBaseTextField! |
27 | | @IBOutlet weak var label4: CutBoxBaseTextField! |
28 | | @IBOutlet weak var label5: CutBoxBaseTextField! |
29 | | @IBOutlet weak var label6: CutBoxBaseTextField! |
30 | | |
31 | 49 | let prefs = CutBoxPreferencesService.shared |
32 | | |
33 | 49 | let disposeBag = DisposeBag() |
34 | | |
35 | 49 | func applyTheme() { |
36 | 49 | let theme = prefs.currentTheme |
37 | 49 | |
38 | 49 | fillColor = theme.popupBackgroundColor |
39 | 49 | searchCutBox.textColor = theme.searchText.textColor |
40 | 49 | topBar.fillColor = theme.searchText.backgroundColor |
41 | 49 | footerBox.fillColor = theme.popupBackgroundColor |
42 | 49 | |
43 | 49 | previewBox.fillColor = theme.preview.backgroundColor |
44 | 49 | previewText.textColor = theme.preview.textColor |
45 | 49 | |
46 | 49 | itemsBox.fillColor = theme.clip.backgroundColor |
47 | 49 | selectedItem.backgroundColor = theme.clip.highlightColor |
48 | 49 | selectedItem.textColor = theme.clip.highlightTextColor |
49 | 49 | label1.textColor = theme.clip.textColor |
50 | 49 | label2.textColor = theme.clip.textColor |
51 | 49 | label3.textColor = theme.clip.textColor |
52 | 49 | label4.textColor = theme.clip.textColor |
53 | 49 | label5.textColor = theme.clip.textColor |
54 | 49 | label6.textColor = theme.clip.textColor |
55 | 49 | } |
56 | | |
57 | 49 | override func awakeFromNib() { |
58 | 49 | applyTheme() |
59 | 49 | |
60 | 5.94k | prefs.events.bind { |
61 | 5.94k | switch $0 { |
62 | 5.94k | case .themeChanged: |
63 | 0 | self.applyTheme() |
64 | 5.94k | |
65 | 5.94k | case .themesReloaded: |
66 | 0 | self.applyTheme() |
67 | 5.94k | |
68 | 5.94k | default: |
69 | 5.94k | break |
70 | 5.94k | } |
71 | 5.94k | }.disposed(by: disposeBag) |
72 | 49 | } |
73 | | } |