chore: convert to preview macro

This commit is contained in:
Shibo Lyu 2024-12-18 16:06:40 +08:00
parent 6b33bcdbe4
commit 54861801e6
4 changed files with 34 additions and 41 deletions

View file

@ -225,15 +225,15 @@ public struct CropImageView<Controls: View, CutHole: View>: View {
}
}
struct CropImageView_Previews: PreviewProvider {
#Preview {
struct PreviewView: View {
@State private var targetSize: CGSize = .init(width: 100, height: 100)
@State private var result: Result<PlatformImage, Error>? = nil
var body: some View {
VStack {
CropImageView(
image: .init(contentsOfFile: "/Users/laosb/Downloads/png.png")!,
image: .init(contentsOf: URL(string: "file:///System/Library/Desktop%20Pictures/Hello%20Metallic%20Blue.heic")!)!,
targetSize: targetSize
) {
result = $0
@ -262,18 +262,16 @@ struct CropImageView_Previews: PreviewProvider {
}
} header: { Text("Result") }
}
#if os(macOS)
#if os(macOS)
.formStyle(.grouped)
#endif
#endif
}
}
}
static var previews: some View {
PreviewView()
#if os(macOS)
.frame(width: 500)
.frame(minHeight: 600)
#endif
}
return PreviewView()
#if os(macOS)
.frame(width: 500)
.frame(minHeight: 600)
#endif
}

View file

@ -44,20 +44,18 @@ struct DefaultCutHoleShape: Shape {
}
}
struct DefaultCutHoleShape_Previews: PreviewProvider {
static var previews: some View {
VStack {
DefaultCutHoleShape(size: .init(width: 100, height: 100))
.fill(style: FillStyle(eoFill: true))
.foregroundColor(.black.opacity(0.6))
}
.previewDisplayName("Default")
VStack {
DefaultCutHoleShape(size: .init(width: 100, height: 100), isCircular: true)
.fill(style: FillStyle(eoFill: true))
.foregroundColor(.black.opacity(0.6))
}
.previewDisplayName("Circular")
#Preview("Default") {
VStack {
DefaultCutHoleShape(size: .init(width: 100, height: 100))
.fill(style: FillStyle(eoFill: true))
.foregroundColor(.black.opacity(0.6))
}
}
#Preview("Circular") {
VStack {
DefaultCutHoleShape(size: .init(width: 100, height: 100), isCircular: true)
.fill(style: FillStyle(eoFill: true))
.foregroundColor(.black.opacity(0.6))
}
}

View file

@ -61,11 +61,10 @@ public struct DefaultCutHoleView: View {
}
}
struct DefaultCutHoleView_Previews: PreviewProvider {
static var previews: some View {
DefaultCutHoleView(targetSize: .init(width: 100, height: 100))
.previewDisplayName("Default")
DefaultCutHoleView(targetSize: .init(width: 100, height: 100), isCircular: true)
.previewDisplayName("Circular")
}
#Preview("Default") {
DefaultCutHoleView(targetSize: .init(width: 100, height: 100))
}
#Preview("Circular") {
DefaultCutHoleView(targetSize: .init(width: 100, height: 100), isCircular: true)
}

View file

@ -191,18 +191,18 @@ struct UnderlyingImageView: View {
}
}
struct MoveAndScalableImageView_Previews: PreviewProvider {
#Preview {
struct PreviewView: View {
@State private var offset: CGSize = .zero
@State private var scale: CGFloat = 1
@State private var rotation: Angle = .zero
var body: some View {
UnderlyingImageView(
offset: $offset,
scale: $scale,
rotation: $rotation,
image: .init(contentsOfFile: "/Users/laosb/Downloads/png.png")!,
image: .init(contentsOf: URL(string: "file:///System/Library/Desktop%20Pictures/Hello%20Metallic%20Blue.heic")!)!,
viewSize: .init(width: 200, height: 100),
targetSize: .init(width: 100, height: 100),
fulfillTargetFrame: true
@ -210,8 +210,6 @@ struct MoveAndScalableImageView_Previews: PreviewProvider {
.frame(width: 200, height: 100)
}
}
static var previews: some View {
PreviewView()
}
return PreviewView()
}