summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2002-04-22 03:16:47 (UTC)
committer llornkcor <llornkcor>2002-04-22 03:16:47 (UTC)
commit0a4f886e48153d6f423cc8ad8b31ce491128d423 (patch) (unidiff)
tree6cbbf373919a5e0be34a2b541a7e7eedd27eea58
parent6417ac419f6aa07eec671f3821766c0c0cf958f0 (diff)
downloadopie-0a4f886e48153d6f423cc8ad8b31ce491128d423.zip
opie-0a4f886e48153d6f423cc8ad8b31ce491128d423.tar.gz
opie-0a4f886e48153d6f423cc8ad8b31ce491128d423.tar.bz2
added extern C for #include ftplib.h
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opieftp/opieftp.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/noncore/net/opieftp/opieftp.cpp b/noncore/net/opieftp/opieftp.cpp
index e15bbef..d78b7d1 100644
--- a/noncore/net/opieftp/opieftp.cpp
+++ b/noncore/net/opieftp/opieftp.cpp
@@ -1,271 +1,275 @@
1/*************************************************************************** 1/***************************************************************************
2 opieftp.cpp 2 opieftp.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//#define DEVELOPERS_VERSION 12//#define DEVELOPERS_VERSION
13 13
14#include "opieftp.h" 14#include "opieftp.h"
15
16extern "C" {
15#include "ftplib.h" 17#include "ftplib.h"
18}
19
16#include "inputDialog.h" 20#include "inputDialog.h"
17 21
18#include <qpe/qpemenubar.h> 22#include <qpe/qpemenubar.h>
19#include <qpe/qpetoolbar.h> 23#include <qpe/qpetoolbar.h>
20#include <qpe/qpeapplication.h> 24#include <qpe/qpeapplication.h>
21#include <qpe/resource.h> 25#include <qpe/resource.h>
22#include <qpe/qcopenvelope_qws.h> 26#include <qpe/qcopenvelope_qws.h>
23#include <qpe/config.h> 27#include <qpe/config.h>
24#include <qpe/mimetype.h> 28#include <qpe/mimetype.h>
25#include <qpe/qpemessagebox.h> 29#include <qpe/qpemessagebox.h>
26 30
27#include <qstringlist.h> 31#include <qstringlist.h>
28#include <qtextstream.h> 32#include <qtextstream.h>
29#include <qpushbutton.h> 33#include <qpushbutton.h>
30#include <qtoolbutton.h> 34#include <qtoolbutton.h>
31#include <qdatetime.h> 35#include <qdatetime.h>
32#include <qdir.h> 36#include <qdir.h>
33#include <qfile.h> 37#include <qfile.h>
34#include <qstring.h> 38#include <qstring.h>
35#include <qcombobox.h> 39#include <qcombobox.h>
36#include <qpopupmenu.h> 40#include <qpopupmenu.h>
37#include <qlistview.h> 41#include <qlistview.h>
38#include <qmainwindow.h> 42#include <qmainwindow.h>
39#include <qlabel.h> 43#include <qlabel.h>
40#include <qprogressbar.h> 44#include <qprogressbar.h>
41#include <qspinbox.h> 45#include <qspinbox.h>
42#include <qtabwidget.h> 46#include <qtabwidget.h>
43#include <qwidget.h> 47#include <qwidget.h>
44#include <qlayout.h> 48#include <qlayout.h>
45#include <qimage.h> 49#include <qimage.h>
46#include <qpixmap.h> 50#include <qpixmap.h>
47#include <qmessagebox.h> 51#include <qmessagebox.h>
48#include <qlineedit.h> 52#include <qlineedit.h>
49#include <qregexp.h> 53#include <qregexp.h>
50 54
51#include <unistd.h> 55#include <unistd.h>
52#include <stdlib.h> 56#include <stdlib.h>
53 57
54 58
55QProgressBar *ProgressBar; 59QProgressBar *ProgressBar;
56static netbuf *conn=NULL; 60static netbuf *conn=NULL;
57 61
58static int log_progress(netbuf *ctl, int xfered, void *arg) 62static int log_progress(netbuf *ctl, int xfered, void *arg)
59{ 63{
60 int fsz = *(int *)arg; 64 int fsz = *(int *)arg;
61 int pct = (xfered * 100) / fsz; 65 int pct = (xfered * 100) / fsz;
62// printf("%3d%%\r", pct); 66// printf("%3d%%\r", pct);
63// fflush(stdout); 67// fflush(stdout);
64 ProgressBar->setProgress(xfered); 68 ProgressBar->setProgress(xfered);
65 qApp->processEvents(); 69 qApp->processEvents();
66 return 1; 70 return 1;
67} 71}
68 72
69OpieFtp::OpieFtp( ) 73OpieFtp::OpieFtp( )
70 : QMainWindow( ) 74 : QMainWindow( )
71{ 75{
72 setCaption( tr( "OpieFtp" ) ); 76 setCaption( tr( "OpieFtp" ) );
73 77
74 QGridLayout *layout = new QGridLayout( this ); 78 QGridLayout *layout = new QGridLayout( this );
75 layout->setSpacing( 2); 79 layout->setSpacing( 2);
76 layout->setMargin( 2); 80 layout->setMargin( 2);
77 81
78 connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) ); 82 connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) );
79 83
80 QPEMenuBar *menuBar = new QPEMenuBar(this); 84 QPEMenuBar *menuBar = new QPEMenuBar(this);
81// QPEToolBar *menuBar = new QPEToolBar(this); 85// QPEToolBar *menuBar = new QPEToolBar(this);
82// menuBar->setHorizontalStretchable( TRUE ); 86// menuBar->setHorizontalStretchable( TRUE );
83 87
84 connectionMenu = new QPopupMenu( this ); 88 connectionMenu = new QPopupMenu( this );
85 localMenu = new QPopupMenu( this ); 89 localMenu = new QPopupMenu( this );
86 remoteMenu = new QPopupMenu( this ); 90 remoteMenu = new QPopupMenu( this );
87 tabMenu = new QPopupMenu( this ); 91 tabMenu = new QPopupMenu( this );
88 92
89 layout->addMultiCellWidget( menuBar, 0, 0, 0, 2 ); 93 layout->addMultiCellWidget( menuBar, 0, 0, 0, 2 );
90 94
91 menuBar->insertItem( tr( "Connection" ), connectionMenu); 95 menuBar->insertItem( tr( "Connection" ), connectionMenu);
92 menuBar->insertItem( tr( "Local" ), localMenu); 96 menuBar->insertItem( tr( "Local" ), localMenu);
93 menuBar->insertItem( tr( "Remote" ), remoteMenu); 97 menuBar->insertItem( tr( "Remote" ), remoteMenu);
94 menuBar->insertItem( tr( "View" ), tabMenu); 98 menuBar->insertItem( tr( "View" ), tabMenu);
95 99
96 connectionMenu->insertItem( tr( "New" ), this, SLOT( newConnection() )); 100 connectionMenu->insertItem( tr( "New" ), this, SLOT( newConnection() ));
97 connectionMenu->insertItem( tr( "Connect" ), this, SLOT( connector() )); 101 connectionMenu->insertItem( tr( "Connect" ), this, SLOT( connector() ));
98 connectionMenu->insertItem( tr( "Disconnect" ), this, SLOT( disConnector() )); 102 connectionMenu->insertItem( tr( "Disconnect" ), this, SLOT( disConnector() ));
99 103
100 localMenu->insertItem( tr( "Show Hidden Files" ), this, SLOT( showHidden() )); 104 localMenu->insertItem( tr( "Show Hidden Files" ), this, SLOT( showHidden() ));
101 localMenu->insertSeparator(); 105 localMenu->insertSeparator();
102 localMenu->insertItem( tr( "Upload" ), this, SLOT( localUpload() )); 106 localMenu->insertItem( tr( "Upload" ), this, SLOT( localUpload() ));
103 localMenu->insertItem( tr( "Make Directory" ), this, SLOT( localMakDir() )); 107 localMenu->insertItem( tr( "Make Directory" ), this, SLOT( localMakDir() ));
104 localMenu->insertItem( tr( "Rename" ), this, SLOT( localRename() )); 108 localMenu->insertItem( tr( "Rename" ), this, SLOT( localRename() ));
105 localMenu->insertSeparator(); 109 localMenu->insertSeparator();
106 localMenu->insertItem( tr( "Delete" ), this, SLOT( localDelete() )); 110 localMenu->insertItem( tr( "Delete" ), this, SLOT( localDelete() ));
107 localMenu->setCheckable(TRUE); 111 localMenu->setCheckable(TRUE);
108 112
109 remoteMenu->insertItem( tr( "Download" ), this, SLOT( remoteDownload() )); 113 remoteMenu->insertItem( tr( "Download" ), this, SLOT( remoteDownload() ));
110 remoteMenu->insertItem( tr( "Make Directory" ), this, SLOT( remoteMakDir() )); 114 remoteMenu->insertItem( tr( "Make Directory" ), this, SLOT( remoteMakDir() ));
111 remoteMenu->insertItem( tr( "Rename" ), this, SLOT( remoteRename() )); 115 remoteMenu->insertItem( tr( "Rename" ), this, SLOT( remoteRename() ));
112 remoteMenu->insertSeparator(); 116 remoteMenu->insertSeparator();
113 remoteMenu->insertItem( tr( "Delete" ), this, SLOT( remoteDelete() )); 117 remoteMenu->insertItem( tr( "Delete" ), this, SLOT( remoteDelete() ));
114 118
115 tabMenu->insertItem( tr( "Switch to Local" ), this, SLOT( switchToLocalTab() )); 119 tabMenu->insertItem( tr( "Switch to Local" ), this, SLOT( switchToLocalTab() ));
116 tabMenu->insertItem( tr( "Switch to Remote" ), this, SLOT( switchToRemoteTab() )); 120 tabMenu->insertItem( tr( "Switch to Remote" ), this, SLOT( switchToRemoteTab() ));
117 tabMenu->insertItem( tr( "Switch to Config" ), this, SLOT( switchToConfigTab() )); 121 tabMenu->insertItem( tr( "Switch to Config" ), this, SLOT( switchToConfigTab() ));
118 tabMenu->insertSeparator(); 122 tabMenu->insertSeparator();
119 tabMenu->insertItem( tr( "About" ), this, SLOT( doAbout() )); 123 tabMenu->insertItem( tr( "About" ), this, SLOT( doAbout() ));
120 tabMenu->setCheckable(TRUE); 124 tabMenu->setCheckable(TRUE);
121 125
122 126
123 127
124 cdUpButton = new QPushButton(Resource::loadIconSet("up"),"",this,"cdUpButton"); 128 cdUpButton = new QPushButton(Resource::loadIconSet("up"),"",this,"cdUpButton");
125 cdUpButton ->setFixedSize( QSize( 20, 20 ) ); 129 cdUpButton ->setFixedSize( QSize( 20, 20 ) );
126 connect( cdUpButton ,SIGNAL(released()),this,SLOT( upDir()) ); 130 connect( cdUpButton ,SIGNAL(released()),this,SLOT( upDir()) );
127 cdUpButton ->setFlat(TRUE); 131 cdUpButton ->setFlat(TRUE);
128 layout->addMultiCellWidget( cdUpButton, 0, 0, 3, 3 ); 132 layout->addMultiCellWidget( cdUpButton, 0, 0, 3, 3 );
129 cdUpButton->hide(); 133 cdUpButton->hide();
130 134
131// docButton = new QPushButton(Resource::loadIconSet("DocsIcon"),"",this,"docsButton"); 135// docButton = new QPushButton(Resource::loadIconSet("DocsIcon"),"",this,"docsButton");
132// docButton->setFixedSize( QSize( 20, 20 ) ); 136// docButton->setFixedSize( QSize( 20, 20 ) );
133// connect( docButton,SIGNAL(released()),this,SLOT( docButtonPushed()) ); 137// connect( docButton,SIGNAL(released()),this,SLOT( docButtonPushed()) );
134// docButton->setFlat(TRUE); 138// docButton->setFlat(TRUE);
135// layout->addMultiCellWidget( docButton, 0, 0, 6, 6 ); 139// layout->addMultiCellWidget( docButton, 0, 0, 6, 6 );
136 140
137 homeButton = new QPushButton( Resource::loadIconSet("home"),"",this,"homeButton"); 141 homeButton = new QPushButton( Resource::loadIconSet("home"),"",this,"homeButton");
138 homeButton->setFixedSize( QSize( 20, 20 ) ); 142 homeButton->setFixedSize( QSize( 20, 20 ) );
139 connect(homeButton,SIGNAL(released()),this,SLOT(homeButtonPushed()) ); 143 connect(homeButton,SIGNAL(released()),this,SLOT(homeButtonPushed()) );
140 homeButton->setFlat(TRUE); 144 homeButton->setFlat(TRUE);
141 layout->addMultiCellWidget( homeButton, 0, 0, 4, 4); 145 layout->addMultiCellWidget( homeButton, 0, 0, 4, 4);
142 homeButton->hide(); 146 homeButton->hide();
143 147
144 TabWidget = new QTabWidget( this, "TabWidget" ); 148 TabWidget = new QTabWidget( this, "TabWidget" );
145 layout->addMultiCellWidget( TabWidget, 1, 1, 0, 4 ); 149 layout->addMultiCellWidget( TabWidget, 1, 1, 0, 4 );
146 150
147// TabWidget->setTabShape(QTabWidget::Triangular); 151// TabWidget->setTabShape(QTabWidget::Triangular);
148 152
149 tab = new QWidget( TabWidget, "tab" ); 153 tab = new QWidget( TabWidget, "tab" );
150 tabLayout = new QGridLayout( tab ); 154 tabLayout = new QGridLayout( tab );
151 tabLayout->setSpacing( 2); 155 tabLayout->setSpacing( 2);
152 tabLayout->setMargin( 2); 156 tabLayout->setMargin( 2);
153 157
154 Local_View = new QListView( tab, "Local_View" ); 158 Local_View = new QListView( tab, "Local_View" );
155// Local_View->setResizePolicy( QListView::AutoOneFit ); 159// Local_View->setResizePolicy( QListView::AutoOneFit );
156 Local_View->addColumn( tr("File"),150); 160 Local_View->addColumn( tr("File"),150);
157 Local_View->addColumn( tr("Date"),-1); 161 Local_View->addColumn( tr("Date"),-1);
158 Local_View->setColumnAlignment(1,QListView::AlignRight); 162 Local_View->setColumnAlignment(1,QListView::AlignRight);
159 Local_View->addColumn( tr("Size"),-1); 163 Local_View->addColumn( tr("Size"),-1);
160 Local_View->setColumnAlignment(2,QListView::AlignRight); 164 Local_View->setColumnAlignment(2,QListView::AlignRight);
161 Local_View->setAllColumnsShowFocus(TRUE); 165 Local_View->setAllColumnsShowFocus(TRUE);
162 166
163 Local_View->setMultiSelection( TRUE); 167 Local_View->setMultiSelection( TRUE);
164 Local_View->setSelectionMode(QListView::Extended); 168 Local_View->setSelectionMode(QListView::Extended);
165 Local_View->setFocusPolicy(QWidget::ClickFocus); 169 Local_View->setFocusPolicy(QWidget::ClickFocus);
166 170
167 QPEApplication::setStylusOperation( Local_View->viewport(),QPEApplication::RightOnHold); 171 QPEApplication::setStylusOperation( Local_View->viewport(),QPEApplication::RightOnHold);
168 172
169 tabLayout->addWidget( Local_View, 0, 0 ); 173 tabLayout->addWidget( Local_View, 0, 0 );
170 174
171 connect( Local_View, SIGNAL( clicked( QListViewItem*)), 175 connect( Local_View, SIGNAL( clicked( QListViewItem*)),
172 this,SLOT( localListClicked(QListViewItem *)) ); 176 this,SLOT( localListClicked(QListViewItem *)) );
173// connect( Local_View, SIGNAL( doubleClicked( QListViewItem*)), 177// connect( Local_View, SIGNAL( doubleClicked( QListViewItem*)),
174// this,SLOT( localListClicked(QListViewItem *)) ); 178// this,SLOT( localListClicked(QListViewItem *)) );
175 connect( Local_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)), 179 connect( Local_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)),
176 this,SLOT( ListPressed(int, QListViewItem *, const QPoint&, int)) ); 180 this,SLOT( ListPressed(int, QListViewItem *, const QPoint&, int)) );
177 181
178 TabWidget->insertTab( tab, tr( "Local" ) ); 182 TabWidget->insertTab( tab, tr( "Local" ) );
179 183
180 tab_2 = new QWidget( TabWidget, "tab_2" ); 184 tab_2 = new QWidget( TabWidget, "tab_2" );
181 tabLayout_2 = new QGridLayout( tab_2 ); 185 tabLayout_2 = new QGridLayout( tab_2 );
182 tabLayout_2->setSpacing( 2); 186 tabLayout_2->setSpacing( 2);
183 tabLayout_2->setMargin( 2); 187 tabLayout_2->setMargin( 2);
184 188
185 Remote_View = new QListView( tab_2, "Remote_View" ); 189 Remote_View = new QListView( tab_2, "Remote_View" );
186 Remote_View->addColumn( tr("File"),150); 190 Remote_View->addColumn( tr("File"),150);
187 Remote_View->addColumn( tr("Date"),-1); 191 Remote_View->addColumn( tr("Date"),-1);
188 Remote_View->setColumnAlignment(1,QListView::AlignRight); 192 Remote_View->setColumnAlignment(1,QListView::AlignRight);
189 Remote_View->addColumn( tr("Size"),-1); 193 Remote_View->addColumn( tr("Size"),-1);
190 Remote_View->setColumnAlignment(2,QListView::AlignRight); 194 Remote_View->setColumnAlignment(2,QListView::AlignRight);
191 Remote_View->addColumn( tr("Dir"),-1); 195 Remote_View->addColumn( tr("Dir"),-1);
192 Remote_View->setColumnAlignment(4,QListView::AlignRight); 196 Remote_View->setColumnAlignment(4,QListView::AlignRight);
193 Remote_View->setAllColumnsShowFocus(TRUE); 197 Remote_View->setAllColumnsShowFocus(TRUE);
194 198
195 Remote_View->setMultiSelection( FALSE); 199 Remote_View->setMultiSelection( FALSE);
196 Remote_View->setSelectionMode(QListView::Extended); 200 Remote_View->setSelectionMode(QListView::Extended);
197 Remote_View->setFocusPolicy(QWidget::ClickFocus); 201 Remote_View->setFocusPolicy(QWidget::ClickFocus);
198 202
199 QPEApplication::setStylusOperation( Remote_View->viewport(),QPEApplication::RightOnHold); 203 QPEApplication::setStylusOperation( Remote_View->viewport(),QPEApplication::RightOnHold);
200 204
201 connect( Remote_View, SIGNAL( clicked( QListViewItem*)), 205 connect( Remote_View, SIGNAL( clicked( QListViewItem*)),
202 this,SLOT( remoteListClicked(QListViewItem *)) ); 206 this,SLOT( remoteListClicked(QListViewItem *)) );
203 connect( Remote_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)), 207 connect( Remote_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)),
204 this,SLOT( RemoteListPressed(int, QListViewItem *, const QPoint&, int)) ); 208 this,SLOT( RemoteListPressed(int, QListViewItem *, const QPoint&, int)) );
205 209
206 tabLayout_2->addWidget( Remote_View, 0, 0 ); 210 tabLayout_2->addWidget( Remote_View, 0, 0 );
207 211
208 TabWidget->insertTab( tab_2, tr( "Remote" ) ); 212 TabWidget->insertTab( tab_2, tr( "Remote" ) );
209 213
210 tab_3 = new QWidget( TabWidget, "tab_3" ); 214 tab_3 = new QWidget( TabWidget, "tab_3" );
211 tabLayout_3 = new QGridLayout( tab_3 ); 215 tabLayout_3 = new QGridLayout( tab_3 );
212 tabLayout_3->setSpacing( 2); 216 tabLayout_3->setSpacing( 2);
213 tabLayout_3->setMargin( 2); 217 tabLayout_3->setMargin( 2);
214 218
215 TextLabel1 = new QLabel( tab_3, "TextLabel1" ); 219 TextLabel1 = new QLabel( tab_3, "TextLabel1" );
216 TextLabel1->setText( tr( "Username" ) ); 220 TextLabel1->setText( tr( "Username" ) );
217 tabLayout_3->addMultiCellWidget( TextLabel1, 0, 0, 0, 1 ); 221 tabLayout_3->addMultiCellWidget( TextLabel1, 0, 0, 0, 1 );
218 222
219 UsernameComboBox = new QComboBox( FALSE, tab_3, "UsernameComboBox" ); 223 UsernameComboBox = new QComboBox( FALSE, tab_3, "UsernameComboBox" );
220 UsernameComboBox->setEditable(TRUE); 224 UsernameComboBox->setEditable(TRUE);
221 tabLayout_3->addMultiCellWidget( UsernameComboBox, 1, 1, 0, 1 ); 225 tabLayout_3->addMultiCellWidget( UsernameComboBox, 1, 1, 0, 1 );
222 226
223 TextLabel2 = new QLabel( tab_3, "TextLabel2" ); 227 TextLabel2 = new QLabel( tab_3, "TextLabel2" );
224 TextLabel2->setText( tr( "Password" ) ); 228 TextLabel2->setText( tr( "Password" ) );
225 tabLayout_3->addMultiCellWidget( TextLabel2, 0, 0, 2, 3 ); 229 tabLayout_3->addMultiCellWidget( TextLabel2, 0, 0, 2, 3 );
226 230
227 PasswordEdit = new QLineEdit( "", tab_3, "PasswordComboBox" ); 231 PasswordEdit = new QLineEdit( "", tab_3, "PasswordComboBox" );
228 PasswordEdit->setEchoMode(QLineEdit::Password); 232 PasswordEdit->setEchoMode(QLineEdit::Password);
229 tabLayout_3->addMultiCellWidget( PasswordEdit, 1, 1, 2, 3 ); 233 tabLayout_3->addMultiCellWidget( PasswordEdit, 1, 1, 2, 3 );
230 234
231 TextLabel3 = new QLabel( tab_3, "TextLabel3" ); 235 TextLabel3 = new QLabel( tab_3, "TextLabel3" );
232 TextLabel3->setText( tr( "Remote server" ) ); 236 TextLabel3->setText( tr( "Remote server" ) );
233 tabLayout_3->addMultiCellWidget( TextLabel3, 2, 2, 0, 1 ); 237 tabLayout_3->addMultiCellWidget( TextLabel3, 2, 2, 0, 1 );
234 238
235 ServerComboBox = new QComboBox( FALSE, tab_3, "ServerComboBox" ); 239 ServerComboBox = new QComboBox( FALSE, tab_3, "ServerComboBox" );
236 ServerComboBox->setEditable(TRUE); 240 ServerComboBox->setEditable(TRUE);
237 tabLayout_3->addMultiCellWidget( ServerComboBox, 3, 3, 0, 1 ); 241 tabLayout_3->addMultiCellWidget( ServerComboBox, 3, 3, 0, 1 );
238 242
239 connect(ServerComboBox,SIGNAL(activated(int)),this,SLOT(serverComboSelected(int ) )); 243 connect(ServerComboBox,SIGNAL(activated(int)),this,SLOT(serverComboSelected(int ) ));
240 connect(ServerComboBox,SIGNAL(textChanged(const QString &)),this,SLOT(serverComboEdited(const QString & ) )); 244 connect(ServerComboBox,SIGNAL(textChanged(const QString &)),this,SLOT(serverComboEdited(const QString & ) ));
241 245
242 QLabel *TextLabel5 = new QLabel( tab_3, "TextLabel5" ); 246 QLabel *TextLabel5 = new QLabel( tab_3, "TextLabel5" );
243 TextLabel5->setText( tr( "Remote path" ) ); 247 TextLabel5->setText( tr( "Remote path" ) );
244 tabLayout_3->addMultiCellWidget( TextLabel5, 2, 2, 2, 3 ); 248 tabLayout_3->addMultiCellWidget( TextLabel5, 2, 2, 2, 3 );
245 249
246 250
247 remotePath = new QLineEdit( "/", tab_3, "remotePath" ); 251 remotePath = new QLineEdit( "/", tab_3, "remotePath" );
248 tabLayout_3->addMultiCellWidget( remotePath, 3, 3, 2, 3 ); 252 tabLayout_3->addMultiCellWidget( remotePath, 3, 3, 2, 3 );
249 253
250 TextLabel4 = new QLabel( tab_3, "TextLabel4" ); 254 TextLabel4 = new QLabel( tab_3, "TextLabel4" );
251 TextLabel4->setText( tr( "Port" ) ); 255 TextLabel4->setText( tr( "Port" ) );
252 tabLayout_3->addMultiCellWidget( TextLabel4, 4, 4, 0, 1 ); 256 tabLayout_3->addMultiCellWidget( TextLabel4, 4, 4, 0, 1 );
253 257
254 PortSpinBox = new QSpinBox( tab_3, "PortSpinBox" ); 258 PortSpinBox = new QSpinBox( tab_3, "PortSpinBox" );
255 PortSpinBox->setButtonSymbols( QSpinBox::UpDownArrows ); 259 PortSpinBox->setButtonSymbols( QSpinBox::UpDownArrows );
256 PortSpinBox->setMaxValue(32786); 260 PortSpinBox->setMaxValue(32786);
257 tabLayout_3->addMultiCellWidget( PortSpinBox, 4, 4, 1, 1); 261 tabLayout_3->addMultiCellWidget( PortSpinBox, 4, 4, 1, 1);
258 262
259 QPushButton *deleteServerBtn; 263 QPushButton *deleteServerBtn;
260 deleteServerBtn = new QPushButton( "Delete Server", tab_3 , "OpenButton" ); 264 deleteServerBtn = new QPushButton( "Delete Server", tab_3 , "OpenButton" );
261 tabLayout_3->addMultiCellWidget( deleteServerBtn, 5, 5, 2, 3); 265 tabLayout_3->addMultiCellWidget( deleteServerBtn, 5, 5, 2, 3);
262 266
263 connect(deleteServerBtn,SIGNAL(clicked()),SLOT(deleteServer())); 267 connect(deleteServerBtn,SIGNAL(clicked()),SLOT(deleteServer()));
264 268
265 connectServerBtn = new QPushButton( "Connect", tab_3 , "ConnectButton" ); 269 connectServerBtn = new QPushButton( "Connect", tab_3 , "ConnectButton" );
266 tabLayout_3->addMultiCellWidget( connectServerBtn, 5, 5, 0, 1); 270 tabLayout_3->addMultiCellWidget( connectServerBtn, 5, 5, 0, 1);
267 connectServerBtn->setToggleButton(TRUE); 271 connectServerBtn->setToggleButton(TRUE);
268 connect(connectServerBtn,SIGNAL( toggled( bool)),SLOT( connectorBtnToggled(bool) )); 272 connect(connectServerBtn,SIGNAL( toggled( bool)),SLOT( connectorBtnToggled(bool) ));
269 273
270 QSpacerItem* spacer = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); 274 QSpacerItem* spacer = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding );
271 tabLayout_3->addItem( spacer, 5, 0 ); 275 tabLayout_3->addItem( spacer, 5, 0 );
@@ -979,349 +983,351 @@ void OpieFtp::remoteDelete()
979 switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+"?" 983 switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+"?"
980 ,tr("Yes"),tr("No"),0,0,1) ) { 984 ,tr("Yes"),tr("No"),0,0,1) ) {
981 case 0: { 985 case 0: {
982 f=currentDir.canonicalPath()+"/"+f; 986 f=currentDir.canonicalPath()+"/"+f;
983 if(FtpRmdir( path.latin1(), conn) ==0) { 987 if(FtpRmdir( path.latin1(), conn) ==0) {
984 QString msg; 988 QString msg;
985 msg.sprintf(tr("Unable to remove directory\n")+"%s",FtpLastResponse(conn)); 989 msg.sprintf(tr("Unable to remove directory\n")+"%s",FtpLastResponse(conn));
986 msg.replace(QRegExp(":"),"\n"); 990 msg.replace(QRegExp(":"),"\n");
987 QMessageBox::message(tr("Note"),msg); 991 QMessageBox::message(tr("Note"),msg);
988 } 992 }
989 remoteDirList( (const QString &)currentRemoteDir); //this also calls populate 993 remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
990 } 994 }
991 break; 995 break;
992 }; 996 };
993 } else { 997 } else {
994 switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+"?" 998 switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+"?"
995 ,tr("Yes"),tr("No"),0,0,1) ) { 999 ,tr("Yes"),tr("No"),0,0,1) ) {
996 case 0: { 1000 case 0: {
997 QString path= currentRemoteDir+f; 1001 QString path= currentRemoteDir+f;
998 if(FtpDelete( path.latin1(), conn)==0) { 1002 if(FtpDelete( path.latin1(), conn)==0) {
999 QString msg; 1003 QString msg;
1000 msg.sprintf(tr("Unable to delete file\n")+"%s",FtpLastResponse(conn)); 1004 msg.sprintf(tr("Unable to delete file\n")+"%s",FtpLastResponse(conn));
1001 msg.replace(QRegExp(":"),"\n"); 1005 msg.replace(QRegExp(":"),"\n");
1002 QMessageBox::message(tr("Note"),msg); 1006 QMessageBox::message(tr("Note"),msg);
1003 } 1007 }
1004 remoteDirList( (const QString &)currentRemoteDir); //this also calls populate 1008 remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
1005 } 1009 }
1006 break; 1010 break;
1007 }; 1011 };
1008 } 1012 }
1009 } 1013 }
1010 } 1014 }
1011 QCopEnvelope ( "QPE/System", "notBusy()" ); 1015 QCopEnvelope ( "QPE/System", "notBusy()" );
1012} 1016}
1013 1017
1014void OpieFtp::remoteRename() 1018void OpieFtp::remoteRename()
1015{ 1019{
1016 QString curFile = Remote_View->currentItem()->text(0); 1020 QString curFile = Remote_View->currentItem()->text(0);
1017 InputDialog *fileDlg; 1021 InputDialog *fileDlg;
1018 fileDlg = new InputDialog(this,tr("Rename"),TRUE, 0); 1022 fileDlg = new InputDialog(this,tr("Rename"),TRUE, 0);
1019 fileDlg->setTextEdit((const QString &)curFile); 1023 fileDlg->setTextEdit((const QString &)curFile);
1020 fileDlg->exec(); 1024 fileDlg->exec();
1021 if( fileDlg->result() == 1 ) { 1025 if( fileDlg->result() == 1 ) {
1022 QString oldName = currentRemoteDir +"/"+ curFile; 1026 QString oldName = currentRemoteDir +"/"+ curFile;
1023 QString newName = currentRemoteDir +"/"+ fileDlg->LineEdit1->text();//+".playlist"; 1027 QString newName = currentRemoteDir +"/"+ fileDlg->LineEdit1->text();//+".playlist";
1024 QCopEnvelope ( "QPE/System", "busy()" ); 1028 QCopEnvelope ( "QPE/System", "busy()" );
1025 if(FtpRename( oldName.latin1(), newName.latin1(),conn) == 0) { 1029 if(FtpRename( oldName.latin1(), newName.latin1(),conn) == 0) {
1026 QString msg; 1030 QString msg;
1027 msg.sprintf(tr("Unable to rename file\n")+"%s",FtpLastResponse(conn)); 1031 msg.sprintf(tr("Unable to rename file\n")+"%s",FtpLastResponse(conn));
1028 msg.replace(QRegExp(":"),"\n"); 1032 msg.replace(QRegExp(":"),"\n");
1029 QMessageBox::message(tr("Note"),msg); 1033 QMessageBox::message(tr("Note"),msg);
1030 } 1034 }
1031 QCopEnvelope ( "QPE/System", "notBusy()" ); 1035 QCopEnvelope ( "QPE/System", "notBusy()" );
1032 remoteDirList( (const QString &)currentRemoteDir); //this also calls populate 1036 remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
1033 } 1037 }
1034} 1038}
1035 1039
1036void OpieFtp::localRename() 1040void OpieFtp::localRename()
1037{ 1041{
1038 QString curFile = Local_View->currentItem()->text(0); 1042 QString curFile = Local_View->currentItem()->text(0);
1039 InputDialog *fileDlg; 1043 InputDialog *fileDlg;
1040 fileDlg = new InputDialog(this,tr("Rename"),TRUE, 0); 1044 fileDlg = new InputDialog(this,tr("Rename"),TRUE, 0);
1041 fileDlg->setTextEdit((const QString &)curFile); 1045 fileDlg->setTextEdit((const QString &)curFile);
1042 fileDlg->exec(); 1046 fileDlg->exec();
1043 if( fileDlg->result() == 1 ) { 1047 if( fileDlg->result() == 1 ) {
1044 QString oldname = currentDir.canonicalPath() + "/" + curFile; 1048 QString oldname = currentDir.canonicalPath() + "/" + curFile;
1045 QString newName = currentDir.canonicalPath() + "/" + fileDlg->LineEdit1->text();//+".playlist"; 1049 QString newName = currentDir.canonicalPath() + "/" + fileDlg->LineEdit1->text();//+".playlist";
1046 if( rename(oldname.latin1(), newName.latin1())== -1) 1050 if( rename(oldname.latin1(), newName.latin1())== -1)
1047 QMessageBox::message(tr("Note"),tr("Could not rename")); 1051 QMessageBox::message(tr("Note"),tr("Could not rename"));
1048 } 1052 }
1049 populateLocalView(); 1053 populateLocalView();
1050} 1054}
1051 1055
1052void OpieFtp::currentPathComboActivated(const QString & currentPath) { 1056void OpieFtp::currentPathComboActivated(const QString & currentPath) {
1053 if (TabWidget->currentPageIndex() == 0) { 1057 if (TabWidget->currentPageIndex() == 0) {
1054 chdir( currentPath.latin1() ); 1058 chdir( currentPath.latin1() );
1055 currentDir.cd( currentPath, TRUE); 1059 currentDir.cd( currentPath, TRUE);
1056 populateLocalView(); 1060 populateLocalView();
1057 update(); 1061 update();
1058 } else { 1062 } else {
1059// chdir( currentPath.latin1() ); 1063// chdir( currentPath.latin1() );
1060// currentDir.cd( currentPath, TRUE); 1064// currentDir.cd( currentPath, TRUE);
1061// populateList(); 1065// populateList();
1062// update(); 1066// update();
1063 1067
1064 } 1068 }
1065} 1069}
1066 1070
1067void OpieFtp::fillCombo(const QString &currentPath) { 1071void OpieFtp::fillCombo(const QString &currentPath) {
1068 1072
1069 currentPathCombo->lineEdit()->setText(currentPath); 1073 currentPathCombo->lineEdit()->setText(currentPath);
1070 if( localDirPathStringList.grep(currentPath,TRUE).isEmpty() ) { 1074 if( localDirPathStringList.grep(currentPath,TRUE).isEmpty() ) {
1071 currentPathCombo->clear(); 1075 currentPathCombo->clear();
1072 localDirPathStringList.prepend(currentPath ); 1076 localDirPathStringList.prepend(currentPath );
1073 currentPathCombo->insertStringList( localDirPathStringList,-1); 1077 currentPathCombo->insertStringList( localDirPathStringList,-1);
1074 } 1078 }
1075 currentPathCombo->lineEdit()->setText(currentPath); 1079 currentPathCombo->lineEdit()->setText(currentPath);
1076 if( remoteDirPathStringList.grep(currentPath,TRUE).isEmpty() ) { 1080 if( remoteDirPathStringList.grep(currentPath,TRUE).isEmpty() ) {
1077 currentPathCombo->clear(); 1081 currentPathCombo->clear();
1078 remoteDirPathStringList.prepend(currentPath ); 1082 remoteDirPathStringList.prepend(currentPath );
1079 currentPathCombo->insertStringList( remoteDirPathStringList,-1); 1083 currentPathCombo->insertStringList( remoteDirPathStringList,-1);
1080 } 1084 }
1081} 1085}
1082 1086
1083void OpieFtp::fillRemoteCombo(const QString &currentPath) { 1087void OpieFtp::fillRemoteCombo(const QString &currentPath) {
1084 1088
1085 currentPathCombo->lineEdit()->setText(currentPath); 1089 currentPathCombo->lineEdit()->setText(currentPath);
1086 if( remoteDirPathStringList.grep(currentPath,TRUE).isEmpty() ) { 1090 if( remoteDirPathStringList.grep(currentPath,TRUE).isEmpty() ) {
1087 currentPathCombo->clear(); 1091 currentPathCombo->clear();
1088 remoteDirPathStringList.prepend(currentPath ); 1092 remoteDirPathStringList.prepend(currentPath );
1089 currentPathCombo->insertStringList( remoteDirPathStringList,-1); 1093 currentPathCombo->insertStringList( remoteDirPathStringList,-1);
1090 } 1094 }
1091} 1095}
1092 1096
1093void OpieFtp::currentPathComboChanged() 1097void OpieFtp::currentPathComboChanged()
1094{ 1098{
1095 QString oldRemoteCurrentDir = currentRemoteDir; 1099 QString oldRemoteCurrentDir = currentRemoteDir;
1096// qDebug("oldRemoteCurrentDir "+oldRemoteCurrentDir); 1100// qDebug("oldRemoteCurrentDir "+oldRemoteCurrentDir);
1097 if (TabWidget->currentPageIndex() == 0) { 1101 if (TabWidget->currentPageIndex() == 0) {
1098 if(QDir( currentPathCombo->lineEdit()->text()).exists()) { 1102 if(QDir( currentPathCombo->lineEdit()->text()).exists()) {
1099 currentDir.setPath( currentPathCombo->lineEdit()->text() ); 1103 currentDir.setPath( currentPathCombo->lineEdit()->text() );
1100 populateLocalView(); 1104 populateLocalView();
1101 } else { 1105 } else {
1102 QMessageBox::message(tr("Note"),tr("That directory does not exist")); 1106 QMessageBox::message(tr("Note"),tr("That directory does not exist"));
1103 } 1107 }
1104 } 1108 }
1105 if (TabWidget->currentPageIndex() == 1) { 1109 if (TabWidget->currentPageIndex() == 1) {
1106 currentRemoteDir = currentPathCombo->lineEdit()->text(); 1110 currentRemoteDir = currentPathCombo->lineEdit()->text();
1107 if(currentRemoteDir.right(1) !="/") { 1111 if(currentRemoteDir.right(1) !="/") {
1108 currentRemoteDir = currentRemoteDir +"/"; 1112 currentRemoteDir = currentRemoteDir +"/";
1109 currentPathCombo->lineEdit()->setText( currentRemoteDir ); 1113 currentPathCombo->lineEdit()->setText( currentRemoteDir );
1110 } 1114 }
1111 if( !remoteChDir( (const QString &)currentRemoteDir) ) { 1115 if( !remoteChDir( (const QString &)currentRemoteDir) ) {
1112 currentRemoteDir = oldRemoteCurrentDir; 1116 currentRemoteDir = oldRemoteCurrentDir;
1113 currentPathCombo->lineEdit()->setText( currentRemoteDir ); 1117 currentPathCombo->lineEdit()->setText( currentRemoteDir );
1114 } 1118 }
1115 1119
1116 remoteDirList( (const QString &)currentRemoteDir); 1120 remoteDirList( (const QString &)currentRemoteDir);
1117 } 1121 }
1118} 1122}
1119 1123
1120void OpieFtp::switchToLocalTab() 1124void OpieFtp::switchToLocalTab()
1121{ 1125{
1122 TabWidget->setCurrentPage(0); 1126 TabWidget->setCurrentPage(0);
1123} 1127}
1124 1128
1125void OpieFtp::switchToRemoteTab() 1129void OpieFtp::switchToRemoteTab()
1126{ 1130{
1127 TabWidget->setCurrentPage(1); 1131 TabWidget->setCurrentPage(1);
1128} 1132}
1129 1133
1130void OpieFtp::switchToConfigTab() 1134void OpieFtp::switchToConfigTab()
1131{ 1135{
1132 TabWidget->setCurrentPage(2); 1136 TabWidget->setCurrentPage(2);
1133} 1137}
1134 1138
1135void OpieFtp::readConfig() 1139void OpieFtp::readConfig()
1136{ 1140{
1137 fillCombos(); 1141 fillCombos();
1138 Config cfg("opieftp"); 1142 Config cfg("opieftp");
1139 cfg.setGroup("Server"); 1143 cfg.setGroup("Server");
1140 currentServerConfig = cfg.readNumEntry("currentServer", -1); 1144 currentServerConfig = cfg.readNumEntry("currentServer", -1);
1141// qDebug("Reading %d", currentServerConfig); 1145// qDebug("Reading %d", currentServerConfig);
1142 serverComboSelected( currentServerConfig); 1146 serverComboSelected( currentServerConfig);
1143} 1147}
1144 1148
1145void OpieFtp::writeConfig() 1149void OpieFtp::writeConfig()
1146{ 1150{
1147 Config cfg("opieftp"); 1151 Config cfg("opieftp");
1148 cfg.setGroup("Server"); 1152 cfg.setGroup("Server");
1149 QString username, remoteServerStr, remotePathStr, password, port, temp; 1153 QString username, remoteServerStr, remotePathStr, password, port, temp;
1150 int numberOfEntries = cfg.readNumEntry("numberOfEntries",0); 1154 int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
1151 if( currentServerConfig == -1) { 1155 if( currentServerConfig == -1) {
1152 for (int i = 1; i <= numberOfEntries; i++) { 1156 for (int i = 1; i <= numberOfEntries; i++) {
1153 temp.setNum(i); 1157 temp.setNum(i);
1154 cfg.setGroup("Server"); 1158 cfg.setGroup("Server");
1155 QString tempStr = cfg.readEntry( temp,""); 1159 QString tempStr = cfg.readEntry( temp,"");
1156 } 1160 }
1157 temp.setNum( numberOfEntries + 1); 1161 temp.setNum( numberOfEntries + 1);
1158 cfg.setGroup("Server"); 1162 cfg.setGroup("Server");
1159 remoteServerStr = cfg.readEntry( temp,""); 1163 remoteServerStr = cfg.readEntry( temp,"");
1160 int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE); 1164 int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE);
1161 remoteServerStr = remoteServerStr.left(remoteServerStr.length()-divider); 1165 remoteServerStr = remoteServerStr.left(remoteServerStr.length()-divider);
1162 1166
1163 temp.setNum(numberOfEntries+1); 1167 temp.setNum(numberOfEntries+1);
1164 cfg.setGroup("Server"); 1168 cfg.setGroup("Server");
1165 cfg.writeEntry( temp, ServerComboBox->currentText() +":"+PortSpinBox->cleanText() ); 1169 cfg.writeEntry( temp, ServerComboBox->currentText() +":"+PortSpinBox->cleanText() );
1166 cfg.setGroup(temp); 1170 cfg.setGroup(temp);
1167 cfg.writeEntry("RemotePath", remotePath->text()); 1171 cfg.writeEntry("RemotePath", remotePath->text());
1168 cfg.writeEntry("Username", UsernameComboBox->currentText()); 1172 cfg.writeEntry("Username", UsernameComboBox->currentText());
1169 cfg.writeEntryCrypt( UsernameComboBox->currentText(), PasswordEdit->text()); 1173 cfg.writeEntryCrypt( UsernameComboBox->currentText(), PasswordEdit->text());
1170 cfg.setGroup("Server"); 1174 cfg.setGroup("Server");
1171 cfg.writeEntry("numberOfEntries", QString::number(numberOfEntries + 1 )); 1175 cfg.writeEntry("numberOfEntries", QString::number(numberOfEntries + 1 ));
1172 } 1176 }
1173} 1177}
1174 1178
1175void OpieFtp::fillCombos() 1179void OpieFtp::fillCombos()
1176{ 1180{
1177 Config cfg("opieftp"); 1181 Config cfg("opieftp");
1178 cfg.setGroup("Server"); 1182 cfg.setGroup("Server");
1179 QString username, remoteServerStr, remotePathStr, password, port, temp; 1183 QString username, remoteServerStr, remotePathStr, password, port, temp;
1180 int numberOfEntries = cfg.readNumEntry("numberOfEntries",0); 1184 int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
1181 for (int i = 1; i <= numberOfEntries; i++) { 1185 for (int i = 1; i <= numberOfEntries; i++) {
1182 temp.setNum(i); 1186 temp.setNum(i);
1183 cfg.setGroup("Server"); 1187 cfg.setGroup("Server");
1184 remoteServerStr = cfg.readEntry( temp,""); 1188 remoteServerStr = cfg.readEntry( temp,"");
1185 int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE); 1189 int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE);
1186 port = remoteServerStr.right( divider - 1); 1190 port = remoteServerStr.right( divider - 1);
1187 bool ok; 1191 bool ok;
1188 PortSpinBox->setValue( port.toInt(&ok,10)); 1192 PortSpinBox->setValue( port.toInt(&ok,10));
1189 1193
1190 remoteServerStr = remoteServerStr.left(remoteServerStr.length()-divider); 1194 remoteServerStr = remoteServerStr.left(remoteServerStr.length()-divider);
1191 ServerComboBox->insertItem( remoteServerStr ); 1195 ServerComboBox->insertItem( remoteServerStr );
1192// cfg.setGroup(temp); 1196// cfg.setGroup(temp);
1193 1197
1194// remotePathStr = cfg.readEntry(remoteServer,""); 1198// remotePathStr = cfg.readEntry(remoteServer,"");
1195// int divider = remoteServer.length() - remoteServer.find(":",0,TRUE); 1199// int divider = remoteServer.length() - remoteServer.find(":",0,TRUE);
1196// port = remoteServer.right( divider+1); 1200// port = remoteServer.right( divider+1);
1197// PortSpinBox->setValue( port); 1201// PortSpinBox->setValue( port);
1198 1202
1199// remoteServer = remoteServer.left(divider - 1); 1203// remoteServer = remoteServer.left(divider - 1);
1200// remotePath->setText( remotePathStr); 1204// remotePath->setText( remotePathStr);
1201 1205
1202// username = cfg.readEntry(temp); 1206// username = cfg.readEntry(temp);
1203// UsernameComboBox->insertItem(username); 1207// UsernameComboBox->insertItem(username);
1204// password = cfg.readEntryCrypt(username,""); 1208// password = cfg.readEntryCrypt(username,"");
1205// PasswordEdit->setText(password); 1209// PasswordEdit->setText(password);
1206 } 1210 }
1207} 1211}
1208 1212
1209 1213
1210void OpieFtp::serverComboSelected(int index) 1214void OpieFtp::serverComboSelected(int index)
1211{ 1215{
1212 currentServerConfig = index; 1216 currentServerConfig = index;
1213 QString username, remoteServerStr, remotePathStr, password, port, temp; 1217 QString username, remoteServerStr, remotePathStr, password, port, temp;
1214// remoteServerStr = ServerComboBox->text(index); 1218// remoteServerStr = ServerComboBox->text(index);
1215 Config cfg("opieftp"); 1219 Config cfg("opieftp");
1216 cfg.setGroup("Server"); 1220 cfg.setGroup("Server");
1217 int numberOfEntries = cfg.readNumEntry("numberOfEntries",0); 1221 int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
1218 1222
1219 temp.setNum(index+1); 1223 temp.setNum(index+1);
1220 remoteServerStr = cfg.readEntry( temp,""); 1224 remoteServerStr = cfg.readEntry( temp,"");
1221 cfg.setGroup(temp); 1225 cfg.setGroup(temp);
1222// qDebug(temp); 1226// qDebug(temp);
1223 int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE); 1227 int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE);
1224 port = remoteServerStr.right( divider - 1); 1228 port = remoteServerStr.right( divider - 1);
1225 bool ok; 1229 bool ok;
1226 int portInt = port.toInt(&ok,10); 1230 int portInt = port.toInt(&ok,10);
1227 if( portInt == 0) portInt = 21; 1231 if( portInt == 0) portInt = 21;
1228 1232
1229 PortSpinBox->setValue( portInt); 1233 PortSpinBox->setValue( portInt);
1230 1234
1231 remotePath->setText(cfg.readEntry("RemotePath", "/")); 1235 remotePath->setText(cfg.readEntry("RemotePath", "/"));
1232 1236
1233 username = cfg.readEntry("Username", "anonymous"); 1237 username = cfg.readEntry("Username", "anonymous");
1234 UsernameComboBox->lineEdit()->setText(username); 1238 UsernameComboBox->lineEdit()->setText(username);
1239
1240// qDebug("Password is "+cfg.readEntryCrypt(username, "me@opieftp.org"));
1235 PasswordEdit->setText(cfg.readEntryCrypt(username, "me@opieftp.org")); 1241 PasswordEdit->setText(cfg.readEntryCrypt(username, "me@opieftp.org"));
1236 1242
1237 cfg.setGroup("Server"); 1243 cfg.setGroup("Server");
1238 temp.sprintf("%d",currentServerConfig); 1244 temp.sprintf("%d",currentServerConfig);
1239 cfg.writeEntry("currentServer", temp); 1245 cfg.writeEntry("currentServer", temp);
1240 update(); 1246 update();
1241} 1247}
1242// UsernameComboBox->lineEdit()->setText("root"); 1248// UsernameComboBox->lineEdit()->setText("root");
1243// PasswordEdit->setText( tr( "" ) ); 1249// PasswordEdit->setText( tr( "" ) );
1244// ServerComboBox->lineEdit()->setText( tr( "192.168.129.201" ) ); 1250// ServerComboBox->lineEdit()->setText( tr( "192.168.129.201" ) );
1245// remotePath->setText( currentRemoteDir = "/home/llornkcor/"); 1251// remotePath->setText( currentRemoteDir = "/home/llornkcor/");
1246// PortSpinBox->setValue( 4242); 1252// PortSpinBox->setValue( 4242);
1247 1253
1248void OpieFtp::deleteServer() 1254void OpieFtp::deleteServer()
1249{ 1255{
1250 QString username, remoteServerStr, remotePathStr, password, port, temp; 1256 QString username, remoteServerStr, remotePathStr, password, port, temp;
1251 remoteServerStr = ServerComboBox->currentText( ); 1257 remoteServerStr = ServerComboBox->currentText( );
1252 username = UsernameComboBox->currentText(); 1258 username = UsernameComboBox->currentText();
1253 Config cfg("opieftp"); 1259 Config cfg("opieftp");
1254 cfg.setGroup("Server"); 1260 cfg.setGroup("Server");
1255 int numberOfEntries = cfg.readNumEntry("numberOfEntries",0); 1261 int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
1256 for (int i = 0; i <= numberOfEntries; i++) { 1262 for (int i = 0; i <= numberOfEntries; i++) {
1257 temp.setNum(i+1); 1263 temp.setNum(i+1);
1258 cfg.setGroup("Server"); 1264 cfg.setGroup("Server");
1259 if( cfg.readEntry( temp,"").find( remoteServerStr,0,TRUE) != -1 1265 if( cfg.readEntry( temp,"").find( remoteServerStr,0,TRUE) != -1
1260 && cfg.readEntry(temp).find(username,0,TRUE) != -1 1266 && cfg.readEntry(temp).find(username,0,TRUE) != -1
1261 && !remoteServerStr.isEmpty()) { 1267 && !remoteServerStr.isEmpty()) {
1262 qDebug(temp); 1268 qDebug(temp);
1263 } 1269 }
1264 } 1270 }
1265} 1271}
1266 1272
1267void OpieFtp::upDir() 1273void OpieFtp::upDir()
1268{ 1274{
1269 if (TabWidget->currentPageIndex() == 0) { 1275 if (TabWidget->currentPageIndex() == 0) {
1270 QString current = currentDir.canonicalPath(); 1276 QString current = currentDir.canonicalPath();
1271 QDir dir(current); 1277 QDir dir(current);
1272 dir.cdUp(); 1278 dir.cdUp();
1273 current = dir.canonicalPath(); 1279 current = dir.canonicalPath();
1274 chdir( current.latin1() ); 1280 chdir( current.latin1() );
1275 currentDir.cd( current, TRUE); 1281 currentDir.cd( current, TRUE);
1276 populateLocalView(); 1282 populateLocalView();
1277 update(); 1283 update();
1278 } else { 1284 } else {
1279 if( FtpCDUp( conn) == 0) { 1285 if( FtpCDUp( conn) == 0) {
1280 QString msg; 1286 QString msg;
1281 msg.sprintf(tr("Unable to cd up\n")+"%s",FtpLastResponse(conn)); 1287 msg.sprintf(tr("Unable to cd up\n")+"%s",FtpLastResponse(conn));
1282 msg.replace(QRegExp(":"),"\n"); 1288 msg.replace(QRegExp(":"),"\n");
1283 QMessageBox::message(tr("Note"),msg); 1289 QMessageBox::message(tr("Note"),msg);
1284// qDebug(msg); 1290// qDebug(msg);
1285 } 1291 }
1286 char path[256]; 1292 char path[256];
1287 if( FtpPwd( path,sizeof(path),conn) == 0) { //this is easier than fudging the string 1293 if( FtpPwd( path,sizeof(path),conn) == 0) { //this is easier than fudging the string
1288 QString msg; 1294 QString msg;
1289 msg.sprintf(tr("Unable to get working dir\n")+"%s",FtpLastResponse(conn)); 1295 msg.sprintf(tr("Unable to get working dir\n")+"%s",FtpLastResponse(conn));
1290 msg.replace(QRegExp(":"),"\n"); 1296 msg.replace(QRegExp(":"),"\n");
1291 QMessageBox::message(tr("Note"),msg); 1297 QMessageBox::message(tr("Note"),msg);
1292// qDebug(msg); 1298// qDebug(msg);
1293 } 1299 }
1294 currentRemoteDir=path; 1300 currentRemoteDir=path;
1295 remoteDirList( (const QString &)currentRemoteDir); //this also calls populate 1301 remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
1296 if(currentRemoteDir.right(1) !="/") 1302 if(currentRemoteDir.right(1) !="/")
1297 currentRemoteDir +="/"; 1303 currentRemoteDir +="/";
1298 currentPathCombo->lineEdit()->setText( currentRemoteDir); 1304 currentPathCombo->lineEdit()->setText( currentRemoteDir);
1299 fillRemoteCombo( (const QString &)currentRemoteDir); 1305 fillRemoteCombo( (const QString &)currentRemoteDir);
1300 1306
1301 } 1307 }
1302} 1308}
1303 1309
1304void OpieFtp::docButtonPushed() { 1310void OpieFtp::docButtonPushed() {
1305 QString current = QPEApplication::documentDir(); 1311 QString current = QPEApplication::documentDir();
1306 chdir( current.latin1() ); 1312 chdir( current.latin1() );
1307 currentDir.cd( current, TRUE); 1313 currentDir.cd( current, TRUE);
1308 populateLocalView(); 1314 populateLocalView();
1309 update(); 1315 update();
1310 1316
1311} 1317}
1312 1318
1313void OpieFtp::homeButtonPushed() { 1319void OpieFtp::homeButtonPushed() {
1314 QString current = QDir::homeDirPath(); 1320 QString current = QDir::homeDirPath();
1315 chdir( current.latin1() ); 1321 chdir( current.latin1() );
1316 currentDir.cd( current, TRUE); 1322 currentDir.cd( current, TRUE);
1317 populateLocalView(); 1323 populateLocalView();
1318 update(); 1324 update();
1319} 1325}
1320 1326
1321void OpieFtp::doAbout() { 1327void OpieFtp::doAbout() {
1322 QMessageBox::message("OpieFtp","Opie ftp client is copyright 2002 by\n" 1328 QMessageBox::message("OpieFtp","Opie ftp client is copyright 2002 by\n"
1323 "L.J.Potter<llornkcor@handhelds.org>\n" 1329 "L.J.Potter<llornkcor@handhelds.org>\n"
1324 "and uses ftplib copyright 1996-2000\n" 1330 "and uses ftplib copyright 1996-2000\n"
1325 "by Thomas Pfau, pfau@cnj.digex.net\n\n" 1331 "by Thomas Pfau, pfau@cnj.digex.net\n\n"
1326 "and is licensed by the GPL"); 1332 "and is licensed by the GPL");
1327} 1333}