/*!
 *
 * 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    StepNavigationTitleBar.qml
 * \author  (last)      Behrouz NematiPour
 * \date    (last)      18-Jun-2021
 * \author  (original)  Behrouz NematiPour
 * \date    (original)  18-Mar-2021
 *
 */

// Qt
import QtQuick 2.12

// Project
//  Qml imports
import "qrc:/globals"
import "qrc:/components"

/*!
 * \brief   StepNavigationTitleBar
 */
Rectangle { id: _root
    property int   stepIndex        : 0
    property int   stepLineLength   : 75
    property var   stepNames        : []
    property alias     backVisible  : _backButton   .visible
    property alias     backEnabled  : _backButton   .enabled
    property alias  confirmVisible  : _confirmButton.visible
    property alias  confirmEnabled  : _confirmButton.enabled
    property alias confirmText      : _confirmButton.text

    height  : Variables.topBarMenuHeight
    color   : Colors.backgroundMain

    signal    backClicked()
    signal confirmClicked()

    BackButton { id : _backButton
        objectName: "_backButton"
        visible: false
        enabled: true
        anchors {
            top     : _root.top
            left    : _root.left
        }
        onClicked: _root.backClicked()
    }

    ConfirmButton { id : _confirmButton
        objectName: "_confirmButton"
        visible: false
        enabled: true
        onClicked: _root.confirmClicked()
    }

    Loader { id: _stepIndicatorLoader
        active: stepNames.length
        anchors.centerIn: parent
        sourceComponent: StepIndicator { id: _stepIndicator
            currentStepIndex: _root.stepIndex
            spacerLineLength: _root.stepLineLength
            stepNames       : _root.stepNames
        }
    }
}
