mirror of
https://github.com/overte-org/overte.git
synced 2025-04-20 03:44:02 +02:00
Filter
This commit is contained in:
parent
d19377d2d4
commit
ee8f5d6e7b
1 changed files with 24 additions and 1 deletions
|
@ -53,6 +53,7 @@ Rectangle {
|
|||
console.log("Failed to get inventory", result.message);
|
||||
} else {
|
||||
inventoryModel.append(result.data.assets);
|
||||
filteredInventoryModel.append(result.data.assets);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -145,8 +146,27 @@ Rectangle {
|
|||
|
||||
HifiControlsUit.TextField {
|
||||
id: filterBar;
|
||||
property int previousLength: 0;
|
||||
anchors.fill: parent;
|
||||
placeholderText: "Filter";
|
||||
|
||||
onTextChanged: {
|
||||
if (filterBar.text.length < previousLength) {
|
||||
filteredInventoryModel.clear();
|
||||
|
||||
for (var i = 0; i < inventoryModel.count; i++) {
|
||||
filteredInventoryModel.append(inventoryModel.get(i));
|
||||
}
|
||||
}
|
||||
|
||||
for (var i = 0; i < filteredInventoryModel.count; i++) {
|
||||
if (filteredInventoryModel.get(i).title.toLowerCase().indexOf(filterBar.text.toLowerCase()) === -1) {
|
||||
filteredInventoryModel.remove(i);
|
||||
i--;
|
||||
}
|
||||
}
|
||||
previousLength = filterBar.text.length;
|
||||
}
|
||||
}
|
||||
}
|
||||
//
|
||||
|
@ -156,11 +176,14 @@ Rectangle {
|
|||
ListModel {
|
||||
id: inventoryModel;
|
||||
}
|
||||
ListModel {
|
||||
id: filteredInventoryModel;
|
||||
}
|
||||
|
||||
ListView {
|
||||
id: inventoryContentsList;
|
||||
clip: true;
|
||||
model: inventoryModel;
|
||||
model: filteredInventoryModel;
|
||||
// Anchors
|
||||
anchors.top: filterBarContainer.bottom;
|
||||
anchors.topMargin: 12;
|
||||
|
|
Loading…
Reference in a new issue