/*!
 *
 * Copyright (c) 2021-2024 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    PreTreatmentConfirm.qml
 * \author  (last)      Behrouz NematiPour
 * \date    (last)      29-May-2024
 * \author  (original)  Behrouz NematiPour
 * \date    (original)  12-Jan-2021
 *
 */

// Qt
import QtQuick 2.12
import QtQuick.Controls 2.12 // ScrollBar

// Project
//  Qml imports
import "qrc:/globals"
import "qrc:/components"
import "qrc:/compounds"
import "qrc:/pages/pretreatment"

/*!
 * \brief   Pre-Treatment confirm screen
 * \details which contains the user set values in a table to be confirmed by user.
 */
PreTreatmentBase { id: _root
    objectName: "_PreTreatmentConfirm"

    // removed for now, since after removing the A/V Min/Max, scrolling is not needed
    // ScrollBar {
    //     backColor   : Colors.backgroundDialog
    //     flickable   : _flickable
    //     anchors.fill: _flickable
    //     anchors.rightMargin : Variables.minVGap2
    //     anchors.leftMargin  : Variables.minVGap2
    // }

    Label { id: _txCode
        anchors.bottom  : _flickable.top
        anchors.left    : _flickable.left
        width           : _flickable.width
        text            : qsTr("Code: ") + vTreatmentCreate.txCode
        font.pixelSize  : Fonts.fontPixelButton
    }

    QRCode { id: _qrCode
        visible         : false // removed for the P1 release, since the code had a big change and cannot be removed entirely
        anchors.bottom  : _flickable.top
        anchors.right   : _flickable.right
        anchors.margins : 15
        qrcode          : vTreatmentCreate.txCode
        clear           : ! _root.visible
    }

    Flickable { id: _flickable
        objectName: "_PreTreatmentConfirmFlickable"
        interactive: false
        Background { // Used instead of ScrollBar background
            color   : Colors.backgroundDialog
            // anchors.rightMargin : Variables.minVGap2
            // anchors.leftMargin  : Variables.minVGap2
        }
        clip: true
        anchors {
            top             : _root.title.bottom
            topMargin       : Variables.minVGap * 2 // * 2 : it was too close to title and also better with rows not half cut.
            bottom          : _root.bottom
            bottomMargin    : Variables.notificationHeight + Variables.minVGap
            horizontalCenter: parent.horizontalCenter
        }
        width        : parent.width - Variables.minVGap2 * 2 // * 2 : for each side
        contentWidth : width
        contentHeight: height

        // TODO: remove this and the sub components and use the TouchGrid instead like in the PostTreatmentReview.qml
        Column { id: _column
            anchors.horizontalCenter: parent.horizontalCenter;
            anchors.fill: parent;
            // insert the treatment information table here
            ConfirmTreatmentTable {
                anchors.horizontalCenter: parent.horizontalCenter
            }
        }

        // removed for now, since after removing the A/V Min/Max, scrolling is not needed
        // onAtYEndChanged: {
        //     if (_flickable.atYEnd) header.confirmEnabled = true
        // }
    }

    // removed fro now, since after removing the A/V Min/Max, scrolling is not needed
    // onVisibleChanged: {
    //     _flickable.contentY = 0 // scroll back to top
    //     header.confirmEnabled = false
    // }
}
