author | andyq <andyq> | 2002-12-04 23:14:12 (UTC) |
---|---|---|
committer | andyq <andyq> | 2002-12-04 23:14:12 (UTC) |
commit | 128343cd009009e42ce6bcdfd45a294c7ea44f83 (patch) (side-by-side diff) | |
tree | c27ae8892ce9038e5ae523aaecc4632fafb05929 | |
parent | 4c3a3a2eb2ed79f9e833d356b28c8be9a514ed50 (diff) | |
download | opie-128343cd009009e42ce6bcdfd45a294c7ea44f83.zip opie-128343cd009009e42ce6bcdfd45a294c7ea44f83.tar.gz opie-128343cd009009e42ce6bcdfd45a294c7ea44f83.tar.bz2 |
Added Available space for destination chosen
-rw-r--r-- | noncore/settings/aqpkg/install.ui | 64 | ||||
-rw-r--r-- | noncore/settings/aqpkg/installdlgimpl.cpp | 37 | ||||
-rw-r--r-- | noncore/settings/aqpkg/installdlgimpl.h | 2 |
3 files changed, 84 insertions, 19 deletions
diff --git a/noncore/settings/aqpkg/install.ui b/noncore/settings/aqpkg/install.ui index daa0ff6..c5a3596 100644 --- a/noncore/settings/aqpkg/install.ui +++ b/noncore/settings/aqpkg/install.ui @@ -13,5 +13,5 @@ <y>0</y> <width>196</width> - <height>271</height> + <height>278</height> </rect> </property> @@ -29,23 +29,34 @@ <number>6</number> </property> - <widget row="0" column="0" > - <class>QLabel</class> + <widget row="0" column="1" > + <class>QComboBox</class> <property stdset="1"> <name>name</name> - <cstring>TextLabel1</cstring> + <cstring>destination</cstring> + </property> + </widget> + <widget row="3" column="0" > + <class>QPushButton</class> + <property stdset="1"> + <name>name</name> + <cstring>btnInstall</cstring> </property> <property stdset="1"> <name>text</name> - <string>Destination</string> + <string>Start</string> </property> </widget> - <widget row="0" column="1" > - <class>QComboBox</class> + <widget row="3" column="1" > + <class>QPushButton</class> <property stdset="1"> <name>name</name> - <cstring>destination</cstring> + <cstring>btnOptions</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Options</string> </property> </widget> - <widget row="1" column="0" rowspan="1" colspan="2" > + <widget row="2" column="0" rowspan="1" colspan="2" > <class>QGroupBox</class> <property stdset="1"> @@ -75,24 +86,35 @@ </grid> </widget> - <widget row="2" column="0" > - <class>QPushButton</class> + <widget row="0" column="0" > + <class>QLabel</class> <property stdset="1"> <name>name</name> - <cstring>btnInstall</cstring> + <cstring>TextLabel1</cstring> </property> <property stdset="1"> <name>text</name> - <string>Start</string> + <string>Destination</string> </property> </widget> - <widget row="2" column="1" > - <class>QPushButton</class> + <widget row="1" column="0" > + <class>QLabel</class> <property stdset="1"> <name>name</name> - <cstring>btnOptions</cstring> + <cstring>TextLabel3</cstring> </property> <property stdset="1"> <name>text</name> - <string>Options</string> + <string>Space Avail</string> + </property> + </widget> + <widget row="1" column="1" > + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>txtAvailableSpace</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>100000000</string> </property> </widget> @@ -112,6 +134,12 @@ <slot>installSelected()</slot> </connection> + <connection> + <sender>destination</sender> + <signal>highlighted(const QString&)</signal> + <receiver>InstallDlg</receiver> + <slot>displayAvailableSpace( const QString& )</slot> + </connection> + <slot access="public">displayAvailableSpace( const QString& )</slot> <slot access="public">installSelected()</slot> - <slot access="public">displayText(const QString &)</slot> <slot access="public">optionsSelected()</slot> </connections> diff --git a/noncore/settings/aqpkg/installdlgimpl.cpp b/noncore/settings/aqpkg/installdlgimpl.cpp index 485fe3d..bfb4f62 100644 --- a/noncore/settings/aqpkg/installdlgimpl.cpp +++ b/noncore/settings/aqpkg/installdlgimpl.cpp @@ -19,4 +19,5 @@ #include <qpe/config.h> #include <qpe/qpeapplication.h> +#include <qpe/storage.h> #endif @@ -26,4 +27,5 @@ #include <qcheckbox.h> #include <qpushbutton.h> +#include <qlabel.h> @@ -32,4 +34,5 @@ #include "destination.h" #include "installdlgimpl.h" +#include "utils.h" #include "global.h" @@ -102,4 +105,6 @@ InstallDlgImpl::InstallDlgImpl( vector<InstallData> &packageList, DataManager *d output->setText( remove + install + upgrade ); + + displayAvailableSpace( destination->currentText() ); } @@ -178,5 +183,5 @@ void InstallDlgImpl :: installSelected() pIpkg = new Ipkg; connect( pIpkg, SIGNAL(outputText(const QString &)), this, SLOT(displayText(const QString &))); - + // First run through the remove list, then the install list then the upgrade list vector<InstallData>::iterator it; @@ -238,2 +243,32 @@ void InstallDlgImpl :: displayText(const QString &text ) output->setCursorPosition( output->numLines(), 0 ); } + + +void InstallDlgImpl :: displayAvailableSpace( const QString &text ) +{ + vector<Destination>::iterator d = dataMgr->getDestination( text ); + QString destDir = d->getDestinationPath(); + + long blockSize = 0; + long totalBlocks = 0; + long availBlocks = 0; + QString space; + if ( Utils::getStorageSpace( (const char *)destDir, &blockSize, &totalBlocks, &availBlocks ) ) + { + long mult = blockSize / 1024; + long div = 1024 / blockSize; + + if ( !mult ) mult = 1; + if ( !div ) div = 1; +// long total = totalBlocks * mult / div; + long avail = availBlocks * mult / div; +// long used = total - avail; + + space.sprintf( "%ld Kb", avail ); + } + else + space = "Unknown"; + + txtAvailableSpace->setText( space ); +} + diff --git a/noncore/settings/aqpkg/installdlgimpl.h b/noncore/settings/aqpkg/installdlgimpl.h index 9819b2e..2f80f08 100644 --- a/noncore/settings/aqpkg/installdlgimpl.h +++ b/noncore/settings/aqpkg/installdlgimpl.h @@ -45,4 +45,5 @@ public: bool upgradeServer( QString &server ); + protected: @@ -61,4 +62,5 @@ private: void installSelected(); void displayText(const QString &text ); + void displayAvailableSpace( const QString &text); }; |