author | llornkcor <llornkcor> | 2004-09-25 04:38:48 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2004-09-25 04:38:48 (UTC) |
commit | 4eab17fb1381c938188e13ec5025b8302b159c9e (patch) (unidiff) | |
tree | bb8d1c5e52e59d8e1683da3dab08d20177e684f7 | |
parent | 037acb8741eabb71693104f7807ffd848ac4d1f9 (diff) | |
download | opie-4eab17fb1381c938188e13ec5025b8302b159c9e.zip opie-4eab17fb1381c938188e13ec5025b8302b159c9e.tar.gz opie-4eab17fb1381c938188e13ec5025b8302b159c9e.tar.bz2 |
opti function and fix
-rw-r--r-- | noncore/apps/advancedfm/advancedfm.cpp | 133 | ||||
-rw-r--r-- | noncore/apps/advancedfm/advancedfm.h | 2 |
2 files changed, 47 insertions, 88 deletions
diff --git a/noncore/apps/advancedfm/advancedfm.cpp b/noncore/apps/advancedfm/advancedfm.cpp index fec320d..73d0d57 100644 --- a/noncore/apps/advancedfm/advancedfm.cpp +++ b/noncore/apps/advancedfm/advancedfm.cpp | |||
@@ -15,68 +15,68 @@ | |||
15 | #include <opie2/odebug.h> | 15 | #include <opie2/odebug.h> |
16 | #include <qpe/qpeapplication.h> | 16 | #include <qpe/qpeapplication.h> |
17 | #include <qpe/config.h> | 17 | #include <qpe/config.h> |
18 | #include <qpe/mimetype.h> | 18 | #include <qpe/mimetype.h> |
19 | #include <qpe/applnk.h> | 19 | #include <qpe/applnk.h> |
20 | #include <qpe/resource.h> | 20 | #include <qpe/resource.h> |
21 | #include <qpe/menubutton.h> | 21 | #include <qpe/menubutton.h> |
22 | 22 | ||
23 | #include <qcombobox.h> | 23 | #include <qcombobox.h> |
24 | #include <qpopupmenu.h> | 24 | #include <qpopupmenu.h> |
25 | #include <qlistview.h> | 25 | #include <qlistview.h> |
26 | #include <qmessagebox.h> | 26 | #include <qmessagebox.h> |
27 | #include <qlineedit.h> | 27 | #include <qlineedit.h> |
28 | 28 | ||
29 | 29 | ||
30 | #include <sys/stat.h> | 30 | #include <sys/stat.h> |
31 | #include <time.h> | 31 | #include <time.h> |
32 | #include <dirent.h> | 32 | #include <dirent.h> |
33 | #include <fcntl.h> | 33 | #include <fcntl.h> |
34 | #include <sys/vfs.h> | 34 | #include <sys/vfs.h> |
35 | #include <mntent.h> | 35 | #include <mntent.h> |
36 | 36 | ||
37 | using namespace Opie::Ui; | 37 | using namespace Opie::Ui; |
38 | 38 | ||
39 | AdvancedFm::AdvancedFm(QWidget *,const char*, WFlags ) | 39 | AdvancedFm::AdvancedFm(QWidget *,const char*, WFlags ) |
40 | : QMainWindow( ) { | 40 | : QMainWindow( ) { |
41 | init(); | 41 | init(); |
42 | renameBox = 0; | 42 | renameBox = 0; |
43 | 43 | ||
44 | unknownXpm = Resource::loadImage("UnknownDocument").smoothScale(AppLnk::smallIconSize(),AppLnk::smallIconSize() ); | 44 | unknownXpm = Resource::loadImage("UnknownDocument").smoothScale(AppLnk::smallIconSize(),AppLnk::smallIconSize() ); |
45 | 45 | ||
46 | initConnections(); | 46 | initConnections(); |
47 | populateView(); | 47 | rePopulate(); |
48 | channel = new QCopChannel( "QPE/Application/advancedfm", this ); | 48 | channel = new QCopChannel( "QPE/Application/advancedfm", this ); |
49 | connect(channel,SIGNAL(received(const QCString&,const QByteArray&)),this,SLOT(qcopReceive(const QCString&,const QByteArray&))); | 49 | connect(channel,SIGNAL(received(const QCString&,const QByteArray&)),this,SLOT(qcopReceive(const QCString&,const QByteArray&))); |
50 | switchToLocalTab(); | 50 | switchToLocalTab(); |
51 | } | 51 | } |
52 | 52 | ||
53 | AdvancedFm::~AdvancedFm() { | 53 | AdvancedFm::~AdvancedFm() { |
54 | } | 54 | } |
55 | 55 | ||
56 | 56 | ||
57 | void AdvancedFm::cleanUp() { | 57 | void AdvancedFm::cleanUp() { |
58 | QString sfile=QDir::homeDirPath(); | 58 | QString sfile=QDir::homeDirPath(); |
59 | if(sfile.right(1) != "/") | 59 | if(sfile.right(1) != "/") |
60 | sfile+="/._temp"; | 60 | sfile+="/._temp"; |
61 | else | 61 | else |
62 | sfile+="._temp"; | 62 | sfile+="._temp"; |
63 | QFile file( sfile); | 63 | QFile file( sfile); |
64 | if(file.exists()) | 64 | if(file.exists()) |
65 | file.remove(); | 65 | file.remove(); |
66 | } | 66 | } |
67 | 67 | ||
68 | void AdvancedFm::tabChanged(QWidget *wd) { | 68 | void AdvancedFm::tabChanged(QWidget *wd) { |
69 | // qDebug("tabChanged"); | 69 | // qDebug("tabChanged"); |
70 | if(wd == tab) { | 70 | if(wd == tab) { |
71 | whichTab = 1; | 71 | whichTab = 1; |
72 | // qDebug("tabchanged: LOCAL VIEW SHOWN"); | 72 | // qDebug("tabchanged: LOCAL VIEW SHOWN"); |
73 | } | 73 | } |
74 | else if(wd == tab_2) { | 74 | else if(wd == tab_2) { |
75 | whichTab = 2; | 75 | whichTab = 2; |
76 | // qDebug("tabchanged: REMOTE VIEW SHOWN"); | 76 | // qDebug("tabchanged: REMOTE VIEW SHOWN"); |
77 | } | 77 | } |
78 | qApp->processEvents(); | 78 | qApp->processEvents(); |
79 | QString path = CurrentDir()->canonicalPath(); | 79 | QString path = CurrentDir()->canonicalPath(); |
80 | // qDebug(path); | 80 | // qDebug(path); |
81 | if ( TabWidget->currentWidget() == tab) { | 81 | if ( TabWidget->currentWidget() == tab) { |
82 | viewMenu->setItemChecked(viewMenu->idAt(0), true); | 82 | viewMenu->setItemChecked(viewMenu->idAt(0), true); |
@@ -345,149 +345,108 @@ QStringList AdvancedFm::getPath() { | |||
345 | void AdvancedFm::changeTo(QString dir) { | 345 | void AdvancedFm::changeTo(QString dir) { |
346 | chdir( dir.latin1()); | 346 | chdir( dir.latin1()); |
347 | CurrentDir()->cd(dir, TRUE); | 347 | CurrentDir()->cd(dir, TRUE); |
348 | populateView(); | 348 | populateView(); |
349 | update(); | 349 | update(); |
350 | } | 350 | } |
351 | 351 | ||
352 | void AdvancedFm::homeButtonPushed() { | 352 | void AdvancedFm::homeButtonPushed() { |
353 | changeTo(QDir::homeDirPath()); | 353 | changeTo(QDir::homeDirPath()); |
354 | } | 354 | } |
355 | 355 | ||
356 | void AdvancedFm::docButtonPushed() { | 356 | void AdvancedFm::docButtonPushed() { |
357 | changeTo(QPEApplication::documentDir()); | 357 | changeTo(QPEApplication::documentDir()); |
358 | } | 358 | } |
359 | 359 | ||
360 | void AdvancedFm::SDButtonPushed() { | 360 | void AdvancedFm::SDButtonPushed() { |
361 | changeTo("/mnt/card");// this can change so fix | 361 | changeTo("/mnt/card");// this can change so fix |
362 | } | 362 | } |
363 | 363 | ||
364 | void AdvancedFm::CFButtonPushed() { | 364 | void AdvancedFm::CFButtonPushed() { |
365 | if(zaurusDevice) | 365 | if(zaurusDevice) |
366 | changeTo("/mnt/cf"); //zaurus | 366 | changeTo("/mnt/cf"); //zaurus |
367 | else | 367 | else |
368 | changeTo("/mnt/hda"); //ipaq | 368 | changeTo("/mnt/hda"); //ipaq |
369 | } | 369 | } |
370 | 370 | ||
371 | 371 | ||
372 | void AdvancedFm::doAbout() { | 372 | void AdvancedFm::doAbout() { |
373 | QMessageBox::message("AdvancedFm",tr("<P>Advanced FileManager is copyright 2002-2003 by L.J.Potter<llornkcor@handhelds.org> and is licensed by the GPL</P>")); | 373 | QMessageBox::message("AdvancedFm",tr("<P>Advanced FileManager is copyright 2002-2003 by L.J.Potter<llornkcor@handhelds.org> and is licensed by the GPL</P>")); |
374 | } | 374 | } |
375 | 375 | ||
376 | void AdvancedFm::keyPressEvent( QKeyEvent *e) { | 376 | void AdvancedFm::keyPressEvent( QKeyEvent *e) { |
377 | // owarn << "key " << e->key() << "" << oendl; | 377 | if( e->key() == Key_Left ) |
378 | // if( CurrentView()->hasFocus() ) | 378 | upDir(); |
379 | { | 379 | else if( e->key() == Key_Return || e->key() == Key_Enter) |
380 | switch ( e->key() ) { | 380 | navigateToSelected(); |
381 | case Key_Left: | 381 | else if( e->key() == Key_Tab) |
382 | upDir(); | 382 | setOtherTabCurrent(); |
383 | break; | 383 | else if( e->key() == Key_Delete ) |
384 | case Key_Next: | 384 | del(); |
385 | break; | 385 | else if( e->key() == Key_A) |
386 | case Key_Return: | 386 | copyAs(); |
387 | case Key_Enter: | 387 | else if( e->key() == Key_C) |
388 | navigateToSelected(); | 388 | copy(); |
389 | break; | 389 | else if( e->key() == Key_E) |
390 | case Key_Tab: { | 390 | runThis(); |
391 | setOtherTabCurrent(); | 391 | else if( e->key() == Key_G) |
392 | } | 392 | currentPathCombo->lineEdit()->setFocus(); |
393 | break; | 393 | else if( e->key() == Key_H ) |
394 | case Key_Delete: | 394 | showHidden(); |
395 | del(); | 395 | else if( e->key() == Key_I) |
396 | break; | 396 | fileStatus(); |
397 | case Key_A: | 397 | else if( e->key() == Key_M) |
398 | copyAs(); | 398 | move(); |
399 | break; | 399 | else if( e->key() == Key_N ) |
400 | case Key_C: | 400 | mkDir(); |
401 | copy(); | 401 | else if( e->key() == Key_P) |
402 | break; | 402 | filePerms(); |
403 | case Key_E: | 403 | else if( e->key() == Key_R ) |
404 | runThis(); | 404 | rn(); |
405 | break; | 405 | else if( e->key() == Key_U ) |
406 | case Key_G: | 406 | upDir(); |
407 | { | 407 | else if( e->key() == Key_1) |
408 | currentPathCombo->lineEdit()->setFocus(); | 408 | switchToLocalTab(); |
409 | } | 409 | else if( e->key() == Key_2) |
410 | break; | 410 | switchToRemoteTab(); |
411 | 411 | else if( e->key() == Key_3) | |
412 | case Key_H: | 412 | CFButtonPushed(); |
413 | showHidden(); | 413 | else if( e->key() == Key_4) |
414 | break; | 414 | SDButtonPushed(); |
415 | case Key_I: | 415 | else if( e->key() == Key_5 ) |
416 | fileStatus(); | 416 | homeButtonPushed(); |
417 | break; | 417 | else if( e->key() == Key_6 ) |
418 | case Key_M: | 418 | docButtonPushed(); |
419 | move(); | 419 | else |
420 | break; | 420 | e->accept(); |
421 | case Key_N: | ||
422 | mkDir(); | ||
423 | break; | ||
424 | case Key_P: | ||
425 | filePerms(); | ||
426 | break; | ||
427 | case Key_R: | ||
428 | rn(); | ||
429 | break; | ||
430 | case Key_U: | ||
431 | upDir(); | ||
432 | break; | ||
433 | case Key_1: | ||
434 | switchToLocalTab(); | ||
435 | break; | ||
436 | case Key_2: | ||
437 | switchToRemoteTab(); | ||
438 | break; | ||
439 | case Key_3: | ||
440 | CFButtonPushed(); | ||
441 | break; | ||
442 | case Key_4: | ||
443 | SDButtonPushed(); | ||
444 | break; | ||
445 | case Key_5: | ||
446 | homeButtonPushed(); | ||
447 | break; | ||
448 | case Key_6: | ||
449 | docButtonPushed(); | ||
450 | break; | ||
451 | case Key_7: | ||
452 | break; | ||
453 | case Key_8: | ||
454 | break; | ||
455 | case Key_9: | ||
456 | break; | ||
457 | case Key_0: | ||
458 | break; | ||
459 | }; | ||
460 | e->accept(); | ||
461 | } | ||
462 | } | 421 | } |
463 | 422 | ||
464 | void AdvancedFm::keyReleaseEvent( QKeyEvent *e) { | 423 | void AdvancedFm::keyReleaseEvent( QKeyEvent *e) { |
465 | if( CurrentView()->hasFocus() ) | 424 | if( CurrentView()->hasFocus() ) |
466 | e->ignore(); | 425 | e->ignore(); |
467 | } | 426 | } |
468 | 427 | ||
469 | 428 | ||
470 | void AdvancedFm::QPEButtonPushed() { | 429 | void AdvancedFm::QPEButtonPushed() { |
471 | QString current = QPEApplication::qpeDir(); | 430 | QString current = QPEApplication::qpeDir(); |
472 | chdir( current.latin1() ); | 431 | chdir( current.latin1() ); |
473 | CurrentDir()->cd( current, TRUE); | 432 | CurrentDir()->cd( current, TRUE); |
474 | populateView(); | 433 | populateView(); |
475 | update(); | 434 | update(); |
476 | } | 435 | } |
477 | 436 | ||
478 | void AdvancedFm::parsetab(const QString &fileName) { | 437 | void AdvancedFm::parsetab(const QString &fileName) { |
479 | 438 | ||
480 | fileSystemTypeList.clear(); | 439 | fileSystemTypeList.clear(); |
481 | fsList.clear(); | 440 | fsList.clear(); |
482 | struct mntent *me; | 441 | struct mntent *me; |
483 | FILE *mntfp = setmntent( fileName.latin1(), "r" ); | 442 | FILE *mntfp = setmntent( fileName.latin1(), "r" ); |
484 | if ( mntfp ) { | 443 | if ( mntfp ) { |
485 | while ( (me = getmntent( mntfp )) != 0 ) { | 444 | while ( (me = getmntent( mntfp )) != 0 ) { |
486 | QString deviceName = me->mnt_fsname; | 445 | QString deviceName = me->mnt_fsname; |
487 | QString filesystemType = me->mnt_type; | 446 | QString filesystemType = me->mnt_type; |
488 | QString mountDir = me->mnt_dir; | 447 | QString mountDir = me->mnt_dir; |
489 | if(deviceName != "none") { | 448 | if(deviceName != "none") { |
490 | if( fsList.contains(filesystemType) == 0 | 449 | if( fsList.contains(filesystemType) == 0 |
491 | & filesystemType.find("proc",0,TRUE) == -1 | 450 | & filesystemType.find("proc",0,TRUE) == -1 |
492 | & filesystemType.find("cramfs",0,TRUE) == -1 | 451 | & filesystemType.find("cramfs",0,TRUE) == -1 |
493 | & filesystemType.find("auto",0,TRUE) == -1) | 452 | & filesystemType.find("auto",0,TRUE) == -1) |
diff --git a/noncore/apps/advancedfm/advancedfm.h b/noncore/apps/advancedfm/advancedfm.h index c52b853..b109364 100644 --- a/noncore/apps/advancedfm/advancedfm.h +++ b/noncore/apps/advancedfm/advancedfm.h | |||
@@ -68,65 +68,65 @@ protected: | |||
68 | QListView *Local_View, *Remote_View; | 68 | QListView *Local_View, *Remote_View; |
69 | 69 | ||
70 | QLineEdit *currentPathEdit; | 70 | QLineEdit *currentPathEdit; |
71 | QPopupMenu *fileMenu, *localMenu, *remoteMenu, *viewMenu /*, *customDirMenu*/; | 71 | QPopupMenu *fileMenu, *localMenu, *remoteMenu, *viewMenu /*, *customDirMenu*/; |
72 | QToolButton *homeButton, *docButton, *cdUpButton, *sdButton, *cfButton, *qpeDirButton; | 72 | QToolButton *homeButton, *docButton, *cdUpButton, *sdButton, *cfButton, *qpeDirButton; |
73 | // QPushButton *homeButton, *docButton, *cdUpButton, *sdButton, *cfButton, *qpeDirButton; | 73 | // QPushButton *homeButton, *docButton, *cdUpButton, *sdButton, *cfButton, *qpeDirButton; |
74 | QDir currentDir, currentRemoteDir; | 74 | QDir currentDir, currentRemoteDir; |
75 | QComboBox *currentPathCombo; | 75 | QComboBox *currentPathCombo; |
76 | QString filterStr, s_addBookmark, s_removeBookmark; | 76 | QString filterStr, s_addBookmark, s_removeBookmark; |
77 | QListViewItem * item; | 77 | QListViewItem * item; |
78 | bool b; | 78 | bool b; |
79 | QStringList fileSystemTypeList, fsList; | 79 | QStringList fileSystemTypeList, fsList; |
80 | int currentServerConfig; | 80 | int currentServerConfig; |
81 | bool zaurusDevice; | 81 | bool zaurusDevice; |
82 | QGridLayout *tabLayout, *tabLayout_2, *tabLayout_3; | 82 | QGridLayout *tabLayout, *tabLayout_2, *tabLayout_3; |
83 | QStringList remoteDirPathStringList, localDirPathStringList; | 83 | QStringList remoteDirPathStringList, localDirPathStringList; |
84 | QLineEdit *renameBox; | 84 | QLineEdit *renameBox; |
85 | 85 | ||
86 | void init(); | 86 | void init(); |
87 | void initConnections(); | 87 | void initConnections(); |
88 | void keyReleaseEvent( QKeyEvent *); | 88 | void keyReleaseEvent( QKeyEvent *); |
89 | void keyPressEvent( QKeyEvent *); | 89 | void keyPressEvent( QKeyEvent *); |
90 | QString getFileSystemType(const QString &); | 90 | QString getFileSystemType(const QString &); |
91 | QString getDiskSpace(const QString &); | 91 | QString getDiskSpace(const QString &); |
92 | void parsetab(const QString &fileName); | 92 | void parsetab(const QString &fileName); |
93 | QString checkDiskSpace(const QString &); | 93 | QString checkDiskSpace(const QString &); |
94 | QString dealWithSymName(const QString &); | 94 | QString dealWithSymName(const QString &); |
95 | QDir *CurrentDir(); | 95 | QDir *CurrentDir(); |
96 | QDir *OtherDir(); | 96 | QDir *OtherDir(); |
97 | QListView *CurrentView(); | 97 | QListView *CurrentView(); |
98 | QListView *OtherView(); | 98 | QListView *OtherView(); |
99 | void setOtherTabCurrent(); | 99 | void setOtherTabCurrent(); |
100 | void changeTo(QString & dir); | 100 | void changeTo(QString dir); |
101 | 101 | ||
102 | //protected signals: | 102 | //protected signals: |
103 | // void newPath(QString); | 103 | // void newPath(QString); |
104 | 104 | ||
105 | protected slots: | 105 | protected slots: |
106 | void slotSwitchMenu(int); | 106 | void slotSwitchMenu(int); |
107 | void selectAll(); | 107 | void selectAll(); |
108 | void addToDocs(); | 108 | void addToDocs(); |
109 | void doDirChange(); | 109 | void doDirChange(); |
110 | void mkDir(); | 110 | void mkDir(); |
111 | void del(); | 111 | void del(); |
112 | void rn(); | 112 | void rn(); |
113 | void populateView(); | 113 | void populateView(); |
114 | void rePopulate(); | 114 | void rePopulate(); |
115 | void showHidden(); | 115 | void showHidden(); |
116 | void showMenuHidden(); | 116 | void showMenuHidden(); |
117 | void ListClicked(QListViewItem *); | 117 | void ListClicked(QListViewItem *); |
118 | void ListPressed( int, QListViewItem *, const QPoint&, int); | 118 | void ListPressed( int, QListViewItem *, const QPoint&, int); |
119 | void makeDir(); | 119 | void makeDir(); |
120 | void doDelete(); | 120 | void doDelete(); |
121 | void tabChanged(QWidget*); | 121 | void tabChanged(QWidget*); |
122 | void cleanUp(); | 122 | void cleanUp(); |
123 | void renameIt(); | 123 | void renameIt(); |
124 | void runThis(); | 124 | void runThis(); |
125 | void runText(); | 125 | void runText(); |
126 | void filePerms(); | 126 | void filePerms(); |
127 | void doProperties(); | 127 | void doProperties(); |
128 | void runCommand(); | 128 | void runCommand(); |
129 | void runCommandStd(); | 129 | void runCommandStd(); |
130 | QStringList getPath(); | 130 | QStringList getPath(); |
131 | void mkSym(); | 131 | void mkSym(); |
132 | void switchToLocalTab(); | 132 | void switchToLocalTab(); |