Commit 5868dbc1 authored by Don Gagne's avatar Don Gagne

Added progress indicator, download speed

Also updated to latest QGCUASFileManager implementation.
parent 1fa53faa
This diff is collapsed.
...@@ -42,29 +42,38 @@ protected: ...@@ -42,29 +42,38 @@ protected:
private slots: private slots:
void _refreshTree(void); void _refreshTree(void);
void _downloadFiles(void); void _listEntryReceived(const QString& entry);
void _treeStatusMessage(const QString& msg); void _listErrorMessage(const QString& msg);
void _treeErrorMessage(const QString& msg);
void _listComplete(void); void _listComplete(void);
void _downloadStatusMessage(const QString& msg);
void _downloadFile(void);
void _downloadLength(unsigned int length);
void _downloadProgress(unsigned int length);
void _downloadErrorMessage(const QString& msg);
void _downloadComplete(void);
void _currentItemChanged(QTreeWidgetItem* current, QTreeWidgetItem* previous); void _currentItemChanged(QTreeWidgetItem* current, QTreeWidgetItem* previous);
void _listCompleteTimeout(void);
private: private:
void _setupListCompleteTimeout(void); void _connectDownloadSignals(void);
void _clearListCompleteTimeout(void); void _disconnectDownloadSignals(void);
void _connectListSignals(void);
void _disconnectListSignals(void);
void _requestDirectoryList(const QString& dir); void _requestDirectoryList(const QString& dir);
static const int _typeFile = QTreeWidgetItem::UserType + 1; static const int _typeFile = QTreeWidgetItem::UserType + 1;
static const int _typeDir = QTreeWidgetItem::UserType + 2; static const int _typeDir = QTreeWidgetItem::UserType + 2;
static const int _typeError = QTreeWidgetItem::UserType + 3; static const int _typeError = QTreeWidgetItem::UserType + 3;
QTimer _listCompleteTimer; ///> Used to signal a timeout waiting for a listComplete signal
static const int _listCompleteTimerTimeoutMsecs = 5000; ///> Timeout in msecs for listComplete timer
QList<int> _walkIndexStack; QList<int> _walkIndexStack;
QList<QTreeWidgetItem*> _walkItemStack; QList<QTreeWidgetItem*> _walkItemStack;
Ui::QGCUASFileView _ui; Ui::QGCUASFileView _ui;
QString _downloadFilename; ///< File currently being downloaded, not including path
QTime _downloadStartTime; ///< Time at which download started
bool _listInProgress; ///< Indicates that a listDirectory command is in progress
bool _downloadInProgress; ///< Indicates that a downloadPath command is in progress
}; };
#endif // QGCUASFILEVIEW_H #endif // QGCUASFILEVIEW_H
...@@ -14,13 +14,23 @@ ...@@ -14,13 +14,23 @@
<string>Form</string> <string>Form</string>
</property> </property>
<layout class="QGridLayout" name="gridLayout"> <layout class="QGridLayout" name="gridLayout">
<item row="1" column="1"> <item row="3" column="1">
<widget class="QPushButton" name="listFilesButton"> <widget class="QPushButton" name="listFilesButton">
<property name="text"> <property name="text">
<string>List Files</string> <string>List Files</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="1" column="0" colspan="3">
<widget class="QProgressBar" name="progressBar">
<property name="value">
<number>24</number>
</property>
<property name="textVisible">
<bool>false</bool>
</property>
</widget>
</item>
<item row="0" column="0" colspan="3"> <item row="0" column="0" colspan="3">
<widget class="QTreeWidget" name="treeWidget"> <widget class="QTreeWidget" name="treeWidget">
<property name="headerHidden"> <property name="headerHidden">
...@@ -33,7 +43,7 @@ ...@@ -33,7 +43,7 @@
</column> </column>
</widget> </widget>
</item> </item>
<item row="1" column="2"> <item row="3" column="2">
<widget class="QPushButton" name="downloadButton"> <widget class="QPushButton" name="downloadButton">
<property name="enabled"> <property name="enabled">
<bool>false</bool> <bool>false</bool>
...@@ -43,6 +53,19 @@ ...@@ -43,6 +53,19 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="2" column="0" colspan="3">
<widget class="QLabel" name="statusText">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
</layout> </layout>
</widget> </widget>
<resources/> <resources/>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment