-rw-r--r-- | noncore/graphics/opie-eye/gui/filesystem.cpp | 7 | ||||
-rw-r--r-- | noncore/graphics/opie-eye/gui/filesystem.h | 1 |
2 files changed, 7 insertions, 1 deletions
diff --git a/noncore/graphics/opie-eye/gui/filesystem.cpp b/noncore/graphics/opie-eye/gui/filesystem.cpp index 6f1c64a..8efcdf7 100644 --- a/noncore/graphics/opie-eye/gui/filesystem.cpp +++ b/noncore/graphics/opie-eye/gui/filesystem.cpp | |||
@@ -17,25 +17,25 @@ PFileSystem::PFileSystem( QToolBar* bar) | |||
17 | { | 17 | { |
18 | setIconSet( Resource::loadIconSet( "cardmon/pcmcia" ) ); | 18 | setIconSet( Resource::loadIconSet( "cardmon/pcmcia" ) ); |
19 | 19 | ||
20 | m_pop = new QPopupMenu( this ); | 20 | m_pop = new QPopupMenu( this ); |
21 | connect( m_pop, SIGNAL( activated( int ) ), | 21 | connect( m_pop, SIGNAL( activated( int ) ), |
22 | this, SLOT(slotSelectDir( int ) ) ); | 22 | this, SLOT(slotSelectDir( int ) ) ); |
23 | 23 | ||
24 | m_storage = new StorageInfo(); | 24 | m_storage = new StorageInfo(); |
25 | connect(m_storage, SIGNAL(disksChanged() ), | 25 | connect(m_storage, SIGNAL(disksChanged() ), |
26 | this, SLOT( changed() ) ); | 26 | this, SLOT( changed() ) ); |
27 | changed(); | 27 | changed(); |
28 | 28 | ||
29 | setPopup( m_pop ); | 29 | connect(this,SIGNAL(pressed()),SLOT(slotPopUp())); |
30 | } | 30 | } |
31 | 31 | ||
32 | PFileSystem::~PFileSystem() { | 32 | PFileSystem::~PFileSystem() { |
33 | delete m_storage; | 33 | delete m_storage; |
34 | } | 34 | } |
35 | 35 | ||
36 | 36 | ||
37 | void PFileSystem::changed() { | 37 | void PFileSystem::changed() { |
38 | m_pop->clear(); | 38 | m_pop->clear(); |
39 | m_dev.clear(); | 39 | m_dev.clear(); |
40 | 40 | ||
41 | /* home dir, too */ | 41 | /* home dir, too */ |
@@ -46,15 +46,20 @@ void PFileSystem::changed() { | |||
46 | } | 46 | } |
47 | 47 | ||
48 | const QList<FileSystem> &fs = m_storage->fileSystems(); | 48 | const QList<FileSystem> &fs = m_storage->fileSystems(); |
49 | QListIterator<FileSystem> it(fs ); | 49 | QListIterator<FileSystem> it(fs ); |
50 | for ( ; it.current(); ++it ) { | 50 | for ( ; it.current(); ++it ) { |
51 | const QString disk = (*it)->name(); | 51 | const QString disk = (*it)->name(); |
52 | const QString path = (*it)->path(); | 52 | const QString path = (*it)->path(); |
53 | m_dev.insert( disk, path ); | 53 | m_dev.insert( disk, path ); |
54 | m_pop->insertItem( disk ); | 54 | m_pop->insertItem( disk ); |
55 | } | 55 | } |
56 | } | 56 | } |
57 | 57 | ||
58 | void PFileSystem::slotPopUp() { | ||
59 | m_pop->exec(QCursor::pos()); | ||
60 | setDown(false); | ||
61 | } | ||
62 | |||
58 | void PFileSystem::slotSelectDir( int id ) { | 63 | void PFileSystem::slotSelectDir( int id ) { |
59 | emit changeDir( m_dev[m_pop->text(id )] ); | 64 | emit changeDir( m_dev[m_pop->text(id )] ); |
60 | } | 65 | } |
diff --git a/noncore/graphics/opie-eye/gui/filesystem.h b/noncore/graphics/opie-eye/gui/filesystem.h index a29ad87..dbd9d4a 100644 --- a/noncore/graphics/opie-eye/gui/filesystem.h +++ b/noncore/graphics/opie-eye/gui/filesystem.h | |||
@@ -12,23 +12,24 @@ | |||
12 | class QPopupMenu; | 12 | class QPopupMenu; |
13 | class StorageInfo; | 13 | class StorageInfo; |
14 | class PFileSystem : public QToolButton { | 14 | class PFileSystem : public QToolButton { |
15 | Q_OBJECT | 15 | Q_OBJECT |
16 | public: | 16 | public: |
17 | PFileSystem( QToolBar* ); | 17 | PFileSystem( QToolBar* ); |
18 | ~PFileSystem(); | 18 | ~PFileSystem(); |
19 | 19 | ||
20 | signals: | 20 | signals: |
21 | void changeDir( const QString& ); | 21 | void changeDir( const QString& ); |
22 | 22 | ||
23 | private slots: | 23 | private slots: |
24 | void slotPopUp(); | ||
24 | void slotSelectDir( int ); | 25 | void slotSelectDir( int ); |
25 | void changed(); | 26 | void changed(); |
26 | 27 | ||
27 | private: | 28 | private: |
28 | QPopupMenu* m_pop; | 29 | QPopupMenu* m_pop; |
29 | StorageInfo *m_storage; | 30 | StorageInfo *m_storage; |
30 | QMap<QString, QString> m_dev; | 31 | QMap<QString, QString> m_dev; |
31 | }; | 32 | }; |
32 | 33 | ||
33 | 34 | ||
34 | #endif | 35 | #endif |