diff options
author | Weblate <noreply@weblate.org> | 2016-09-27 16:14:37 +0000 |
---|---|---|
committer | Weblate <noreply@weblate.org> | 2016-09-27 16:14:37 +0000 |
commit | c80736d2c8b43be05b67416438e99017a5ced3dc (patch) | |
tree | fb1974512932ede4c9a2e138cf603a50d6d112b9 /src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp | |
parent | Translated using Weblate (l_TERMINAL@it (generated)) (diff) | |
parent | Merge branch 'master' of github.com:trueos/lumina (diff) | |
download | lumina-c80736d2c8b43be05b67416438e99017a5ced3dc.tar.gz lumina-c80736d2c8b43be05b67416438e99017a5ced3dc.tar.bz2 lumina-c80736d2c8b43be05b67416438e99017a5ced3dc.zip |
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp')
-rw-r--r-- | src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp b/src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp new file mode 100644 index 00000000..12fd36fe --- /dev/null +++ b/src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp @@ -0,0 +1,70 @@ +//=========================================== +// Lumina-DE source code +// Copyright (c) 2016, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "BrowserWidget.h" +BrowserWidget::BrowserWidget(QString objID, QWidget *parent) : QWidget(parent){ + //Setup the Widget/UI + this->setLayout( new QVBoxLayout(this) ); + + //Setup the backend browser object + BROWSER = new Browser(this); + connect(BROWSER, SIGNAL(clearItems()), this, SLOT(clearItems()) ); + connect(BROWSER, SIGNAL(itemUpdated(QString)), this, SLOT(itemUpdated(QString)) ); + connect(BROWSER, SIGNAL(itemUpdated(QString)), this, SLOT(itemUpdated(QString)) ); + connect(BROWSER, SIGNAL(itemUpdated(QString)), this, SLOT(itemUpdated(QString)) ); + + listWidget = 0; + treeWidget = 0; +} + +BrowserWidget::~BrowserWidget(){ + +} + +void BrowserWidget::changeDirectory(QString dir){ + if(BROWSER->currentDirectory()==dir){ return; } //already on this directory + BROWSER->loadDirectory(dir); +} + +// ================= +// PRIVATE SLOTS +// ================= +void BrowserWidget::clearItems(){ + if(listWidget!=0){ listWidget->clear(); } + else if(treeWidget!=0){ treeWidget->clear(); } + this->setEnabled(false); +} + +void BrowserWidget::itemUpdated(QString item){ + if(treeWidget==0){ return; } //only used for the tree widget/details + qDebug() << "item updated" << item; + QList<QTreeWidgetItem*> found = treeWidget->findItems(item.section("/",-1), Qt::MatchExactly, 0); //look for exact name match + if(found.isEmpty()){ return; } //no match + QTreeWidgetItem *it = found[0]; //onlyp update the first match (should only ever be one - duplicate file names are disallowed) + //it->setText( +} + +void BrowserWidget::itemDataAvailable(QIcon ico, LFileInfo info){ + int num = 0; + if(listWidget!=0){ + listWidget->addItem( new QListWidgetItem(ico, info.fileName(), listWidget) ); + num = listWidget->count(); + }else if(treeWidget!=0){ + //TODO + } + if(num < numItems){ + //Still loading items + //this->setEnabled(false); + }else{ + //Done loading items + this->setEnabled(true); + } +} + +void BrowserWidget::itemsLoading(int total){ + numItems = total; //save this for later +} + |