Index: sources/gui/qml/components/SliderCreateTreatment.qml =================================================================== diff -u -rdb92783a0a9dab0ddf2b68c51d15b1ae1cb3ddcc -rf813d68fd04134b788273466fbf754b8996b4ac2 --- sources/gui/qml/components/SliderCreateTreatment.qml (.../SliderCreateTreatment.qml) (revision db92783a0a9dab0ddf2b68c51d15b1ae1cb3ddcc) +++ sources/gui/qml/components/SliderCreateTreatment.qml (.../SliderCreateTreatment.qml) (revision f813d68fd04134b788273466fbf754b8996b4ac2) @@ -1,15 +1,15 @@ /*! * - * Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. + * Copyright (c) 2020-2023 Diality Inc. - All Rights Reserved. * \copyright * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * - * \file SliderCreateTreatment.qml - * \author (last) Peter Lucia - * \date (last) 06-Oct-2020 - * \author (original) Peter Lucia - * \date (original) 07-Jul-2020 + * \file SliderCreateTreatment.qml + * \author (last) Behrouz NematiPour + * \date (last) 21-Oct-2022 + * \author (original) Peter Lucia + * \date (original) 07-Jul-2020 * */ @@ -27,24 +27,29 @@ Rectangle { id: _root property Flickable flickable: null + property bool adjustable : true property alias label : _label.text + property alias decimal : _slider.decimal property alias minimum : _slider.minimum property alias maximum : _slider.maximum property alias value : _slider.value property alias step : _slider.step + property alias inActiveZero: _slider.inActiveZero - property string zeroLabel : qsTr("OFF") + property string zeroLabel : "" property string unit : "" property bool active : false property bool valid : true + property alias showAdjustButtons : _sliderArrows.visible + signal pressed () signal released() height : Variables.createTreatmentSliderHeight width : Variables.createTreatmentSliderWidth - color : "transparent" + color : Colors.transparent anchors.horizontalCenter: parent.horizontalCenter @@ -62,19 +67,15 @@ } function setValue() { - let value = "__" + let mValue = "__" let unit = " " + _root.unit if ( _root.active ) { - if ( _slider.value ) { - value = _slider.value + if ( _slider.value === 0 && zeroLabel !== "" ) { + return _root.zeroLabel } - else { - if ( zeroLabel ) { - return _root.zeroLabel - } - } + mValue = _slider.value } - return value + unit + return mValue + unit } function setInteractive( vInteractive ) { @@ -106,13 +107,15 @@ Slider { id : _slider objectName : _root.objectName + "Slider" + enabled : _root.adjustable anchors.horizontalCenter: parent.horizontalCenter anchors.bottom : parent.bottom width : Variables.createTreatmentSliderWidth diameter : Variables.sliderCircleDiameter touchMargin : Variables.createTreatmentSliderMargin color : Colors.createTreatmentInactive handlerColor : Colors.createTreatmentInactive + handlerVisible : _root.adjustable height : Variables.progressbarFluidHeight isActive : _root.active ticks : true @@ -123,4 +126,20 @@ onProgressRectClicked : { ; ; setActiveValid( ) } onProgressRectDragged : { ; ; setActiveValid( ) } } + + SliderArrows{ id:_sliderArrows + visible : true + anchors.verticalCenter : _slider.verticalCenter + anchors.left : _slider.right + anchors.leftMargin : Variables.sliderAdjustButtonLeftMargin + + onIncrementValue : { + setActiveValid() + _slider.incrementValue(true) + } + onDecrementValue : { + setActiveValid() + _slider.decrementValue(true) + } + } }