From c2ea9ed3b75873da320717b3482d2888af59cfb3 Mon Sep 17 00:00:00 2001 From: applesniperz Date: Thu, 7 Sep 2023 16:21:41 +0800 Subject: [PATCH] Add files via upload --- .../Pie Charts.xcodeproj/project.pbxproj | 604 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../UserInterfaceState.xcuserstate | Bin 0 -> 66705 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 24 + .../xcschemes/xcschememanagement.plist | 14 + Pie Charts/Pie Charts/5sTimer.swift | 29 + .../AccentColor.colorset/Contents.json | 11 + .../AppIcon.appiconset/Contents.json | 13 + .../CirclePicture.imageset/Contents.json | 21 + .../The_Weeknd_-_After_Hours.png | Bin 0 -> 52528 bytes .../Pie Charts/Assets.xcassets/Contents.json | 6 + .../Testimage.imageset/Contents.json | 21 + .../Testimage.imageset/test.jpg | Bin 0 -> 5357 bytes Pie Charts/Pie Charts/GenreCalc.swift | 57 ++ Pie Charts/Pie Charts/PieChartBeta.swift | 125 ++++ .../Pie Charts/PieChartContentView.swift | 26 + .../Pie Charts/PieChartNavigation.swift | 32 + Pie Charts/Pie Charts/Pie_ChartsApp.swift | 17 + .../Preview Content/GenreDataMod.swift | 32 + .../Preview Assets.xcassets/Contents.json | 6 + .../Pie ChartsTests/Pie_ChartsTests.swift | 36 ++ .../Pie ChartsUITests/Pie_ChartsUITests.swift | 41 ++ .../Pie_ChartsUITestsLaunchTests.swift | 32 + 24 files changed, 1162 insertions(+) create mode 100644 Pie Charts/Pie Charts.xcodeproj/project.pbxproj create mode 100644 Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/xcuserdata/i3lt-040.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 Pie Charts/Pie Charts.xcodeproj/xcuserdata/i3lt-040.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist create mode 100644 Pie Charts/Pie Charts.xcodeproj/xcuserdata/i3lt-040.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 Pie Charts/Pie Charts/5sTimer.swift create mode 100644 Pie Charts/Pie Charts/Assets.xcassets/AccentColor.colorset/Contents.json create mode 100644 Pie Charts/Pie Charts/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 Pie Charts/Pie Charts/Assets.xcassets/CirclePicture.imageset/Contents.json create mode 100644 Pie Charts/Pie Charts/Assets.xcassets/CirclePicture.imageset/The_Weeknd_-_After_Hours.png create mode 100644 Pie Charts/Pie Charts/Assets.xcassets/Contents.json create mode 100644 Pie Charts/Pie Charts/Assets.xcassets/Testimage.imageset/Contents.json create mode 100644 Pie Charts/Pie Charts/Assets.xcassets/Testimage.imageset/test.jpg create mode 100644 Pie Charts/Pie Charts/GenreCalc.swift create mode 100644 Pie Charts/Pie Charts/PieChartBeta.swift create mode 100644 Pie Charts/Pie Charts/PieChartContentView.swift create mode 100644 Pie Charts/Pie Charts/PieChartNavigation.swift create mode 100644 Pie Charts/Pie Charts/Pie_ChartsApp.swift create mode 100644 Pie Charts/Pie Charts/Preview Content/GenreDataMod.swift create mode 100644 Pie Charts/Pie Charts/Preview Content/Preview Assets.xcassets/Contents.json create mode 100644 Pie Charts/Pie ChartsTests/Pie_ChartsTests.swift create mode 100644 Pie Charts/Pie ChartsUITests/Pie_ChartsUITests.swift create mode 100644 Pie Charts/Pie ChartsUITests/Pie_ChartsUITestsLaunchTests.swift diff --git a/Pie Charts/Pie Charts.xcodeproj/project.pbxproj b/Pie Charts/Pie Charts.xcodeproj/project.pbxproj new file mode 100644 index 0000000..3ecdd17 --- /dev/null +++ b/Pie Charts/Pie Charts.xcodeproj/project.pbxproj @@ -0,0 +1,604 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 56; + objects = { + +/* Begin PBXBuildFile section */ + 9C33E7472AA89025004BBC2E /* PieChartBeta.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C33E7462AA89025004BBC2E /* PieChartBeta.swift */; }; + 9C8A36472AA969C800061420 /* PieChartContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CA8FF912AA843470039867B /* PieChartContentView.swift */; }; + 9C8A364B2AA96B4200061420 /* PieChartNavigation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C8A364A2AA96B4200061420 /* PieChartNavigation.swift */; }; + 9C8A364D2AA97AE200061420 /* GenreCalc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C8A364C2AA97AE200061420 /* GenreCalc.swift */; }; + 9C8A36512AA99A5B00061420 /* GenreDataMod.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C8A36502AA99A5B00061420 /* GenreDataMod.swift */; }; + 9C8A36532AA9B5F600061420 /* 5sTimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C8A36522AA9B5F600061420 /* 5sTimer.swift */; }; + 9CA8FF902AA843470039867B /* Pie_ChartsApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CA8FF8F2AA843470039867B /* Pie_ChartsApp.swift */; }; + 9CA8FF942AA8434A0039867B /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 9CA8FF932AA8434A0039867B /* Assets.xcassets */; }; + 9CA8FF972AA8434A0039867B /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 9CA8FF962AA8434A0039867B /* Preview Assets.xcassets */; }; + 9CA8FFA12AA8434A0039867B /* Pie_ChartsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CA8FFA02AA8434A0039867B /* Pie_ChartsTests.swift */; }; + 9CA8FFAB2AA8434A0039867B /* Pie_ChartsUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CA8FFAA2AA8434A0039867B /* Pie_ChartsUITests.swift */; }; + 9CA8FFAD2AA8434A0039867B /* Pie_ChartsUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CA8FFAC2AA8434A0039867B /* Pie_ChartsUITestsLaunchTests.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 9CA8FF9D2AA8434A0039867B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 9CA8FF842AA843470039867B /* Project object */; + proxyType = 1; + remoteGlobalIDString = 9CA8FF8B2AA843470039867B; + remoteInfo = "Pie Charts"; + }; + 9CA8FFA72AA8434A0039867B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 9CA8FF842AA843470039867B /* Project object */; + proxyType = 1; + remoteGlobalIDString = 9CA8FF8B2AA843470039867B; + remoteInfo = "Pie Charts"; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 9C33E7462AA89025004BBC2E /* PieChartBeta.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PieChartBeta.swift; sourceTree = ""; }; + 9C8A364A2AA96B4200061420 /* PieChartNavigation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PieChartNavigation.swift; sourceTree = ""; }; + 9C8A364C2AA97AE200061420 /* GenreCalc.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GenreCalc.swift; sourceTree = ""; }; + 9C8A36502AA99A5B00061420 /* GenreDataMod.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GenreDataMod.swift; sourceTree = ""; }; + 9C8A36522AA9B5F600061420 /* 5sTimer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = 5sTimer.swift; sourceTree = ""; }; + 9CA8FF8C2AA843470039867B /* Pie Charts.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Pie Charts.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9CA8FF8F2AA843470039867B /* Pie_ChartsApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pie_ChartsApp.swift; sourceTree = ""; }; + 9CA8FF912AA843470039867B /* PieChartContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PieChartContentView.swift; sourceTree = ""; }; + 9CA8FF932AA8434A0039867B /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 9CA8FF962AA8434A0039867B /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; + 9CA8FF9C2AA8434A0039867B /* Pie ChartsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Pie ChartsTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9CA8FFA02AA8434A0039867B /* Pie_ChartsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pie_ChartsTests.swift; sourceTree = ""; }; + 9CA8FFA62AA8434A0039867B /* Pie ChartsUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Pie ChartsUITests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9CA8FFAA2AA8434A0039867B /* Pie_ChartsUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pie_ChartsUITests.swift; sourceTree = ""; }; + 9CA8FFAC2AA8434A0039867B /* Pie_ChartsUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pie_ChartsUITestsLaunchTests.swift; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 9CA8FF892AA843470039867B /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9CA8FF992AA8434A0039867B /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9CA8FFA32AA8434A0039867B /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 9CA8FF832AA843470039867B = { + isa = PBXGroup; + children = ( + 9CA8FF8E2AA843470039867B /* Pie Charts */, + 9CA8FF9F2AA8434A0039867B /* Pie ChartsTests */, + 9CA8FFA92AA8434A0039867B /* Pie ChartsUITests */, + 9CA8FF8D2AA843470039867B /* Products */, + ); + sourceTree = ""; + }; + 9CA8FF8D2AA843470039867B /* Products */ = { + isa = PBXGroup; + children = ( + 9CA8FF8C2AA843470039867B /* Pie Charts.app */, + 9CA8FF9C2AA8434A0039867B /* Pie ChartsTests.xctest */, + 9CA8FFA62AA8434A0039867B /* Pie ChartsUITests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 9CA8FF8E2AA843470039867B /* Pie Charts */ = { + isa = PBXGroup; + children = ( + 9CA8FF8F2AA843470039867B /* Pie_ChartsApp.swift */, + 9CA8FF912AA843470039867B /* PieChartContentView.swift */, + 9C33E7462AA89025004BBC2E /* PieChartBeta.swift */, + 9C8A364A2AA96B4200061420 /* PieChartNavigation.swift */, + 9C8A364C2AA97AE200061420 /* GenreCalc.swift */, + 9C8A36522AA9B5F600061420 /* 5sTimer.swift */, + 9CA8FF932AA8434A0039867B /* Assets.xcassets */, + 9CA8FF952AA8434A0039867B /* Preview Content */, + ); + path = "Pie Charts"; + sourceTree = ""; + }; + 9CA8FF952AA8434A0039867B /* Preview Content */ = { + isa = PBXGroup; + children = ( + 9C8A36502AA99A5B00061420 /* GenreDataMod.swift */, + 9CA8FF962AA8434A0039867B /* Preview Assets.xcassets */, + ); + path = "Preview Content"; + sourceTree = ""; + }; + 9CA8FF9F2AA8434A0039867B /* Pie ChartsTests */ = { + isa = PBXGroup; + children = ( + 9CA8FFA02AA8434A0039867B /* Pie_ChartsTests.swift */, + ); + path = "Pie ChartsTests"; + sourceTree = ""; + }; + 9CA8FFA92AA8434A0039867B /* Pie ChartsUITests */ = { + isa = PBXGroup; + children = ( + 9CA8FFAA2AA8434A0039867B /* Pie_ChartsUITests.swift */, + 9CA8FFAC2AA8434A0039867B /* Pie_ChartsUITestsLaunchTests.swift */, + ); + path = "Pie ChartsUITests"; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 9CA8FF8B2AA843470039867B /* Pie Charts */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9CA8FFB02AA8434A0039867B /* Build configuration list for PBXNativeTarget "Pie Charts" */; + buildPhases = ( + 9CA8FF882AA843470039867B /* Sources */, + 9CA8FF892AA843470039867B /* Frameworks */, + 9CA8FF8A2AA843470039867B /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "Pie Charts"; + productName = "Pie Charts"; + productReference = 9CA8FF8C2AA843470039867B /* Pie Charts.app */; + productType = "com.apple.product-type.application"; + }; + 9CA8FF9B2AA8434A0039867B /* Pie ChartsTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9CA8FFB32AA8434A0039867B /* Build configuration list for PBXNativeTarget "Pie ChartsTests" */; + buildPhases = ( + 9CA8FF982AA8434A0039867B /* Sources */, + 9CA8FF992AA8434A0039867B /* Frameworks */, + 9CA8FF9A2AA8434A0039867B /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 9CA8FF9E2AA8434A0039867B /* PBXTargetDependency */, + ); + name = "Pie ChartsTests"; + productName = "Pie ChartsTests"; + productReference = 9CA8FF9C2AA8434A0039867B /* Pie ChartsTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 9CA8FFA52AA8434A0039867B /* Pie ChartsUITests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9CA8FFB62AA8434A0039867B /* Build configuration list for PBXNativeTarget "Pie ChartsUITests" */; + buildPhases = ( + 9CA8FFA22AA8434A0039867B /* Sources */, + 9CA8FFA32AA8434A0039867B /* Frameworks */, + 9CA8FFA42AA8434A0039867B /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 9CA8FFA82AA8434A0039867B /* PBXTargetDependency */, + ); + name = "Pie ChartsUITests"; + productName = "Pie ChartsUITests"; + productReference = 9CA8FFA62AA8434A0039867B /* Pie ChartsUITests.xctest */; + productType = "com.apple.product-type.bundle.ui-testing"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 9CA8FF842AA843470039867B /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastSwiftUpdateCheck = 1430; + LastUpgradeCheck = 1500; + TargetAttributes = { + 9CA8FF8B2AA843470039867B = { + CreatedOnToolsVersion = 14.3.1; + }; + 9CA8FF9B2AA8434A0039867B = { + CreatedOnToolsVersion = 14.3.1; + TestTargetID = 9CA8FF8B2AA843470039867B; + }; + 9CA8FFA52AA8434A0039867B = { + CreatedOnToolsVersion = 14.3.1; + TestTargetID = 9CA8FF8B2AA843470039867B; + }; + }; + }; + buildConfigurationList = 9CA8FF872AA843470039867B /* Build configuration list for PBXProject "Pie Charts" */; + compatibilityVersion = "Xcode 14.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 9CA8FF832AA843470039867B; + productRefGroup = 9CA8FF8D2AA843470039867B /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 9CA8FF8B2AA843470039867B /* Pie Charts */, + 9CA8FF9B2AA8434A0039867B /* Pie ChartsTests */, + 9CA8FFA52AA8434A0039867B /* Pie ChartsUITests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 9CA8FF8A2AA843470039867B /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 9CA8FF972AA8434A0039867B /* Preview Assets.xcassets in Resources */, + 9CA8FF942AA8434A0039867B /* Assets.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9CA8FF9A2AA8434A0039867B /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9CA8FFA42AA8434A0039867B /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 9CA8FF882AA843470039867B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 9CA8FF902AA843470039867B /* Pie_ChartsApp.swift in Sources */, + 9C8A36532AA9B5F600061420 /* 5sTimer.swift in Sources */, + 9C8A364D2AA97AE200061420 /* GenreCalc.swift in Sources */, + 9C33E7472AA89025004BBC2E /* PieChartBeta.swift in Sources */, + 9C8A36472AA969C800061420 /* PieChartContentView.swift in Sources */, + 9C8A364B2AA96B4200061420 /* PieChartNavigation.swift in Sources */, + 9C8A36512AA99A5B00061420 /* GenreDataMod.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9CA8FF982AA8434A0039867B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 9CA8FFA12AA8434A0039867B /* Pie_ChartsTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9CA8FFA22AA8434A0039867B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 9CA8FFAD2AA8434A0039867B /* Pie_ChartsUITestsLaunchTests.swift in Sources */, + 9CA8FFAB2AA8434A0039867B /* Pie_ChartsUITests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 9CA8FF9E2AA8434A0039867B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 9CA8FF8B2AA843470039867B /* Pie Charts */; + targetProxy = 9CA8FF9D2AA8434A0039867B /* PBXContainerItemProxy */; + }; + 9CA8FFA82AA8434A0039867B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 9CA8FF8B2AA843470039867B /* Pie Charts */; + targetProxy = 9CA8FFA72AA8434A0039867B /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 9CA8FFAE2AA8434A0039867B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 17.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 9CA8FFAF2AA8434A0039867B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 17.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 9CA8FFB12AA8434A0039867B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_ASSET_PATHS = "\"Pie Charts/Preview Content\""; + ENABLE_PREVIEWS = YES; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchScreen_Generation = YES; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = "com.example.Pie-Charts"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 9CA8FFB22AA8434A0039867B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_ASSET_PATHS = "\"Pie Charts/Preview Content\""; + ENABLE_PREVIEWS = YES; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchScreen_Generation = YES; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = "com.example.Pie-Charts"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + 9CA8FFB42AA8434A0039867B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 16.4; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = "com.example.Pie-ChartsTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Pie Charts.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Pie Charts"; + }; + name = Debug; + }; + 9CA8FFB52AA8434A0039867B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 16.4; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = "com.example.Pie-ChartsTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Pie Charts.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Pie Charts"; + }; + name = Release; + }; + 9CA8FFB72AA8434A0039867B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = "com.example.Pie-ChartsUITests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = "Pie Charts"; + }; + name = Debug; + }; + 9CA8FFB82AA8434A0039867B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = "com.example.Pie-ChartsUITests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = "Pie Charts"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 9CA8FF872AA843470039867B /* Build configuration list for PBXProject "Pie Charts" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9CA8FFAE2AA8434A0039867B /* Debug */, + 9CA8FFAF2AA8434A0039867B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9CA8FFB02AA8434A0039867B /* Build configuration list for PBXNativeTarget "Pie Charts" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9CA8FFB12AA8434A0039867B /* Debug */, + 9CA8FFB22AA8434A0039867B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9CA8FFB32AA8434A0039867B /* Build configuration list for PBXNativeTarget "Pie ChartsTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9CA8FFB42AA8434A0039867B /* Debug */, + 9CA8FFB52AA8434A0039867B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9CA8FFB62AA8434A0039867B /* Build configuration list for PBXNativeTarget "Pie ChartsUITests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9CA8FFB72AA8434A0039867B /* Debug */, + 9CA8FFB82AA8434A0039867B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 9CA8FF842AA843470039867B /* Project object */; +} diff --git a/Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/xcuserdata/i3lt-040.xcuserdatad/UserInterfaceState.xcuserstate b/Pie Charts/Pie Charts.xcodeproj/project.xcworkspace/xcuserdata/i3lt-040.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..7087222b727514d90ecacfadecb1877bbfd48c54 GIT binary patch literal 66705 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 + + + + + + + + diff --git a/Pie Charts/Pie Charts.xcodeproj/xcuserdata/i3lt-040.xcuserdatad/xcschemes/xcschememanagement.plist b/Pie Charts/Pie Charts.xcodeproj/xcuserdata/i3lt-040.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..8cb8033 --- /dev/null +++ b/Pie Charts/Pie Charts.xcodeproj/xcuserdata/i3lt-040.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,14 @@ + + + + + SchemeUserState + + Pie Charts.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/Pie Charts/Pie Charts/5sTimer.swift b/Pie Charts/Pie Charts/5sTimer.swift new file mode 100644 index 0000000..ee8cff7 --- /dev/null +++ b/Pie Charts/Pie Charts/5sTimer.swift @@ -0,0 +1,29 @@ +import Foundation + +class TimerExample { + var timer: Timer? + + init() { + startTimer() + } + + func startTimer() { + timer = Timer.scheduledTimer(withTimeInterval: 5.0, repeats: false) { timer in + // This closure will be executed after 5 seconds + print("Timer fired after 5 seconds!") + + // You can perform any action you want here + + // Don't forget to invalidate the timer to release resources + timer.invalidate() + } + } + + // Make sure to invalidate the timer when it's no longer needed + deinit { + timer?.invalidate() + } +} + +// Create an instance of TimerExample +let example = TimerExample() diff --git a/Pie Charts/Pie Charts/Assets.xcassets/AccentColor.colorset/Contents.json b/Pie Charts/Pie Charts/Assets.xcassets/AccentColor.colorset/Contents.json new file mode 100644 index 0000000..eb87897 --- /dev/null +++ b/Pie Charts/Pie Charts/Assets.xcassets/AccentColor.colorset/Contents.json @@ -0,0 +1,11 @@ +{ + "colors" : [ + { + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Pie Charts/Pie Charts/Assets.xcassets/AppIcon.appiconset/Contents.json b/Pie Charts/Pie Charts/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..13613e3 --- /dev/null +++ b/Pie Charts/Pie Charts/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,13 @@ +{ + "images" : [ + { + "idiom" : "universal", + "platform" : "ios", + "size" : "1024x1024" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Pie Charts/Pie Charts/Assets.xcassets/CirclePicture.imageset/Contents.json b/Pie Charts/Pie Charts/Assets.xcassets/CirclePicture.imageset/Contents.json new file mode 100644 index 0000000..d3701b9 --- /dev/null +++ b/Pie Charts/Pie Charts/Assets.xcassets/CirclePicture.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "The_Weeknd_-_After_Hours.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Pie Charts/Pie Charts/Assets.xcassets/CirclePicture.imageset/The_Weeknd_-_After_Hours.png b/Pie Charts/Pie Charts/Assets.xcassets/CirclePicture.imageset/The_Weeknd_-_After_Hours.png new file mode 100644 index 0000000000000000000000000000000000000000..b8366eec699a266220c6b686f97922a6faf20d53 GIT binary patch literal 52528 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 Yx?nP~@wVLlgiKuVv)t;_-)_JD4~I|^bN~PV literal 0 HcmV?d00001 diff --git a/Pie Charts/Pie Charts/GenreCalc.swift b/Pie Charts/Pie Charts/GenreCalc.swift new file mode 100644 index 0000000..8f0f953 --- /dev/null +++ b/Pie Charts/Pie Charts/GenreCalc.swift @@ -0,0 +1,57 @@ +import SwiftUI + +struct GenreDataMod: View { + var body: some View { + let data = [ + Genre(name: "Pop", count: 6, color: Color(.green)), + Genre(name: "Rock", count: 2, color: Color(.yellow)), + Genre(name: "Indie", count: 3, color: Color(.orange)), + Genre(name: "Jazz", count: 4, color: Color(.red)), + Genre(name: "Hip-Hop", count: 5, color: Color(.purple)), + Genre(name: "R&B", count: 7, color: Color(.blue)) + ] + GenreCalc(data:data) + } +} +struct Genre { + var name: String + var count: Int + var color: Color +} + +struct GenreCalc: View { + @State var data:Array=[] + + var body: some View { + ZStack{ + Circle() + .foregroundColor(.white) + VStack(alignment: .leading) { + let data = data.sorted { + $0.count > $1.count + } + + ForEach(data, id: \.name) { item in + HStack { + Image(systemName: "circle.fill") + .foregroundStyle(item.color) + Text("\(item.name)").bold() + .foregroundColor(.black) + Spacer() + Text("\(item.count)%") + } + } + } + .padding(.horizontal, 40) + } + .frame(width: 234, height: 234) + } +} +struct GenreCalc_Previews: PreviewProvider { + static var previews: some View { + GenreDataMod() + } +} +//#Preview { +// GenreDataMod() +//} diff --git a/Pie Charts/Pie Charts/PieChartBeta.swift b/Pie Charts/Pie Charts/PieChartBeta.swift new file mode 100644 index 0000000..fc2759f --- /dev/null +++ b/Pie Charts/Pie Charts/PieChartBeta.swift @@ -0,0 +1,125 @@ +//// +//// PieChartBeta.swift +//// Pie Charts +//// +//// Created by I3LT-040 on 6/9/23. +//// +// +//import SwiftUI +//import Charts +// + +// +// +// +//#Preview { +// PieChartBeta() +//} + + +import SwiftUI +import Charts + + + +@available(macOS 14.0, *) + +struct PlottableValue: Identifiable { + var id = UUID() + var name: String + var value: Double + var color: Color +} + +struct PieChartExampleView: View { + let colors: [Color] = [.gray, .red, .orange, .yellow, + .green, .blue, .purple, .pink] + + + @State private var fgColor: Color = .gray + @State private var imageString: String = "CirclePicture" + + @State private var counter:Int=0 + + let data = [ + (name: "Pop", count: 70, color: Color(.green)), + (name: "Rock", count: 2, color: Color(.yellow)), + (name: "Indie", count: 3, color: Color(.orange)), + (name: "Jazz", count: 4, color: Color(.red)), + (name: "Hip-Hop", count: 5, color: Color(.purple)), + (name: "R&B", count: 7, color: Color(.blue)), + ] + var body: some View { + VStack{ + Text("Steve Jobs") + .font( + .title2 + ) + .bold()// FOR CHANGING NAME + + ZStack{ + Chart(data, id: \.name) { name, count, color in + SectorMark(angle: .value("Value", count), + innerRadius: .ratio(0.8), + angularInset: 1.5) + .cornerRadius(5) + .foregroundStyle(color) + } + +// .foregroundStyle( // Gradient shading +// LinearGradient( +// colors: [ .orange,.yellow], +// startPoint: .leading, +// endPoint: .trailing +// ) +// ) + .frame(height: 300) + + GenreDataMod() + + Image(imageString) // Replace with your image asset name + .resizable() + .frame(width: 234, height: 234) + .clipShape(Circle()) + .overlay(Circle().stroke(Color.white, lineWidth: 0)) + .foregroundColor(fgColor) + .contentShape(Circle()) // Set the content shape to Circle + .onTapGesture(count: 1) { +// fgColor = colors.randomElement()! + if counter==0{ + imageString = "" + counter+=1 + }else{ + imageString = "CirclePicture" + counter-=1 + + } + + + + } + } + Spacer() +// Image(systemName: "pencil.circle.fill") +// .resizable() +// .frame(width: 200, height: 200) +// .foregroundColor(fgColor) +// .contentShape(Circle()) // Set the content shape to Circle +// .onTapGesture(count: 1) { +// fgColor = colors.randomElement()! +// } + } + } +} + +@available(macOS 14.0, *) +#Preview { + PieChartExampleView() +} + + +struct ContentView_Previews: PreviewProvider { + static var previews: some View { + PieChartExampleView() + } +} diff --git a/Pie Charts/Pie Charts/PieChartContentView.swift b/Pie Charts/Pie Charts/PieChartContentView.swift new file mode 100644 index 0000000..094a772 --- /dev/null +++ b/Pie Charts/Pie Charts/PieChartContentView.swift @@ -0,0 +1,26 @@ +// +// ContentView.swift +// Pie Charts +// +// Created by I3LT-040 on 6/9/23. +// + +import SwiftUI + + +struct ContentView: View { + + var body: some View { + ZStack { + Text("test") + } + } +} + + + +//struct ContentView_Previews: PreviewProvider { +// static var previews: some View { +// ContentView() +// } +//} diff --git a/Pie Charts/Pie Charts/PieChartNavigation.swift b/Pie Charts/Pie Charts/PieChartNavigation.swift new file mode 100644 index 0000000..8c7e79c --- /dev/null +++ b/Pie Charts/Pie Charts/PieChartNavigation.swift @@ -0,0 +1,32 @@ +// +// PieChartNavigation.swift +// Pie Charts +// +// Created by I3LT-040 on 7/9/23. +// + +import SwiftUI + + +//let circleView = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 100)) +//circleView.layer.cornerRadius = circleView.frame.size.width/2 +//circleView.clipsToBounds = true +// +// +//override func touchesBegan(_ touches: Set, with event: UIEvent?) { +// UIView.animate(withDuration: 0.3) { +// self.circleView.transform = CGAffineTransform(scaleX: 1.3, y: 1.3) +// } +//} +// +//override func touchesEnded(_ touches: Set, with event: UIEvent?) { +// UIView.animate(withDuration: 0.3) { +// self.circleView.transform = CGAffineTransform.identity +// } +//} +// +//override func touchesCancelled(_ touches: Set, with event: UIEvent?) { +// UIView.animate(withDuration: 0.3) { +// self.circleView.transform = CGAffineTransform.identity +// } +//} diff --git a/Pie Charts/Pie Charts/Pie_ChartsApp.swift b/Pie Charts/Pie Charts/Pie_ChartsApp.swift new file mode 100644 index 0000000..174c0c9 --- /dev/null +++ b/Pie Charts/Pie Charts/Pie_ChartsApp.swift @@ -0,0 +1,17 @@ +// +// Pie_ChartsApp.swift +// Pie Charts +// +// Created by I3LT-040 on 6/9/23. +// + +import SwiftUI + +@main +struct Pie_ChartsApp: App { + var body: some Scene { + WindowGroup { + ContentView() + } + } +} diff --git a/Pie Charts/Pie Charts/Preview Content/GenreDataMod.swift b/Pie Charts/Pie Charts/Preview Content/GenreDataMod.swift new file mode 100644 index 0000000..550aa1e --- /dev/null +++ b/Pie Charts/Pie Charts/Preview Content/GenreDataMod.swift @@ -0,0 +1,32 @@ +// +// GenreDataMod.swift +// Pie Charts +// +// Created by I3LT-040 on 7/9/23. +// +// +//import SwiftUI +// +//struct GenreDataMod: View { +// +// +// var body: some View { +// +// +// let data = [ +// Genre(name: "Pop", count: 100, color: Color(red: 0.8, green: 0.5, blue: 0)), +// Genre(name: "Rock", count: 2, color: Color(red: 0.7, green: 0.4, blue: 0)), +// Genre(name: "Indie", count: 3, color: Color(red: 0.6, green: 0.3, blue: 0)), +// Genre(name: "Jazz", count: 4, color: Color(red: 0.5, green: 0.2, blue: 0)), +// Genre(name: "Hip-Hop", count: 5, color: Color(red: 0.4, green: 0.1, blue: 0)), +// Genre(name: "R&B", count: 7, color: Color(red: 0.3, green: 0, blue: 0)) +// ] +// +// GenreCalc(data:data) +// +// } +//} +// +//#Preview { +// GenreDataMod() +//} diff --git a/Pie Charts/Pie Charts/Preview Content/Preview Assets.xcassets/Contents.json b/Pie Charts/Pie Charts/Preview Content/Preview Assets.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/Pie Charts/Pie Charts/Preview Content/Preview Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Pie Charts/Pie ChartsTests/Pie_ChartsTests.swift b/Pie Charts/Pie ChartsTests/Pie_ChartsTests.swift new file mode 100644 index 0000000..de0b376 --- /dev/null +++ b/Pie Charts/Pie ChartsTests/Pie_ChartsTests.swift @@ -0,0 +1,36 @@ +// +// Pie_ChartsTests.swift +// Pie ChartsTests +// +// Created by I3LT-040 on 6/9/23. +// + +import XCTest +@testable import Pie_Charts + +final class Pie_ChartsTests: XCTestCase { + + override func setUpWithError() throws { + // Put setup code here. This method is called before the invocation of each test method in the class. + } + + override func tearDownWithError() throws { + // Put teardown code here. This method is called after the invocation of each test method in the class. + } + + func testExample() throws { + // This is an example of a functional test case. + // Use XCTAssert and related functions to verify your tests produce the correct results. + // Any test you write for XCTest can be annotated as throws and async. + // Mark your test throws to produce an unexpected failure when your test encounters an uncaught error. + // Mark your test async to allow awaiting for asynchronous code to complete. Check the results with assertions afterwards. + } + + func testPerformanceExample() throws { + // This is an example of a performance test case. + self.measure { + // Put the code you want to measure the time of here. + } + } + +} diff --git a/Pie Charts/Pie ChartsUITests/Pie_ChartsUITests.swift b/Pie Charts/Pie ChartsUITests/Pie_ChartsUITests.swift new file mode 100644 index 0000000..58e1722 --- /dev/null +++ b/Pie Charts/Pie ChartsUITests/Pie_ChartsUITests.swift @@ -0,0 +1,41 @@ +// +// Pie_ChartsUITests.swift +// Pie ChartsUITests +// +// Created by I3LT-040 on 6/9/23. +// + +import XCTest + +final class Pie_ChartsUITests: XCTestCase { + + override func setUpWithError() throws { + // Put setup code here. This method is called before the invocation of each test method in the class. + + // In UI tests it is usually best to stop immediately when a failure occurs. + continueAfterFailure = false + + // In UI tests it’s important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this. + } + + override func tearDownWithError() throws { + // Put teardown code here. This method is called after the invocation of each test method in the class. + } + + func testExample() throws { + // UI tests must launch the application that they test. + let app = XCUIApplication() + app.launch() + + // Use XCTAssert and related functions to verify your tests produce the correct results. + } + + func testLaunchPerformance() throws { + if #available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 7.0, *) { + // This measures how long it takes to launch your application. + measure(metrics: [XCTApplicationLaunchMetric()]) { + XCUIApplication().launch() + } + } + } +} diff --git a/Pie Charts/Pie ChartsUITests/Pie_ChartsUITestsLaunchTests.swift b/Pie Charts/Pie ChartsUITests/Pie_ChartsUITestsLaunchTests.swift new file mode 100644 index 0000000..41f02f5 --- /dev/null +++ b/Pie Charts/Pie ChartsUITests/Pie_ChartsUITestsLaunchTests.swift @@ -0,0 +1,32 @@ +// +// Pie_ChartsUITestsLaunchTests.swift +// Pie ChartsUITests +// +// Created by I3LT-040 on 6/9/23. +// + +import XCTest + +final class Pie_ChartsUITestsLaunchTests: XCTestCase { + + override class var runsForEachTargetApplicationUIConfiguration: Bool { + true + } + + override func setUpWithError() throws { + continueAfterFailure = false + } + + func testLaunch() throws { + let app = XCUIApplication() + app.launch() + + // Insert steps here to perform after app launch but before taking a screenshot, + // such as logging into a test account or navigating somewhere in the app + + let attachment = XCTAttachment(screenshot: app.screenshot()) + attachment.name = "Launch Screen" + attachment.lifetime = .keepAlways + add(attachment) + } +}