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,3 +1,5 @@ | |||
1 | #include <qcombobox.h> | ||
2 | |||
1 | #include "olister.h" | 3 | #include "olister.h" |
2 | #include "ofileview.h" | 4 | #include "ofileview.h" |
3 | #include "opixmapprovider.h" | 5 | #include "opixmapprovider.h" |
@@ -5,7 +7,7 @@ | |||
5 | 7 | ||
6 | 8 | ||
7 | OLister::OLister( OFileSelector* view) | 9 | OLister::OLister( OFileSelector* view) |
8 | : m_view( view ) | 10 | : m_view( view ), m_acc( 0l ) |
9 | { | 11 | { |
10 | m_prov = new OPixmapProvider( view ); | 12 | m_prov = new OPixmapProvider( view ); |
11 | } | 13 | } |
@@ -24,6 +26,7 @@ bool OLister::showDirs()const { | |||
24 | } | 26 | } |
25 | void OLister::addFile( const QString& mine, | 27 | void OLister::addFile( const QString& mine, |
26 | QFileInfo* info, | 28 | QFileInfo* info, |
29 | const QString& extra, | ||
27 | bool isSymlink ) { | 30 | bool isSymlink ) { |
28 | int t = isSymlink ? OPixmapProvider::File | OPixmapProvider::Symlink : | 31 | int t = isSymlink ? OPixmapProvider::File | OPixmapProvider::Symlink : |
29 | OPixmapProvider::File; | 32 | OPixmapProvider::File; |
@@ -32,11 +35,13 @@ void OLister::addFile( const QString& mine, | |||
32 | view()->currentView()->addFile( pix, | 35 | view()->currentView()->addFile( pix, |
33 | mine, | 36 | mine, |
34 | info, | 37 | info, |
38 | extra, | ||
35 | isSymlink ); | 39 | isSymlink ); |
36 | } | 40 | } |
37 | void OLister::addFile( const QString& mine, | 41 | void OLister::addFile( const QString& mine, |
38 | const QString& path, | 42 | const QString& path, |
39 | const QString& file, | 43 | const QString& file, |
44 | const QString& extra, | ||
40 | bool isSymlink ) { | 45 | bool isSymlink ) { |
41 | int t = isSymlink ? OPixmapProvider::File | OPixmapProvider::Symlink : | 46 | int t = isSymlink ? OPixmapProvider::File | OPixmapProvider::Symlink : |
42 | OPixmapProvider::File; | 47 | OPixmapProvider::File; |
@@ -46,10 +51,12 @@ void OLister::addFile( const QString& mine, | |||
46 | mine, | 51 | mine, |
47 | path, | 52 | path, |
48 | file, | 53 | file, |
54 | extra, | ||
49 | isSymlink ); | 55 | isSymlink ); |
50 | } | 56 | } |
51 | void OLister::addDir( const QString& mine, | 57 | void OLister::addDir( const QString& mine, |
52 | QFileInfo* info, | 58 | QFileInfo* info, |
59 | const QString& extra, | ||
53 | bool isSymlink ) { | 60 | bool isSymlink ) { |
54 | int t = isSymlink ? OPixmapProvider::Dir | OPixmapProvider::Symlink : | 61 | int t = isSymlink ? OPixmapProvider::Dir | OPixmapProvider::Symlink : |
55 | OPixmapProvider::Dir; | 62 | OPixmapProvider::Dir; |
@@ -57,11 +64,13 @@ void OLister::addDir( const QString& mine, | |||
57 | view()->currentView()->addDir( pix, | 64 | view()->currentView()->addDir( pix, |
58 | mine, | 65 | mine, |
59 | info, | 66 | info, |
67 | extra, | ||
60 | isSymlink ); | 68 | isSymlink ); |
61 | } | 69 | } |
62 | void OLister::addDir( const QString& mine, | 70 | void OLister::addDir( const QString& mine, |
63 | const QString& path, | 71 | const QString& path, |
64 | const QString& dir, | 72 | const QString& dir, |
73 | const QString& extra, | ||
65 | bool isSymlink ) { | 74 | bool isSymlink ) { |
66 | 75 | ||
67 | int t = isSymlink ? OPixmapProvider::Dir | OPixmapProvider::Symlink : | 76 | int t = isSymlink ? OPixmapProvider::Dir | OPixmapProvider::Symlink : |
@@ -72,20 +81,24 @@ void OLister::addDir( const QString& mine, | |||
72 | mine, | 81 | mine, |
73 | path, | 82 | path, |
74 | dir, | 83 | dir, |
84 | extra, | ||
75 | isSymlink ); | 85 | isSymlink ); |
76 | } | 86 | } |
77 | void OLister::addSymlink( const QString& mine, | 87 | void OLister::addSymlink( const QString& mine, |
78 | QFileInfo* info, | 88 | QFileInfo* info, |
89 | const QString& extra, | ||
79 | bool isSymlink ) { | 90 | bool isSymlink ) { |
80 | QPixmap pix = provider()->pixmap( OPixmapProvider::Symlink, mine, info ); | 91 | QPixmap pix = provider()->pixmap( OPixmapProvider::Symlink, mine, info ); |
81 | view()->currentView()->addSymlink( pix, | 92 | view()->currentView()->addSymlink( pix, |
82 | mine, | 93 | mine, |
83 | info, | 94 | info, |
95 | extra, | ||
84 | isSymlink ); | 96 | isSymlink ); |
85 | } | 97 | } |
86 | void OLister::addSymlink( const QString& mine, | 98 | void OLister::addSymlink( const QString& mine, |
87 | const QString& path, | 99 | const QString& path, |
88 | const QString& name, | 100 | const QString& name, |
101 | const QString& extra, | ||
89 | bool isSymlink ) { | 102 | bool isSymlink ) { |
90 | QPixmap pix = provider()->pixmap( OPixmapProvider::Symlink, mine, | 103 | QPixmap pix = provider()->pixmap( OPixmapProvider::Symlink, mine, |
91 | path, name ); | 104 | path, name ); |
@@ -93,6 +106,7 @@ void OLister::addSymlink( const QString& mine, | |||
93 | mine, | 106 | mine, |
94 | path, | 107 | path, |
95 | name, | 108 | name, |
109 | extra, | ||
96 | isSymlink ); | 110 | isSymlink ); |
97 | } | 111 | } |
98 | OFileSelector* OLister::view() { | 112 | OFileSelector* OLister::view() { |
@@ -104,3 +118,45 @@ OPixmapProvider* OLister::provider() { | |||
104 | bool OLister::compliesMime( const QString& mime ) { | 118 | bool OLister::compliesMime( const QString& mime ) { |
105 | return view()->compliesMime( mime ); | 119 | return view()->compliesMime( mime ); |
106 | } | 120 | } |
121 | OListerCmbAccess* OLister::comboBox() { | ||
122 | if (!m_acc ) | ||
123 | m_acc = new OListerCmbAccess( view()->m_location ); | ||
124 | |||
125 | return m_acc; | ||
126 | } | ||
127 | |||
128 | |||
129 | OListerCmbAccess::OListerCmbAccess(QComboBox* box ) | ||
130 | : m_cmb( cmb ) | ||
131 | {} | ||
132 | OListerCmbAccess::~OListerCmbAccess() { | ||
133 | } | ||
134 | void OListerCmbAccess::clear() { | ||
135 | if ( m_cmb ) | ||
136 | m_cmb->clear(); | ||
137 | } | ||
138 | void OListerCmbAccess::setCurrentItem( const QString& add, bool FORCE_ADD) { | ||
139 | if ( !m_cmb ) return; | ||
140 | |||
141 | |||
142 | int c = m_cmb->count(); | ||
143 | for ( int i = 0; i < m_cmb->count(); i++ ) { | ||
144 | if ( m_cmb->text(i) == add ) { | ||
145 | bo->setCurrentItem( i ); | ||
146 | return; | ||
147 | } | ||
148 | } | ||
149 | m_cmb->insertItem(add ); | ||
150 | m_cmb->setCurrentItem( c ); | ||
151 | } | ||
152 | void OListerCmbAccess::insert( const QString& str ) { | ||
153 | if ( m_cmb ) | ||
154 | m_cmb->insertItem( str ); | ||
155 | } | ||
156 | QString OListerCmbAccess::currentText()const { | ||
157 | QString str; | ||
158 | if (m_cmb ) | ||
159 | str = m_cmb->currentText(); | ||
160 | |||
161 | return str; | ||
162 | } | ||