/* * Copyright (c) 2015 Meltytech, LLC * Author: Dan Dennedy * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ import QtQuick 2.2 import QtQuick.Controls 1.1 import QtQuick.Layouts 1.1 import Shotcut.Controls 1.0 import QtQuick.Controls.Styles 1.1 Item { property string tripLevel: '0' property real tripLeveld: 1 property string diffSpace: '1' property real diffSpaced: 0.00390625 property var defaultParameters: [tripLevel, diffSpace] width: 300 height: 150 Component.onCompleted: { presetItem.parameters = defaultParameters if (filter.isNew) { // Set default parameter values filter.set(tripLevel, tripLeveld) filter.set(diffSpace, diffSpaced) filter.savePreset(defaultParameters) } levelSlider.value = filter.get(tripLevel) diffSlider.value = filter.get(diffSpace) } GridLayout { columns: 3 anchors.fill: parent anchors.margins: 8 Label { text: qsTr('Preset') Layout.alignment: Qt.AlignRight } Preset { id: presetItem Layout.columnSpan: 2 onPresetSelected: { levelSlider.value = filter.get(tripLevel) diffSlider.value = filter.get(diffSpace) } } // Row 1 Label { text: qsTr('Level of Trip') Layout.alignment: Qt.AlignRight } SliderSpinner { id: levelSlider minimumValue: 0 maximumValue: 1 decimals: 8 suffix: '' value: filter.get(tripLevel) onValueChanged: filter.set(tripLevel, value) } UndoButton { onClicked: levelSlider.value = tripLeveld } // Row 2 Label { text: qsTr('Difference Space') Layout.alignment: Qt.AlignRight } SliderSpinner { id: diffSlider minimumValue: 0 maximumValue: 256 decimals: 0 suffix: '' value: filter.get(diffSpace) onValueChanged: filter.set(diffSpace, value / 256) } UndoButton { onClicked: diffSlider.value = diffSpaced } Item { Layout.fillHeight: true } } }