Add files via upload
This commit is contained in:
parent
f85a8ea070
commit
f988f8452e
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>com.apple.security.app-sandbox</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
//
|
||||||
|
// ARCHBLOX.swift
|
||||||
|
// ARCHBLOX
|
||||||
|
//
|
||||||
|
// Created by Thomas G on 13/3/2023.
|
||||||
|
//
|
||||||
|
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
|
@main
|
||||||
|
|
||||||
|
|
||||||
|
struct ARCHBLOX: App {
|
||||||
|
#if os(macOS)
|
||||||
|
var body: some Scene {
|
||||||
|
WindowGroup {
|
||||||
|
MainView().frame(minWidth: 400, maxWidth: .infinity, minHeight: 300, maxHeight: .infinity).edgesIgnoringSafeArea(.top)
|
||||||
|
}.windowStyle(HiddenTitleBarWindowStyle());
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
var body: some Scene {
|
||||||
|
WindowGroup {
|
||||||
|
LoadingScreen()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,69 @@
|
||||||
|
//
|
||||||
|
// MainView.swift
|
||||||
|
// ARCHBLOX
|
||||||
|
//
|
||||||
|
// Created by Thomas G on 13/3/2023.
|
||||||
|
//
|
||||||
|
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
|
struct HomeView: View {
|
||||||
|
var body: some View {
|
||||||
|
VStack{
|
||||||
|
VStack(spacing: 0){
|
||||||
|
HStack{
|
||||||
|
Image("ARCHBLOX").resizable().aspectRatio(contentMode: ContentMode.fit).accessibilityLabel("ARCHBLOX").padding().frame(minHeight: 80,maxHeight: 80);
|
||||||
|
Spacer();
|
||||||
|
Text("Thomas").font(.custom("Lucida Grande", size: 15));
|
||||||
|
Image("divider").resizable().aspectRatio(contentMode: ContentMode.fit).accessibilityLabel("").frame(minHeight: 25,maxHeight: 25);
|
||||||
|
Image("arkot").resizable().aspectRatio(contentMode: ContentMode.fit).accessibilityLabel("").frame(minHeight: 30,maxHeight: 30);
|
||||||
|
Text("100.000M").font(.custom("Lucida Grande", size: 15)).accessibilityLabel("100,000,000 ARKOTS");
|
||||||
|
Image("divider").resizable().aspectRatio(contentMode: ContentMode.fit).accessibilityLabel("").frame(minHeight: 25,maxHeight: 25);
|
||||||
|
Button("Log Out"){
|
||||||
|
|
||||||
|
}.font(.custom("Lucida Grande Bold", size: 20));
|
||||||
|
}.fixedSize(horizontal: false, vertical: true).frame(minHeight: 51,maxHeight: 51).background(
|
||||||
|
Image("navbar")
|
||||||
|
.resizable()
|
||||||
|
.edgesIgnoringSafeArea(.all))
|
||||||
|
HStack{
|
||||||
|
Text("Home").font(.custom("Lucida Grande", size: 15)).padding();
|
||||||
|
Text("Messages").font(.custom("Lucida Grande", size: 15)).padding();
|
||||||
|
Text("Friends").font(.custom("Lucida Grande", size: 15)).padding();
|
||||||
|
Spacer();
|
||||||
|
}.fixedSize(horizontal: false, vertical: true).frame(minHeight: 40,maxHeight: 40).background(
|
||||||
|
Image("black")
|
||||||
|
.resizable()
|
||||||
|
.edgesIgnoringSafeArea(.all))
|
||||||
|
}
|
||||||
|
Spacer();
|
||||||
|
VStack{
|
||||||
|
HStack() {
|
||||||
|
Text("Hello, Thomas!").font(.custom("Lucida Grande", size: 30)).padding().colorInvert();
|
||||||
|
Spacer();
|
||||||
|
}
|
||||||
|
Spacer();
|
||||||
|
HStack{
|
||||||
|
Text("My Feed").font(.custom("Lucida Grande", size: 30)).padding().colorInvert();
|
||||||
|
Spacer();
|
||||||
|
Text("Friends").font(.custom("Lucida Grande", size: 30)).padding().colorInvert();
|
||||||
|
}
|
||||||
|
}.background(
|
||||||
|
Image("white")
|
||||||
|
.resizable()
|
||||||
|
.edgesIgnoringSafeArea(.all)
|
||||||
|
).frame(minWidth: 0, maxWidth: 1000, minHeight: 0, maxHeight: .infinity)
|
||||||
|
}.background(
|
||||||
|
Image("background")
|
||||||
|
.resizable()
|
||||||
|
.edgesIgnoringSafeArea(.all)
|
||||||
|
.accessibilityLabel("")
|
||||||
|
).preferredColorScheme(ColorScheme.dark)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct HomeView_Previews: PreviewProvider {
|
||||||
|
static var previews: some View {
|
||||||
|
HomeView()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,38 @@
|
||||||
|
//
|
||||||
|
// LoadingScreen.swift
|
||||||
|
// ARCHBLOX
|
||||||
|
//
|
||||||
|
// Created by Thomas G on 14/3/2023.
|
||||||
|
//
|
||||||
|
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
|
struct LoadingScreen: View {
|
||||||
|
@State var loading: Bool = true
|
||||||
|
var body: some View {
|
||||||
|
if self.loading {
|
||||||
|
VStack{
|
||||||
|
Image("ARCHBLOXarched").resizable().aspectRatio(contentMode: ContentMode.fit).accessibilityLabel("ARCHBLOX is loading please wait").padding();
|
||||||
|
Spacer();
|
||||||
|
}.padding(0).background(
|
||||||
|
Image("background")
|
||||||
|
.resizable()
|
||||||
|
.scaledToFill()
|
||||||
|
.edgesIgnoringSafeArea(.all)
|
||||||
|
.accessibilityLabel("ARCHBLOX is loading please wait")
|
||||||
|
).preferredColorScheme(ColorScheme.dark).onAppear{
|
||||||
|
DispatchQueue.main.asyncAfter(deadline: .now() + 2.5) {
|
||||||
|
self.loading = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
MainView();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct LoadingScreen_Previews: PreviewProvider {
|
||||||
|
static var previews: some View {
|
||||||
|
LoadingScreen()
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,64 @@
|
||||||
|
//
|
||||||
|
// MainView.swift
|
||||||
|
// ARCHBLOX
|
||||||
|
//
|
||||||
|
// Created by Thomas G on 13/3/2023.
|
||||||
|
//
|
||||||
|
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
|
|
||||||
|
struct classic_title_bar: View {
|
||||||
|
var body: some View {
|
||||||
|
GeometryReader {geometry in
|
||||||
|
ZStack {
|
||||||
|
Image("macbar").resizable(capInsets: EdgeInsets(top: 0, leading: 0, bottom: 0, trailing: 0), resizingMode: .tile).frame(width: geometry.size.width, height: 24)
|
||||||
|
VStack(spacing: 0) {
|
||||||
|
// Spacer()
|
||||||
|
HStack {
|
||||||
|
Spacer()
|
||||||
|
Text("ARCHBLOX").foregroundColor(Color.black).font(.custom("Lucida Grande", size: 13)).shadow(color: Color.white.opacity(0.51), radius: 0, x: 0.0, y: 2/3)
|
||||||
|
Spacer()
|
||||||
|
}.padding([.top, .bottom], 4)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
struct MainView: View {
|
||||||
|
@State var homeopen: Bool = false
|
||||||
|
var body: some View {
|
||||||
|
#if os(macOS)
|
||||||
|
classic_title_bar().frame(minHeight: 24, maxHeight: 24).clipped().zIndex(2).shadow(color: Color.black.opacity(0.55), radius: 0.55, x: 0, y: 1).padding(0);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if homeopen {
|
||||||
|
HomeView();
|
||||||
|
} else {
|
||||||
|
VStack{
|
||||||
|
Image("ARCHBLOXarched").resizable().aspectRatio(contentMode: ContentMode.fit).accessibilityLabel("ARCHBLOX").padding();
|
||||||
|
Spacer();
|
||||||
|
HStack{
|
||||||
|
Button("Sign Up") {
|
||||||
|
|
||||||
|
}.font(.custom("Lucida Grande", size: 15)).padding();
|
||||||
|
Button("Log In") {
|
||||||
|
homeopen = true;
|
||||||
|
}.font(.custom("Lucida Grande", size: 15)).padding();
|
||||||
|
}
|
||||||
|
}.padding(0).background(
|
||||||
|
Image("background")
|
||||||
|
.resizable()
|
||||||
|
.scaledToFill()
|
||||||
|
.edgesIgnoringSafeArea(.all)
|
||||||
|
.accessibilityLabel("")
|
||||||
|
).preferredColorScheme(ColorScheme.dark)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct MainView_Previews: PreviewProvider {
|
||||||
|
static var previews: some View {
|
||||||
|
MainView()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,126 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="21507" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
|
||||||
|
<dependencies>
|
||||||
|
<deployment identifier="macosx"/>
|
||||||
|
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="21507"/>
|
||||||
|
</dependencies>
|
||||||
|
<objects>
|
||||||
|
<customObject id="-2" userLabel="File's Owner" customClass="NSApplication"/>
|
||||||
|
<customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
|
||||||
|
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
|
||||||
|
<customObject id="YLy-65-1bz" customClass="NSFontManager"/>
|
||||||
|
<menu title="Main Menu" systemMenu="main" id="AYu-sK-qS6">
|
||||||
|
<items>
|
||||||
|
<menuItem title="ARCHBLOX" id="1Xt-HY-uBw">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask"/>
|
||||||
|
<menu key="submenu" title="ARCHBLOX" systemMenu="apple" id="uQy-DD-JDr">
|
||||||
|
<items>
|
||||||
|
<menuItem title="About ARCHBLOX" id="5kV-Vb-QxS">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask"/>
|
||||||
|
<connections>
|
||||||
|
<action selector="orderFrontStandardAboutPanel:" target="-1" id="Exp-CZ-Vem"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem isSeparatorItem="YES" id="VOq-y0-SEH"/>
|
||||||
|
<menuItem title="Preferences…" keyEquivalent="," id="BOF-NM-1cW"/>
|
||||||
|
<menuItem isSeparatorItem="YES" id="wFC-TO-SCJ"/>
|
||||||
|
<menuItem title="Hide ARCHBLOX" keyEquivalent="h" id="Olw-nP-bQN">
|
||||||
|
<connections>
|
||||||
|
<action selector="hide:" target="-1" id="PnN-Uc-m68"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Hide Others" keyEquivalent="h" id="Vdr-fp-XzO">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask" option="YES" command="YES"/>
|
||||||
|
<connections>
|
||||||
|
<action selector="hideOtherApplications:" target="-1" id="VT4-aY-XCT"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Show All" id="Kd2-mp-pUS">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask"/>
|
||||||
|
<connections>
|
||||||
|
<action selector="unhideAllApplications:" target="-1" id="Dhg-Le-xox"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem isSeparatorItem="YES" id="kCx-OE-vgT"/>
|
||||||
|
<menuItem title="Quit ARCHBLOX" keyEquivalent="q" id="4sb-4s-VLi">
|
||||||
|
<connections>
|
||||||
|
<action selector="terminate:" target="-1" id="Te7-pn-YzF"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Edit" id="5QF-Oa-p0T">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask"/>
|
||||||
|
<menu key="submenu" title="Edit" id="W48-6f-4Dl">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Undo" keyEquivalent="z" id="dRJ-4n-Yzg">
|
||||||
|
<connections>
|
||||||
|
<action selector="undo:" target="-1" id="M6e-cu-g7V"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Redo" keyEquivalent="Z" id="6dh-zS-Vam">
|
||||||
|
<connections>
|
||||||
|
<action selector="redo:" target="-1" id="oIA-Rs-6OD"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem isSeparatorItem="YES" id="WRV-NI-Exz"/>
|
||||||
|
<menuItem title="Cut" keyEquivalent="x" id="uRl-iY-unG">
|
||||||
|
<connections>
|
||||||
|
<action selector="cut:" target="-1" id="YJe-68-I9s"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Copy" keyEquivalent="c" id="x3v-GG-iWU">
|
||||||
|
<connections>
|
||||||
|
<action selector="copy:" target="-1" id="G1f-GL-Joy"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Paste" keyEquivalent="v" id="gVA-U4-sdL">
|
||||||
|
<connections>
|
||||||
|
<action selector="paste:" target="-1" id="UvS-8e-Qdg"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Delete" id="pa3-QI-u2k">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask"/>
|
||||||
|
<connections>
|
||||||
|
<action selector="delete:" target="-1" id="0Mk-Ml-PaM"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Select All" keyEquivalent="a" id="Ruw-6m-B2m">
|
||||||
|
<connections>
|
||||||
|
<action selector="selectAll:" target="-1" id="VNm-Mi-diN"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Window" id="aUF-d1-5bR">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask"/>
|
||||||
|
<menu key="submenu" title="Window" systemMenu="window" id="Td7-aD-5lo">
|
||||||
|
<items>
|
||||||
|
<menuItem title="Minimize" keyEquivalent="m" id="OY7-WF-poV">
|
||||||
|
<connections>
|
||||||
|
<action selector="performMiniaturize:" target="-1" id="VwT-WD-YPe"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem title="Zoom" id="R4o-n2-Eq4">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask"/>
|
||||||
|
<connections>
|
||||||
|
<action selector="performZoom:" target="-1" id="DIl-cC-cCs"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
<menuItem isSeparatorItem="YES" id="eu3-7i-yIM"/>
|
||||||
|
<menuItem title="Bring All to Front" id="LE2-aR-0XJ">
|
||||||
|
<modifierMask key="keyEquivalentModifierMask"/>
|
||||||
|
<connections>
|
||||||
|
<action selector="arrangeInFront:" target="-1" id="DRN-fu-gQh"/>
|
||||||
|
</connections>
|
||||||
|
</menuItem>
|
||||||
|
</items>
|
||||||
|
</menu>
|
||||||
|
</menuItem>
|
||||||
|
</items>
|
||||||
|
<point key="canvasLocation" x="128" y="96"/>
|
||||||
|
</menu>
|
||||||
|
</objects>
|
||||||
|
</document>
|
||||||
Loading…
Reference in New Issue