comparison Simoleon/ContentView.swift @ 156:84137052813d

Refactor code
author Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
date Sat, 28 Aug 2021 11:15:25 +0100
parents 1f657241c28f
children 82bd84c5973c
comparison
equal deleted inserted replaced
155:681f2cbe8c7f 156:84137052813d
8 import SwiftUI 8 import SwiftUI
9 9
10 struct ContentView: View { 10 struct ContentView: View {
11 @Environment(\.managedObjectContext) private var viewContext 11 @Environment(\.managedObjectContext) private var viewContext
12 @FetchRequest(sortDescriptors: []) private var defaultCurrency: FetchedResults<DefaultCurrency> 12 @FetchRequest(sortDescriptors: []) private var defaultCurrency: FetchedResults<DefaultCurrency>
13
14 @State private var tab: Tab = .convert 13 @State private var tab: Tab = .convert
15 14
16 private enum Tab { 15 private enum Tab {
17 case convert, favorites, settings 16 case convert, favorites, settings
18 } 17 }
19 18
20 @ViewBuilder var adjustedView: some View { 19 @ViewBuilder var adjustedView: some View {
20 let currencyPair = CurrencyPairModel(baseSymbol: "USD", quoteSymbol: "EUR")
21
21 // MARK: - iPad 22 // MARK: - iPad
22 if UIDevice.current.userInterfaceIdiom == .pad { 23 if UIDevice.current.userInterfaceIdiom == .pad {
23 NavigationView { 24 NavigationView {
24 Sidebar() 25 // Sidebar()
25 Conversion(currencyPair: defaultCurrency.first?.pair ?? "USD/GBP") 26 ConversionView(currencyPair: currencyPair)
26 } 27 }
27 } else { 28 } else {
28 // MARK: - iPhone 29 // MARK: - iPhone
29 TabView(selection: $tab) { 30 TabView(selection: $tab) {
30 Conversion(currencyPair: defaultCurrency.first?.pair ?? "USD/GBP") 31 ConversionView(currencyPair: currencyPair)
31 .tabItem { 32 .tabItem {
32 Label("Convert", systemImage: "arrow.counterclockwise.circle") 33 Label("Convert", systemImage: "arrow.counterclockwise.circle")
33 } 34 }
34 .tag(Tab.convert) 35 .tag(Tab.convert)
35 36
36 Favorites() 37 // FavoritesView()
37 .tabItem { 38 // .tabItem {
38 Label("Favorites", systemImage: "star") 39 // Label("Favorites", systemImage: "star")
39 } 40 // }
40 .tag(Tab.favorites) 41 // .tag(Tab.favorites)
41 42 //
42 Settings() 43 // SettingsView()
43 .tabItem { 44 // .tabItem {
44 Label("Settings", systemImage: "gear") 45 // Label("Settings", systemImage: "gear")
45 } 46 // }
46 .tag(Tab.settings) 47 // .tag(Tab.settings)
47 } 48 }
48 } 49 }
49 } 50 }
50 51
51 var body: some View { 52 var body: some View {