taler-ios

iOS apps for GNU Taler (wallet)
Log | Files | Refs | README | LICENSE

TabBarModel.swift (1024B)


      1 /*
      2  * This file is part of GNU Taler, ©2022-25 Taler Systems S.A.
      3  * See LICENSE.md
      4  */
      5 /**
      6  * Controller
      7  *
      8  * @author Marc Stibane
      9  */
     10 import Foundation
     11 import SwiftUI
     12 
     13 class TabBarModel: ObservableObject {
     14     @Published var tabBarHidden = 0
     15     @Published var oimActive = 0 {
     16         didSet {
     17             if oimActive == 0 {
     18                 if actionSelected == nil && tosView == nil {
     19                     tabBarHidden = 0
     20                 }
     21             } else {
     22                 tabBarHidden += 1
     23             }
     24         }
     25     }
     26 
     27     @Published var tosView: Int? = nil {
     28         didSet {
     29             if tosView != nil {
     30                 tabBarHidden += 1
     31             } else if actionSelected == nil {
     32                 tabBarHidden = oimActive
     33             }
     34         }
     35     }
     36 
     37     @Published var actionSelected: Int? = nil {
     38         didSet {
     39             if actionSelected != nil {
     40                 tabBarHidden += 1
     41             } else if tosView == nil {
     42                 tabBarHidden = oimActive
     43             }
     44         }
     45     }
     46 }