annotate LazyBear/ContentView.swift @ 181:9533f6a60531

User can change theme color
author Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
date Sun, 21 Feb 2021 19:41:09 +0100
parents c1aa75608c27
children 47d61727054a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
163
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
1 //
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
2 // ContentView.swift
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
3 // LazyBear
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
4 //
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
5 // Created by Dennis Concepción Martín on 17/2/21.
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
6 //
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
7
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
8 import SwiftUI
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
9
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
10 struct ContentView: View {
178
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
11 @ObservedObject var hudManager = HUDManager()
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
12
181
9533f6a60531 User can change theme color
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 178
diff changeset
13 // Fetch user appearence settings (the last one made first)
9533f6a60531 User can change theme color
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 178
diff changeset
14 @FetchRequest(entity: UserSettings.entity(), sortDescriptors: [NSSortDescriptor(keyPath: \UserSettings.changedAt, ascending: false)])
9533f6a60531 User can change theme color
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 178
diff changeset
15 var userSettings: FetchedResults<UserSettings>
9533f6a60531 User can change theme color
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 178
diff changeset
16
163
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
17 var body: some View {
178
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
18 ZStack(alignment: .top) {
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
19 TabView {
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
20 // First view
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
21 Watchlist(hudManager: hudManager)
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
22 .tabItem {
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
23 Label("Watchlist", systemImage: "list.dash")
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
24 }
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
25
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
26 // First view
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
27 Search(hudManager: hudManager)
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
28 .tabItem {
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
29 Label("Search", systemImage: "magnifyingglass")
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
30 }
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
31
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
32 // First view
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
33 Settings()
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
34 .tabItem {
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
35 Label("Settings", systemImage: "gear")
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
36 }
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
37 }
165
125d268db489 Update UI
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 164
diff changeset
38
178
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
39 HUD(text: hudManager.text, image: hudManager.image)
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
40 .offset(y: hudManager.isShowing ? 0 : -100)
c1aa75608c27 Implement HUD
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 165
diff changeset
41 .animation(.easeInOut)
163
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
42 }
181
9533f6a60531 User can change theme color
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 178
diff changeset
43 .accentColor(Color("\(userSettings.first!.theme.lowercased())Accent"))
163
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
44 }
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
45 }
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
46
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
47
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
48 struct ContentView_Previews: PreviewProvider {
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
49 static var previews: some View {
165
125d268db489 Update UI
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 164
diff changeset
50 ContentView()
163
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
51 }
9d519f230f26 Start clean project
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
52 }