WIP Main menu

main
Mathieu GROUSSEAU 2 months ago
parent fe123c9dad
commit 26f44c2a78

@ -8,7 +8,7 @@
/* Begin PBXBuildFile section */ /* Begin PBXBuildFile section */
F001A04C2DD48FAB00809561 /* AppApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = F001A04B2DD48FAB00809561 /* AppApp.swift */; }; F001A04C2DD48FAB00809561 /* AppApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = F001A04B2DD48FAB00809561 /* AppApp.swift */; };
F001A04E2DD48FAB00809561 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F001A04D2DD48FAB00809561 /* ContentView.swift */; }; F001A04E2DD48FAB00809561 /* MainMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F001A04D2DD48FAB00809561 /* MainMenuView.swift */; };
F001A0502DD48FAD00809561 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F001A04F2DD48FAD00809561 /* Assets.xcassets */; }; F001A0502DD48FAD00809561 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F001A04F2DD48FAD00809561 /* Assets.xcassets */; };
F001A0542DD48FAD00809561 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F001A0532DD48FAD00809561 /* Preview Assets.xcassets */; }; F001A0542DD48FAD00809561 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F001A0532DD48FAD00809561 /* Preview Assets.xcassets */; };
F001A05E2DD48FAE00809561 /* AppTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F001A05D2DD48FAE00809561 /* AppTests.swift */; }; F001A05E2DD48FAE00809561 /* AppTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F001A05D2DD48FAE00809561 /* AppTests.swift */; };
@ -19,6 +19,7 @@
F0F59E4B2DD4958800BE32D6 /* C4Players.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = F0F59E422DD492B400BE32D6 /* C4Players.xcframework */; }; F0F59E4B2DD4958800BE32D6 /* C4Players.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = F0F59E422DD492B400BE32D6 /* C4Players.xcframework */; };
F0F59E4C2DD4958800BE32D6 /* C4Rules.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = F0F59E442DD492B400BE32D6 /* C4Rules.xcframework */; }; F0F59E4C2DD4958800BE32D6 /* C4Rules.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = F0F59E442DD492B400BE32D6 /* C4Rules.xcframework */; };
F0F59E4F2DD4996F00BE32D6 /* Localizable.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = F0F59E4E2DD4996F00BE32D6 /* Localizable.xcstrings */; }; F0F59E4F2DD4996F00BE32D6 /* Localizable.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = F0F59E4E2DD4996F00BE32D6 /* Localizable.xcstrings */; };
F0F59E512DD49C2800BE32D6 /* Colors.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F0F59E502DD49C2800BE32D6 /* Colors.xcassets */; };
/* End PBXBuildFile section */ /* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */ /* Begin PBXContainerItemProxy section */
@ -41,7 +42,7 @@
/* Begin PBXFileReference section */ /* Begin PBXFileReference section */
F001A0482DD48FAB00809561 /* App.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = App.app; sourceTree = BUILT_PRODUCTS_DIR; }; F001A0482DD48FAB00809561 /* App.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = App.app; sourceTree = BUILT_PRODUCTS_DIR; };
F001A04B2DD48FAB00809561 /* AppApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppApp.swift; sourceTree = "<group>"; }; F001A04B2DD48FAB00809561 /* AppApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppApp.swift; sourceTree = "<group>"; };
F001A04D2DD48FAB00809561 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; }; F001A04D2DD48FAB00809561 /* MainMenuView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainMenuView.swift; sourceTree = "<group>"; };
F001A04F2DD48FAD00809561 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; F001A04F2DD48FAD00809561 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
F001A0512DD48FAD00809561 /* App.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = App.entitlements; sourceTree = "<group>"; }; F001A0512DD48FAD00809561 /* App.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = App.entitlements; sourceTree = "<group>"; };
F001A0532DD48FAD00809561 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; }; F001A0532DD48FAD00809561 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; };
@ -55,6 +56,7 @@
F0F59E432DD492B400BE32D6 /* C4.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = C4.xcframework; path = ../precompiled/xcframeworks/C4.xcframework; sourceTree = "<group>"; }; F0F59E432DD492B400BE32D6 /* C4.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = C4.xcframework; path = ../precompiled/xcframeworks/C4.xcframework; sourceTree = "<group>"; };
F0F59E442DD492B400BE32D6 /* C4Rules.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = C4Rules.xcframework; path = ../precompiled/xcframeworks/C4Rules.xcframework; sourceTree = "<group>"; }; F0F59E442DD492B400BE32D6 /* C4Rules.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = C4Rules.xcframework; path = ../precompiled/xcframeworks/C4Rules.xcframework; sourceTree = "<group>"; };
F0F59E4E2DD4996F00BE32D6 /* Localizable.xcstrings */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; name = Localizable.xcstrings; path = App/Localizable.xcstrings; sourceTree = "<group>"; }; F0F59E4E2DD4996F00BE32D6 /* Localizable.xcstrings */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; name = Localizable.xcstrings; path = App/Localizable.xcstrings; sourceTree = "<group>"; };
F0F59E502DD49C2800BE32D6 /* Colors.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Colors.xcassets; sourceTree = "<group>"; };
/* End PBXFileReference section */ /* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */ /* Begin PBXFrameworksBuildPhase section */
@ -89,6 +91,7 @@
F001A03F2DD48FAB00809561 = { F001A03F2DD48FAB00809561 = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
F0F59E502DD49C2800BE32D6 /* Colors.xcassets */,
F0F59E4E2DD4996F00BE32D6 /* Localizable.xcstrings */, F0F59E4E2DD4996F00BE32D6 /* Localizable.xcstrings */,
F001A04A2DD48FAB00809561 /* App */, F001A04A2DD48FAB00809561 /* App */,
F001A05C2DD48FAE00809561 /* AppTests */, F001A05C2DD48FAE00809561 /* AppTests */,
@ -159,7 +162,7 @@
F0F59E4D2DD4986C00BE32D6 /* View */ = { F0F59E4D2DD4986C00BE32D6 /* View */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
F001A04D2DD48FAB00809561 /* ContentView.swift */, F001A04D2DD48FAB00809561 /* MainMenuView.swift */,
); );
path = View; path = View;
sourceTree = "<group>"; sourceTree = "<group>";
@ -270,6 +273,7 @@
buildActionMask = 2147483647; buildActionMask = 2147483647;
files = ( files = (
F001A0542DD48FAD00809561 /* Preview Assets.xcassets in Resources */, F001A0542DD48FAD00809561 /* Preview Assets.xcassets in Resources */,
F0F59E512DD49C2800BE32D6 /* Colors.xcassets in Resources */,
F001A0502DD48FAD00809561 /* Assets.xcassets in Resources */, F001A0502DD48FAD00809561 /* Assets.xcassets in Resources */,
F0F59E4F2DD4996F00BE32D6 /* Localizable.xcstrings in Resources */, F0F59E4F2DD4996F00BE32D6 /* Localizable.xcstrings in Resources */,
); );
@ -296,7 +300,7 @@
isa = PBXSourcesBuildPhase; isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647; buildActionMask = 2147483647;
files = ( files = (
F001A04E2DD48FAB00809561 /* ContentView.swift in Sources */, F001A04E2DD48FAB00809561 /* MainMenuView.swift in Sources */,
F001A04C2DD48FAB00809561 /* AppApp.swift in Sources */, F001A04C2DD48FAB00809561 /* AppApp.swift in Sources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;

@ -11,7 +11,7 @@ import SwiftUI
struct AppApp: App { struct AppApp: App {
var body: some Scene { var body: some Scene {
WindowGroup { WindowGroup {
ContentView() MainMenuView()
} }
} }
} }

@ -1,7 +1,7 @@
{ {
"sourceLanguage" : "en", "sourceLanguage" : "en",
"strings" : { "strings" : {
"genericAppName" : { "appName" : {
"extractionState" : "manual", "extractionState" : "manual",
"localizations" : { "localizations" : {
"en" : { "en" : {
@ -17,6 +17,57 @@
} }
} }
} }
},
"appNameBannerTitle" : {
"extractionState" : "manual",
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Connect 4!"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Puissance 4 !"
}
}
}
},
"mainMenu.button.newGame" : {
"extractionState" : "manual",
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "New Game"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Nouvelle partie"
}
}
}
},
"mainMenu.button.scoreboard" : {
"extractionState" : "manual",
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Scoreboard"
}
},
"fr" : {
"stringUnit" : {
"state" : "translated",
"value" : "Tableau des scores"
}
}
}
} }
}, },
"version" : "1.0" "version" : "1.0"

@ -1,24 +0,0 @@
//
// ContentView.swift
// App
//
// Created by etudiant2 on 14/05/2025.
//
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Image(systemName: "globe")
.imageScale(.large)
.foregroundStyle(.tint)
Text(String(localized: "genericAppName"))
}
.padding()
}
}
#Preview {
ContentView()
}

@ -0,0 +1,28 @@
//
// ContentView.swift
// App
//
// Created by etudiant2 on 14/05/2025.
//
import SwiftUI
struct MainMenuView: View {
var body: some View {
VStack {
Label("appNameBannerTitle", systemImage: "globe")
Button("mainMenu.button.newGame") {
// TODO
}
Button("mainMenu.button.scoreboard") {
// TODO
}
}
}
}
#Preview {
MainMenuView()
}

@ -0,0 +1,6 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}
Loading…
Cancel
Save