ソースを参照

add animation to indicate a calculation

polscm32 2 年 前
コミット
6dcb1ce142

+ 0 - 39
FreeAPS/Sources/Modules/Bolus/BolusStateModel.swift

@@ -293,45 +293,6 @@ extension Bolus {
             }
         }
 
-//        func backToCarbsView(complexEntry: Bool, _ meal: FetchedResults<Meals>, override _: Bool) {
-//            delete(deleteTwice: complexEntry, meal: meal)
-//            // showModal(for: .addCarbs(editMode: complexEntry, override: override))
-//        }
-
-//        func delete(deleteTwice: Bool, meal: FetchedResults<Meals>) {
-//            guard let meals = meal.first else {
-//                return
-//            }
-//
-//            var date = Date()
-//
-//            if let mealDate = meals.actualDate {
-//                date = mealDate
-//            } else if let mealdate = meals.createdAt {
-//                date = mealdate
-//            }
-//
-//            let mealArray = DataTable.Treatment(
-//                units: units,
-//                type: .carbs,
-//                date: date,
-//                id: meals.id ?? "",
-//                isFPU: deleteTwice ? true : false,
-//                fpuID: deleteTwice ? (meals.fpuID ?? "") : ""
-//            )
-//
-//            print(
-//                "meals 2: ID: " + mealArray.id.description + " FPU ID: " + (mealArray.fpuID ?? "")
-//                    .description
-//            )
-//
-//            if deleteTwice {
-//                nsManager.deleteCarbs(mealArray, complexMeal: true)
-//            } else {
-//                nsManager.deleteCarbs(mealArray, complexMeal: false)
-//            }
-//        }
-
         func addCarbs() {
             guard carbs > 0 || fat > 0 || protein > 0 else { return }
             carbs = min(carbs, maxCarbs)

+ 11 - 4
FreeAPS/Sources/Modules/Bolus/View/AlternativeBolusCalcRootView.swift

@@ -18,6 +18,7 @@ extension Bolus {
         @State var isPromptPresented = false
         @State var dish: String = ""
         @State var saved = false
+        @State var isCalculating: Bool = false
 
         @Environment(\.managedObjectContext) var moc
 
@@ -334,11 +335,19 @@ extension Bolus {
                     HStack {
                         Spacer()
                         Button {
-                            // to do
+                            isCalculating = true
                             state.insulinCalculated = state.calculateInsulin()
+
+                            DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) {
+                                isCalculating = false
+                            }
                         }
                         label: {
-                            Text("Calculate")
+                            if !isCalculating {
+                                Text("Calculate")
+                            } else {
+                                ProgressView().progressViewStyle(CircularProgressViewStyle())
+                            }
                         }.disabled(empty)
 
                         Spacer()
@@ -349,8 +358,6 @@ extension Bolus {
                     mealPresets
                 }.listRowBackground(Color.chart)
 
-                // MARK: ADDING END
-
                 Section {
                     HStack {
                         Button(action: {