summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/ofileselector/odefaultfactories.cpp15
-rw-r--r--libopie/ofileselector/odefaultfactories.h14
-rw-r--r--libopie/ofileselector/ofileselector.cpp34
-rw-r--r--libopie/ofileselector/ofileselector.h4
4 files changed, 50 insertions, 17 deletions
diff --git a/libopie/ofileselector/odefaultfactories.cpp b/libopie/ofileselector/odefaultfactories.cpp
new file mode 100644
index 0000000..c41fbca
--- a/dev/null
+++ b/libopie/ofileselector/odefaultfactories.cpp
@@ -0,0 +1,15 @@
1#include "ofilelistview.h"
2#include "olocallister.h"
3
4#include "odefaultfactories.h"
5
6extern "C" {
7
8 OFileView* newFileListView( OFileSelector* sel, QWidget* par ) {
9 return new OFileListView(par, sel );
10 }
11 OLister* newLocalLister( OFileSelector* sel) {
12 return new OLocalLister( sel );
13 }
14
15};
diff --git a/libopie/ofileselector/odefaultfactories.h b/libopie/ofileselector/odefaultfactories.h
new file mode 100644
index 0000000..eb698d3
--- a/dev/null
+++ b/libopie/ofileselector/odefaultfactories.h
@@ -0,0 +1,14 @@
1#ifndef OPIE_DEFAULT_FACTORIES_H
2#define OPIE_DEFAULT_FACTORIES_H
3
4#include "ofilefactory.h"
5
6extern "C" {
7
8 OFileView* newFileListView( OFileSelector*, QWidget* parent );
9 OLister* newLocalLister(OFileSelector* );
10
11};
12
13
14#endif
diff --git a/libopie/ofileselector/ofileselector.cpp b/libopie/ofileselector/ofileselector.cpp
index 458d432..91a510f 100644
--- a/libopie/ofileselector/ofileselector.cpp
+++ b/libopie/ofileselector/ofileselector.cpp
@@ -34,6 +34,7 @@
34#include "ofileselector.h" 34#include "ofileselector.h"
35#include "olocallister.h" 35#include "olocallister.h"
36#include "olister.h" 36#include "olister.h"
37#include "odefaultfactories.h"
37 38
38QMap<QString,QPixmap> *OFileSelector::m_pixmaps = 0; 39QMap<QString,QPixmap> *OFileSelector::m_pixmaps = 0;
39 40
@@ -297,9 +298,7 @@ QString OFileSelector::selectedPath()const
297 QString path; 298 QString path;
298 if( m_selector == Normal ){ 299 if( m_selector == Normal ){
299 path = QPEApplication::documentDir(); 300 path = QPEApplication::documentDir();
300 } /*else if( m_selector == Extended || m_selector == ExtendedAll ){ 301 } /* normal case to do */
301 ;
302 }*/
303 return path; 302 return path;
304} 303}
305QStringList OFileSelector::selectedPaths() const 304QStringList OFileSelector::selectedPaths() const
@@ -372,15 +371,8 @@ void OFileSelector::slotViewCheck(const QString &sel)
372 initializeOldSelector(); 371 initializeOldSelector();
373 m_selector = Normal; 372 m_selector = Normal;
374 373
375 }else if( sel == tr("Files") ){ 374 }else {
376 m_selector = Extended; 375;
377
378 // FIXME call the factory
379 //reparse();
380 }else if( sel == tr("All Files") ){
381 m_selector = ExtendedAll;
382/* see above
383 reparse(); */
384 } 376 }
385} 377}
386 378
@@ -474,6 +466,7 @@ void OFileSelector::locationComboChanged()
474} 466}
475void OFileSelector::init() 467void OFileSelector::init()
476{ 468{
469 initFactory();
477 m_lay = new QVBoxLayout( this ); 470 m_lay = new QVBoxLayout( this );
478 m_lay->setSpacing(0 ); 471 m_lay->setSpacing(0 );
479 472
@@ -653,10 +646,6 @@ void OFileSelector::initializeChooser()
653 m_boxView->setSpacing( 8 ); 646 m_boxView->setSpacing( 8 );
654 m_lay->addWidget(m_boxView, 0 ); 647 m_lay->addWidget(m_boxView, 0 );
655 648
656 m_viewCheck->insertItem( tr("Documents") );
657 m_viewCheck->insertItem( tr("Files") );
658 m_viewCheck->insertItem( tr("All Files") );
659 /* update to custom views */
660 649
661 updateMimeCheck(); 650 updateMimeCheck();
662 651
@@ -951,6 +940,17 @@ void OFileSelector::reparse()
951 // reenable painting and updates 940 // reenable painting and updates
952} 941}
953 942
943/*
944 * the factory
945 */
946void OFileSelector::initFactory() {
947 m_fileFactory = new OFileFactory();
948 m_fileFactory->addLister(tr("Files"), newLocalLister );
949 m_fileFactory->addView(tr("List View"), newFileListView );
950 /* the factory is just a dummy */
951 m_fileFactory->addView(tr("Documents"), newFileListView );
952}
953
954 954
955OFileView* OFileSelector::currentView() { 955OFileView* OFileSelector::currentView() {
956 return m_fileView; 956 return m_fileView;
@@ -1013,7 +1013,7 @@ void OFileSelector::initializeOldSelector() {
1013 m_mainView, "fileselector", 1013 m_mainView, "fileselector",
1014 FALSE, FALSE); 1014 FALSE, FALSE);
1015 m_select->setCategorySelectVisible( FALSE ); 1015 m_select->setCategorySelectVisible( FALSE );
1016 m_select->setTypeComboVisible( FALSE ); 1016 m_select->setTypeComboVisible( FALSE );
1017 1017
1018 connect(m_select, SIGNAL(fileSelected( const DocLnk & ) ), 1018 connect(m_select, SIGNAL(fileSelected( const DocLnk & ) ),
1019 this, SLOT( slotFileBridgeSelected(const DocLnk & ) ) ); 1019 this, SLOT( slotFileBridgeSelected(const DocLnk & ) ) );
diff --git a/libopie/ofileselector/ofileselector.h b/libopie/ofileselector/ofileselector.h
index bf9a26b..3e834fb 100644
--- a/libopie/ofileselector/ofileselector.h
+++ b/libopie/ofileselector/ofileselector.h
@@ -70,6 +70,7 @@ class QHBox;
70class OFileView; 70class OFileView;
71class OLister; 71class OLister;
72class OFileSelectorMain; 72class OFileSelectorMain;
73class OFileFactory;
73// 74//
74 75
75/* the mimetypes one name and a list of mimetypes */ 76/* the mimetypes one name and a list of mimetypes */
@@ -340,6 +341,7 @@ class OFileSelector : public QWidget {
340 OFileView* currentView(); 341 OFileView* currentView();
341 OFileView* currentView()const; 342 OFileView* currentView()const;
342 OLister* currentLister()const; 343 OLister* currentLister()const;
344 OFileFactory* factory();
343 int filter(); 345 int filter();
344 int sorting(); 346 int sorting();
345 QPixmap pixmap( const QString& ); 347 QPixmap pixmap( const QString& );
@@ -372,6 +374,7 @@ class OFileSelector : public QWidget {
372 374
373 private: 375 private:
374 376
377 OFileFactory* m_fileFactory;
375 OFileSelectorMain* m_mainView; 378 OFileSelectorMain* m_mainView;
376 OLister* m_lister; 379 OLister* m_lister;
377 OFileView* m_fileView; 380 OFileView* m_fileView;
@@ -447,6 +450,7 @@ class OFileSelector : public QWidget {
447 void initToolbar(); 450 void initToolbar();
448 void initLocations(); 451 void initLocations();
449 void initializeView() {}; // FIXME 452 void initializeView() {}; // FIXME
453 void initFactory();
450 /** 454 /**
451 * Returns the current mimetype 455 * Returns the current mimetype
452 */ 456 */