From 8a6d4b06f2291c363f3dea17837ed20893852453 Mon Sep 17 00:00:00 2001 From: Markus Mittendrein Date: Wed, 9 Sep 2015 19:00:56 +0200 Subject: Cleanup repo with some directories --- .../examples/quick/qml/BufferListView.qml | 92 ++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 src/libcommuni/examples/quick/qml/BufferListView.qml (limited to 'src/libcommuni/examples/quick/qml/BufferListView.qml') diff --git a/src/libcommuni/examples/quick/qml/BufferListView.qml b/src/libcommuni/examples/quick/qml/BufferListView.qml new file mode 100644 index 0000000..3d277b6 --- /dev/null +++ b/src/libcommuni/examples/quick/qml/BufferListView.qml @@ -0,0 +1,92 @@ +/* + * Copyright (C) 2008-2014 The Communi Project + * + * This example is free, and not covered by the BSD license. There is no + * restriction applied to their modification, redistribution, using and so on. + * You can study them, modify them, use them in your own program - either + * completely or partially. + */ + +import QtQuick 2.1 +import QtQuick.Controls 1.0 +import Communi 3.0 + +Rectangle { + id: background + + property alias bufferModel: listView.model + property IrcBuffer currentBuffer + + signal closed(IrcBuffer buffer) + + color: "#edf3fe" + + Rectangle { + id: frame + anchors.fill: parent + anchors.topMargin: -1 + color: "transparent" + border.color: "#aaa" + } + + Menu { + id: menu + MenuItem { + text: qsTr("Close") + shortcut: qsTr("Ctrl+W") + enabled: !!currentBuffer + onTriggered: closed(currentBuffer) + } + } + + ScrollView { + id: scrollView + + anchors.fill: parent + anchors.topMargin: -1 + + ListView { + id: listView + + delegate: Rectangle { + property bool first: index === 0 + property bool current: model.buffer === currentBuffer + anchors.left: parent ? parent.left : undefined + anchors.right: parent ? parent.right : undefined + anchors.margins: 1 + height: Math.max(21, label.implicitHeight + 5) + color: first ? "#ddd" : current ? "#b5d5ff" : "transparent" + Rectangle { + visible: first + width: parent.width + height: 1 + anchors.bottom: parent.bottom + anchors.fill: parent + anchors.leftMargin: -1 + anchors.rightMargin: -1 + color: "transparent" + border.color: "#aaa" + } + Label { + id: label + text: model.title + font.bold: first + anchors.margins: 2 + anchors.leftMargin: 6 + anchors.left: parent.left + anchors.right: parent.right + anchors.verticalCenter: parent.verticalCenter + } + MouseArea { + anchors.fill: parent + acceptedButtons: Qt.LeftButton | Qt.RightButton + onPressed: { + currentBuffer = model.buffer + if (mouse.button === Qt.RightButton) + menu.popup() + } + } + } + } + } +} -- cgit v1.2.3-54-g00ecf