annotate Sources/StockCharts/CapsuleChart/CapsuleChartView.swift @ 103:766a1169564b

Add WatchOS compatability
author Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
date Sun, 27 Jun 2021 16:32:23 +0200
parents 3e94c6721a6a
children 0c0d38dca6d8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
89
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
1 //
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
2 // CapsuleChartView.swift
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
3 // StockCharts
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
4 //
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
5 // Created by Dennis Concepción Martín on 5/6/21.
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
6 //
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
7
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
8 import SwiftUI
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
9
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
10 public struct CapsuleChartView: View {
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
11 public var percentageOfWidth: CGFloat
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
12
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
13 public init(percentageOfWidth: CGFloat) {
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
14 self.percentageOfWidth = percentageOfWidth
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
15 }
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
16 public var body: some View {
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
17 ZStack {
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
18 GeometryReader { proxy in
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
19 Group {
103
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
20 #if os(iOS)
89
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
21 Capsule()
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
22 .foregroundColor(Color(.systemGray))
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
23 .opacity(0.2)
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
24
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
25 Capsule()
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
26 .foregroundColor(Color(.systemBlue))
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
27 .frame(width: proxy.size.width * percentageOfWidth)
103
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
28 #elseif os(watchOS)
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
29 Capsule()
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
30 .foregroundColor(Color(.gray))
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
31 .opacity(0.2)
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
32
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
33 Capsule()
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
34 .foregroundColor(Color(.blue))
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
35 .frame(width: proxy.size.width * percentageOfWidth)
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
36 #endif
766a1169564b Add WatchOS compatability
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 89
diff changeset
37
89
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
38 }
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
39 .frame(height: 10)
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
40 }
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
41 }
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
42 }
3e94c6721a6a Implement CapsuleChartView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
43 }