author | bipolar <bipolar> | 2002-03-02 00:36:54 (UTC) |
---|---|---|
committer | bipolar <bipolar> | 2002-03-02 00:36:54 (UTC) |
commit | 1b89006f83e7516e13f808742d118e209377abcc (patch) (unidiff) | |
tree | 853cb0772bcf385eb5e342f20ffbbdbb91a3c4a4 | |
parent | d81f7934384adf5c06dddc1998e01d474419c7b0 (diff) | |
download | opie-1b89006f83e7516e13f808742d118e209377abcc.zip opie-1b89006f83e7516e13f808742d118e209377abcc.tar.gz opie-1b89006f83e7516e13f808742d118e209377abcc.tar.bz2 |
ljp (llornkcor) commit: fixed file dialogs not showing hidden files and dirs.
-rw-r--r-- | core/apps/textedit/fileBrowser.cpp | 6 | ||||
-rw-r--r-- | core/apps/textedit/fileSaver.cpp | 3 |
2 files changed, 4 insertions, 5 deletions
diff --git a/core/apps/textedit/fileBrowser.cpp b/core/apps/textedit/fileBrowser.cpp index 3e3cc3a..b029e5b 100644 --- a/core/apps/textedit/fileBrowser.cpp +++ b/core/apps/textedit/fileBrowser.cpp | |||
@@ -26,122 +26,122 @@ fileBrowser::fileBrowser( QWidget* parent, const char* name, bool modal, WFlags | |||
26 | { | 26 | { |
27 | if ( !name ) | 27 | if ( !name ) |
28 | setName( "fileBrowser" ); | 28 | setName( "fileBrowser" ); |
29 | resize( 240, 280 ); | 29 | resize( 240, 280 ); |
30 | setCaption(tr( "Browse for file" ) ); | 30 | setCaption(tr( "Browse for file" ) ); |
31 | filterStr=filter; | 31 | filterStr=filter; |
32 | 32 | ||
33 | dirLabel = new QLabel(this, "DirLabel"); | 33 | dirLabel = new QLabel(this, "DirLabel"); |
34 | dirLabel->setText(currentDir.canonicalPath()); | 34 | dirLabel->setText(currentDir.canonicalPath()); |
35 | dirLabel->setGeometry(10,20,230,15); | 35 | dirLabel->setGeometry(10,20,230,15); |
36 | 36 | ||
37 | QPushButton *homeButton; | 37 | QPushButton *homeButton; |
38 | homeButton = new QPushButton(Resource::loadIconSet("home"),"",this,"homeButton"); | 38 | homeButton = new QPushButton(Resource::loadIconSet("home"),"",this,"homeButton"); |
39 | homeButton->setGeometry(200,4,25,25); | 39 | homeButton->setGeometry(200,4,25,25); |
40 | connect(homeButton,SIGNAL(released()),this,SLOT(homeButtonPushed()) ); | 40 | connect(homeButton,SIGNAL(released()),this,SLOT(homeButtonPushed()) ); |
41 | 41 | ||
42 | ListView = new QListView( this, "ListView" ); | 42 | ListView = new QListView( this, "ListView" ); |
43 | ListView->addColumn( tr( "Name" ) ); | 43 | ListView->addColumn( tr( "Name" ) ); |
44 | ListView->setColumnWidth(0,140); | 44 | ListView->setColumnWidth(0,140); |
45 | ListView->setSorting( 2, FALSE); | 45 | ListView->setSorting( 2, FALSE); |
46 | ListView->addColumn( tr( "Size" ) ); | 46 | ListView->addColumn( tr( "Size" ) ); |
47 | ListView->setColumnWidth(1,59); | 47 | ListView->setColumnWidth(1,59); |
48 | // ListView->addColumn( tr( "" ) ); | 48 | // ListView->addColumn( tr( "" ) ); |
49 | ListView->setColumnWidthMode(0,QListView::Manual); | 49 | ListView->setColumnWidthMode(0,QListView::Manual); |
50 | ListView->setColumnAlignment(1,QListView::AlignRight); | 50 | ListView->setColumnAlignment(1,QListView::AlignRight); |
51 | // ListView->setMultiSelection(true); | 51 | // ListView->setMultiSelection(true); |
52 | // ListView->setSelectionMode(QListView::Extended); | 52 | // ListView->setSelectionMode(QListView::Extended); |
53 | 53 | ||
54 | ListView->setAllColumnsShowFocus( TRUE ); | 54 | ListView->setAllColumnsShowFocus( TRUE ); |
55 | ListView->setGeometry( QRect( 10, 35, 220, 240 ) ); | 55 | ListView->setGeometry( QRect( 10, 35, 220, 240 ) ); |
56 | 56 | ||
57 | // signals and slots connections | 57 | // signals and slots connections |
58 | connect( ListView, SIGNAL(doubleClicked( QListViewItem*)), SLOT(listDoubleClicked(QListViewItem *)) ); | 58 | connect( ListView, SIGNAL(doubleClicked( QListViewItem*)), SLOT(listDoubleClicked(QListViewItem *)) ); |
59 | connect( ListView, SIGNAL(pressed( QListViewItem*)), SLOT(listClicked(QListViewItem *)) ); | 59 | connect( ListView, SIGNAL(pressed( QListViewItem*)), SLOT(listClicked(QListViewItem *)) ); |
60 | currentDir.setPath(QDir::currentDirPath()); | 60 | currentDir.setPath(QDir::currentDirPath()); |
61 | populateList(); | 61 | populateList(); |
62 | move(0,15); | 62 | move(0,15); |
63 | } | 63 | } |
64 | 64 | ||
65 | fileBrowser::~fileBrowser() | 65 | fileBrowser::~fileBrowser() |
66 | { | 66 | { |
67 | } | 67 | } |
68 | 68 | ||
69 | 69 | ||
70 | void fileBrowser::populateList() | 70 | void fileBrowser::populateList() |
71 | { | 71 | { |
72 | ListView->clear(); | 72 | ListView->clear(); |
73 | //qDebug(currentDir.canonicalPath()); | 73 | //qDebug(currentDir.canonicalPath()); |
74 | currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden ); | 74 | currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All); |
75 | currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst); | 75 | currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst); |
76 | currentDir.setMatchAllDirs(TRUE); | 76 | currentDir.setMatchAllDirs(TRUE); |
77 | 77 | ||
78 | currentDir.setNameFilter(filterStr); | 78 | currentDir.setNameFilter(filterStr); |
79 | // currentDir.setNameFilter("*.txt;*.etx"); | 79 | // currentDir.setNameFilter("*.txt;*.etx"); |
80 | QString fileL, fileS; | 80 | QString fileL, fileS; |
81 | const QFileInfoList *list = currentDir.entryInfoList(QDir::All /*, QDir::SortByMask*/); | 81 | const QFileInfoList *list = currentDir.entryInfoList( /*QDir::All*/ /*, QDir::SortByMask*/); |
82 | QFileInfoListIterator it(*list); | 82 | QFileInfoListIterator it(*list); |
83 | QFileInfo *fi; | 83 | QFileInfo *fi; |
84 | while ( (fi=it.current()) ) { | 84 | while ( (fi=it.current()) ) { |
85 | 85 | ||
86 | if (fi->isSymLink() ){ | 86 | if (fi->isSymLink() ){ |
87 | QString symLink=fi->readLink(); | 87 | QString symLink=fi->readLink(); |
88 | // qDebug("Symlink detected "+symLink); | 88 | // qDebug("Symlink detected "+symLink); |
89 | QFileInfo sym( symLink); | 89 | QFileInfo sym( symLink); |
90 | fileS.sprintf( "%10li", sym.size() ); | 90 | fileS.sprintf( "%10li", sym.size() ); |
91 | fileL.sprintf( "%s -> %s", sym.fileName().data(),sym.absFilePath().data() ); | 91 | fileL.sprintf( "%s -> %s", sym.fileName().data(),sym.absFilePath().data() ); |
92 | 92 | ||
93 | } else { | 93 | } else { |
94 | // qDebug("Not a dir: "+currentDir.canonicalPath()+fileL); | 94 | // qDebug("Not a dir: "+currentDir.canonicalPath()+fileL); |
95 | fileS.sprintf( "%10li", fi->size() ); | 95 | fileS.sprintf( "%10li", fi->size() ); |
96 | fileL.sprintf( "%s",fi->fileName().data() ); | 96 | fileL.sprintf( "%s",fi->fileName().data() ); |
97 | if( QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+fileL)).exists() ) { | 97 | if( QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+fileL)).exists() ) { |
98 | fileL+="/"; | 98 | fileL+="/"; |
99 | // qDebug(currentDir.canonicalPath()+fileL); | 99 | // qDebug( fileL); |
100 | } | 100 | } |
101 | } | 101 | } |
102 | item= new QListViewItem( ListView,fileL,fileS ); | 102 | item= new QListViewItem( ListView,fileL,fileS ); |
103 | ++it; | 103 | ++it; |
104 | } | 104 | } |
105 | ListView->setSorting( 2, FALSE); | 105 | ListView->setSorting( 2, FALSE); |
106 | dirLabel->setText(currentDir.canonicalPath()); | 106 | dirLabel->setText(currentDir.canonicalPath()); |
107 | } | 107 | } |
108 | 108 | ||
109 | void fileBrowser::upDir() | 109 | void fileBrowser::upDir() |
110 | { | 110 | { |
111 | // qDebug(currentDir.canonicalPath()); | 111 | // qDebug(currentDir.canonicalPath()); |
112 | } | 112 | } |
113 | 113 | ||
114 | void fileBrowser::listDoubleClicked(QListViewItem *selectedItem) | 114 | void fileBrowser::listDoubleClicked(QListViewItem *selectedItem) |
115 | { | 115 | { |
116 | } | 116 | } |
117 | 117 | ||
118 | // you may want to switch these 2 functions. I like single clicks | 118 | // you may want to switch these 2 functions. I like single clicks |
119 | void fileBrowser::listClicked(QListViewItem *selectedItem) | 119 | void fileBrowser::listClicked(QListViewItem *selectedItem) |
120 | { | 120 | { |
121 | QString strItem=selectedItem->text(0); | 121 | QString strItem=selectedItem->text(0); |
122 | QString strSize=selectedItem->text(1); | 122 | QString strSize=selectedItem->text(1); |
123 | // qDebug("strItem is "+strItem); | 123 | // qDebug("strItem is "+strItem); |
124 | strSize.stripWhiteSpace(); | 124 | strSize.stripWhiteSpace(); |
125 | // qDebug(strSize); | 125 | // qDebug(strSize); |
126 | 126 | ||
127 | if(strItem.find("@",0,TRUE) !=-1 || strItem.find("->",0,TRUE) !=-1 ) { //if symlink | 127 | if(strItem.find("@",0,TRUE) !=-1 || strItem.find("->",0,TRUE) !=-1 ) { //if symlink |
128 | // is symlink | 128 | // is symlink |
129 | QString strItem2=strItem.right( (strItem.length()-strItem.find("->",0,TRUE)) -4); | 129 | QString strItem2=strItem.right( (strItem.length()-strItem.find("->",0,TRUE)) -4); |
130 | // qDebug("strItem symlink is "+strItem2); | 130 | // qDebug("strItem symlink is "+strItem2); |
131 | if(QDir(strItem2).exists() ) { | 131 | if(QDir(strItem2).exists() ) { |
132 | currentDir.cd(strItem2, TRUE); | 132 | currentDir.cd(strItem2, TRUE); |
133 | populateList(); | 133 | populateList(); |
134 | } | 134 | } |
135 | } else { // not a symlink | 135 | } else { // not a symlink |
136 | if(strItem.find(". .",0,TRUE) && strItem.find("/",0,TRUE)!=-1 ) { | 136 | if(strItem.find(". .",0,TRUE) && strItem.find("/",0,TRUE)!=-1 ) { |
137 | if(QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem)).exists() ) { | 137 | if(QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem)).exists() ) { |
138 | strItem=QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem); | 138 | strItem=QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem); |
139 | currentDir.cd(strItem,FALSE); | 139 | currentDir.cd(strItem,FALSE); |
140 | // qDebug("Path is "+strItem); | 140 | // qDebug("Path is "+strItem); |
141 | populateList(); | 141 | populateList(); |
142 | } else { | 142 | } else { |
143 | currentDir.cdUp(); | 143 | currentDir.cdUp(); |
144 | populateList(); | 144 | populateList(); |
145 | } | 145 | } |
146 | if(QDir(strItem).exists()){ | 146 | if(QDir(strItem).exists()){ |
147 | currentDir.cd(strItem, TRUE); | 147 | currentDir.cd(strItem, TRUE); |
diff --git a/core/apps/textedit/fileSaver.cpp b/core/apps/textedit/fileSaver.cpp index de594aa..f3be914 100644 --- a/core/apps/textedit/fileSaver.cpp +++ b/core/apps/textedit/fileSaver.cpp | |||
@@ -37,107 +37,106 @@ fileSaver::fileSaver( QWidget* parent, const char* name, bool modal, WFlags fl | |||
37 | // qDebug( tmpFileName); | 37 | // qDebug( tmpFileName); |
38 | dirLabel = new QLabel(this, "DirLabel"); | 38 | dirLabel = new QLabel(this, "DirLabel"); |
39 | dirLabel->setText(currentDir.canonicalPath()); | 39 | dirLabel->setText(currentDir.canonicalPath()); |
40 | dirLabel->setGeometry(10,20,230,15); | 40 | dirLabel->setGeometry(10,20,230,15); |
41 | 41 | ||
42 | QPushButton *homeButton; | 42 | QPushButton *homeButton; |
43 | homeButton = new QPushButton(Resource::loadIconSet("home"),"",this,"homeButton"); | 43 | homeButton = new QPushButton(Resource::loadIconSet("home"),"",this,"homeButton"); |
44 | homeButton->setGeometry(200,4,25,25); | 44 | homeButton->setGeometry(200,4,25,25); |
45 | connect(homeButton,SIGNAL(released()),this,SLOT(homeButtonPushed()) ); | 45 | connect(homeButton,SIGNAL(released()),this,SLOT(homeButtonPushed()) ); |
46 | 46 | ||
47 | ListView = new QListView( this, "ListView" ); | 47 | ListView = new QListView( this, "ListView" ); |
48 | ListView->addColumn( tr( "Name" ) ); | 48 | ListView->addColumn( tr( "Name" ) ); |
49 | ListView->setColumnWidth(0,140); | 49 | ListView->setColumnWidth(0,140); |
50 | ListView->setSorting( 2, FALSE); | 50 | ListView->setSorting( 2, FALSE); |
51 | ListView->addColumn( tr( "Size" ) ); | 51 | ListView->addColumn( tr( "Size" ) ); |
52 | ListView->setColumnWidth(1,59); | 52 | ListView->setColumnWidth(1,59); |
53 | ListView->setColumnWidthMode(0,QListView::Manual); | 53 | ListView->setColumnWidthMode(0,QListView::Manual); |
54 | ListView->setColumnAlignment(1,QListView::AlignRight); | 54 | ListView->setColumnAlignment(1,QListView::AlignRight); |
55 | // ListView->setMultiSelection(true); | 55 | // ListView->setMultiSelection(true); |
56 | // ListView->setSelectionMode(QListView::Extended); | 56 | // ListView->setSelectionMode(QListView::Extended); |
57 | 57 | ||
58 | ListView->setAllColumnsShowFocus( TRUE ); | 58 | ListView->setAllColumnsShowFocus( TRUE ); |
59 | ListView->setGeometry( QRect( 10,35,220,125)); | 59 | ListView->setGeometry( QRect( 10,35,220,125)); |
60 | 60 | ||
61 | fileEdit= new QLineEdit(this); | 61 | fileEdit= new QLineEdit(this); |
62 | fileEdit->setGeometry( QRect( 10, 162, 205, 17)); | 62 | fileEdit->setGeometry( QRect( 10, 162, 205, 17)); |
63 | 63 | ||
64 | fileEdit->setText( tmpFileName); | 64 | fileEdit->setText( tmpFileName); |
65 | 65 | ||
66 | filePermCheck = new QCheckBox( this, "SetFilePerms" ); | 66 | filePermCheck = new QCheckBox( this, "SetFilePerms" ); |
67 | filePermCheck->setText("set file permissions"); | 67 | filePermCheck->setText("set file permissions"); |
68 | filePermCheck->setGeometry(10, 178, 150,17); | 68 | filePermCheck->setGeometry(10, 178, 150,17); |
69 | // signals and slots connections | 69 | // signals and slots connections |
70 | connect( ListView, SIGNAL(doubleClicked( QListViewItem*)), SLOT(listDoubleClicked(QListViewItem *)) ); | 70 | connect( ListView, SIGNAL(doubleClicked( QListViewItem*)), SLOT(listDoubleClicked(QListViewItem *)) ); |
71 | connect( ListView, SIGNAL(pressed( QListViewItem*)), SLOT(listClicked(QListViewItem *)) ); | 71 | connect( ListView, SIGNAL(pressed( QListViewItem*)), SLOT(listClicked(QListViewItem *)) ); |
72 | 72 | ||
73 | // tmpFileName=fi.FilePath(); | 73 | // tmpFileName=fi.FilePath(); |
74 | // qDebug( tmpFileName); | 74 | // qDebug( tmpFileName); |
75 | currentDir.setPath( QDir::currentDirPath() ); | 75 | currentDir.setPath( QDir::currentDirPath() ); |
76 | populateList(); | 76 | populateList(); |
77 | move(0,15); | 77 | move(0,15); |
78 | 78 | ||
79 | } | 79 | } |
80 | 80 | ||
81 | fileSaver::~fileSaver() | 81 | fileSaver::~fileSaver() |
82 | { | 82 | { |
83 | } | 83 | } |
84 | 84 | ||
85 | |||
86 | void fileSaver::populateList() | 85 | void fileSaver::populateList() |
87 | { | 86 | { |
88 | ListView->clear(); | 87 | ListView->clear(); |
89 | currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden ); | 88 | currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden ); |
90 | currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst); | 89 | currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst); |
91 | currentDir.setMatchAllDirs(TRUE); | 90 | currentDir.setMatchAllDirs(TRUE); |
92 | 91 | ||
93 | currentDir.setNameFilter("*"); | 92 | currentDir.setNameFilter("*"); |
94 | QString fileL, fileS; | 93 | QString fileL, fileS; |
95 | const QFileInfoList *list = currentDir.entryInfoList(QDir::All /*, QDir::SortByMask*/); | 94 | const QFileInfoList *list = currentDir.entryInfoList( /*QDir::All*/ /*, QDir::SortByMask*/); |
96 | QFileInfoListIterator it(*list); | 95 | QFileInfoListIterator it(*list); |
97 | QFileInfo *fi; | 96 | QFileInfo *fi; |
98 | while ( (fi=it.current()) ) { | 97 | while ( (fi=it.current()) ) { |
99 | 98 | ||
100 | if (fi->isSymLink() ){ | 99 | if (fi->isSymLink() ){ |
101 | QString symLink=fi->readLink(); | 100 | QString symLink=fi->readLink(); |
102 | // qDebug("Symlink detected "+symLink); | 101 | // qDebug("Symlink detected "+symLink); |
103 | QFileInfo sym( symLink); | 102 | QFileInfo sym( symLink); |
104 | fileS.sprintf( "%10li", sym.size() ); | 103 | fileS.sprintf( "%10li", sym.size() ); |
105 | fileL.sprintf( "%s -> %s", sym.fileName().data(),sym.absFilePath().data() ); | 104 | fileL.sprintf( "%s -> %s", sym.fileName().data(),sym.absFilePath().data() ); |
106 | 105 | ||
107 | } else { | 106 | } else { |
108 | // // qDebug("Not a dir: "+currentDir.canonicalPath()+fileL); | 107 | // // qDebug("Not a dir: "+currentDir.canonicalPath()+fileL); |
109 | fileS.sprintf( "%10li", fi->size() ); | 108 | fileS.sprintf( "%10li", fi->size() ); |
110 | fileL.sprintf( "%s",fi->fileName().data() ); | 109 | fileL.sprintf( "%s",fi->fileName().data() ); |
111 | if( QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+fileL)).exists() ) { | 110 | if( QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+fileL)).exists() ) { |
112 | fileL+="/"; | 111 | fileL+="/"; |
113 | // qDebug(currentDir.canonicalPath()+fileL); | 112 | // qDebug(currentDir.canonicalPath()+fileL); |
114 | } | 113 | } |
115 | } | 114 | } |
116 | item= new QListViewItem( ListView,fileL,fileS ); | 115 | item= new QListViewItem( ListView,fileL,fileS ); |
117 | ++it; | 116 | ++it; |
118 | } | 117 | } |
119 | ListView->setSorting( 2, FALSE); | 118 | ListView->setSorting( 2, FALSE); |
120 | dirLabel->setText(currentDir.canonicalPath()); | 119 | dirLabel->setText(currentDir.canonicalPath()); |
121 | 120 | ||
122 | 121 | ||
123 | } | 122 | } |
124 | 123 | ||
125 | void fileSaver::upDir() | 124 | void fileSaver::upDir() |
126 | { | 125 | { |
127 | // qDebug(currentDir.canonicalPath()); | 126 | // qDebug(currentDir.canonicalPath()); |
128 | } | 127 | } |
129 | 128 | ||
130 | void fileSaver::listDoubleClicked(QListViewItem *selectedItem) | 129 | void fileSaver::listDoubleClicked(QListViewItem *selectedItem) |
131 | { | 130 | { |
132 | } | 131 | } |
133 | 132 | ||
134 | void fileSaver::listClicked(QListViewItem *selectedItem) | 133 | void fileSaver::listClicked(QListViewItem *selectedItem) |
135 | { | 134 | { |
136 | QString strItem=selectedItem->text(0); | 135 | QString strItem=selectedItem->text(0); |
137 | QString strSize=selectedItem->text(1); | 136 | QString strSize=selectedItem->text(1); |
138 | // qDebug("strItem is "+strItem); | 137 | // qDebug("strItem is "+strItem); |
139 | strSize.stripWhiteSpace(); | 138 | strSize.stripWhiteSpace(); |
140 | // qDebug(strSize); | 139 | // qDebug(strSize); |
141 | 140 | ||
142 | if(strItem.find("@",0,TRUE) !=-1 || strItem.find("->",0,TRUE) !=-1 ) { //if symlink | 141 | if(strItem.find("@",0,TRUE) !=-1 || strItem.find("->",0,TRUE) !=-1 ) { //if symlink |
143 | QString strItem2=strItem.right( (strItem.length()-strItem.find("->",0,TRUE)) -4); | 142 | QString strItem2=strItem.right( (strItem.length()-strItem.find("->",0,TRUE)) -4); |