use an explicit selection model for treeview

This commit is contained in:
Stephen Birarda 2016-03-10 18:32:18 -08:00
parent 39e869fdfd
commit 8e2b06a8e5
2 changed files with 14 additions and 8 deletions

View file

@ -138,7 +138,7 @@ Window {
function addToWorld(url) {
if (!url) {
url = assetProxyModel.data(treeView.currentIndex, 0x103);
url = assetProxyModel.data(treeView.selection.currentIndex, 0x103);
}
if (!url || !canAddToWorld(url)) {
@ -153,10 +153,10 @@ Window {
function copyURLToClipboard(index) {
if (!index) {
index = treeView.currentIndex;
index = treeView.selection.currentIndex;
}
var url = assetProxyModel.data(treeView.currentIndex, 0x103);
var url = assetProxyModel.data(treeView.selection.currentIndex, 0x103);
if (!url) {
return;
}
@ -165,9 +165,11 @@ Window {
function renameFile(index) {
if (!index) {
index = treeView.currentIndex;
index = treeView.selection.currentIndex;
}
console.log("THE CURRENT INDEX IS " + treeView.selection.currentIndex);
var path = assetProxyModel.data(index, 0x100);
console.log("THE PATH IS " + path);
if (!path) {
return;
}
@ -194,14 +196,14 @@ Window {
}
function deleteFile(index) {
if (!index) {
index = treeView.currentIndex;
index = treeView.selection.currentIndex;
}
var path = assetProxyModel.data(index, 0x100);
if (!path) {
return;
}
var isFolder = assetProxyModel.data(treeView.currentIndex, 0x101);
var isFolder = assetProxyModel.data(treeView.selection.currentIndex, 0x101);
var typeString = isFolder ? 'folder' : 'file';
var object = desktop.messageBox({
@ -239,7 +241,7 @@ Window {
var fileUrl = fileUrlTextField.text
var shouldAddToWorld = addToWorldCheckBox.checked
var path = assetProxyModel.data(treeView.currentIndex, 0x100);
var path = assetProxyModel.data(treeView.selection.currentIndex, 0x100);
var directory = path ? path.slice(0, path.lastIndexOf('/') + 1) : "/";
var filename = fileUrl.slice(fileUrl.lastIndexOf('/') + 1);
@ -302,7 +304,7 @@ Window {
height: 26
width: 120
enabled: canAddToWorld(assetProxyModel.data(treeView.currentIndex, 0x100))
enabled: canAddToWorld(assetProxyModel.data(treeView.selection.currentIndex, 0x100))
onClicked: root.addToWorld()
}

View file

@ -8,6 +8,7 @@
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
//
import QtQml.Models 2.2
import QtQuick 2.5
import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4
@ -22,6 +23,9 @@ TreeView {
readonly property bool isLightColorScheme: colorScheme == hifi.colorSchemes.light
model: treeModel
selection: ItemSelectionModel {
model: treeModel
}
TableViewColumn {
role: "display";