summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/graphics/opie-eye/gui/iconview.cpp31
-rw-r--r--noncore/graphics/opie-eye/gui/mainwindow.cpp3
-rw-r--r--noncore/graphics/opie-eye/iface/dirlister.h3
-rw-r--r--noncore/graphics/opie-eye/impl/dir/dir_ifacceinfo.h4
-rw-r--r--noncore/graphics/opie-eye/impl/dir/dir_lister.cpp7
-rw-r--r--noncore/graphics/opie-eye/impl/dir/dir_lister.h3
-rw-r--r--noncore/graphics/opie-eye/impl/doc/doc_dirview.cpp28
-rw-r--r--noncore/graphics/opie-eye/impl/doc/doc_dirview.h24
-rw-r--r--noncore/graphics/opie-eye/impl/doc/doc_ifaceinfo.cpp57
-rw-r--r--noncore/graphics/opie-eye/impl/doc/doc_ifaceinfo.h21
-rw-r--r--noncore/graphics/opie-eye/impl/doc/doc_lister.cpp148
-rw-r--r--noncore/graphics/opie-eye/impl/doc/doc_lister.h42
-rw-r--r--noncore/graphics/opie-eye/phunk_view.pro8
13 files changed, 362 insertions, 17 deletions
diff --git a/noncore/graphics/opie-eye/gui/iconview.cpp b/noncore/graphics/opie-eye/gui/iconview.cpp
index 660c4fa..087db30 100644
--- a/noncore/graphics/opie-eye/gui/iconview.cpp
+++ b/noncore/graphics/opie-eye/gui/iconview.cpp
@@ -346,5 +346,5 @@ void PIconView::loadViews() {
346 ViewMap* map = viewMap(); 346 ViewMap* map = viewMap();
347 for ( it = map->begin(); it != map->end(); ++it ) 347 for ( it = map->begin(); it != map->end(); ++it )
348 m_views->insertItem( QObject::tr(it.key() ) ); 348 m_views->insertItem( it.key() );
349} 349}
350 350
@@ -363,7 +363,13 @@ void PIconView::slotViewChanged( int i) {
363 363
364 PDirView* cur = currentView(); 364 PDirView* cur = currentView();
365 delete cur; 365 if (cur) delete cur;
366 QString str = m_views->text(i); 366 QString str = m_views->text(i);
367 cur = (*(*viewMap())[str])(*m_cfg); 367 ViewMap* map = viewMap();
368 if (!map) {setCurrentView(0l); return;}
369 if (map->find(str) == map->end()) {
370 owarn << "Key not found" << oendl;
371 setCurrentView(0l); return;
372 }
373 cur = (*(*map)[str])(*m_cfg);
368 setCurrentView( cur ); 374 setCurrentView( cur );
369 375
@@ -407,7 +413,11 @@ void PIconView::addFiles( const QStringList& lst) {
407 IconViewItem * _iv; 413 IconViewItem * _iv;
408 QPixmap*m_pix = 0; 414 QPixmap*m_pix = 0;
415 QString pre = "";
416 if (!m_path.isEmpty()) {
417 pre = m_path+"/";
418 }
409 for (it=lst.begin(); it!= lst.end(); ++it ) { 419 for (it=lst.begin(); it!= lst.end(); ++it ) {
410 m_pix = PPixmapCache::self()->cachedImage( m_path+"/"+(*it), 64, 64 ); 420 m_pix = PPixmapCache::self()->cachedImage( pre+(*it), 64, 64 );
411 _iv = new IconViewItem( m_view, m_path+"/"+(*it), (*it) ); 421 _iv = new IconViewItem( m_view, pre+(*it), (*it) );
412 if (m_mode==3) { 422 if (m_mode==3) {
413 _iv->setTextOnly(true); 423 _iv->setTextOnly(true);
@@ -544,9 +554,10 @@ void PIconView::slotShowImage()
544 QString name = currentFileName(isDir); 554 QString name = currentFileName(isDir);
545 if (isDir) return; 555 if (isDir) return;
546
547 slotShowImage( name ); 556 slotShowImage( name );
548} 557}
549void PIconView::slotShowImage( const QString& name) { 558void PIconView::slotShowImage( const QString& name) {
550 emit sig_display( name ); 559 PDirLister *lister = currentView()->dirLister();
560 QString r_name = lister->nameToFname(name);
561 emit sig_display( r_name );
551} 562}
552void PIconView::slotImageInfo() { 563void PIconView::slotImageInfo() {
@@ -559,5 +570,7 @@ void PIconView::slotImageInfo() {
559 570
560void PIconView::slotImageInfo( const QString& name) { 571void PIconView::slotImageInfo( const QString& name) {
561 emit sig_showInfo( name ); 572 PDirLister *lister = currentView()->dirLister();
573 QString r_name = lister->nameToFname(name);
574 emit sig_showInfo(r_name );
562} 575}
563 576
@@ -580,6 +593,4 @@ void PIconView::resizeEvent( QResizeEvent* re ) {
580 593
581void PIconView::calculateGrid() { 594void PIconView::calculateGrid() {
582 odebug << "Calc grid: x=" << m_view->gridX() << " y=" << m_view->gridY() << oendl;
583 odebug << "Size of view: " << m_view->size() << oendl;
584 int dw = QApplication::desktop()->width(); 595 int dw = QApplication::desktop()->width();
585 int viewerWidth = dw-style().scrollBarExtent().width(); 596 int viewerWidth = dw-style().scrollBarExtent().width();
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.cpp b/noncore/graphics/opie-eye/gui/mainwindow.cpp
index 58f02ef..058fca0 100644
--- a/noncore/graphics/opie-eye/gui/mainwindow.cpp
+++ b/noncore/graphics/opie-eye/gui/mainwindow.cpp
@@ -35,5 +35,6 @@
35 35
36 36
37OPIE_EXPORT_APP_V2( Opie::Core::OApplicationFactory<PMainWindow>,"Opie Eye" ) 37//OPIE_EXPORT_APP_V2( Opie::Core::OApplicationFactory<PMainWindow>,"Opie Eye" )
38OPIE_EXPORT_APP( Opie::Core::OApplicationFactory<PMainWindow>)
38 39
39PMainWindow::PMainWindow(QWidget* wid, const char* name, WFlags style) 40PMainWindow::PMainWindow(QWidget* wid, const char* name, WFlags style)
diff --git a/noncore/graphics/opie-eye/iface/dirlister.h b/noncore/graphics/opie-eye/iface/dirlister.h
index fcc55ec..9c7b2a9 100644
--- a/noncore/graphics/opie-eye/iface/dirlister.h
+++ b/noncore/graphics/opie-eye/iface/dirlister.h
@@ -30,4 +30,5 @@ public slots:
30 virtual void thumbNail( const QString&, int max_wid, int max_h ) = 0; 30 virtual void thumbNail( const QString&, int max_wid, int max_h ) = 0;
31 virtual QImage image( const QString&, Factor, int max = 0) = 0; 31 virtual QImage image( const QString&, Factor, int max = 0) = 0;
32 virtual QString nameToFname(const QString&name)const = 0;
32 33
33signals: 34signals:
@@ -42,5 +43,5 @@ signals:
42 43
43protected: 44protected:
44 ~PDirLister(); 45 virtual ~PDirLister();
45}; 46};
46 47
diff --git a/noncore/graphics/opie-eye/impl/dir/dir_ifacceinfo.h b/noncore/graphics/opie-eye/impl/dir/dir_ifacceinfo.h
index 8c6262f..c919dde 100644
--- a/noncore/graphics/opie-eye/impl/dir/dir_ifacceinfo.h
+++ b/noncore/graphics/opie-eye/impl/dir/dir_ifacceinfo.h
@@ -7,10 +7,10 @@
7#define DIR_IFACE_INFO_H 7#define DIR_IFACE_INFO_H
8 8
9#include <iface/ifaceinfo.h>s 9#include <iface/ifaceinfo.h>
10 10
11class DirInterfaceInfo : public PInterfaceInfo { 11class DirInterfaceInfo : public PInterfaceInfo {
12public: 12public:
13 DirInterfaceInfo(); 13 DirInterfaceInfo();
14 ~DirInterfaceInfo(); 14 virtual ~DirInterfaceInfo();
15 15
16 QString name()const; 16 QString name()const;
diff --git a/noncore/graphics/opie-eye/impl/dir/dir_lister.cpp b/noncore/graphics/opie-eye/impl/dir/dir_lister.cpp
index 16758d7..3717297 100644
--- a/noncore/graphics/opie-eye/impl/dir/dir_lister.cpp
+++ b/noncore/graphics/opie-eye/impl/dir/dir_lister.cpp
@@ -21,5 +21,5 @@ Dir_DirLister::Dir_DirLister( bool list )
21{ 21{
22 m_allFiles = list; 22 m_allFiles = list;
23 owarn << "All Files " << m_allFiles << "" << oendl; 23 owarn << "All Files " << m_allFiles << "" << oendl;
24 24
25 SlaveMaster* master = SlaveMaster::self(); 25 SlaveMaster* master = SlaveMaster::self();
@@ -96,2 +96,7 @@ void Dir_DirLister::fullImageInfo( const QString& str) {
96 SlaveMaster::self()->imageInfo( str ); 96 SlaveMaster::self()->imageInfo( str );
97} 97}
98
99QString Dir_DirLister::nameToFname(const QString&name)const
100{
101 return name;
102}
diff --git a/noncore/graphics/opie-eye/impl/dir/dir_lister.h b/noncore/graphics/opie-eye/impl/dir/dir_lister.h
index fc63bb0..d6ca6c0 100644
--- a/noncore/graphics/opie-eye/impl/dir/dir_lister.h
+++ b/noncore/graphics/opie-eye/impl/dir/dir_lister.h
@@ -12,6 +12,8 @@
12class Config; 12class Config;
13class Dir_DirLister : public PDirLister { 13class Dir_DirLister : public PDirLister {
14 Q_OBJECT
14public: 15public:
15 Dir_DirLister( bool ); 16 Dir_DirLister( bool );
17 virtual ~Dir_DirLister(){}
16 18
17 QString defaultPath()const; 19 QString defaultPath()const;
@@ -26,4 +28,5 @@ public:
26 void imageInfo( const QString& ); 28 void imageInfo( const QString& );
27 void fullImageInfo( const QString& ); 29 void fullImageInfo( const QString& );
30 virtual QString nameToFname(const QString&name)const;
28 31
29private: 32private:
diff --git a/noncore/graphics/opie-eye/impl/doc/doc_dirview.cpp b/noncore/graphics/opie-eye/impl/doc/doc_dirview.cpp
new file mode 100644
index 0000000..0d6e25f
--- a/dev/null
+++ b/noncore/graphics/opie-eye/impl/doc/doc_dirview.cpp
@@ -0,0 +1,28 @@
1#include "doc_lister.h"
2#include "doc_ifaceinfo.h"
3#include "doc_dirview.h"
4
5PHUNK_VIEW_INTERFACE("Document View", Doc_DirView );
6
7
8Doc_DirView::Doc_DirView( const Config& cfg)
9 : PDirView(cfg)
10{
11 m_lister = 0;
12 m_info = 0;
13}
14
15Doc_DirView::~Doc_DirView() {
16}
17
18PInterfaceInfo* Doc_DirView::interfaceInfo()const{
19 if (!m_info )
20 m_info =new DocInterfaceInfo;
21 return m_info;
22}
23
24PDirLister* Doc_DirView::dirLister()const{
25 if (!m_lister )
26 m_lister = new Doc_DirLister();
27 return m_lister;
28}
diff --git a/noncore/graphics/opie-eye/impl/doc/doc_dirview.h b/noncore/graphics/opie-eye/impl/doc/doc_dirview.h
new file mode 100644
index 0000000..3a2fd71
--- a/dev/null
+++ b/noncore/graphics/opie-eye/impl/doc/doc_dirview.h
@@ -0,0 +1,24 @@
1/*
2 * GPLv2 only zecke@handhelds.org
3 */
4
5#ifndef DOC_DIR_VIEW_H
6#define DOC_DIR_VIEW_H
7
8#include <iface/dirview.h>
9
10
11struct Doc_DirView : public PDirView {
12 Doc_DirView( const Config& );
13 ~Doc_DirView();
14
15 PInterfaceInfo* interfaceInfo()const;
16 PDirLister* dirLister()const;
17private:
18 bool m_cfg : 1;
19 mutable PDirLister* m_lister;
20 mutable PInterfaceInfo *m_info;
21};
22
23
24#endif
diff --git a/noncore/graphics/opie-eye/impl/doc/doc_ifaceinfo.cpp b/noncore/graphics/opie-eye/impl/doc/doc_ifaceinfo.cpp
new file mode 100644
index 0000000..a6d6f3c
--- a/dev/null
+++ b/noncore/graphics/opie-eye/impl/doc/doc_ifaceinfo.cpp
@@ -0,0 +1,57 @@
1/*
2 * GPLv2
3 * zecke@handhelds.org
4 */
5
6#include "doc_ifaceinfo.h"
7
8/* OPIE */
9#include <opie2/odebug.h>
10#include <qpe/config.h>
11using namespace Opie::Core;
12
13/* QT */
14#include <qwidget.h>
15#include <qcheckbox.h>
16#include <qhbox.h>
17#include <qlabel.h>
18
19#if 0
20namespace {
21 class DirImageWidget : public QHBox {
22 public:
23 DirImageWidget() {
24 chkbox = new QCheckBox( QObject::tr("Show all files"), this );
25 }
26 ~DirImageWidget() {}
27 QCheckBox* chkbox;
28 };
29}
30#endif
31
32DocInterfaceInfo::DocInterfaceInfo() {
33}
34DocInterfaceInfo::~DocInterfaceInfo() {
35}
36
37QString DocInterfaceInfo::name()const {
38 return QString::fromLatin1(QObject::tr("DocView" ));
39}
40
41QWidget* DocInterfaceInfo::configWidget(const Config& cfg) {
42#if 0
43 DirImageWidget* wid = new DirImageWidget();
44 wid->chkbox->setChecked( cfg.readBoolEntry("Dir_Check_All_Files", true) );
45
46 return wid;
47#endif
48 return 0L;
49}
50
51void DocInterfaceInfo::writeConfig( QWidget* , Config& ) {
52#if 0
53 owarn << "Write Config" << oendl;
54 DirImageWidget* wid = static_cast<DirImageWidget*>(_wid);
55 cfg.writeEntry("Dir_Check_All_Files", wid->chkbox->isChecked() );
56#endif
57}
diff --git a/noncore/graphics/opie-eye/impl/doc/doc_ifaceinfo.h b/noncore/graphics/opie-eye/impl/doc/doc_ifaceinfo.h
new file mode 100644
index 0000000..73986c9
--- a/dev/null
+++ b/noncore/graphics/opie-eye/impl/doc/doc_ifaceinfo.h
@@ -0,0 +1,21 @@
1/*
2 * GPLv2
3 * zecke@handhelds.org
4 */
5
6#ifndef DOC_IFACE_INFO_H
7#define DOC_IFACE_INFO_H
8
9#include <iface/ifaceinfo.h>
10
11class DocInterfaceInfo : public PInterfaceInfo {
12public:
13 DocInterfaceInfo();
14 virtual ~DocInterfaceInfo();
15
16 QString name()const;
17 QWidget* configWidget(const Config&);
18 void writeConfig( QWidget* wid, Config& );
19};
20
21#endif
diff --git a/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp b/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp
new file mode 100644
index 0000000..f695a76
--- a/dev/null
+++ b/noncore/graphics/opie-eye/impl/doc/doc_lister.cpp
@@ -0,0 +1,148 @@
1/*
2 * GPLv2 zecke@handhelds.org
3 */
4
5#include "doc_lister.h"
6
7#include <lib/slavemaster.h>
8
9/* OPIE */
10#include <opie2/odebug.h>
11#include <qpe/config.h>
12#include <qpe/qpeapplication.h>
13#include <qpe/applnk.h>
14
15using namespace Opie::Core;
16
17/* QT */
18#include <qdir.h>
19#include <qfileinfo.h>
20
21Doc_DirLister::Doc_DirLister()
22 : PDirLister( "doc_dir_lister" )
23{
24 SlaveMaster* master = SlaveMaster::self();
25 connect( master, SIGNAL(sig_start()), this, SIGNAL(sig_start()) );
26 connect( master, SIGNAL(sig_end()), this, SIGNAL(sig_end()) );
27 connect( master, SIGNAL(sig_thumbInfo(const QString&, const QString&)),
28 this, SLOT(slotThumbInfo(const QString&, const QString&)) );
29 connect( master, SIGNAL(sig_fullInfo(const QString&, const QString&)),
30 this, SLOT(slotFullInfo(const QString&, const QString&)) );
31 connect( master, SIGNAL(sig_thumbNail(const QString&, const QPixmap&)),
32 this, SLOT(slotThumbNail(const QString&, const QPixmap&)) );
33
34}
35
36QString Doc_DirLister::defaultPath()const {
37 return ""; QPEApplication::documentDir();
38}
39
40QString Doc_DirLister::setStartPath( const QString& path ) {
41 m_namemap.clear();
42 m_out.clear();
43 static const QString Mtype_str("image/jpeg;image/gif;image/bmp;image/png");
44 owarn << "Set start path" << oendl;
45 DocLnkSet ds;
46 Global::findDocuments(&ds,Mtype_str);
47 QListIterator<DocLnk> dit(ds.children());
48 for( ; dit.current(); ++dit) {
49 owarn << (*dit)->file() << oendl;
50 m_namemap[(*dit)->name()]=(*dit)->file();
51 m_filemap[(*dit)->file()]=(*dit)->name();
52 m_out.append((*dit)->name());
53 }
54 owarn << "Set start path end" << oendl;
55 return "";
56}
57
58QString Doc_DirLister::currentPath()const {
59 return "";
60}
61
62
63QStringList Doc_DirLister::folders()const {
64 return QStringList();
65}
66
67QStringList Doc_DirLister::files()const {
68 return m_out;
69}
70
71void Doc_DirLister::deleteImage( const QString& ) {
72}
73
74void Doc_DirLister::thumbNail( const QString& str, int w, int h) {
75 if (m_namemap.find(str)==m_namemap.end()) {
76 owarn << "Item " << str << " not found" << oendl;
77 return;
78 }
79 QString fname = m_namemap[str];
80 SlaveMaster::self()->thumbNail( fname, w, h );
81}
82
83QImage Doc_DirLister::image( const QString& str, Factor f, int m) {
84 if (m_namemap.find(str)==m_namemap.end()) {
85 owarn << "Item " << str << " not found" << oendl;
86 return QImage();
87 }
88 QString fname = m_namemap[str];
89 return SlaveMaster::self()->image( fname, f, m );
90}
91
92void Doc_DirLister::imageInfo( const QString& str) {
93 if (m_namemap.find(str)==m_namemap.end()) {
94 owarn << "Item " << str << " not found" << oendl;
95 return;
96 }
97 QString fname = m_namemap[str];
98 owarn << "Image info: " << fname << oendl;
99 SlaveMaster::self()->thumbInfo( fname );
100}
101
102void Doc_DirLister::fullImageInfo( const QString& str) {
103 if (m_namemap.find(str)==m_namemap.end()) {
104 owarn << "Item " << str << " not found" << oendl;
105 return;
106 }
107 QString fname = m_namemap[str];
108 SlaveMaster::self()->imageInfo( fname );
109}
110
111void Doc_DirLister::slotFullInfo(const QString&f, const QString&t)
112{
113 if (m_filemap.find(f)==m_filemap.end()) {
114 owarn << "Item " << f << " not found" << oendl;
115 return;
116 }
117 QString name = m_filemap[f];
118 emit sig_fullInfo(name, t);
119}
120
121void Doc_DirLister::slotThumbInfo(const QString&f, const QString&t)
122{
123 if (m_filemap.find(f)==m_filemap.end()) {
124 owarn << "Item " << f << " not found" << oendl;
125 return;
126 }
127 QString name = m_filemap[f];
128 emit sig_thumbInfo(name, t);
129}
130
131void Doc_DirLister::slotThumbNail(const QString&f, const QPixmap&p)
132{
133 if (m_filemap.find(f)==m_filemap.end()) {
134 owarn << "Item " << f << " not found" << oendl;
135 return;
136 }
137 QString name = m_filemap[f];
138 emit sig_thumbNail(name, p);
139}
140
141QString Doc_DirLister::nameToFname(const QString&name)const
142{
143 if (m_namemap.find(name)==m_namemap.end()) {
144 owarn << "Item " << name << " not found" << oendl;
145 return QString::null;
146 }
147 return m_namemap[name];
148}
diff --git a/noncore/graphics/opie-eye/impl/doc/doc_lister.h b/noncore/graphics/opie-eye/impl/doc/doc_lister.h
new file mode 100644
index 0000000..d89b579
--- a/dev/null
+++ b/noncore/graphics/opie-eye/impl/doc/doc_lister.h
@@ -0,0 +1,42 @@
1/*
2 * GPLv2 zecke@handhelds.org
3 */
4
5#ifndef DOC_LISTER_INTERFACE_LISTER_H
6#define DOC_LISTER_INTERFACE_LISTER_H
7
8#include <iface/dirlister.h>
9
10#include <qstring.h>
11#include <qmap.h>
12
13class Config;
14class Doc_DirLister : public PDirLister {
15 Q_OBJECT
16public:
17 Doc_DirLister();
18 virtual ~Doc_DirLister(){}
19
20 QString defaultPath()const;
21 QString setStartPath( const QString& );
22 QString currentPath()const;
23 QStringList folders()const;
24 QStringList files()const;
25
26 void deleteImage( const QString& );
27 void thumbNail( const QString&, int, int );
28 QImage image( const QString&, Factor, int );
29 void imageInfo( const QString& );
30 void fullImageInfo( const QString& );
31 virtual QString nameToFname(const QString&name)const;
32
33private:
34 QMap<QString,QString> m_namemap,m_filemap;
35 QStringList m_out;
36protected slots:
37 virtual void slotFullInfo(const QString&, const QString&);
38 virtual void slotThumbInfo(const QString&, const QString&);
39 virtual void slotThumbNail(const QString&, const QPixmap&);
40};
41
42#endif
diff --git a/noncore/graphics/opie-eye/phunk_view.pro b/noncore/graphics/opie-eye/phunk_view.pro
index 57e69b6..0a57a0f 100644
--- a/noncore/graphics/opie-eye/phunk_view.pro
+++ b/noncore/graphics/opie-eye/phunk_view.pro
@@ -13,5 +13,7 @@ HEADERS = gui/iconview.h gui/filesystem.h gui/mainwindow.h \
13 gui/imageinfoui.h \ 13 gui/imageinfoui.h \
14 gui/imageview.h \ 14 gui/imageview.h \
15 gui/viewmodebutton.h 15 gui/viewmodebutton.h \
16 impl/doc/doc_lister.h impl/doc/doc_dirview.h \
17 impl/doc/doc_ifaceinfo.h
16 18
17# A list header files 19# A list header files
@@ -25,5 +27,7 @@ SOURCES = gui/iconview.cpp gui/filesystem.cpp gui/mainwindow.cpp \
25 gui/imageinfoui.cpp \ 27 gui/imageinfoui.cpp \
26 gui/imageview.cpp \ 28 gui/imageview.cpp \
27 gui/viewmodebutton.cpp 29 gui/viewmodebutton.cpp \
30 impl/doc/doc_lister.cpp impl/doc/doc_dirview.cpp \
31 impl/doc/doc_ifaceinfo.cpp
28# A list of source files 32# A list of source files
29 33