Diffstat (limited to 'libopie/ofileselector/olister.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie/ofileselector/olister.cpp | 58 |
1 files changed, 57 insertions, 1 deletions
diff --git a/libopie/ofileselector/olister.cpp b/libopie/ofileselector/olister.cpp index b6b03cd..378c69d 100644 --- a/libopie/ofileselector/olister.cpp +++ b/libopie/ofileselector/olister.cpp @@ -1,2 +1,4 @@ +#include <qcombobox.h> + #include "olister.h" #include "ofileview.h" @@ -6,5 +8,5 @@ OLister::OLister( OFileSelector* view) - : m_view( view ) + : m_view( view ), m_acc( 0l ) { m_prov = new OPixmapProvider( view ); @@ -25,4 +27,5 @@ bool OLister::showDirs()const { void OLister::addFile( const QString& mine, QFileInfo* info, + const QString& extra, bool isSymlink ) { int t = isSymlink ? OPixmapProvider::File | OPixmapProvider::Symlink : @@ -33,4 +36,5 @@ void OLister::addFile( const QString& mine, mine, info, + extra, isSymlink ); } @@ -38,4 +42,5 @@ void OLister::addFile( const QString& mine, const QString& path, const QString& file, + const QString& extra, bool isSymlink ) { int t = isSymlink ? OPixmapProvider::File | OPixmapProvider::Symlink : @@ -47,8 +52,10 @@ void OLister::addFile( const QString& mine, path, file, + extra, isSymlink ); } void OLister::addDir( const QString& mine, QFileInfo* info, + const QString& extra, bool isSymlink ) { int t = isSymlink ? OPixmapProvider::Dir | OPixmapProvider::Symlink : @@ -58,4 +65,5 @@ void OLister::addDir( const QString& mine, mine, info, + extra, isSymlink ); } @@ -63,4 +71,5 @@ void OLister::addDir( const QString& mine, const QString& path, const QString& dir, + const QString& extra, bool isSymlink ) { @@ -73,8 +82,10 @@ void OLister::addDir( const QString& mine, path, dir, + extra, isSymlink ); } void OLister::addSymlink( const QString& mine, QFileInfo* info, + const QString& extra, bool isSymlink ) { QPixmap pix = provider()->pixmap( OPixmapProvider::Symlink, mine, info ); @@ -82,4 +93,5 @@ void OLister::addSymlink( const QString& mine, mine, info, + extra, isSymlink ); } @@ -87,4 +99,5 @@ void OLister::addSymlink( const QString& mine, const QString& path, const QString& name, + const QString& extra, bool isSymlink ) { QPixmap pix = provider()->pixmap( OPixmapProvider::Symlink, mine, @@ -94,4 +107,5 @@ void OLister::addSymlink( const QString& mine, path, name, + extra, isSymlink ); } @@ -105,2 +119,44 @@ bool OLister::compliesMime( const QString& mime ) { return view()->compliesMime( mime ); } +OListerCmbAccess* OLister::comboBox() { + if (!m_acc ) + m_acc = new OListerCmbAccess( view()->m_location ); + + return m_acc; +} + + +OListerCmbAccess::OListerCmbAccess(QComboBox* box ) + : m_cmb( cmb ) +{} +OListerCmbAccess::~OListerCmbAccess() { +} +void OListerCmbAccess::clear() { + if ( m_cmb ) + m_cmb->clear(); +} +void OListerCmbAccess::setCurrentItem( const QString& add, bool FORCE_ADD) { + if ( !m_cmb ) return; + + + int c = m_cmb->count(); + for ( int i = 0; i < m_cmb->count(); i++ ) { + if ( m_cmb->text(i) == add ) { + bo->setCurrentItem( i ); + return; + } + } + m_cmb->insertItem(add ); + m_cmb->setCurrentItem( c ); +} +void OListerCmbAccess::insert( const QString& str ) { + if ( m_cmb ) + m_cmb->insertItem( str ); +} +QString OListerCmbAccess::currentText()const { + QString str; + if (m_cmb ) + str = m_cmb->currentText(); + + return str; +} |