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: qsTr("Text margins") acceptText: qsTr("Apply") } Slider { id: lrSlider width: parent.width label: qsTr("Side margins") 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: qsTr("Top and bottom") 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: qsTr("Changes apply immediately. Confirm to save them for all books.") color: Theme.secondaryColor wrapMode: Text.Wrap font.pixelSize: Theme.fontSizeSmall } } onAccepted: { appSettings.readerMargin = dialog.marginLr appSettings.readerMarginV = dialog.marginTb } }