Move settings + generation to sheets

This commit is contained in:
Christoph Hagen
2025-02-05 15:40:09 +01:00
parent 5abe6e1a9f
commit 156bbf77d1
32 changed files with 402 additions and 852 deletions

View File

@ -38,6 +38,7 @@ struct LocalizedPageContentView: View {
}.disabled(content.isGeneratingWebsite)
if content.isGeneratingWebsite {
ProgressView()
.scaleEffect(0.6)
.frame(height: 15)
}
Spacer()

View File

@ -31,30 +31,12 @@ struct PageDetailView: View {
}
}
#warning("Show info on page generation")
var body: some View {
ScrollView {
VStack(alignment: .leading) {
DetailTitle(
title: "Page",
text: "A page contains longer content")
HStack(alignment: .firstTextBaseline) {
Button(action: generate) {
Text("Generate")
}
.disabled(content.isGeneratingWebsite)
// switch didGenerateWebsite {
// case .none:
// Image(systemSymbol: .questionmarkCircleFill)
// .foregroundStyle(.gray)
// case .some(true):
// Image(systemSymbol: .checkmarkCircleFill)
// .foregroundStyle(.green)
// case .some(false):
// Image(systemSymbol: .xmarkCircleFill)
// .foregroundStyle(.red)
// }
}
IdPropertyView(
id: $page.id,
footer: "The page id is used to link to it internally.",
@ -127,12 +109,6 @@ struct PageDetailView: View {
MultiFileSelectionView(selectedFiles: $page.requiredFiles, insertSorted: true)
}
}
private func generate() {
DispatchQueue.global(qos: .userInitiated).async {
content.generatePage(page)
}
}
}
extension PageDetailView: MainContentView {

View File

@ -64,15 +64,12 @@ struct PageListView: View {
.textFieldStyle(.roundedBorder)
.padding(.horizontal, 8)
List(filteredPages) { page in
PageListItem(page: page)
.listRowBackground(RoundedRectangle(cornerRadius: 5)
.fill(selection.page == page ? Color.blue : Color.clear)
.padding(.horizontal, 10)
)
.contentShape(Rectangle())
.onTapGesture {
selection.page = page
}
SelectableListItem(selected: selection.page == page) {
PageListItem(page: page)
}
.onTapGesture {
selection.page = page
}
}
}
.onAppear {