summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2003-05-12 14:52:31 (UTC)
committer llornkcor <llornkcor>2003-05-12 14:52:31 (UTC)
commit8a87ca1f7de6a205b47986db8ad4a082f39b9c34 (patch) (unidiff)
treec7f80978a8f53c3faefa6bfc1a626bafcf8837a4
parentca02db5ebfc5e44c3b216c12757683bac246ba23 (diff)
downloadopie-8a87ca1f7de6a205b47986db8ad4a082f39b9c34.zip
opie-8a87ca1f7de6a205b47986db8ad4a082f39b9c34.tar.gz
opie-8a87ca1f7de6a205b47986db8ad4a082f39b9c34.tar.bz2
show file selected if setDoc/openDir qcop is file
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/advancedfm/advancedfm.cpp27
-rw-r--r--noncore/apps/advancedfm/advancedfm.h2
-rw-r--r--noncore/apps/advancedfm/advancedfmData.cpp15
-rw-r--r--noncore/apps/advancedfm/advancedfmMenu.cpp17
4 files changed, 54 insertions, 7 deletions
diff --git a/noncore/apps/advancedfm/advancedfm.cpp b/noncore/apps/advancedfm/advancedfm.cpp
index 6b7fa1f..60558e7 100644
--- a/noncore/apps/advancedfm/advancedfm.cpp
+++ b/noncore/apps/advancedfm/advancedfm.cpp
@@ -809,104 +809,127 @@ void AdvancedFm::removeCustomDir()
809void AdvancedFm::gotoCustomDir(const QString &dir) 809void AdvancedFm::gotoCustomDir(const QString &dir)
810{ 810{
811// qDebug("gotoCustomDir(const QString &dir) " +dir ); 811// qDebug("gotoCustomDir(const QString &dir) " +dir );
812// QString curDir = dir; 812// QString curDir = dir;
813// QDir *thisDir = CurrentDir(); 813// QDir *thisDir = CurrentDir();
814// if( curDir.isEmpty()) { 814// if( curDir.isEmpty()) {
815// } 815// }
816 if( dir == s_addBookmark) 816 if( dir == s_addBookmark)
817 { 817 {
818 addCustomDir(); 818 addCustomDir();
819 } 819 }
820 if( dir == s_removeBookmark) 820 if( dir == s_removeBookmark)
821 { 821 {
822 removeCustomDir( ); 822 removeCustomDir( );
823 } 823 }
824 else 824 else
825 { 825 {
826 gotoDirectory( dir); 826 gotoDirectory( dir);
827// if(QDir( curDir).exists() ) 827// if(QDir( curDir).exists() )
828// { 828// {
829// thisDir->setPath( curDir ); 829// thisDir->setPath( curDir );
830// chdir( curDir.latin1() ); 830// chdir( curDir.latin1() );
831// thisDir->cd( curDir, TRUE); 831// thisDir->cd( curDir, TRUE);
832// populateView(); 832// populateView();
833// } 833// }
834 } 834 }
835} 835}
836 836
837QDir *AdvancedFm::CurrentDir() 837QDir *AdvancedFm::CurrentDir()
838{ 838{
839 if ( whichTab == 1) 839 if ( whichTab == 1)
840 { 840 {
841 return &currentDir; 841 return &currentDir;
842 } 842 }
843 else 843 else
844 { 844 {
845 return &currentRemoteDir; 845 return &currentRemoteDir;
846 } 846 }
847} 847}
848 848
849QDir *AdvancedFm::OtherDir() 849QDir *AdvancedFm::OtherDir()
850{ 850{
851 if ( whichTab == 1) 851 if ( whichTab == 1)
852 { 852 {
853 return &currentRemoteDir; 853 return &currentRemoteDir;
854 } 854 }
855 else 855 else
856 { 856 {
857 return &currentDir; 857 return &currentDir;
858 } 858 }
859} 859}
860 860
861QListView * AdvancedFm::CurrentView() 861QListView * AdvancedFm::CurrentView()
862{ 862{
863 if ( whichTab == 1) 863 if ( whichTab == 1)
864 return Local_View; 864 return Local_View;
865 else 865 else
866 return Remote_View; 866 return Remote_View;
867} 867}
868 868
869QListView * AdvancedFm::OtherView() 869QListView * AdvancedFm::OtherView()
870{ 870{
871 if ( whichTab == 1) 871 if ( whichTab == 1)
872 return Remote_View; 872 return Remote_View;
873 else 873 else
874 return Local_View; 874 return Local_View;
875} 875}
876 876
877void AdvancedFm::setOtherTabCurrent() 877void AdvancedFm::setOtherTabCurrent()
878{ 878{
879 if ( whichTab == 1) 879 if ( whichTab == 1)
880 TabWidget->setCurrentTab(1); 880 TabWidget->setCurrentTab(1);
881 else 881 else
882 TabWidget->setCurrentTab(0); 882 TabWidget->setCurrentTab(0);
883} 883}
884 884
885void AdvancedFm::qcopReceive(const QCString &msg, const QByteArray &data) { 885void AdvancedFm::qcopReceive(const QCString &msg, const QByteArray &data) {
886 qDebug("qcop message "+msg ); 886 qDebug("qcop message "+msg );
887 QDataStream stream ( data, IO_ReadOnly ); 887 QDataStream stream ( data, IO_ReadOnly );
888 if ( msg == "openDirectory(QString)" ) { 888 if ( msg == "openDirectory(QString)" ) {
889 qDebug("received"); 889 qDebug("received");
890 QString file; 890 QString file;
891 stream >> file; 891 stream >> file;
892 gotoDirectory( (const QString &) file); 892 gotoDirectory( (const QString &) file);
893 } 893 }
894} 894}
895 895
896 void AdvancedFm::setDocument(const QString &file) { 896 void AdvancedFm::setDocument(const QString &file) {
897 gotoDirectory( file); 897 gotoDirectory( file);
898 898
899 } 899 }
900 900
901void AdvancedFm::gotoDirectory(const QString &file) { 901void AdvancedFm::gotoDirectory(const QString &file) {
902 902
903 QString curDir = file; 903 QString curDir = file;
904 QDir *thisDir = CurrentDir(); 904 QDir *thisDir = CurrentDir();
905 905 if(QDir( curDir).exists() ) {
906 if(QDir( curDir).exists() ) {
907 thisDir->setPath( curDir ); 906 thisDir->setPath( curDir );
908 chdir( curDir.latin1() ); 907 chdir( curDir.latin1() );
909 thisDir->cd( curDir, TRUE); 908 thisDir->cd( curDir, TRUE);
910 populateView(); 909 populateView();
911 } 910 }
911 else if(QFileInfo(curDir).exists()) {
912 QFileInfo fileInfo(curDir);
913 curDir=fileInfo.dirPath();
914 if(QDir( curDir).exists() ) {
915 thisDir->setPath( curDir );
916 chdir( curDir.latin1() );
917 thisDir->cd( curDir, TRUE);
918 populateView();
919 }
920 findFile(file);
921 }
922
923}
924
925void AdvancedFm::findFile(const QString &fileName) {
926 QFileInfo fi(fileName);
927 QListView *thisView = CurrentView();
928 QListViewItemIterator it( thisView );
929 for ( ; it.current(); ++it ) {
930 if(it.current()->text(0) == fi.fileName()) {
931 it.current()->setSelected(true);
932 thisView->ensureItemVisible(it.current());
933 }
934 }
912} 935}
diff --git a/noncore/apps/advancedfm/advancedfm.h b/noncore/apps/advancedfm/advancedfm.h
index c9a5525..94d7bd7 100644
--- a/noncore/apps/advancedfm/advancedfm.h
+++ b/noncore/apps/advancedfm/advancedfm.h
@@ -72,107 +72,109 @@ protected slots:
72 void readConfig(); 72 void readConfig();
73 void ListClicked(QListViewItem *); 73 void ListClicked(QListViewItem *);
74 void ListPressed( int, QListViewItem *, const QPoint&, int); 74 void ListPressed( int, QListViewItem *, const QPoint&, int);
75 void makeDir(); 75 void makeDir();
76 void doDelete(); 76 void doDelete();
77 void tabChanged(QWidget*); 77 void tabChanged(QWidget*);
78 void cleanUp(); 78 void cleanUp();
79 void renameIt(); 79 void renameIt();
80 void runThis(); 80 void runThis();
81 void runText(); 81 void runText();
82 void filePerms(); 82 void filePerms();
83 void doProperties(); 83 void doProperties();
84 void runCommand(); 84 void runCommand();
85 void runCommandStd(); 85 void runCommandStd();
86 QStringList getPath(); 86 QStringList getPath();
87 void mkSym(); 87 void mkSym();
88 void switchToLocalTab(); 88 void switchToLocalTab();
89 void switchToRemoteTab(); 89 void switchToRemoteTab();
90 90
91protected: 91protected:
92 92
93 OTabWidget *TabWidget; 93 OTabWidget *TabWidget;
94 QCopChannel * channel; 94 QCopChannel * channel;
95 QPixmap unknownXpm; 95 QPixmap unknownXpm;
96 int whichTab; 96 int whichTab;
97// QTabWidget *TabWidget; 97// QTabWidget *TabWidget;
98 QWidget *tab, *tab_2, *tab_3; 98 QWidget *tab, *tab_2, *tab_3;
99 QListView *Local_View, *Remote_View; 99 QListView *Local_View, *Remote_View;
100 100
101 QLineEdit *currentPathEdit; 101 QLineEdit *currentPathEdit;
102 QPopupMenu *fileMenu, *localMenu, *remoteMenu, *viewMenu /*, *customDirMenu*/; 102 QPopupMenu *fileMenu, *localMenu, *remoteMenu, *viewMenu /*, *customDirMenu*/;
103 QToolButton *homeButton, *docButton, *cdUpButton, *sdButton, *cfButton, *qpeDirButton; 103 QToolButton *homeButton, *docButton, *cdUpButton, *sdButton, *cfButton, *qpeDirButton;
104// QPushButton *homeButton, *docButton, *cdUpButton, *sdButton, *cfButton, *qpeDirButton; 104// QPushButton *homeButton, *docButton, *cdUpButton, *sdButton, *cfButton, *qpeDirButton;
105 QDir currentDir, currentRemoteDir; 105 QDir currentDir, currentRemoteDir;
106 QComboBox *currentPathCombo; 106 QComboBox *currentPathCombo;
107 QString filterStr, s_addBookmark, s_removeBookmark; 107 QString filterStr, s_addBookmark, s_removeBookmark;
108 QListViewItem * item; 108 QListViewItem * item;
109 bool b; 109 bool b;
110 QStringList fileSystemTypeList, fsList; 110 QStringList fileSystemTypeList, fsList;
111 int currentServerConfig; 111 int currentServerConfig;
112 bool zaurusDevice; 112 bool zaurusDevice;
113 QGridLayout *tabLayout, *tabLayout_2, *tabLayout_3; 113 QGridLayout *tabLayout, *tabLayout_2, *tabLayout_3;
114 QStringList remoteDirPathStringList, localDirPathStringList; 114 QStringList remoteDirPathStringList, localDirPathStringList;
115 QLineEdit *renameBox; 115 QLineEdit *renameBox;
116 116
117 void init(); 117 void init();
118 void initConnections(); 118 void initConnections();
119 void keyReleaseEvent( QKeyEvent *); 119 void keyReleaseEvent( QKeyEvent *);
120 void keyPressEvent( QKeyEvent *); 120 void keyPressEvent( QKeyEvent *);
121 QString getFileSystemType(const QString &); 121 QString getFileSystemType(const QString &);
122 QString getDiskSpace(const QString &); 122 QString getDiskSpace(const QString &);
123 void parsetab(const QString &fileName); 123 void parsetab(const QString &fileName);
124 QString checkDiskSpace(const QString &); 124 QString checkDiskSpace(const QString &);
125 QString dealWithSymName(const QString &); 125 QString dealWithSymName(const QString &);
126 QDir *CurrentDir(); 126 QDir *CurrentDir();
127 QDir *OtherDir(); 127 QDir *OtherDir();
128 QListView *CurrentView(); 128 QListView *CurrentView();
129 QListView *OtherView(); 129 QListView *OtherView();
130 void setOtherTabCurrent(); 130 void setOtherTabCurrent();
131 131
132protected slots: 132protected slots:
133 void dirMenuSelected(int); 133 void dirMenuSelected(int);
134 void showFileMenu(); 134 void showFileMenu();
135 void cancelMenuTimer(); 135 void cancelMenuTimer();
136 void homeButtonPushed(); 136 void homeButtonPushed();
137 void docButtonPushed(); 137 void docButtonPushed();
138 void SDButtonPushed(); 138 void SDButtonPushed();
139 void CFButtonPushed(); 139 void CFButtonPushed();
140 void QPEButtonPushed(); 140 void QPEButtonPushed();
141 void upDir(); 141 void upDir();
142 void currentPathComboChanged(); 142 void currentPathComboChanged();
143 void copy(); 143 void copy();
144 void copyAs(); 144 void copyAs();
145 void copySameDir(); 145 void copySameDir();
146 void currentPathComboActivated(const QString &); 146 void currentPathComboActivated(const QString &);
147 void fillCombo(const QString &); 147 void fillCombo(const QString &);
148 bool copyFile( const QString & , const QString & ); 148 bool copyFile( const QString & , const QString & );
149 void move(); 149 void move();
150 void fileStatus(); 150 void fileStatus();
151 void doAbout(); 151 void doAbout();
152 void doBeam(); 152 void doBeam();
153 void fileBeamFinished( Ir *); 153 void fileBeamFinished( Ir *);
154 154
155private: 155private:
156 MenuButton *menuButton; 156 MenuButton *menuButton;
157 QString oldName; 157 QString oldName;
158 QTimer menuTimer; 158 QTimer menuTimer;
159 void startProcess(const QString &); 159 void startProcess(const QString &);
160 bool eventFilter( QObject * , QEvent * ); 160 bool eventFilter( QObject * , QEvent * );
161 void cancelRename(); 161 void cancelRename();
162 void doRename(QListView *); 162 void doRename(QListView *);
163 void okRename(); 163 void okRename();
164 void customDirsToMenu(); 164 void customDirsToMenu();
165 void addCustomDir(); 165 void addCustomDir();
166 void removeCustomDir(); 166 void removeCustomDir();
167 void gotoDirectory(const QString &); 167 void gotoDirectory(const QString &);
168 void openSearch();
169 void findFile(const QString &);
168 170
169private slots: 171private slots:
170 void processEnded(OProcess *); 172 void processEnded(OProcess *);
171 void oprocessStderr(OProcess *, char *, int); 173 void oprocessStderr(OProcess *, char *, int);
172 void gotoCustomDir(const QString &); 174 void gotoCustomDir(const QString &);
173 void qcopReceive(const QCString&, const QByteArray&); 175 void qcopReceive(const QCString&, const QByteArray&);
174 void setDocument(const QString &); 176 void setDocument(const QString &);
175 177
176}; 178};
177 179
178#endif // ADVANCEDFM_H 180#endif // ADVANCEDFM_H
diff --git a/noncore/apps/advancedfm/advancedfmData.cpp b/noncore/apps/advancedfm/advancedfmData.cpp
index d0de442..a120f35 100644
--- a/noncore/apps/advancedfm/advancedfmData.cpp
+++ b/noncore/apps/advancedfm/advancedfmData.cpp
@@ -1,271 +1,284 @@
1/*************************************************************************** 1/***************************************************************************
2 advancedfmData.cpp 2 advancedfmData.cpp
3 ------------------- 3 -------------------
4** Created: Mon 09-23-2002 13:24:11 4** Created: Mon 09-23-2002 13:24:11
5 copyright : (C) 2002 by ljp 5 copyright : (C) 2002 by ljp
6 email : ljp@llornkcor.com 6 email : ljp@llornkcor.com
7 * This program is free software; you can redistribute it and/or modify * 7 * This program is free software; you can redistribute it and/or modify *
8 * it under the terms of the GNU General Public License as published by * 8 * it under the terms of the GNU General Public License as published by *
9 * the Free Software Foundation; either version 2 of the License, or * 9 * the Free Software Foundation; either version 2 of the License, or *
10 * (at your option) any later version. * 10 * (at your option) any later version. *
11 ***************************************************************************/ 11 ***************************************************************************/
12#include "advancedfm.h" 12#include "advancedfm.h"
13 13
14#include <opie/otabwidget.h> 14#include <opie/otabwidget.h>
15#include <qpe/storage.h>
16
15#include <qpe/qpeapplication.h> 17#include <qpe/qpeapplication.h>
16#include <qpe/resource.h> 18#include <qpe/resource.h>
17#include <qpe/menubutton.h> 19#include <qpe/menubutton.h>
18 20
19#include <qlayout.h> 21#include <qlayout.h>
20#include <qhbox.h> 22#include <qhbox.h>
21#include <qmenubar.h> 23#include <qmenubar.h>
22#include <qcombobox.h> 24#include <qcombobox.h>
23#include <qtoolbutton.h> 25#include <qtoolbutton.h>
24#include <qlineedit.h> 26#include <qlineedit.h>
25#include <qlistview.h> 27#include <qlistview.h>
26 28
27#include <sys/utsname.h> 29#include <sys/utsname.h>
28 30
29 31
30void AdvancedFm::init() { 32void AdvancedFm::init() {
31#if defined(QT_QWS_OPIE) 33#if defined(QT_QWS_OPIE)
32 qDebug("<<<<<<<<<<<<<<<<<<<<<<<< OPIE!!!"); 34 qDebug("<<<<<<<<<<<<<<<<<<<<<<<< OPIE!!!");
33#endif 35#endif
34 setCaption( tr( "AdvancedFm" ) ); 36 setCaption( tr( "AdvancedFm" ) );
35 37
36 QVBoxLayout *layout = new QVBoxLayout( this ); 38 QVBoxLayout *layout = new QVBoxLayout( this );
37 layout->setSpacing( 2); 39 layout->setSpacing( 2);
38 layout->setMargin( 2); 40 layout->setMargin( 2);
39 41
40 QMenuBar *menuBar = new QMenuBar(this); 42 QMenuBar *menuBar = new QMenuBar(this);
41 fileMenu = new QPopupMenu( this ); 43 fileMenu = new QPopupMenu( this );
42 viewMenu = new QPopupMenu( this ); 44 viewMenu = new QPopupMenu( this );
43// customDirMenu = new QPopupMenu( this ); 45// customDirMenu = new QPopupMenu( this );
44 46
45 layout->addWidget( menuBar ); 47 layout->addWidget( menuBar );
46 48
47 menuBar->insertItem( tr( "File" ), fileMenu); 49 menuBar->insertItem( tr( "File" ), fileMenu);
48 menuBar->insertItem( tr( "View" ), viewMenu); 50 menuBar->insertItem( tr( "View" ), viewMenu);
49 51
50 cdUpButton = new QToolButton( 0,"cdUpButton"); 52 cdUpButton = new QToolButton( 0,"cdUpButton");
51 cdUpButton->setPixmap(Resource::loadPixmap("up")); 53 cdUpButton->setPixmap(Resource::loadPixmap("up"));
52 cdUpButton->setAutoRaise( true ); 54 cdUpButton->setAutoRaise( true );
53 menuBar->insertItem( cdUpButton ); 55 menuBar->insertItem( cdUpButton );
54 56
55 57
56 QHBox *lineBox = new QHBox( this ); 58 QHBox *lineBox = new QHBox( this );
57 59
58 qpeDirButton= new QToolButton( 0,"QPEButton"); 60 qpeDirButton= new QToolButton( 0,"QPEButton");
59 qpeDirButton->setPixmap( Resource::loadPixmap("launcher/opielogo16x16"));//,"",this,"QPEButton"); 61 qpeDirButton->setPixmap( Resource::loadPixmap("launcher/opielogo16x16"));//,"",this,"QPEButton");
60 qpeDirButton->setAutoRaise( true ); 62 qpeDirButton->setAutoRaise( true );
61 menuBar->insertItem( qpeDirButton ); 63 menuBar->insertItem( qpeDirButton );
62 64
63 cfButton = new QToolButton( 0, "CFButton"); 65 cfButton = new QToolButton( 0, "CFButton");
64 cfButton->setPixmap(Resource::loadPixmap("cardmon/pcmcia")); 66 cfButton->setPixmap(Resource::loadPixmap("cardmon/pcmcia"));
65 cfButton->setAutoRaise( true ); 67 cfButton->setAutoRaise( true );
66 menuBar->insertItem( cfButton ); 68 menuBar->insertItem( cfButton );
67 69
68 sdButton = new QToolButton( 0, "SDButton"); 70 sdButton = new QToolButton( 0, "SDButton");
69 sdButton->setPixmap(Resource::loadPixmap("advancedfm/sdcard")); 71 sdButton->setPixmap(Resource::loadPixmap("advancedfm/sdcard"));
70 sdButton->setAutoRaise( true ); 72 sdButton->setAutoRaise( true );
71 menuBar->insertItem( sdButton ); 73 menuBar->insertItem( sdButton );
72 74
73 docButton = new QToolButton( 0,"docsButton"); 75 docButton = new QToolButton( 0,"docsButton");
74 docButton->setPixmap(Resource::loadPixmap("DocsIcon")); 76 docButton->setPixmap(Resource::loadPixmap("DocsIcon"));
75 docButton->setAutoRaise( true ); 77 docButton->setAutoRaise( true );
76 menuBar->insertItem( docButton ); 78 menuBar->insertItem( docButton );
77 79
78 homeButton = new QToolButton( 0, "homeButton"); 80 homeButton = new QToolButton( 0, "homeButton");
79 homeButton->setPixmap(Resource::loadPixmap("home")); 81 homeButton->setPixmap(Resource::loadPixmap("home"));
80 homeButton->setAutoRaise( true ); 82 homeButton->setAutoRaise( true );
81 menuBar->insertItem( homeButton ); 83 menuBar->insertItem( homeButton );
82 84
83 fileMenu->insertItem( tr( "Show Hidden Files" ), this, SLOT( showMenuHidden() )); 85 fileMenu->insertItem( tr( "Show Hidden Files" ), this, SLOT( showMenuHidden() ));
84 fileMenu->setItemChecked( fileMenu->idAt(0),TRUE); 86 fileMenu->setItemChecked( fileMenu->idAt(0),TRUE);
85 fileMenu->insertSeparator(); 87 fileMenu->insertSeparator();
88 fileMenu->insertItem( tr( "File Search" ), this, SLOT( openSearch() ));
89 fileMenu->insertSeparator();
86 fileMenu->insertItem( tr( "Make Directory" ), this, SLOT( mkDir() )); 90 fileMenu->insertItem( tr( "Make Directory" ), this, SLOT( mkDir() ));
87 fileMenu->insertItem( tr( "Rename" ), this, SLOT( rn() )); 91 fileMenu->insertItem( tr( "Rename" ), this, SLOT( rn() ));
88 fileMenu->insertItem( tr( "Run Command" ), this, SLOT( runCommandStd() )); 92 fileMenu->insertItem( tr( "Run Command" ), this, SLOT( runCommandStd() ));
89 fileMenu->insertItem( tr( "Run Command with Output" ), this, SLOT( runCommand() )); 93 fileMenu->insertItem( tr( "Run Command with Output" ), this, SLOT( runCommand() ));
90 fileMenu->insertSeparator(); 94 fileMenu->insertSeparator();
91 fileMenu->insertItem( tr( "Make Symlink" ), this, SLOT( mkSym() )); 95 fileMenu->insertItem( tr( "Make Symlink" ), this, SLOT( mkSym() ));
92 fileMenu->insertItem( tr( "Select All" ), this, SLOT( selectAll() )); 96 fileMenu->insertItem( tr( "Select All" ), this, SLOT( selectAll() ));
93 fileMenu->insertItem( tr( "Add To Documents" ), this, SLOT( addToDocs() )); 97 fileMenu->insertItem( tr( "Add To Documents" ), this, SLOT( addToDocs() ));
94 fileMenu->insertItem( tr( "Delete" ), this, SLOT( del() )); 98 fileMenu->insertItem( tr( "Delete" ), this, SLOT( del() ));
95 fileMenu->setCheckable(TRUE); 99 fileMenu->setCheckable(TRUE);
96 100
97 viewMenu->insertItem( tr( "Switch to Local" ), this, SLOT( switchToLocalTab() )); 101 viewMenu->insertItem( tr( "Switch to Local" ), this, SLOT( switchToLocalTab() ));
98 viewMenu->insertItem( tr( "Switch to Remote" ), this, SLOT( switchToRemoteTab() )); 102 viewMenu->insertItem( tr( "Switch to Remote" ), this, SLOT( switchToRemoteTab() ));
99// viewMenu->insertSeparator(); 103// viewMenu->insertSeparator();
100// viewMenu->insertItem( tr( "About" ), this, SLOT( doAbout() )); 104// viewMenu->insertItem( tr( "About" ), this, SLOT( doAbout() ));
101 viewMenu->setCheckable(TRUE); 105 viewMenu->setCheckable(TRUE);
102 106
103 s_addBookmark = tr("Bookmark Directory"); 107 s_addBookmark = tr("Bookmark Directory");
104 s_removeBookmark = tr("Remove Current Directory from Bookmarks"); 108 s_removeBookmark = tr("Remove Current Directory from Bookmarks");
105 109
106// menuButton->insertItem(""); 110// menuButton->insertItem("");
107 111
108// customDirMenu->insertItem(tr("Add This Directory")); 112// customDirMenu->insertItem(tr("Add This Directory"));
109// customDirMenu->insertItem(tr("Remove This Directory")); 113// customDirMenu->insertItem(tr("Remove This Directory"));
110// customDirMenu->insertSeparator(); 114// customDirMenu->insertSeparator();
111 115
112 menuButton = new MenuButton( lineBox ); 116 menuButton = new MenuButton( lineBox );
113 117
114 menuButton->setUseLabel(false); 118 menuButton->setUseLabel(false);
115 menuButton->setMaximumWidth( 20 ); 119 menuButton->setMaximumWidth( 20 );
116 menuButton->insertItem( s_addBookmark); 120 menuButton->insertItem( s_addBookmark);
117 menuButton->insertItem( s_removeBookmark); 121 menuButton->insertItem( s_removeBookmark);
118 menuButton->insertSeparator(); 122 menuButton->insertSeparator();
119 123
120 customDirsToMenu(); 124 customDirsToMenu();
121 125
122 currentPathCombo = new QComboBox( FALSE, lineBox, "currentPathCombo" ); 126 currentPathCombo = new QComboBox( FALSE, lineBox, "currentPathCombo" );
123 currentPathCombo->setEditable(TRUE); 127 currentPathCombo->setEditable(TRUE);
124 currentPathCombo->lineEdit()->setText( currentDir.canonicalPath()); 128 currentPathCombo->lineEdit()->setText( currentDir.canonicalPath());
125 129
126 layout->addWidget( lineBox ); 130 layout->addWidget( lineBox );
127 131
128 132
129 TabWidget = new OTabWidget( this, "TabWidget",/* OTabWidget::Global | */OTabWidget::IconTab); 133 TabWidget = new OTabWidget( this, "TabWidget",/* OTabWidget::Global | */OTabWidget::IconTab);
130// TabWidget = new QTabWidget( this, "TabWidget" ); 134// TabWidget = new QTabWidget( this, "TabWidget" );
131 layout->addWidget( TabWidget, 4 ); 135 layout->addWidget( TabWidget, 4 );
132 136
133 tab = new QWidget( TabWidget, "tab" ); 137 tab = new QWidget( TabWidget, "tab" );
134 tabLayout = new QGridLayout( tab ); 138 tabLayout = new QGridLayout( tab );
135 tabLayout->setSpacing( 2); 139 tabLayout->setSpacing( 2);
136 tabLayout->setMargin( 2); 140 tabLayout->setMargin( 2);
137 141
138 Local_View = new QListView( tab, "Local_View" ); 142 Local_View = new QListView( tab, "Local_View" );
139 Local_View->addColumn( tr("File"),130); 143 Local_View->addColumn( tr("File"),130);
140 Local_View->addColumn( tr("Size"),-1); 144 Local_View->addColumn( tr("Size"),-1);
141 Local_View->setColumnAlignment(1,QListView::AlignRight); 145 Local_View->setColumnAlignment(1,QListView::AlignRight);
142 Local_View->addColumn( tr("Date"),-1); 146 Local_View->addColumn( tr("Date"),-1);
143 Local_View->setColumnAlignment(2,QListView::AlignRight); 147 Local_View->setColumnAlignment(2,QListView::AlignRight);
144 Local_View->setAllColumnsShowFocus(TRUE); 148 Local_View->setAllColumnsShowFocus(TRUE);
145 Local_View->setMultiSelection( TRUE ); 149 Local_View->setMultiSelection( TRUE );
146 Local_View->setSelectionMode(QListView::Extended); 150 Local_View->setSelectionMode(QListView::Extended);
147 151
148 QPEApplication::setStylusOperation( Local_View->viewport(),QPEApplication::RightOnHold); 152 QPEApplication::setStylusOperation( Local_View->viewport(),QPEApplication::RightOnHold);
149 153
150 tabLayout->addWidget( Local_View, 0, 0 ); 154 tabLayout->addWidget( Local_View, 0, 0 );
151 155
152 TabWidget->addTab( tab,"advancedfm/smFileBrowser.png", tr("1")); 156 TabWidget->addTab( tab,"advancedfm/smFileBrowser.png", tr("1"));
153// TabWidget->insertTab( tab, tr("1")); 157// TabWidget->insertTab( tab, tr("1"));
154 158
155 tab_2 = new QWidget( TabWidget, "tab_2" ); 159 tab_2 = new QWidget( TabWidget, "tab_2" );
156 tabLayout_2 = new QGridLayout( tab_2 ); 160 tabLayout_2 = new QGridLayout( tab_2 );
157 tabLayout_2->setSpacing( 2); 161 tabLayout_2->setSpacing( 2);
158 tabLayout_2->setMargin( 2); 162 tabLayout_2->setMargin( 2);
159 163
160 Remote_View = new QListView( tab_2, "Remote_View" ); 164 Remote_View = new QListView( tab_2, "Remote_View" );
161 Remote_View->addColumn( tr("File"),130); 165 Remote_View->addColumn( tr("File"),130);
162 Remote_View->addColumn( tr("Size"),-1); 166 Remote_View->addColumn( tr("Size"),-1);
163 Remote_View->setColumnAlignment(1,QListView::AlignRight); 167 Remote_View->setColumnAlignment(1,QListView::AlignRight);
164 Remote_View->addColumn( tr("Date"),-1); 168 Remote_View->addColumn( tr("Date"),-1);
165 Remote_View->setColumnAlignment(2,QListView::AlignRight); 169 Remote_View->setColumnAlignment(2,QListView::AlignRight);
166 Remote_View->setAllColumnsShowFocus(TRUE); 170 Remote_View->setAllColumnsShowFocus(TRUE);
167 Remote_View->setMultiSelection( TRUE ); 171 Remote_View->setMultiSelection( TRUE );
168 Remote_View->setSelectionMode(QListView::Extended); 172 Remote_View->setSelectionMode(QListView::Extended);
169 173
170 174
171 QPEApplication::setStylusOperation( Remote_View->viewport(),QPEApplication::RightOnHold); 175 QPEApplication::setStylusOperation( Remote_View->viewport(),QPEApplication::RightOnHold);
172 176
173 tabLayout_2->addWidget( Remote_View, 0, 0 ); 177 tabLayout_2->addWidget( Remote_View, 0, 0 );
174 178
175 TabWidget->addTab( tab_2, "advancedfm/smFileBrowser.png",tr( "2")); 179 TabWidget->addTab( tab_2, "advancedfm/smFileBrowser.png",tr( "2"));
176// TabWidget->insertTab( tab_2, tr( "2")); 180// TabWidget->insertTab( tab_2, tr( "2"));
177 181
178 /* tab_3 = new QWidget( TabWidget, "tab_3" ); 182 /* tab_3 = new QWidget( TabWidget, "tab_3" );
179 tabLayout_3 = new QGridLayout( tab_3 ); 183 tabLayout_3 = new QGridLayout( tab_3 );
180 tabLayout_3->setSpacing( 2); 184 tabLayout_3->setSpacing( 2);
181 tabLayout_3->setMargin( 2); 185 tabLayout_3->setMargin( 2);
182 186
183 187
184 // OFileDialog fileDialog; 188 // OFileDialog fileDialog;
185 // fileDialog; 189 // fileDialog;
186 // fileSelector = new FileSelector( "*",tab_3, "fileselector" , FALSE, FALSE); //buggy 190 // fileSelector = new FileSelector( "*",tab_3, "fileselector" , FALSE, FALSE); //buggy
187 // fileDialog = new OFileDialog("bangalow", tab_3, 4, 2, "Bungalow"); 191 // fileDialog = new OFileDialog("bangalow", tab_3, 4, 2, "Bungalow");
188 // OFileSelector fileDialog = new OFileSelector( tab_3, 4, 2,"/"); 192 // OFileSelector fileDialog = new OFileSelector( tab_3, 4, 2,"/");
189 193
190 QListView *fileTree; 194 QListView *fileTree;
191 fileTree = new QListView( tab_3, "tree" ); 195 fileTree = new QListView( tab_3, "tree" );
192 196
193 197
194 tabLayout_3->addMultiCellWidget( fileTree, 0, 0, 0, 3 ); 198 tabLayout_3->addMultiCellWidget( fileTree, 0, 0, 0, 3 );
195 199
196 TabWidget->insertTab( tab_3, tr( "Remote" ) ); 200 TabWidget->insertTab( tab_3, tr( "Remote" ) );
197 */ 201 */
198 202
199 /////////////// 203 ///////////////
200 204
205
201 struct utsname name; /* check for embedix kernel running on the zaurus*/ 206 struct utsname name; /* check for embedix kernel running on the zaurus*/
202 if (uname(&name) != -1) { 207 if (uname(&name) != -1) {
203 QString release=name.release; 208 QString release=name.release;
204 if(release.find("embedix",0,TRUE) !=-1) { 209 if(release.find("embedix",0,TRUE) !=-1) {
205 zaurusDevice=TRUE; 210 zaurusDevice=TRUE;
206 } else { 211 } else {
207 zaurusDevice=FALSE; 212 zaurusDevice=FALSE;
208 sdButton->hide();
209 } 213 }
210 } 214 }
211 215
216 if( !StorageInfo::hasSd() || !StorageInfo::hasMmc()) {
217 qDebug("not have sd");
218 sdButton->hide();
219 }
220 if( !StorageInfo::hasCf() ) {
221 qDebug("not have cf");
222 cfButton->hide();
223 }
212 currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); 224 currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All);
213 currentDir.setPath( QDir::currentDirPath()); 225 currentDir.setPath( QDir::currentDirPath());
214 226
215 currentRemoteDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); 227 currentRemoteDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All);
216 currentRemoteDir.setPath( QDir::currentDirPath()); 228 currentRemoteDir.setPath( QDir::currentDirPath());
217 229
218 b = TRUE; 230 b = TRUE;
219 231
220 filterStr="*"; 232 filterStr="*";
221 b=FALSE; 233 b=FALSE;
222 TabWidget->setCurrentTab(0); 234 TabWidget->setCurrentTab(0);
223 235
224} 236}
225 237
226void AdvancedFm::initConnections() 238void AdvancedFm::initConnections()
227{ 239{
228 240
229 connect( qApp,SIGNAL( aboutToQuit()), 241 connect( qApp,SIGNAL( aboutToQuit()),
230 this, SLOT( cleanUp()) ); 242 this, SLOT( cleanUp()) );
231 connect( qpeDirButton ,SIGNAL(released()), 243 connect( qpeDirButton ,SIGNAL(released()),
232 this,SLOT( QPEButtonPushed()) ); 244 this,SLOT( QPEButtonPushed()) );
233 connect( cfButton ,SIGNAL(released()), 245 connect( cfButton ,SIGNAL(released()),
234 this,SLOT( CFButtonPushed()) ); 246 this,SLOT( CFButtonPushed()) );
235 connect( sdButton ,SIGNAL(released()), 247 connect( sdButton ,SIGNAL(released()),
236 this,SLOT( SDButtonPushed()) ); 248 this,SLOT( SDButtonPushed()) );
237 connect( cdUpButton ,SIGNAL(released()), 249 connect( cdUpButton ,SIGNAL(released()),
238 this,SLOT( upDir()) ); 250 this,SLOT( upDir()) );
239 connect( docButton,SIGNAL(released()), 251 connect( docButton,SIGNAL(released()),
240 this,SLOT( docButtonPushed()) ); 252 this,SLOT( docButtonPushed()) );
241 connect( homeButton,SIGNAL(released()), 253 connect( homeButton,SIGNAL(released()),
242 this,SLOT( homeButtonPushed()) ); 254 this,SLOT( homeButtonPushed()) );
243 connect( currentPathCombo, SIGNAL( activated( const QString & ) ), 255 connect( currentPathCombo, SIGNAL( activated( const QString & ) ),
244 this, SLOT( currentPathComboActivated( const QString & ) ) ); 256 this, SLOT( currentPathComboActivated( const QString & ) ) );
245 257
246 connect( currentPathCombo->lineEdit(),SIGNAL(returnPressed()), 258 connect( currentPathCombo->lineEdit(),SIGNAL(returnPressed()),
247 this,SLOT(currentPathComboChanged())); 259 this,SLOT(currentPathComboChanged()));
248 260
249 connect( Local_View, SIGNAL( clicked( QListViewItem*)), 261 connect( Local_View, SIGNAL( clicked( QListViewItem*)),
250 this,SLOT( ListClicked(QListViewItem *)) ); 262 this,SLOT( ListClicked(QListViewItem *)) );
263
251 connect( Local_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)), 264 connect( Local_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)),
252 this,SLOT( ListPressed(int, QListViewItem *, const QPoint&, int)) ); 265 this,SLOT( ListPressed(int, QListViewItem *, const QPoint&, int)) );
253 266
254 connect( Local_View, SIGNAL( selectionChanged() ), SLOT( cancelMenuTimer() ) ); 267 connect( Local_View, SIGNAL( selectionChanged() ), SLOT( cancelMenuTimer() ) );
255 268
256 connect( Remote_View, SIGNAL( clicked( QListViewItem*)), 269 connect( Remote_View, SIGNAL( clicked( QListViewItem*)),
257 this,SLOT( ListClicked(QListViewItem *)) ); 270 this,SLOT( ListClicked(QListViewItem *)) );
258 connect( Remote_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)), 271 connect( Remote_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)),
259 this,SLOT( ListPressed(int, QListViewItem *, const QPoint&, int)) ); 272 this,SLOT( ListPressed(int, QListViewItem *, const QPoint&, int)) );
260 273
261 connect( TabWidget,SIGNAL(currentChanged(QWidget *)), 274 connect( TabWidget,SIGNAL(currentChanged(QWidget *)),
262 this,SLOT(tabChanged(QWidget*))); 275 this,SLOT(tabChanged(QWidget*)));
263 276
264 connect( &menuTimer, SIGNAL( timeout() ), SLOT( showFileMenu() ) ); 277 connect( &menuTimer, SIGNAL( timeout() ), SLOT( showFileMenu() ) );
265 278
266 connect( menuButton, SIGNAL( selected(const QString &)), SLOT(gotoCustomDir(const QString&))); 279 connect( menuButton, SIGNAL( selected(const QString &)), SLOT(gotoCustomDir(const QString&)));
267// connect( menuButton, SIGNAL( selected( int)), SLOT( dirMenuSelected(int))); 280// connect( menuButton, SIGNAL( selected( int)), SLOT( dirMenuSelected(int)));
268 281
269// connect( customDirMenu, SIGNAL( activated(int)), this, SLOT( dirMenuSelected(int))); 282// connect( customDirMenu, SIGNAL( activated(int)), this, SLOT( dirMenuSelected(int)));
270 283
271} 284}
diff --git a/noncore/apps/advancedfm/advancedfmMenu.cpp b/noncore/apps/advancedfm/advancedfmMenu.cpp
index 575833a..2201960 100644
--- a/noncore/apps/advancedfm/advancedfmMenu.cpp
+++ b/noncore/apps/advancedfm/advancedfmMenu.cpp
@@ -1,102 +1,102 @@
1/*************************************************************************** 1/***************************************************************************
2 AdvancedFm.cpp 2 AdvancedFm.cpp
3 ------------------- 3 -------------------
4 ** Created: Sat Mar 9 23:33:09 2002 4 ** Created: Sat Mar 9 23:33:09 2002
5 copyright : (C) 2002 by ljp 5 copyright : (C) 2002 by ljp
6 email : ljp@llornkcor.com 6 email : ljp@llornkcor.com
7 * This program is free software; you can redistribute it and/or modify * 7 * This program is free software; you can redistribute it and/or modify *
8 * it under the terms of the GNU General Public License as published by * 8 * it under the terms of the GNU General Public License as published by *
9 * the Free Software Foundation; either version 2 of the License, or * 9 * the Free Software Foundation; either version 2 of the License, or *
10 * (at your option) any later version. * 10 * (at your option) any later version. *
11 ***************************************************************************/ 11 ***************************************************************************/
12#include "advancedfm.h" 12#include "advancedfm.h"
13#include "output.h" 13#include "output.h"
14#include "filePermissions.h" 14#include "filePermissions.h"
15 15
16#include <opie/otabwidget.h> 16#include <opie/otabwidget.h>
17#include <opie/oprocess.h> 17#include <opie/oprocess.h>
18 18
19#include <qpe/lnkproperties.h> 19#include <qpe/lnkproperties.h>
20#include <qpe/qpeapplication.h> 20#include <qpe/qpeapplication.h>
21#include <qpe/resource.h> 21#include <qpe/resource.h>
22#include <qpe/qcopenvelope_qws.h> 22#include <qpe/qcopenvelope_qws.h>
23#include <qpe/applnk.h> 23#include <qpe/applnk.h>
24#include <qpe/ir.h> 24#include <qpe/ir.h>
25 25
26#include <qmessagebox.h> 26#include <qmessagebox.h>
27#include <qmultilineedit.h> 27#include <qmultilineedit.h>
28 28
29#include <qstring.h> 29#include <qstring.h>
30 30
31#include <qlayout.h> 31#include <qlayout.h>
32#include <qpixmap.h> 32#include <qpixmap.h>
33#include <qcombobox.h> 33#include <qcombobox.h>
34#include <qpopupmenu.h> 34#include <qpopupmenu.h>
35#include <qtabwidget.h> 35#include <qtabwidget.h>
36#include <qtoolbutton.h> 36#include <qtoolbutton.h>
37#include <qtabwidget.h> 37#include <qtabwidget.h>
38#include <qlineedit.h> 38#include <qlineedit.h>
39#include <qlistview.h> 39#include <qlistview.h>
40 40
41#include <stdlib.h> 41#include <stdlib.h>
42#include <unistd.h> 42#include <unistd.h>
43#include <sys/stat.h> 43#include <sys/stat.h>
44#include <dirent.h> 44#include <dirent.h>
45#include <sys/sendfile.h> 45#include <sys/sendfile.h>
46#include <fcntl.h> 46#include <fcntl.h>
47 47
48void AdvancedFm::doDirChange() 48void AdvancedFm::doDirChange()
49{ 49{
50 ListClicked( CurrentView()->currentItem()); 50 ListClicked( CurrentView()->currentItem());
51} 51}
52 52
53void AdvancedFm::showMenuHidden() 53void AdvancedFm::showMenuHidden()
54{ 54{
55 if (b) 55 if (b)
56 { 56 {
57 CurrentDir()->setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); 57 CurrentDir()->setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All);
58 OtherDir()->setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); 58 OtherDir()->setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All);
59 fileMenu->setItemChecked( fileMenu->idAt(0),TRUE); 59 fileMenu->setItemChecked( fileMenu->idAt(0),TRUE);
60// b=FALSE; 60// b=FALSE;
61 61
62 } 62 }
63 else 63 else
64 { 64 {
65 CurrentDir()->setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); 65 CurrentDir()->setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All);
66 OtherDir()->setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); 66 OtherDir()->setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All);
67 fileMenu->setItemChecked( fileMenu->idAt(0),FALSE); 67 fileMenu->setItemChecked( fileMenu->idAt(0),FALSE);
68// b=TRUE; 68// b=TRUE;
69 } 69 }
70 rePopulate(); 70 rePopulate();
71// if(b) qDebug("<<<<<<<<<<<<<<<<<<<<<<<<<<<< true"); 71// if(b) qDebug("<<<<<<<<<<<<<<<<<<<<<<<<<<<< true");
72 if(b) b = false; else b = true; 72 if(b) b = false; else b = true;
73} 73}
74 74
75void AdvancedFm::showHidden() 75void AdvancedFm::showHidden()
76{ 76{
77 if (b) 77 if (b)
78 { 78 {
79 CurrentDir()->setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); 79 CurrentDir()->setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All);
80 OtherDir()->setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); 80 OtherDir()->setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All);
81// fileMenu->setItemChecked( fileMenu->idAt(0),TRUE); 81// fileMenu->setItemChecked( fileMenu->idAt(0),TRUE);
82// b=FALSE; 82// b=FALSE;
83 83
84 } 84 }
85 else 85 else
86 { 86 {
87 CurrentDir()->setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); 87 CurrentDir()->setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All);
88 OtherDir()->setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All); 88 OtherDir()->setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All);
89// fileMenu->setItemChecked( fileMenu->idAt(0),FALSE); 89// fileMenu->setItemChecked( fileMenu->idAt(0),FALSE);
90// b=TRUE; 90// b=TRUE;
91 } 91 }
92 rePopulate(); 92 rePopulate();
93} 93}
94 94
95QString AdvancedFm::dealWithSymName(const QString &fileName) 95QString AdvancedFm::dealWithSymName(const QString &fileName)
96{ 96{
97 QString strItem = fileName; 97 QString strItem = fileName;
98 return strItem.right( (strItem.length() - strItem.find("->",0,TRUE)) - 4); 98 return strItem.right( (strItem.length() - strItem.find("->",0,TRUE)) - 4);
99} 99}
100 100
101void AdvancedFm::runThis() 101void AdvancedFm::runThis()
102{ 102{
@@ -110,224 +110,229 @@ void AdvancedFm::runThis()
110 110
111 curFile = dealWithSymName((const QString&)curFile); 111 curFile = dealWithSymName((const QString&)curFile);
112 112
113 if(curFile != "../") 113 if(curFile != "../")
114 { 114 {
115 115
116 fs = getFileSystemType((const QString &) path); 116 fs = getFileSystemType((const QString &) path);
117 QFileInfo fileInfo( path + "/" + curFile); 117 QFileInfo fileInfo( path + "/" + curFile);
118 qDebug( fileInfo.owner()); 118 qDebug( fileInfo.owner());
119 119
120 if( (fileInfo.permission( QFileInfo::ExeUser) 120 if( (fileInfo.permission( QFileInfo::ExeUser)
121 | fileInfo.permission( QFileInfo::ExeGroup) 121 | fileInfo.permission( QFileInfo::ExeGroup)
122 | fileInfo.permission( QFileInfo::ExeOther)) // & fs.find("vfat",0,TRUE) == -1) { 122 | fileInfo.permission( QFileInfo::ExeOther)) // & fs.find("vfat",0,TRUE) == -1) {
123 | fs == "vfat" && fileInfo.filePath().contains("/bin") ) { 123 | fs == "vfat" && fileInfo.filePath().contains("/bin") ) {
124 QCopEnvelope e("QPE/System", "execute(QString)" ); 124 QCopEnvelope e("QPE/System", "execute(QString)" );
125 e << curFile; 125 e << curFile;
126 } 126 }
127 else 127 else
128 { 128 {
129 curFile = path + "/" + curFile; 129 curFile = path + "/" + curFile;
130 DocLnk nf(curFile); 130 DocLnk nf(curFile);
131 QString execStr = nf.exec(); 131 QString execStr = nf.exec();
132 qDebug( execStr); 132 qDebug( execStr);
133 if( execStr.isEmpty() ) 133 if( execStr.isEmpty() )
134 { 134 {
135 } 135 }
136 else 136 else
137 { 137 {
138 nf.execute(); 138 nf.execute();
139 } 139 }
140 } 140 }
141 } 141 }
142} 142}
143 143
144void AdvancedFm::runText() 144void AdvancedFm::runText()
145{ 145{
146 QString curFile = CurrentView()->currentItem()->text(0); 146 QString curFile = CurrentView()->currentItem()->text(0);
147 if(curFile != "../") 147 if(curFile != "../")
148 { 148 {
149 if( curFile.find("@",0,TRUE) !=-1 || curFile.find("->",0,TRUE) !=-1 ) //if symlink 149 if( curFile.find("@",0,TRUE) !=-1 || curFile.find("->",0,TRUE) !=-1 ) //if symlink
150 curFile = dealWithSymName((const QString&)curFile); 150 curFile = dealWithSymName((const QString&)curFile);
151 curFile = CurrentDir()->canonicalPath()+"/"+curFile; 151 curFile = CurrentDir()->canonicalPath()+"/"+curFile;
152 QCopEnvelope e("QPE/Application/textedit", "setDocument(QString)" ); 152 QCopEnvelope e("QPE/Application/textedit", "setDocument(QString)" );
153 e << curFile; 153 e << curFile;
154 } 154 }
155} 155}
156 156
157void AdvancedFm::makeDir() 157void AdvancedFm::makeDir()
158{ 158{
159 InputDialog *fileDlg; 159 InputDialog *fileDlg;
160 fileDlg = new InputDialog(this,tr("Make Directory"),TRUE, 0); 160 fileDlg = new InputDialog(this,tr("Make Directory"),TRUE, 0);
161 fileDlg->exec(); 161 fileDlg->exec();
162 if( fileDlg->result() == 1 ) 162 if( fileDlg->result() == 1 )
163 { 163 {
164 QDir *thisDir = CurrentDir(); 164 QDir *thisDir = CurrentDir();
165 QString filename = fileDlg->LineEdit1->text(); 165 QString filename = fileDlg->LineEdit1->text();
166 thisDir->mkdir( thisDir->canonicalPath()+"/"+filename); 166 thisDir->mkdir( thisDir->canonicalPath()+"/"+filename);
167 } 167 }
168 populateView(); 168 populateView();
169} 169}
170 170
171void AdvancedFm::doDelete() 171void AdvancedFm::doDelete()
172{ 172{
173 173
174 QStringList curFileList = getPath(); 174 QStringList curFileList = getPath();
175 bool doMsg=true; 175 bool doMsg=true;
176 int count = curFileList.count(); 176 int count = curFileList.count();
177 if( count > 0) 177 if( count > 0)
178 { 178 {
179 if(count > 1 ) 179 if(count > 1 )
180 { 180 {
181 QString msg; 181 QString msg;
182 msg=tr("Really delete\n%1 files?").arg(count); 182 msg=tr("Really delete\n%1 files?").arg(count);
183 switch ( QMessageBox::warning(this,tr("Delete"),msg 183 switch ( QMessageBox::warning(this,tr("Delete"),msg
184 ,tr("Yes"),tr("No"),0,0,1) ) 184 ,tr("Yes"),tr("No"),0,0,1) )
185 { 185 {
186 case 0: 186 case 0:
187 doMsg=false; 187 doMsg=false;
188 break; 188 break;
189 case 1: 189 case 1:
190 return; 190 return;
191 break; 191 break;
192 }; 192 };
193 } 193 }
194 194
195 QString myFile; 195 QString myFile;
196 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) 196 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it )
197 { 197 {
198 myFile = (*it); 198 myFile = (*it);
199 if( myFile.find(" -> ",0,TRUE) != -1) 199 if( myFile.find(" -> ",0,TRUE) != -1)
200 myFile = myFile.left( myFile.find(" -> ",0,TRUE)); 200 myFile = myFile.left( myFile.find(" -> ",0,TRUE));
201 201
202 QString f = CurrentDir()->canonicalPath(); 202 QString f = CurrentDir()->canonicalPath();
203 if(f.right(1).find("/",0,TRUE) == -1) 203 if(f.right(1).find("/",0,TRUE) == -1)
204 f += "/"; 204 f += "/";
205 f += myFile; 205 f += myFile;
206 if(QDir(f).exists() && !QFileInfo(f).isSymLink() ) 206 if(QDir(f).exists() && !QFileInfo(f).isSymLink() ) //if file is a directory
207 { 207 {
208 switch ( QMessageBox::warning( this, tr("Delete Directory?"), tr("Really delete\n") + f + 208 switch ( QMessageBox::warning( this, tr("Delete Directory?"), tr("Really delete\n") + f +
209 "\nand all it's contents ?" 209 "\nand all it's contents ?"
210 ,tr("Yes"),tr("No"),0,0,1) ) 210 ,tr("Yes"),tr("No"),0,0,1) )
211 { 211 {
212 case 0: 212 case 0:
213 { 213 {
214 f=f.left(f.length()-1); 214 f=f.left(f.length()-1);
215 QString cmd="rm -rf "+f; 215 QString cmd="rm -rf "+f;
216 startProcess( (const QString)cmd.latin1() ); 216 startProcess( (const QString)cmd.latin1() );
217 populateView(); 217 populateView();
218 } 218 }
219 break; 219 break;
220 case 1: 220 case 1:
221 // exit 221 // exit
222 break; 222 break;
223 }; 223 };
224 224
225 } else { 225 } else {
226 if(doMsg) { 226 if(doMsg) {
227 switch ( QMessageBox::warning(this,tr("Delete"),tr("Really delete\n")+f 227 switch ( QMessageBox::warning(this,tr("Delete"),tr("Really delete\n")+f
228 +" ?",tr("Yes"),tr("No"),0,0,1) ) { 228 +" ?",tr("Yes"),tr("No"),0,0,1) ) {
229 case 1: 229 case 1:
230 return; 230 return;
231 break; 231 break;
232 }; 232 };
233 } 233 }
234 QString cmd="rm "+f; 234 QString cmd="rm "+f;
235 QFile file(f); 235 QFile file(f);
236 if(QFileInfo(myFile).fileName().find("../",0,TRUE)==-1) 236 if(QFileInfo(myFile).fileName().find("../",0,TRUE)==-1) {
237 file.remove(); 237 qDebug("remove link files "+f);
238// AppLnk lnk(f);
239// qDebug(lnk.linkFile());
240// lnk.removeLinkFile();
241 file.remove();
242 }
238 } 243 }
239 } 244 }
240 } 245 }
241 populateView(); 246 populateView();
242} 247}
243 248
244void AdvancedFm::filePerms() 249void AdvancedFm::filePerms()
245{ 250{
246 QStringList curFileList = getPath(); 251 QStringList curFileList = getPath();
247 QString filePath; 252 QString filePath;
248 253
249 filePath = CurrentDir()->canonicalPath()+"/"; 254 filePath = CurrentDir()->canonicalPath()+"/";
250 255
251 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) 256 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it )
252 { 257 {
253 filePermissions *filePerm; 258 filePermissions *filePerm;
254 filePerm = new filePermissions(this, "Permissions",true,0,(const QString &)(filePath+*it)); 259 filePerm = new filePermissions(this, "Permissions",true,0,(const QString &)(filePath+*it));
255 filePerm->showMaximized(); 260 filePerm->showMaximized();
256 filePerm->exec(); 261 filePerm->exec();
257 if( filePerm) 262 if( filePerm)
258 delete filePerm; 263 delete filePerm;
259 } 264 }
260 populateView(); 265 populateView();
261} 266}
262 267
263void AdvancedFm::doProperties() 268void AdvancedFm::doProperties()
264{ 269{
265#if defined(QT_QWS_OPIE) 270#if defined(QT_QWS_OPIE)
266 271
267 QStringList curFileList = getPath(); 272 QStringList curFileList = getPath();
268 273
269 QString filePath; 274 QString filePath;
270 filePath = CurrentDir()->canonicalPath()+"/"; 275 filePath = CurrentDir()->canonicalPath()+"/";
271 276
272 qDebug("%d",curFileList.count()); 277 qDebug("%d",curFileList.count());
273 278
274 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) 279 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it )
275 { 280 {
276 qDebug((filePath+*it)); 281 qDebug((filePath+*it));
277 DocLnk lnk( (filePath+*it)); 282 DocLnk lnk( (filePath+*it));
278 LnkProperties prop( &lnk ); 283 LnkProperties prop( &lnk );
279 prop.showMaximized(); 284 prop.showMaximized();
280 prop.exec(); 285 prop.exec();
281 } 286 }
282#endif 287#endif
283 288
284} 289}
285 290
286void AdvancedFm::upDir() 291void AdvancedFm::upDir()
287{ 292{
288 QDir *thisDir = CurrentDir(); 293 QDir *thisDir = CurrentDir();
289 QString current = thisDir->canonicalPath(); 294 QString current = thisDir->canonicalPath();
290 QDir dir(current); 295 QDir dir(current);
291 dir.cdUp(); 296 dir.cdUp();
292 current = dir.canonicalPath(); 297 current = dir.canonicalPath();
293 chdir( current.latin1() ); 298 chdir( current.latin1() );
294 thisDir->cd( current, TRUE); 299 thisDir->cd( current, TRUE);
295 300
296 populateView(); 301 populateView();
297 update(); 302 update();
298} 303}
299 304
300void AdvancedFm::copy() 305void AdvancedFm::copy()
301{ 306{
302 qApp->processEvents(); 307 qApp->processEvents();
303 QStringList curFileList = getPath(); 308 QStringList curFileList = getPath();
304 309
305 QDir *thisDir = CurrentDir(); 310 QDir *thisDir = CurrentDir();
306 QDir *thatDir = OtherDir(); 311 QDir *thatDir = OtherDir();
307 312
308 bool doMsg=true; 313 bool doMsg=true;
309 int count=curFileList.count(); 314 int count=curFileList.count();
310 if( count > 0) { 315 if( count > 0) {
311 if(count > 1 ){ 316 if(count > 1 ){
312 QString msg; 317 QString msg;
313 msg=tr("Really copy\n%1 files?").arg(count); 318 msg=tr("Really copy\n%1 files?").arg(count);
314 switch ( QMessageBox::warning(this,tr("Copy"),msg 319 switch ( QMessageBox::warning(this,tr("Copy"),msg
315 ,tr("Yes"),tr("No"),0,0,1) ) 320 ,tr("Yes"),tr("No"),0,0,1) )
316 { 321 {
317 case 0: 322 case 0:
318 doMsg=false; 323 doMsg=false;
319 break; 324 break;
320 case 1: 325 case 1:
321 return; 326 return;
322 break; 327 break;
323 }; 328 };
324 } 329 }
325 330
326 QString curFile, item, destFile; 331 QString curFile, item, destFile;
327 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it ) 332 for ( QStringList::Iterator it = curFileList.begin(); it != curFileList.end(); ++it )
328 { 333 {
329 item=(*it); 334 item=(*it);
330 if(item.find("->",0,TRUE)) //symlink 335 if(item.find("->",0,TRUE)) //symlink
331 item = item.left(item.find("->",0,TRUE)); 336 item = item.left(item.find("->",0,TRUE));
332 337
333 curFile = thisDir->canonicalPath()+"/"+ item; 338 curFile = thisDir->canonicalPath()+"/"+ item;
@@ -792,96 +797,100 @@ bool AdvancedFm::eventFilter( QObject * o, QEvent * e )
792 } 797 }
793 else if ( ke->key() == Key_Escape ) 798 else if ( ke->key() == Key_Escape )
794 { 799 {
795 cancelRename(); 800 cancelRename();
796 return true; 801 return true;
797 } 802 }
798 } 803 }
799 else if ( e->type() == QEvent::FocusOut ) 804 else if ( e->type() == QEvent::FocusOut )
800 { 805 {
801 cancelRename(); 806 cancelRename();
802 return true; 807 return true;
803 } 808 }
804 } 809 }
805 if ( o->inherits( "QListView" ) ) 810 if ( o->inherits( "QListView" ) )
806 { 811 {
807 if ( e->type() == QEvent::FocusOut ) 812 if ( e->type() == QEvent::FocusOut )
808 { 813 {
809 printf("focusIn\n"); 814 printf("focusIn\n");
810 815
811 } 816 }
812 } 817 }
813 818
814 return QWidget::eventFilter( o, e ); 819 return QWidget::eventFilter( o, e );
815} 820}
816 821
817 822
818void AdvancedFm::cancelRename() 823void AdvancedFm::cancelRename()
819{ 824{
820 qDebug("cancel rename"); 825 qDebug("cancel rename");
821 QListView * view; 826 QListView * view;
822 view = CurrentView(); 827 view = CurrentView();
823 828
824 bool resetFocus = view->viewport()->focusProxy() == renameBox; 829 bool resetFocus = view->viewport()->focusProxy() == renameBox;
825 delete renameBox; 830 delete renameBox;
826 renameBox = 0; 831 renameBox = 0;
827 if ( resetFocus ) 832 if ( resetFocus )
828 { 833 {
829 view->viewport()->setFocusProxy( view); 834 view->viewport()->setFocusProxy( view);
830 view->setFocus(); 835 view->setFocus();
831 } 836 }
832} 837}
833 838
834void AdvancedFm::doRename(QListView * view) 839void AdvancedFm::doRename(QListView * view)
835{ 840{
836 841
837 QRect r = view->itemRect( view->currentItem( )); 842 QRect r = view->itemRect( view->currentItem( ));
838 r = QRect( view->viewportToContents( r.topLeft() ), r.size() ); 843 r = QRect( view->viewportToContents( r.topLeft() ), r.size() );
839 r.setX( view->contentsX() ); 844 r.setX( view->contentsX() );
840 if ( r.width() > view->visibleWidth() ) 845 if ( r.width() > view->visibleWidth() )
841 r.setWidth( view->visibleWidth() ); 846 r.setWidth( view->visibleWidth() );
842 847
843 renameBox = new QLineEdit( view->viewport(), "qt_renamebox" ); 848 renameBox = new QLineEdit( view->viewport(), "qt_renamebox" );
844 renameBox->setFrame(true); 849 renameBox->setFrame(true);
845 850
846 renameBox->setText( view->currentItem()->text(0) ); 851 renameBox->setText( view->currentItem()->text(0) );
847 852
848 renameBox->selectAll(); 853 renameBox->selectAll();
849 renameBox->installEventFilter( this ); 854 renameBox->installEventFilter( this );
850 view->addChild( renameBox, r.x(), r.y() ); 855 view->addChild( renameBox, r.x(), r.y() );
851 renameBox->resize( r.size() ); 856 renameBox->resize( r.size() );
852 view->viewport()->setFocusProxy( renameBox ); 857 view->viewport()->setFocusProxy( renameBox );
853 renameBox->setFocus(); 858 renameBox->setFocus();
854 renameBox->show(); 859 renameBox->show();
855 860
856} 861}
857 862
858 863
859void AdvancedFm::renameIt() 864void AdvancedFm::renameIt()
860{ 865{
861 QListView *thisView = CurrentView(); 866 QListView *thisView = CurrentView();
862 oldName = thisView->currentItem()->text(0); 867 oldName = thisView->currentItem()->text(0);
863 doRename( thisView ); 868 doRename( thisView );
864 populateView(); 869 populateView();
865} 870}
866 871
867void AdvancedFm::okRename() 872void AdvancedFm::okRename()
868{ 873{
869 QString newName = renameBox->text(); 874 QString newName = renameBox->text();
870 cancelRename(); 875 cancelRename();
871// int tabs=0; 876// int tabs=0;
872 QListView * view = CurrentView(); 877 QListView * view = CurrentView();
873 QString path = CurrentDir()->canonicalPath() + "/"; 878 QString path = CurrentDir()->canonicalPath() + "/";
874 oldName = path + oldName; 879 oldName = path + oldName;
875 newName = path + newName; 880 newName = path + newName;
876 881
877 if( view->currentItem() == NULL) 882 if( view->currentItem() == NULL)
878 return; 883 return;
879 if( rename( oldName.latin1(), newName.latin1())== -1) 884 if( rename( oldName.latin1(), newName.latin1())== -1)
880 QMessageBox::message(tr("Note"),tr("Could not rename")); 885 QMessageBox::message(tr("Note"),tr("Could not rename"));
881 else 886 else
882 oldName = ""; 887 oldName = "";
883 888
884 view->takeItem( view->currentItem() ); 889 view->takeItem( view->currentItem() );
885 delete view->currentItem(); 890 delete view->currentItem();
886 populateView(); 891 populateView();
887} 892}
893
894void AdvancedFm::openSearch() {
895
896}