author | llornkcor <llornkcor> | 2003-05-12 14:52:31 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2003-05-12 14:52:31 (UTC) |
commit | 8a87ca1f7de6a205b47986db8ad4a082f39b9c34 (patch) (unidiff) | |
tree | c7f80978a8f53c3faefa6bfc1a626bafcf8837a4 | |
parent | ca02db5ebfc5e44c3b216c12757683bac246ba23 (diff) | |
download | opie-8a87ca1f7de6a205b47986db8ad4a082f39b9c34.zip opie-8a87ca1f7de6a205b47986db8ad4a082f39b9c34.tar.gz opie-8a87ca1f7de6a205b47986db8ad4a082f39b9c34.tar.bz2 |
show file selected if setDoc/openDir qcop is file
-rw-r--r-- | noncore/apps/advancedfm/advancedfm.cpp | 27 | ||||
-rw-r--r-- | noncore/apps/advancedfm/advancedfm.h | 2 | ||||
-rw-r--r-- | noncore/apps/advancedfm/advancedfmData.cpp | 15 | ||||
-rw-r--r-- | noncore/apps/advancedfm/advancedfmMenu.cpp | 17 |
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() | |||
809 | void AdvancedFm::gotoCustomDir(const QString &dir) | 809 | void 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 | ||
837 | QDir *AdvancedFm::CurrentDir() | 837 | QDir *AdvancedFm::CurrentDir() |
838 | { | 838 | { |
839 | if ( whichTab == 1) | 839 | if ( whichTab == 1) |
840 | { | 840 | { |
841 | return ¤tDir; | 841 | return ¤tDir; |
842 | } | 842 | } |
843 | else | 843 | else |
844 | { | 844 | { |
845 | return ¤tRemoteDir; | 845 | return ¤tRemoteDir; |
846 | } | 846 | } |
847 | } | 847 | } |
848 | 848 | ||
849 | QDir *AdvancedFm::OtherDir() | 849 | QDir *AdvancedFm::OtherDir() |
850 | { | 850 | { |
851 | if ( whichTab == 1) | 851 | if ( whichTab == 1) |
852 | { | 852 | { |
853 | return ¤tRemoteDir; | 853 | return ¤tRemoteDir; |
854 | } | 854 | } |
855 | else | 855 | else |
856 | { | 856 | { |
857 | return ¤tDir; | 857 | return ¤tDir; |
858 | } | 858 | } |
859 | } | 859 | } |
860 | 860 | ||
861 | QListView * AdvancedFm::CurrentView() | 861 | QListView * 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 | ||
869 | QListView * AdvancedFm::OtherView() | 869 | QListView * 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 | ||
877 | void AdvancedFm::setOtherTabCurrent() | 877 | void 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 | ||
885 | void AdvancedFm::qcopReceive(const QCString &msg, const QByteArray &data) { | 885 | void 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 | ||
901 | void AdvancedFm::gotoDirectory(const QString &file) { | 901 | void 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 | |||
925 | void 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 | ||
91 | protected: | 91 | protected: |
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 | ||
132 | protected slots: | 132 | protected 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 | ||
155 | private: | 155 | private: |
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 | ||
169 | private slots: | 171 | private 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 | ||
30 | void AdvancedFm::init() { | 32 | void 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 | ||
226 | void AdvancedFm::initConnections() | 238 | void 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 | ||
48 | void AdvancedFm::doDirChange() | 48 | void AdvancedFm::doDirChange() |
49 | { | 49 | { |
50 | ListClicked( CurrentView()->currentItem()); | 50 | ListClicked( CurrentView()->currentItem()); |
51 | } | 51 | } |
52 | 52 | ||
53 | void AdvancedFm::showMenuHidden() | 53 | void 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 | ||
75 | void AdvancedFm::showHidden() | 75 | void 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 | ||
95 | QString AdvancedFm::dealWithSymName(const QString &fileName) | 95 | QString 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 | ||
101 | void AdvancedFm::runThis() | 101 | void 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 | ||
144 | void AdvancedFm::runText() | 144 | void 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 | ||
157 | void AdvancedFm::makeDir() | 157 | void 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 | ||
171 | void AdvancedFm::doDelete() | 171 | void 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 | ||
244 | void AdvancedFm::filePerms() | 249 | void 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 | ||
263 | void AdvancedFm::doProperties() | 268 | void 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 | ||
286 | void AdvancedFm::upDir() | 291 | void 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 | ||
300 | void AdvancedFm::copy() | 305 | void 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 | ||
818 | void AdvancedFm::cancelRename() | 823 | void 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 | ||
834 | void AdvancedFm::doRename(QListView * view) | 839 | void 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 | ||
859 | void AdvancedFm::renameIt() | 864 | void 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 | ||
867 | void AdvancedFm::okRename() | 872 | void 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 | |||
894 | void AdvancedFm::openSearch() { | ||
895 | |||
896 | } | ||