IconSelection.swift 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import SwiftUI
  2. struct IconSelection: View {
  3. @EnvironmentObject var model: Icons
  4. var body: some View {
  5. let columns = Array(repeating: GridItem(.adaptive(minimum: 114, maximum: 1024), spacing: 0), count: 3)
  6. VStack {
  7. HStack {
  8. Text("iAPS Icon")
  9. .font(.title)
  10. IconImage(icon: model.appIcon)
  11. .frame(maxHeight: 114)
  12. }
  13. Divider()
  14. ScrollView {
  15. LazyVGrid(columns: columns) {
  16. ForEach(Icon_.allCases) { icon in
  17. Button {
  18. model.setAlternateAppIcon(icon: icon)
  19. } label: {
  20. IconImage(icon: icon)
  21. }
  22. }
  23. }
  24. }
  25. }
  26. }
  27. }
  28. struct IconSelectionRootView_Previews: PreviewProvider {
  29. static var previews: some View {
  30. IconSelection()
  31. .environmentObject(Icons())
  32. }
  33. }