74 lines
2.0 KiB
QML
74 lines
2.0 KiB
QML
import QtQuick 2.0
|
|
import Sailfish.Silica 1.0
|
|
|
|
// Regola i margini del testo nel lettore senza uscire dal libro.
|
|
// Anteprima LIVE: ogni variazione degli slider viene inoltrata al lettore via
|
|
// previewHandler (runJavaScript sul documento aperto), quindi il testo si
|
|
// adatta subito. I valori vengono persistiti solo all'accettazione.
|
|
Dialog {
|
|
id: dialog
|
|
|
|
property int marginLr: 24
|
|
property int marginTb: 0
|
|
// funzione chiamata a ogni variazione: previewHandler(marginLr, marginTb)
|
|
property var previewHandler: null
|
|
|
|
function preview() {
|
|
if (dialog.previewHandler)
|
|
dialog.previewHandler(dialog.marginLr, dialog.marginTb)
|
|
}
|
|
|
|
Column {
|
|
width: parent.width
|
|
|
|
DialogHeader {
|
|
title: "Margini del testo"
|
|
acceptText: "Applica"
|
|
}
|
|
|
|
Slider {
|
|
id: lrSlider
|
|
width: parent.width
|
|
label: "Margini laterali"
|
|
minimumValue: 0
|
|
maximumValue: 80
|
|
stepSize: 4
|
|
value: dialog.marginLr
|
|
valueText: value + " px"
|
|
onValueChanged: {
|
|
dialog.marginLr = value
|
|
dialog.preview()
|
|
}
|
|
}
|
|
|
|
Slider {
|
|
id: tbSlider
|
|
width: parent.width
|
|
label: "Alto e basso"
|
|
minimumValue: 0
|
|
maximumValue: 80
|
|
stepSize: 4
|
|
value: dialog.marginTb
|
|
valueText: value + " px"
|
|
onValueChanged: {
|
|
dialog.marginTb = value
|
|
dialog.preview()
|
|
}
|
|
}
|
|
|
|
Label {
|
|
x: Theme.horizontalPageMargin
|
|
width: parent.width - 2 * Theme.horizontalPageMargin
|
|
text: "Le modifiche si applicano subito al testo. Conferma per salvarle per tutti i libri."
|
|
color: Theme.secondaryColor
|
|
wrapMode: Text.Wrap
|
|
font.pixelSize: Theme.fontSizeSmall
|
|
}
|
|
}
|
|
|
|
onAccepted: {
|
|
appSettings.readerMargin = dialog.marginLr
|
|
appSettings.readerMarginV = dialog.marginTb
|
|
}
|
|
}
|