Move settings + generation to sheets
This commit is contained in:
@ -0,0 +1,72 @@
|
||||
import SwiftUI
|
||||
|
||||
struct PageSettingsDetailView: View {
|
||||
|
||||
@Environment(\.language)
|
||||
private var language
|
||||
|
||||
@ObservedObject
|
||||
var pageSettings: PageSettings
|
||||
|
||||
var body: some View {
|
||||
ScrollView {
|
||||
VStack(alignment: .leading) {
|
||||
IntegerPropertyView(
|
||||
title: "Content Width",
|
||||
value: $pageSettings.contentWidth,
|
||||
footer: "The maximum width of the content in pages (in pixels)")
|
||||
|
||||
IntegerPropertyView(
|
||||
title: "Fullscreen Image Width",
|
||||
value: $pageSettings.largeImageWidth,
|
||||
footer: "The maximum width of images that are diplayed fullscreen")
|
||||
|
||||
IntegerPropertyView(
|
||||
title: "Page Link Image Width",
|
||||
value: $pageSettings.pageLinkImageSize,
|
||||
footer: "The maximum width of images diplayed as thumbnails on page links")
|
||||
|
||||
FilePropertyView(
|
||||
title: "Default CSS File",
|
||||
footer: "The CSS file containing the styling of all pages",
|
||||
selectedFile: $pageSettings.defaultCssFile,
|
||||
allowedType: .asset)
|
||||
|
||||
FilePropertyView(
|
||||
title: "Code Highlighting File",
|
||||
footer: "The JavaScript file to provide syntax highlighting of code blocks",
|
||||
selectedFile: $pageSettings.codeHighlightingJsFile,
|
||||
allowedType: .asset)
|
||||
|
||||
FilePropertyView(
|
||||
title: "3D Model Viewer File",
|
||||
footer: "The JavaScript file to provide the functionality for the 3D model viewer",
|
||||
selectedFile: $pageSettings.modelViewerJsFile,
|
||||
allowedType: .asset)
|
||||
|
||||
|
||||
FilePropertyView(
|
||||
title: "Image Comparison CSS File",
|
||||
footer: "The CSS file to provide image comparisons",
|
||||
selectedFile: $pageSettings.imageCompareCssFile,
|
||||
allowedType: .asset)
|
||||
|
||||
FilePropertyView(
|
||||
title: "Image Comparison JaveScript File",
|
||||
footer: "The JavaScript file to provide image comparisons",
|
||||
selectedFile: $pageSettings.imageCompareJsFile,
|
||||
allowedType: .asset)
|
||||
|
||||
LocalizedPageSettingsView(settings: pageSettings.localized(in: language))
|
||||
.id(language)
|
||||
}
|
||||
.padding()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#Preview {
|
||||
PageSettingsDetailView(pageSettings: .default)
|
||||
.padding()
|
||||
}
|
Reference in New Issue
Block a user