2019-12-19 22:46:16 +11:00
|
|
|
// SPDX-License-Identifier: LGPL-3.0-or-later
|
|
|
|
|
2019-11-08 01:41:10 +11:00
|
|
|
import QtQuick 2.12
|
|
|
|
import QtQuick.Controls 2.12
|
|
|
|
import QtQuick.Layouts 1.12
|
|
|
|
|
|
|
|
TabButton {
|
|
|
|
id: button
|
|
|
|
spacing: theme.spacing
|
|
|
|
topPadding: spacing / 1.5
|
|
|
|
bottomPadding: topPadding
|
|
|
|
leftPadding: spacing
|
|
|
|
rightPadding: leftPadding
|
|
|
|
|
|
|
|
icon.color: theme.icons.colorize
|
|
|
|
|
|
|
|
implicitWidth: Math.max(
|
|
|
|
implicitBackgroundWidth + leftInset + rightInset,
|
|
|
|
// FIXME: why is *2 needed to not get ellided text in AddAccount page?
|
|
|
|
implicitContentWidth + leftPadding * 2 + rightPadding * 2,
|
|
|
|
)
|
|
|
|
implicitHeight: Math.max(
|
|
|
|
implicitBackgroundHeight + topInset + bottomInset,
|
|
|
|
implicitContentHeight + topPadding + bottomPadding,
|
|
|
|
)
|
|
|
|
|
|
|
|
// Prevent button from gaining focus and being highlighted on click
|
|
|
|
focusPolicy: Qt.TabFocus
|
|
|
|
|
|
|
|
|
|
|
|
readonly property alias iconItem: contentItem.icon
|
|
|
|
readonly property alias label: contentItem.label
|
|
|
|
|
2019-11-08 02:23:47 +11:00
|
|
|
property color backgroundColor:
|
2019-12-10 02:35:50 +11:00
|
|
|
TabBar.index % 2 === 0 ?
|
2019-11-08 02:23:47 +11:00
|
|
|
theme.controls.tab.background : theme.controls.tab.alternateBackground
|
|
|
|
|
2020-06-23 23:09:30 +10:00
|
|
|
property color focusLineColor:
|
|
|
|
Qt.colorEqual(icon.color, theme.icons.colorize) ?
|
|
|
|
theme.controls.tab.focusedBorder :
|
|
|
|
icon.color
|
|
|
|
|
2019-11-08 01:41:10 +11:00
|
|
|
property bool loading: false
|
|
|
|
|
|
|
|
property HToolTip toolTip: HToolTip {
|
|
|
|
id: toolTip
|
|
|
|
visible: text && hovered
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
background: HButtonBackground {
|
|
|
|
button: button
|
|
|
|
buttonTheme: theme.controls.tab
|
|
|
|
color: backgroundColor
|
|
|
|
}
|
|
|
|
|
|
|
|
contentItem: HButtonContent {
|
|
|
|
id: contentItem
|
|
|
|
button: button
|
|
|
|
buttonTheme: theme.controls.tab
|
|
|
|
}
|
|
|
|
}
|