From 6fe147f4d7d250e54e0dcd08a73781b7afc05b99 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Wed, 5 Mar 2014 20:14:26 +0100 Subject: [PATCH] new graphics for tabbars --- desktoptheme/air/widgets/tabbar.svgz | Bin 0 -> 3945 bytes .../plasmacomponents/qml/TabBar.qml | 39 ++++++++++++------ 2 files changed, 26 insertions(+), 13 deletions(-) create mode 100644 desktoptheme/air/widgets/tabbar.svgz diff --git a/desktoptheme/air/widgets/tabbar.svgz b/desktoptheme/air/widgets/tabbar.svgz new file mode 100644 index 0000000000000000000000000000000000000000..8e6684e0cdedcf51747c09c0582b71c1f7f1f0d4 GIT binary patch literal 3945 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 DTwtwG literal 0 HcmV?d00001 diff --git a/src/declarativeimports/plasmacomponents/qml/TabBar.qml b/src/declarativeimports/plasmacomponents/qml/TabBar.qml index 4e80b257a..f8ef9baf9 100644 --- a/src/declarativeimports/plasmacomponents/qml/TabBar.qml +++ b/src/declarativeimports/plasmacomponents/qml/TabBar.qml @@ -79,16 +79,9 @@ FocusScope { */ property alias tabPosition: tabBarLayout.tabPosition - implicitWidth: layout.implicitWidth + backgroundFrame.margins.left + backgroundFrame.margins.right - implicitHeight: layout.implicitHeight + backgroundFrame.margins.top + backgroundFrame.margins.bottom + implicitWidth: layout.implicitWidth + implicitHeight: layout.implicitHeight - PlasmaCore.FrameSvgItem { - id: backgroundFrame - - anchors.fill: parent - imagePath: "widgets/frame" - prefix: "sunken" - } Item { id: buttonCutter @@ -100,6 +93,7 @@ FocusScope { bottomMargin: (buttonsLayout.visible && !layout.isHorizontal? buttonsLayout.height : 0) + 1 } clip: true + PlasmaCore.FrameSvgItem { id: buttonFrame @@ -108,8 +102,27 @@ FocusScope { y: layout.isHorizontal ? 0 : tabBarLayout.y + currentTab.y width: layout.isHorizontal ? currentTab.width + margins.left + margins.right -1 : parent.width height: layout.isHorizontal ? parent.height : currentTab.height + margins.top + margins.bottom - imagePath: "widgets/button" - prefix: "normal" + imagePath: "widgets/tabbar" + prefix: { + var prefix; + switch (tabPosition) { + case Qt.LeftEdge: + prefix = "west-active-tab"; + break; + case Qt.TopEdge: + prefix = "north-active-tab"; + break; + case Qt.RightEdge: + prefix = "east-active-tab"; + break; + default: + prefix = "south-active-tab"; + } + if (!hasElementPrefix(prefix)) { + prefix = "active-tab"; + } + return prefix; + } Behavior on x { PropertyAnimation { easing.type: Easing.InQuad @@ -230,8 +243,8 @@ FocusScope { verticalCenter: layout.isHorizontal ? parent.verticalCenter : undefined bottom: !layout.isHorizontal ? parent.bottom : undefined horizontalCenter: !layout.isHorizontal ? parent.horizontalCenter : undefined - rightMargin: Math.min(y, backgroundFrame.margins.right) - bottomMargin: Math.min(y, backgroundFrame.margins.bottom) + rightMargin: y + bottomMargin: y } ToolButton { height: Math.min(parent.height, parent.width)