basic toolbar hiding and showing

This commit is contained in:
Sebastian Kügler 2012-03-20 02:23:11 +01:00
parent 73e2d78647
commit 409a2ac82c
3 changed files with 23 additions and 5 deletions

View File

@ -29,9 +29,12 @@ Description:
This is a container for Apps. Navigation and Content area layout can This is a container for Apps. Navigation and Content area layout can
vary depending on the available size. vary depending on the available size.
Note that App is experimental, its API might change
Properties: Properties:
Item navigation: Navigation or Context Area. Item navigation: Navigation or Context Area.
Item content: The "main view" Item content: The "main view"
ToolBarLayout tools: alias to the topBar's ToolBar.tools
Methods: Methods:
@ -43,7 +46,6 @@ Signals:
import QtQuick 1.1 import QtQuick 1.1
import org.kde.plasma.core 0.1 as PlasmaCore import org.kde.plasma.core 0.1 as PlasmaCore
import org.kde.plasma.components 0.1 as PlasmaComponents import org.kde.plasma.components 0.1 as PlasmaComponents
//import org.kde.plasma.extras 0.1 as PlasmaExtras
Item { Item {
id: app id: app
@ -61,9 +63,22 @@ Item {
PlasmaComponents.ToolBar { PlasmaComponents.ToolBar {
id: topBar id: topBar
height: 48 height: visible ? 48 : 0
//visible: tools.id != "undefined"
anchors { top: parent.top; left: parent.left; right: parent.right; } anchors { top: parent.top; left: parent.left; right: parent.right; }
tools: PlasmaComponents.ToolBarLayout {} //tools: PlasmaComponents.ToolBarLayout {}
onToolsChanged: {
//print("tools changed:" + typeof(tools) + " " + tools.id);
var shown;
// FIXME: Horrible hack, improve heuristics here.
if (tools.childrenRect.width > 20) {
shown = true;
} else {
shown = false;
}
visible = shown;
}
} }
Image { Image {

View File

@ -28,7 +28,10 @@ Column {
title: "Plasma Components API documentation" title: "Plasma Components API documentation"
} }
ToolBarLayout {
id: toolbarlayout
Component.onCompleted: app.tools = toolbarlayout
}
//anchors.fill: parent //anchors.fill: parent
anchors.margins: space anchors.margins: space
width: 600 width: 600

View File

@ -24,7 +24,7 @@ import org.kde.plasma.extras 0.1 as PlasmaExtras
PlasmaExtras.App { PlasmaExtras.App {
id: app id: app
width: 1000 width: 1000
height: 800 height: 600
navigationWidth: 200 navigationWidth: 200
property string formFactor: "tablet" property string formFactor: "tablet"