Add adding matiere

main
DJYohann 2 years ago
parent 3169aa2718
commit 395abd90cc

@ -21,7 +21,6 @@
1E1FF22F2A3221BB0046EBE0 /* Stub in Frameworks */ = {isa = PBXBuildFile; productRef = 1E1FF22E2A3221BB0046EBE0 /* Stub */; };
1E47C4572A3605E3000B9AAA /* MatiereInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E47C4562A3605E3000B9AAA /* MatiereInfo.swift */; };
1E4D71792A29E50A008342F0 /* UEEdit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E4D71782A29E50A008342F0 /* UEEdit.swift */; };
1E96424E2A3DFD0100199C75 /* Exemple.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E96424D2A3DFD0000199C75 /* Exemple.swift */; };
1EC2337A2A35BCB9006AE897 /* ViewModel in Frameworks */ = {isa = PBXBuildFile; productRef = 1EC233792A35BCB9006AE897 /* ViewModel */; };
1ECAD3A12A38FB0B00B61BF8 /* MatiereNoteSlider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ECAD3A02A38FB0B00B61BF8 /* MatiereNoteSlider.swift */; };
1EDC99232A20DDAB00C3561D /* UEInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EDC99222A20DDAB00C3561D /* UEInfo.swift */; };
@ -61,7 +60,6 @@
1E160AB12A1FA51600ECDB3F /* UENoteSlider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UENoteSlider.swift; sourceTree = "<group>"; };
1E47C4562A3605E3000B9AAA /* MatiereInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MatiereInfo.swift; sourceTree = "<group>"; };
1E4D71782A29E50A008342F0 /* UEEdit.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UEEdit.swift; sourceTree = "<group>"; };
1E96424D2A3DFD0000199C75 /* Exemple.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Exemple.swift; sourceTree = "<group>"; };
1ECAD3A02A38FB0B00B61BF8 /* MatiereNoteSlider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MatiereNoteSlider.swift; sourceTree = "<group>"; };
1EDC99222A20DDAB00C3561D /* UEInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UEInfo.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */
@ -169,7 +167,6 @@
1E4D71782A29E50A008342F0 /* UEEdit.swift */,
1E47C4562A3605E3000B9AAA /* MatiereInfo.swift */,
1ECAD3A02A38FB0B00B61BF8 /* MatiereNoteSlider.swift */,
1E96424D2A3DFD0000199C75 /* Exemple.swift */,
);
path = Views;
sourceTree = "<group>";
@ -316,7 +313,6 @@
1E0D88E32A1E759A00786FE3 /* AppApp.swift in Sources */,
1EDC99232A20DDAB00C3561D /* UEInfo.swift in Sources */,
1E0D891B2A1E9BEF00786FE3 /* UEView.swift in Sources */,
1E96424E2A3DFD0100199C75 /* Exemple.swift in Sources */,
1E4D71792A29E50A008342F0 /* UEEdit.swift in Sources */,
1E0D89172A1E838700786FE3 /* UEListItem.swift in Sources */,
);

@ -1,23 +0,0 @@
//
// Exemple.swift
// App
//
// Created by BREUIL Yohann on 17/06/2023.
//
import SwiftUI
struct Exemple: View {
var body: some View {
@State var number = 100
Form{
TextField("inputNumber",value:$number,format: .number)
}
}
}
struct Exemple_Previews: PreviewProvider {
static var previews: some View {
Exemple()
}
}

@ -42,7 +42,10 @@ struct UEEdit: View {
}
}
HStack {
TextField("Nouvelle matière", text: $newMatiereName)
VStack {
TextField("Nouvelle matière", text: $newMatiereName)
TextField("Nouveau coefficient", text: $newMatiereName)
}
Button(action: {}) {
Image(systemName: "plus.circle.fill")
}

@ -3,6 +3,8 @@ import Model
@available(iOS 13.0, *)
public class MatiereVM : ObservableObject, Identifiable, Equatable {
public init() {}
public init(model: Matiere) {
self.model = model
}

@ -13,6 +13,8 @@ public class UEVM : ObservableObject, Identifiable, Equatable {
public var editedCopy: UEVM?
public var addedItem: MatiereVM?
public var id: UUID { model.id }
@Published
@ -84,13 +86,23 @@ public class UEVM : ObservableObject, Identifiable, Equatable {
@Published
public var isEditing: Bool = false
@Published
public var isAdding: Bool = false
public func onEditing(){
editedCopy = self.copy
isAdding = false
isEditing = true
}
public func onEdited(isCancelled: Bool = false){
if(!isCancelled) {
public func onAdding() {
addedItem = MatiereVM()
isAdding = true
isEditing = false
}
public func onEdited(isCancelled cancel: Bool = false){
if !cancel {
if let edit = editedCopy {
self.model = edit.model
}
@ -98,6 +110,16 @@ public class UEVM : ObservableObject, Identifiable, Equatable {
isEditing = false
}
public func onAdded(isCancelled cancel: Bool = false) {
if !cancel {
if let addedItem = addedItem {
self.matieresVM.append(addedItem)
}
}
addedItem = nil
isAdding = false
}
public static func == (lhs: UEVM, rhs: UEVM) -> Bool {
lhs.id == rhs.id
}

Loading…
Cancel
Save