You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(98) |
Sep
(138) |
Oct
(100) |
Nov
(49) |
Dec
(131) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(94) |
Feb
(65) |
Mar
(100) |
Apr
(83) |
May
(72) |
Jun
(29) |
Jul
(167) |
Aug
(127) |
Sep
(131) |
Oct
(269) |
Nov
(122) |
Dec
(100) |
2005 |
Jan
(228) |
Feb
(266) |
Mar
(63) |
Apr
(135) |
May
(157) |
Jun
(52) |
Jul
(25) |
Aug
(49) |
Sep
(184) |
Oct
(159) |
Nov
(75) |
Dec
(37) |
2006 |
Jan
(60) |
Feb
(129) |
Mar
(110) |
Apr
(34) |
May
(31) |
Jun
(42) |
Jul
(72) |
Aug
(90) |
Sep
(57) |
Oct
(66) |
Nov
(42) |
Dec
(90) |
2007 |
Jan
(106) |
Feb
(54) |
Mar
(93) |
Apr
(27) |
May
(21) |
Jun
(17) |
Jul
(19) |
Aug
(22) |
Sep
(25) |
Oct
(2) |
Nov
(1) |
Dec
(1) |
2008 |
Jan
(65) |
Feb
(70) |
Mar
(29) |
Apr
(45) |
May
(91) |
Jun
(20) |
Jul
(11) |
Aug
(24) |
Sep
(23) |
Oct
(13) |
Nov
(23) |
Dec
(39) |
2009 |
Jan
(23) |
Feb
(39) |
Mar
(15) |
Apr
(56) |
May
(5) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Shie E. <er...@us...> - 2004-09-24 23:12:03
|
Update of /cvsroot/krusader/krusader_kde3/krusader/UserAction In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23688/UserAction Modified Files: expander.cpp Log Message: fixed typos Index: expander.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/UserAction/expander.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** expander.cpp 7 Sep 2004 19:47:30 -0000 1.5 --- expander.cpp 24 Sep 2004 23:11:53 -0000 1.6 *************** *** 62,66 **** {i18n("Automatic escape spaces"), "__yes", false} }, 2, true}, ! {"List", i18n("Itemlist of ..."), exp_List, { {i18n("Which items"), "__choose:All;Files;Dirs;Selected", false}, {i18n("Separator between the items (optional)"), " ", false}, --- 62,66 ---- {i18n("Automatic escape spaces"), "__yes", false} }, 2, true}, ! {"List", i18n("Item list of ..."), exp_List, { {i18n("Which items"), "__choose:All;Files;Dirs;Selected", false}, {i18n("Separator between the items (optional)"), " ", false}, |
From: Karai C. <ck...@us...> - 2004-09-24 20:44:08
|
Update of /cvsroot/krusader/krusader_kde3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27463/krusader_kde3 Modified Files: CVSNEWS Log Message: New searcher functionalities Index: CVSNEWS =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/CVSNEWS,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** CVSNEWS 22 Sep 2004 07:38:27 -0000 1.16 --- CVSNEWS 24 Sep 2004 20:43:58 -0000 1.17 *************** *** 3,6 **** --- 3,9 ---- in some way an extension to the changelog. ------------------------------------------------------ + TC like searching: if you type 'text' -> results the same as '*text*' + You can exclude files from the search with '|' (ex. '*.cpp *.h | *.moc.cpp' ) + Search is possible on remote file systems as well. |
From: Karai C. <ck...@us...> - 2004-09-24 20:40:16
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Search In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26549/krusader_kde3/krusader/Search Modified Files: Makefile.am krquery.cpp krquery.h krsearchdialog.cpp krsearchdialog.h krsearchdialogbase.cpp krsearchdialogbase.h Added Files: generalfilter.cpp generalfilter.h Log Message: ARCHITECTURAL: separating the 'General' filter panel from the searcher --- NEW FILE: generalfilter.h --- /*************************************************************************** generalfilter.h - description ------------------- copyright : (C) 2003 by Csaba Karai e-mail : kru...@us... web site : http://krusader.sourceforge.net --------------------------------------------------------------------------- Description *************************************************************************** A db dD d8888b. db db .d8888. .d8b. d8888b. d88888b d8888b. 88 ,8P' 88 `8D 88 88 88' YP d8' `8b 88 `8D 88' 88 `8D 88,8P 88oobY' 88 88 `8bo. 88ooo88 88 88 88ooooo 88oobY' 88`8b 88`8b 88 88 `Y8b. 88~~~88 88 88 88~~~~~ 88`8b 88 `88. 88 `88. 88b d88 db 8D 88 88 88 .8D 88. 88 `88. YP YD 88 YD ~Y8888P' `8888Y' YP YP Y8888D' Y88888P 88 YD S o u r c e F i l e *************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef GENERALFILTER_H #define GENERALFILTER_H #include "krquery.h" #include <qwidget.h> #include <qlayout.h> #include <qgroupbox.h> #include <qcheckbox.h> #include <qlabel.h> #include <kcombobox.h> #include <klineedit.h> #include <qlistbox.h> #include <qtoolbutton.h> #include <kshellcompletion.h> class GeneralFilter : public QWidget { Q_OBJECT public: GeneralFilter( QWidget *parent = 0, const char *name = 0 ); ~GeneralFilter(); bool fillQuery( KRQuery *query ); void queryAccepted(); public slots: void addToDontSearchIn(); void addToDontSearchInManually(); void addToSearchIn(); void addToSearchInManually(); void deleteSelectedItems( QListBox * ); virtual void keyPressEvent(QKeyEvent *e); public: QCheckBox* searchForCase; QCheckBox* containsTextCase; QCheckBox* containsWholeWord; QCheckBox* searchInDirs; QCheckBox* searchInArchives; QCheckBox* followLinks; KHistoryCombo* searchFor; KHistoryCombo* containsText; KComboBox* ofType; KLineEdit* searchInEdit; KLineEdit* dontSearchInEdit; QListBox* searchIn; QListBox* dontSearchIn; QToolButton* searchInBtn; QToolButton* searchInBtnAdd; QToolButton* dontSearchInBtn; QToolButton* dontSearchInBtnAdd; KShellCompletion completion; }; #endif /* GENERALFILTER_H */ Index: krsearchdialogbase.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchdialogbase.h,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** krsearchdialogbase.h 4 Apr 2004 23:09:01 -0000 1.4 --- krsearchdialogbase.h 24 Sep 2004 20:40:04 -0000 1.5 *************** *** 10,13 **** --- 10,15 ---- #define KRSEARCHBASE_H + #include "generalfilter.h" + #include <qvariant.h> #include <qdialog.h> *************** *** 44,47 **** --- 46,50 ---- ~KrSearchBase(); + GeneralFilter *generalFilter; QPushButton* mainHelpBtn; QPushButton* mainSearchBtn; *************** *** 49,77 **** QPushButton* mainCloseBtn; QTabWidget* TabWidget2; - QWidget* tab; - QGroupBox* GroupBox1_2; - KLineEdit* dontSearchInEdit; - QToolButton* dontSearchInBtn; - QToolButton* dontSearchInBtnAdd; - QListBox* dontSearchIn; - QGroupBox* GroupBox1; - KLineEdit* searchInEdit; - QListBox* searchIn; - QToolButton* searchInBtn; - QToolButton* searchInBtnAdd; - QGroupBox* GroupBox14; - QCheckBox* containsTextCase; - QCheckBox* containsWholeWord; - QLabel* TextLabel2; - KHistoryCombo* containsText; - QGroupBox* GroupBox140; - QCheckBox* searchForCase; - QLabel* TextLabel1; - QLabel* TextLabel1_2; - KComboBox* ofType; - KHistoryCombo* searchFor; - QCheckBox* searchInDirs; - QCheckBox* searchInArchives; - QCheckBox* followLinks; QWidget* tab_2; QGroupBox* GroupBox29; --- 52,55 ---- *************** *** 124,131 **** public slots: - virtual void addToDontSearchIn(); - virtual void addToDontSearchInManually(); - virtual void addToSearchIn(); - virtual void addToSearchInManually(); virtual void closeDialog(); virtual void modifiedBetweenSetDate1(); --- 102,105 ---- *************** *** 140,151 **** QGridLayout* KrSearchBaseLayout; QHBoxLayout* Layout9; - QGridLayout* tabLayout; - QGridLayout* GroupBox1_2Layout; - QGridLayout* GroupBox1Layout; - QGridLayout* GroupBox14Layout; - QHBoxLayout* Layout7; - QHBoxLayout* Layout8; - QGridLayout* GroupBox140Layout; - QHBoxLayout* Layout9_2; QGridLayout* tabLayout_2; QGridLayout* ButtonGroup2Layout; --- 114,117 ---- Index: krsearchdialogbase.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchdialogbase.cpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** krsearchdialogbase.cpp 18 Jul 2004 10:07:22 -0000 1.11 --- krsearchdialogbase.cpp 24 Sep 2004 20:40:04 -0000 1.12 *************** *** 35,109 **** #include <qlistbox.h> - static const char* const image0_data[] = { - "16 16 52 1", - ". c None", - "# c #000000", - "Q c #101010", - "X c #181c18", - "K c #202020", - "w c #313031", - "W c #313431", - "V c #414041", - "U c #414441", - "a c #4a3018", - "E c #4a484a", - "T c #4a4c4a", - "l c #524c4a", - "h c #52504a", - "j c #525052", - "i c #5a5952", - "J c #6a6962", - "P c #6a6d6a", - "S c #8b8d8b", - "D c #949594", - "R c #9c999c", - "O c #9c9d9c", - "C c #a4a19c", - "M c #a4a1a4", - "N c #a4a5a4", - "I c #acaaac", - "B c #acaeac", - "F c #b47d41", - "v c #b4b2b4", - "u c #b4b6b4", - "A c #bdbabd", - "t c #bdbebd", - "k c #c5854a", - "H c #c5c2c5", - "s c #c5c6c5", - "r c #cdcacd", - "L c #cdcecd", - "z c #d5d2d5", - "q c #d5d6d5", - "x c #dedade", - "p c #dedede", - "b c #e6a562", - "G c #e6e2e6", - "o c #e6e6e6", - "y c #eeeae6", - "n c #eeeeee", - "m c #f6f6f6", - "f c #ffae62", - "e c #ffc283", - "d c #ffc683", - "g c #ffca8b", - "c c #ffd29c", - "......####......", - ".....##.####.#..", - "....#.....####..", - "...........###..", - "..........####..", - ".aaaa...........", - "abcdbaaaaaaa....", - "acdeffffffff#...", - "ageahhhihhjjh###", - "aeklmmnopqrstuvw", - "aeaxpyopzsABCDE.", - "aFhxxGpqrHuICJK.", - "aaLrqqzLHABMDE..", - "ajLtssHtuBNOPQ..", - "atNIBBINMRDSE...", - "KEETTTEEUVVWX..."}; - static const char* const image1_data[] = { "16 16 17 1", --- 35,38 ---- *************** *** 142,181 **** ".##############."}; - static const char * const image2_data[] = { - "16 16 17 1", - " c None", - ". c #704A13", - "+ c #8A6E3C", - "@ c #997E52", - "# c #2C1D06", - "$ c #EAD9B9", - "% c #E0CBA7", - "& c #C8A15E", - "* c #DAB579", - "= c #F8F5F0", - "- c #BF9346", - "; c #AB6503", - "> c #C1892B", - ", c #B6710C", - "' c #965702", - ") c #5A3202", - "! c #0D0702", - " ", - " .+@@@+# ", - " +$$$%$$&# ", - " .$%**%**$&# ", - " .$*&*$=***%&# ", - " .%*&**==**&&%-#", - " .-&&&*$=%&&&-+#", - " #;>$$$==$$$*,.#", - " #;>========$,.#", - " #;,-&*$=*&-,,.#", - " #.;,,-%=&>,,')#", - " !)';,,%=>,,')# ", - " !).;,&%>;;)# ", - " !).;;;;;)# ", - " !#).)))# ", - " ###### "}; - /* * Constructs a KrSearchBase which is a child of 'parent', with the --- 71,74 ---- *************** *** 188,194 **** : QDialog( parent, name, modal, fl ) { - QPixmap image0( ( const char** ) image0_data ); QPixmap image1( ( const char** ) image1_data ); - QPixmap image2( ( const char** ) image2_data ); if ( !name ) setName( "KrSearchBase" ); --- 81,85 ---- *************** *** 228,413 **** TabWidget2 = new QTabWidget( this, "TabWidget2" ); ! tab = new QWidget( TabWidget2, "tab" ); ! tabLayout = new QGridLayout( tab ); ! tabLayout->setSpacing( 6 ); ! tabLayout->setMargin( 11 ); ! ! GroupBox1_2 = new QGroupBox( tab, "GroupBox1_2" ); ! GroupBox1_2->setTitle( i18n( "&Don't search in" ) ); ! GroupBox1_2->setColumnLayout(0, Qt::Vertical ); ! GroupBox1_2->layout()->setSpacing( 0 ); ! GroupBox1_2->layout()->setMargin( 0 ); ! GroupBox1_2Layout = new QGridLayout( GroupBox1_2->layout() ); ! GroupBox1_2Layout->setAlignment( Qt::AlignTop ); ! GroupBox1_2Layout->setSpacing( 6 ); ! GroupBox1_2Layout->setMargin( 11 ); ! ! dontSearchInEdit = new KLineEdit( GroupBox1_2, "dontSearchInEdit" ); ! ! GroupBox1_2Layout->addWidget( dontSearchInEdit, 0, 0 ); ! ! dontSearchInBtn = new QToolButton( GroupBox1_2, "dontSearchInBtn" ); ! dontSearchInBtn->setText( "" ); ! dontSearchInBtn->setPixmap( image0 ); ! ! dontSearchInBtnAdd = new QToolButton( GroupBox1_2, "dontSearchInBtnAdd" ); ! dontSearchInBtnAdd->setText( "" ); ! dontSearchInBtnAdd->setPixmap( image2 ); ! ! GroupBox1_2Layout->addWidget( dontSearchInBtn, 0, 2 ); ! GroupBox1_2Layout->addWidget( dontSearchInBtnAdd, 0, 1 ); ! ! dontSearchIn = new QListBox( GroupBox1_2, "dontSearchIn" ); ! dontSearchIn->setSelectionMode( QListBox::Extended ); ! ! GroupBox1_2Layout->addMultiCellWidget( dontSearchIn, 1, 1, 0, 2 ); ! ! tabLayout->addWidget( GroupBox1_2, 1, 1 ); ! ! GroupBox1 = new QGroupBox( tab, "GroupBox1" ); ! GroupBox1->setTitle( i18n( "&Search in" ) ); ! GroupBox1->setColumnLayout(0, Qt::Vertical ); ! GroupBox1->layout()->setSpacing( 0 ); ! GroupBox1->layout()->setMargin( 0 ); ! GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); ! GroupBox1Layout->setAlignment( Qt::AlignTop ); ! GroupBox1Layout->setSpacing( 6 ); ! GroupBox1Layout->setMargin( 11 ); ! ! searchInEdit = new KLineEdit( GroupBox1, "searchInEdit" ); ! ! GroupBox1Layout->addWidget( searchInEdit, 0, 0 ); ! ! searchIn = new QListBox( GroupBox1, "searchIn" ); ! searchIn->setSelectionMode( QListBox::Extended ); ! ! GroupBox1Layout->addMultiCellWidget( searchIn, 1, 1, 0, 2 ); ! ! searchInBtnAdd = new QToolButton( GroupBox1, "searchInBtnAdd" ); ! searchInBtnAdd->setText( "" ); ! searchInBtnAdd->setPixmap( image2 ); ! ! GroupBox1Layout->addWidget( searchInBtnAdd, 0, 1 ); ! ! tabLayout->addWidget( GroupBox1, 1, 0 ); ! searchInBtn = new QToolButton( GroupBox1, "searchInBtn" ); ! searchInBtn->setText( "" ); ! searchInBtn->setPixmap( image0 ); ! ! GroupBox1Layout->addWidget( searchInBtn, 0, 2 ); ! ! ! GroupBox14 = new QGroupBox( tab, "GroupBox14" ); ! GroupBox14->setTitle( i18n( "Containing text" ) ); ! GroupBox14->setColumnLayout(0, Qt::Vertical ); ! GroupBox14->layout()->setSpacing( 0 ); ! GroupBox14->layout()->setMargin( 0 ); ! GroupBox14Layout = new QGridLayout( GroupBox14->layout() ); ! GroupBox14Layout->setAlignment( Qt::AlignTop ); ! GroupBox14Layout->setSpacing( 6 ); ! GroupBox14Layout->setMargin( 11 ); ! ! Layout7 = new QHBoxLayout; ! Layout7->setSpacing( 6 ); ! Layout7->setMargin( 0 ); ! QSpacerItem* spacer_2 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum ); ! Layout7->addItem( spacer_2 ); ! ! containsWholeWord = new QCheckBox( GroupBox14, "containsWholeWord" ); ! containsWholeWord->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)0, containsWholeWord->sizePolicy().hasHeightForWidth() ) ); ! containsWholeWord->setText( i18n( "&Match whole word only" ) ); ! containsWholeWord->setChecked( FALSE ); ! Layout7->addWidget( containsWholeWord ); ! ! containsTextCase = new QCheckBox( GroupBox14, "containsTextCase" ); ! containsTextCase->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)0, containsTextCase->sizePolicy().hasHeightForWidth() ) ); ! containsTextCase->setText( i18n( "Cas&e sensitive" ) ); ! containsTextCase->setChecked( TRUE ); ! Layout7->addWidget( containsTextCase ); ! ! GroupBox14Layout->addLayout( Layout7, 1, 0 ); ! ! Layout8 = new QHBoxLayout; ! Layout8->setSpacing( 6 ); ! Layout8->setMargin( 0 ); ! ! TextLabel2 = new QLabel( GroupBox14, "TextLabel2" ); ! TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)1, TextLabel2->sizePolicy().hasHeightForWidth() ) ); ! TextLabel2->setText( i18n( "&Text:" ) ); ! Layout8->addWidget( TextLabel2 ); ! ! containsText = new KHistoryCombo( FALSE, GroupBox14, "containsText" ); ! containsText->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, containsText->sizePolicy().hasHeightForWidth() ) ); ! Layout8->addWidget( containsText ); ! TextLabel2->setBuddy(containsText); ! ! GroupBox14Layout->addLayout( Layout8, 0, 0 ); ! ! tabLayout->addMultiCellWidget( GroupBox14, 2, 2, 0, 1 ); ! ! GroupBox140 = new QGroupBox( tab, "GroupBox140" ); ! GroupBox140->setTitle( "" ); ! GroupBox140->setColumnLayout(0, Qt::Vertical ); ! GroupBox140->layout()->setSpacing( 0 ); ! GroupBox140->layout()->setMargin( 0 ); ! GroupBox140Layout = new QGridLayout( GroupBox140->layout() ); ! GroupBox140Layout->setAlignment( Qt::AlignTop ); ! GroupBox140Layout->setSpacing( 6 ); ! GroupBox140Layout->setMargin( 11 ); ! ! searchForCase = new QCheckBox( GroupBox140, "searchForCase" ); ! searchForCase->setText( i18n( "&Case sensetive" ) ); ! searchForCase->setChecked( TRUE ); ! ! GroupBox140Layout->addWidget( searchForCase, 1, 2 ); ! ! TextLabel1 = new QLabel( GroupBox140, "TextLabel1" ); ! TextLabel1->setText( i18n( "Search &for:" ) ); ! ! GroupBox140Layout->addWidget( TextLabel1, 0, 0 ); ! ! TextLabel1_2 = new QLabel( GroupBox140, "TextLabel1_2" ); ! TextLabel1_2->setText( i18n( "&Of type:" ) ); ! ! GroupBox140Layout->addWidget( TextLabel1_2, 1, 0 ); ! ! ofType = new KComboBox( FALSE, GroupBox140, "ofType" ); ! ofType->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, ofType->sizePolicy().hasHeightForWidth() ) ); ! ofType->setEditable( FALSE ); ! TextLabel1_2->setBuddy(ofType); ! ! GroupBox140Layout->addWidget( ofType, 1, 1 ); ! ! searchFor = new KHistoryCombo( FALSE, GroupBox140, "searchFor" ); ! searchFor->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, searchFor->sizePolicy().hasHeightForWidth() ) ); ! searchFor->setEditable( TRUE ); ! TextLabel1->setBuddy(searchFor); ! ! GroupBox140Layout->addMultiCellWidget( searchFor, 0, 0, 1, 2 ); ! ! tabLayout->addMultiCellWidget( GroupBox140, 0, 0, 0, 1 ); ! ! Layout9_2 = new QHBoxLayout; ! Layout9_2->setSpacing( 6 ); ! Layout9_2->setMargin( 0 ); ! QSpacerItem* spacer_3 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum ); ! Layout9_2->addItem( spacer_3 ); ! ! searchInDirs = new QCheckBox( tab, "searchInDirs" ); ! searchInDirs->setText( i18n( "Search in s&ubdirectories" ) ); ! searchInDirs->setChecked( TRUE ); ! Layout9_2->addWidget( searchInDirs ); ! ! searchInArchives = new QCheckBox( tab, "searchInArchives" ); ! searchInArchives->setEnabled( FALSE ); ! searchInArchives->setText( i18n( "Search in arch&ives" ) ); ! Layout9_2->addWidget( searchInArchives ); ! ! followLinks = new QCheckBox( tab, "followLinks" ); ! followLinks->setText( i18n( "Follow &links" ) ); ! Layout9_2->addWidget( followLinks ); ! ! tabLayout->addMultiCellLayout( Layout9_2, 3, 3, 0, 1 ); ! TabWidget2->insertTab( tab, i18n( "&General" ) ); tab_2 = new QWidget( TabWidget2, "tab_2" ); --- 119,124 ---- TabWidget2 = new QTabWidget( this, "TabWidget2" ); ! generalFilter = new GeneralFilter( TabWidget2, "generalFilter" ); ! TabWidget2->insertTab( generalFilter, i18n( "&General" ) ); tab_2 = new QWidget( TabWidget2, "tab_2" ); *************** *** 741,750 **** connect( mainSearchBtn, SIGNAL( clicked() ), this, SLOT( startSearch() ) ); connect( mainStopBtn, SIGNAL( clicked() ), this, SLOT( stopSearch() ) ); - connect( searchInBtn, SIGNAL( clicked() ), this, SLOT( addToSearchIn() ) ); - connect( searchInBtnAdd, SIGNAL( clicked() ), this, SLOT( addToSearchInManually() ) ); - connect( dontSearchInBtn, SIGNAL( clicked() ), this, SLOT( addToDontSearchIn() ) ); - connect( dontSearchInBtnAdd, SIGNAL( clicked() ), this, SLOT( addToDontSearchInManually() ) ); - connect( searchInEdit, SIGNAL( returnPressed(const QString&) ), this, SLOT( addToSearchInManually() ) ); - connect( dontSearchInEdit, SIGNAL( returnPressed(const QString&) ), this, SLOT( addToDontSearchInManually() ) ); connect( biggerThanEnabled, SIGNAL( toggled(bool) ), biggerThanAmount, SLOT( setEnabled(bool) ) ); connect( biggerThanEnabled, SIGNAL( toggled(bool) ), biggerThanType, SLOT( setEnabled(bool) ) ); --- 452,455 ---- *************** *** 781,789 **** // tab order - setTabOrder( searchFor, ofType ); - setTabOrder( ofType, searchInEdit ); - setTabOrder( searchInEdit, dontSearchInEdit ); - setTabOrder( dontSearchInEdit, containsText ); - setTabOrder( containsText, mainSearchBtn ); setTabOrder( mainSearchBtn, mainCloseBtn ); setTabOrder( mainCloseBtn, biggerThanEnabled ); --- 486,489 ---- *************** *** 815,826 **** setTabOrder( allX, mainStopBtn ); setTabOrder( mainStopBtn, TabWidget2 ); ! setTabOrder( TabWidget2, dontSearchIn ); ! setTabOrder( dontSearchIn, searchIn ); ! setTabOrder( searchIn, containsTextCase ); ! setTabOrder( containsTextCase, searchForCase ); ! setTabOrder( searchForCase, searchInDirs ); ! setTabOrder( searchInDirs, searchInArchives ); ! setTabOrder( searchInArchives, followLinks ); ! setTabOrder( followLinks, biggerThanType ); setTabOrder( biggerThanType, smallerThanType ); setTabOrder( smallerThanType, modifiedInTheLastType ); --- 515,519 ---- setTabOrder( allX, mainStopBtn ); setTabOrder( mainStopBtn, TabWidget2 ); ! setTabOrder( TabWidget2, biggerThanType ); setTabOrder( biggerThanType, smallerThanType ); setTabOrder( smallerThanType, modifiedInTheLastType ); *************** *** 853,876 **** } - void KrSearchBase::addToDontSearchIn() - { - qWarning( "KrSearchBase::addToDontSearchIn(): Not implemented yet!" ); - } - - void KrSearchBase::addToDontSearchInManually() - { - qWarning( "KrSearchBase::addToDontSearchInManually(): Not implemented yet!" ); - } - - void KrSearchBase::addToSearchIn() - { - qWarning( "KrSearchBase::addToSearchIn(): Not implemented yet!" ); - } - - void KrSearchBase::addToSearchInManually() - { - qWarning( "KrSearchBase::addToSearchInManually(): Not implemented yet!" ); - } - void KrSearchBase::closeDialog() { --- 546,549 ---- Index: krsearchdialog.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchdialog.cpp,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** krsearchdialog.cpp 23 Sep 2004 16:43:03 -0000 1.22 --- krsearchdialog.cpp 24 Sep 2004 20:40:04 -0000 1.23 *************** *** 110,114 **** // disable the search action ... no 2 searchers ! krFind->setEnabled(false); ! searchFor->setFocus(); resultsList->setColumnAlignment(2, AlignRight); --- 110,114 ---- // disable the search action ... no 2 searchers ! krFind->setEnabled(false); ! generalFilter->searchFor->setFocus(); resultsList->setColumnAlignment(2, AlignRight); *************** *** 130,162 **** void KrSearchDialog::prepareGUI() { //=======> to be moved ... - searchForCase->setChecked(false); resultsList->setSorting(1); // sort by location belongsToUserData->setEditable(false); belongsToGroupData->setEditable(false); - searchInArchives->setEnabled(true); - connect(searchInArchives, SIGNAL(toggled(bool)), containsText, SLOT(setDisabled(bool))); - connect(searchInArchives, SIGNAL(toggled(bool)), containsTextCase, SLOT(setDisabled(bool))); - connect(searchInArchives, SIGNAL(toggled(bool)), containsWholeWord, SLOT(setDisabled(bool))); - - ofType->insertItem(i18n("All Files")); - ofType->insertItem(i18n("Archives")); - ofType->insertItem(i18n("Directories")); - ofType->insertItem(i18n("Image Files")); - ofType->insertItem(i18n("Text Files")); - ofType->insertItem(i18n("Video Files")); - ofType->insertItem(i18n("Audio Files")); - - ofType->setEnabled(true); // ======================================== - // additional connections ... adds history support etc. - connect(searchFor, SIGNAL(activated(const QString&)), - searchFor, SLOT(addToHistory(const QString&))); - connect(containsText, SIGNAL(activated(const QString&)), - containsText, SLOT(addToHistory(const QString&))); - - // add shell completion - completion.setMode(KURLCompletion::FileCompletion); - searchInEdit->setCompletionObject(&completion); - dontSearchInEdit->setCompletionObject(&completion); // fix the results list --- 130,137 ---- *************** *** 178,201 **** resultsList->setColumnWidth(4, j*7); - // clear the searchin lists - searchIn->clear(); dontSearchIn->clear(); - // the path in the active panel should be the default search location QString path = krApp->mainView->activePanel->getPath(); ! searchInEdit->setText(path); ! ! // load the completion and history lists ! // ==> search for ! krConfig->setGroup("Search"); ! QStringList list = krConfig->readListEntry("SearchFor Completion"); ! searchFor->completionObject()->setItems(list); ! list = krConfig->readListEntry("SearchFor History"); ! searchFor->setHistoryItems(list); ! // ==> grep ! krConfig->setGroup("Search"); ! list = krConfig->readListEntry("ContainsText Completion"); ! containsText->completionObject()->setItems(list); ! list = krConfig->readListEntry("ContainsText History"); ! containsText->setHistoryItems(list); // fill the users and groups list --- 153,159 ---- resultsList->setColumnWidth(4, j*7); // the path in the active panel should be the default search location QString path = krApp->mainView->activePanel->getPath(); ! generalFilter->searchInEdit->setText(path); // fill the users and groups list *************** *** 217,235 **** } hide(); - // save the history combos - // ==> search for - QStringList list = searchFor->completionObject()->items(); - krConfig->setGroup("Search"); - krConfig->writeEntry("SearchFor Completion", list); - list = searchFor->historyItems(); - krConfig->writeEntry("SearchFor History", list); - // ==> grep text - list = containsText->completionObject()->items(); - krConfig->setGroup("Search"); - krConfig->writeEntry("ContainsText Completion", list); - list = containsText->historyItems(); - krConfig->writeEntry("ContainsText History", list); - - krConfig->sync(); // re-enable the search action krFind->setEnabled(true); --- 175,178 ---- *************** *** 242,275 **** } - void KrSearchDialog::addToSearchIn() { - KURL url = KFileDialog::getExistingURL(); - if ( url.isEmpty()) return; - searchInEdit->setText( url.prettyURL( 0,KURL::StripFileProtocol ) ); - searchInEdit->setFocus(); - } - - void KrSearchDialog::addToSearchInManually() { - if( searchInEdit->text().simplifyWhiteSpace().length() ) - { - searchIn->insertItem(searchInEdit->text()); - searchInEdit->clear(); - } - } - - void KrSearchDialog::addToDontSearchIn() { - KURL url = KFileDialog::getExistingURL(); - if ( url.isEmpty()) return; - dontSearchInEdit->setText( url.prettyURL( 0,KURL::StripFileProtocol ) ); - dontSearchInEdit->setFocus(); - } - - void KrSearchDialog::addToDontSearchInManually() { - if( dontSearchInEdit->text().simplifyWhiteSpace().length() ) - { - dontSearchIn->insertItem(dontSearchInEdit->text()); - dontSearchInEdit->clear(); - } - } - void KrSearchDialog::found(QString what, QString where, KIO::filesize_t size, time_t mtime, QString perm){ // convert the time_t to struct tm --- 185,188 ---- *************** *** 286,356 **** /////////////////// names, locations and greps if (query!=0) { delete query; query = 0; } - - QString matchText = searchFor->currentText().stripWhiteSpace(); - QString excludeText; - - if( !matchText.contains( "*" ) && !matchText.contains( "?" ) && !matchText.contains( " " ) && !matchText.contains( "|" ) ) - matchText = "*" + matchText + "*"; - - int excludeNdx = matchText.find( '|' ); - if( excludeNdx > -1 ) - { - excludeText = matchText.mid( excludeNdx + 1 ).stripWhiteSpace(); - matchText.truncate( excludeNdx ); - matchText = matchText.stripWhiteSpace(); - if( matchText.isEmpty() ) - matchText = "*"; - } - query = new KRQuery(); - query->matches = QStringList::split(QChar(' '), matchText ); - query->excludes = QStringList::split(QChar(' '), excludeText ); - query->matchesCaseSensitive = searchForCase->isChecked(); - if (containsText->isEnabled()) - query->contain = containsText->currentText(); - query->containCaseSensetive = containsTextCase->isChecked(); - query->containWholeWord = containsWholeWord->isChecked(); - query->inArchive = searchInArchives->isChecked(); - query->recurse = searchInDirs->isChecked(); - query->followLinks = followLinks->isChecked(); - if (ofType->currentText()!=i18n("All Files")) - query->type = ofType->currentText(); - else query->type = QString::null; - // create the lists - query->whereToSearch.clear(); - QListBoxItem *item = searchIn->firstItem(); - while ( item ) - { - query->whereToSearch.append( vfs::fromPathOrURL( item->text().simplifyWhiteSpace() ) ); - item = item->next(); - } ! if (!searchInEdit->text().simplifyWhiteSpace().isEmpty()) ! query->whereToSearch.append( vfs::fromPathOrURL( searchInEdit->text().simplifyWhiteSpace() ) ); ! ! query->whereNotToSearch.clear(); ! item = dontSearchIn->firstItem(); ! while ( item ) { - query->whereNotToSearch.append( vfs::fromPathOrURL( item->text().simplifyWhiteSpace() ) ); - item = item->next(); - } - if (!dontSearchInEdit->text().simplifyWhiteSpace().isEmpty()) - query->whereNotToSearch.append( vfs::fromPathOrURL( dontSearchInEdit->text().simplifyWhiteSpace() ) ); - - // check that we have (at least) what to search, and where to search in - if (searchFor->currentText().simplifyWhiteSpace().isEmpty()) { - KMessageBox::error(0,i18n("No search criteria entered !")); - TabWidget2->setCurrentPage(0); // set page to general - searchFor->setFocus(); - return false; - } - if (query->whereToSearch.isEmpty() ) { // we need a place to search in - KMessageBox::error(0,i18n("Please specify a location to search in.")); TabWidget2->setCurrentPage(0); // set page to general - searchInEdit->setFocus(); return false; } ! // size calculations //////////////////////////////////////////////// if ( biggerThanEnabled->isChecked() && --- 199,210 ---- /////////////////// names, locations and greps if (query!=0) { delete query; query = 0; } query = new KRQuery(); ! if( !generalFilter->fillQuery( query ) ) { TabWidget2->setCurrentPage(0); // set page to general return false; } ! // size calculations //////////////////////////////////////////////// if ( biggerThanEnabled->isChecked() && *************** *** 476,480 **** void KrSearchDialog::startSearch() { // first, informative messages ! if (searchInArchives->isChecked()) { KMessageBox::information(0, i18n("Since you chose to also search in archives, " "note the following limitations:\n" --- 330,334 ---- void KrSearchDialog::startSearch() { // first, informative messages ! if (generalFilter->searchInArchives->isChecked()) { KMessageBox::information(0, i18n("Since you chose to also search in archives, " "note the following limitations:\n" *************** *** 486,491 **** if (!gui2query()) return; // else implied ! searchFor->addToHistory(searchFor->currentText()); ! containsText->addToHistory(containsText->currentText()); // prepare the gui /////////////////////////////////////////////// --- 340,344 ---- if (!gui2query()) return; // else implied ! generalFilter->queryAccepted(); // prepare the gui /////////////////////////////////////////////// *************** *** 573,592 **** } - void KrSearchDialog::deleteSelectedItems( QListBox *list_box ) - { - int i=0; - QListBoxItem *item; - - while( (item = list_box->item(i)) ) - { - if( item->isSelected() ) - { - list_box->removeItem( i ); - continue; - } - i++; - } - } - void KrSearchDialog::closeEvent(QCloseEvent *e) { /* if searching is in progress we must not close the window */ --- 426,429 ---- *************** *** 608,630 **** return; } - else if( e->key() == Key_Delete ) - { - if( searchIn->hasFocus() ) - { - deleteSelectedItems( searchIn ); - return; - } - if( dontSearchIn->hasFocus() ) - { - deleteSelectedItems( dontSearchIn ); - return; - } - } if( resultsList->hasFocus() ) { if( e->key() == Key_F4 ) { ! if (!containsText->currentText().isEmpty() && QApplication::clipboard()->text() != containsText->currentText()) ! QApplication::clipboard()->setText(containsText->currentText()); editCurrent(); return; --- 445,454 ---- return; } if( resultsList->hasFocus() ) { if( e->key() == Key_F4 ) { ! if (!generalFilter->containsText->currentText().isEmpty() && QApplication::clipboard()->text() != generalFilter->containsText->currentText()) ! QApplication::clipboard()->setText(generalFilter->containsText->currentText()); editCurrent(); return; *************** *** 632,637 **** else if( e->key() == Key_F3 ) { ! if (!containsText->currentText().isEmpty() && QApplication::clipboard()->text() != containsText->currentText()) ! QApplication::clipboard()->setText(containsText->currentText()); viewCurrent(); return; --- 456,461 ---- else if( e->key() == Key_F3 ) { ! if (!generalFilter->containsText->currentText().isEmpty() && QApplication::clipboard()->text() != generalFilter->containsText->currentText()) ! QApplication::clipboard()->setText(generalFilter->containsText->currentText()); viewCurrent(); return; --- NEW FILE: generalfilter.cpp --- /*************************************************************************** generalfilter.cpp - description ------------------- copyright : (C) 2003 by Shie Erlich & Rafi Yanai & Csaba Karai e-mail : kru...@us... web site : http://krusader.sourceforge.net --------------------------------------------------------------------------- Description *************************************************************************** A db dD d8888b. db db .d8888. .d8b. d8888b. d88888b d8888b. 88 ,8P' 88 `8D 88 88 88' YP d8' `8b 88 `8D 88' 88 `8D 88,8P 88oobY' 88 88 `8bo. 88ooo88 88 88 88ooooo 88oobY' 88`8b 88`8b 88 88 `Y8b. 88~~~88 88 88 88~~~~~ 88`8b 88 `88. 88 `88. 88b d88 db 8D 88 88 88 .8D 88. 88 `88. YP YD 88 YD ~Y8888P' `8888Y' YP YP Y8888D' Y88888P 88 YD S o u r c e F i l e *************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #include "generalfilter.h" #include "../krusader.h" #include "../VFS/vfs.h" #include <klocale.h> #include <kfiledialog.h> #include <kmessagebox.h> static const char* const image1_data[] = { "16 16 52 1", ". c None", "# c #000000", "Q c #101010", "X c #181c18", "K c #202020", "w c #313031", "W c #313431", "V c #414041", "U c #414441", "a c #4a3018", "E c #4a484a", "T c #4a4c4a", "l c #524c4a", "h c #52504a", "j c #525052", "i c #5a5952", "J c #6a6962", "P c #6a6d6a", "S c #8b8d8b", "D c #949594", "R c #9c999c", "O c #9c9d9c", "C c #a4a19c", "M c #a4a1a4", "N c #a4a5a4", "I c #acaaac", "B c #acaeac", "F c #b47d41", "v c #b4b2b4", "u c #b4b6b4", "A c #bdbabd", "t c #bdbebd", "k c #c5854a", "H c #c5c2c5", "s c #c5c6c5", "r c #cdcacd", "L c #cdcecd", "z c #d5d2d5", "q c #d5d6d5", "x c #dedade", "p c #dedede", "b c #e6a562", "G c #e6e2e6", "o c #e6e6e6", "y c #eeeae6", "n c #eeeeee", "m c #f6f6f6", "f c #ffae62", "e c #ffc283", "d c #ffc683", "g c #ffca8b", "c c #ffd29c", "......####......", ".....##.####.#..", "....#.....####..", "...........###..", "..........####..", ".aaaa...........", "abcdbaaaaaaa....", "acdeffffffff#...", "ageahhhihhjjh###", "aeklmmnopqrstuvw", "aeaxpyopzsABCDE.", "aFhxxGpqrHuICJK.", "aaLrqqzLHABMDE..", "ajLtssHtuBNOPQ..", "atNIBBINMRDSE...", "KEETTTEEUVVWX..."}; static const char * const image2_data[] = { "16 16 17 1", " c None", ". c #704A13", "+ c #8A6E3C", "@ c #997E52", "# c #2C1D06", "$ c #EAD9B9", "% c #E0CBA7", "& c #C8A15E", "* c #DAB579", "= c #F8F5F0", "- c #BF9346", "; c #AB6503", "> c #C1892B", ", c #B6710C", "' c #965702", ") c #5A3202", "! c #0D0702", " ", " .+@@@+# ", " +$$$%$$&# ", " .$%**%**$&# ", " .$*&*$=***%&# ", " .%*&**==**&&%-#", " .-&&&*$=%&&&-+#", " #;>$$$==$$$*,.#", " #;>========$,.#", " #;,-&*$=*&-,,.#", " #.;,,-%=&>,,')#", " !)';,,%=>,,')# ", " !).;,&%>;;)# ", " !).;;;;;)# ", " !#).)))# ", " ###### "}; GeneralFilter::GeneralFilter( QWidget *parent, const char *name ) : QWidget( parent, name ) { QGridLayout *filterLayout = new QGridLayout( this ); filterLayout->setSpacing( 6 ); filterLayout->setMargin( 11 ); // Options for name filtering QGroupBox *nameGroup = new QGroupBox( this, "nameGroup" ); nameGroup->setTitle( i18n( "File name:" ) ); nameGroup->setColumnLayout(0, Qt::Vertical ); nameGroup->layout()->setSpacing( 0 ); nameGroup->layout()->setMargin( 0 ); QGridLayout *nameGroupLayout = new QGridLayout( nameGroup->layout() ); nameGroupLayout->setAlignment( Qt::AlignTop ); nameGroupLayout->setSpacing( 6 ); nameGroupLayout->setMargin( 11 ); searchForCase = new QCheckBox( nameGroup, "searchForCase" ); searchForCase->setText( i18n( "&Case sensitive" ) ); searchForCase->setChecked( false ); nameGroupLayout->addWidget( searchForCase, 1, 2 ); QLabel *searchForLabel = new QLabel( nameGroup, "searchForLabel" ); searchForLabel->setText( i18n( "Search &for:" ) ); nameGroupLayout->addWidget( searchForLabel, 0, 0 ); searchFor = new KHistoryCombo( false, nameGroup, "searchFor" ); searchFor->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, searchFor->sizePolicy().hasHeightForWidth() ) ); searchFor->setEditable( true ); searchForLabel->setBuddy( searchFor ); nameGroupLayout->addMultiCellWidget( searchFor, 0, 0, 1, 2 ); QLabel *searchType = new QLabel( nameGroup, "searchType" ); searchType->setText( i18n( "&Of type:" ) ); nameGroupLayout->addWidget( searchType, 1, 0 ); ofType = new KComboBox( false, nameGroup, "ofType" ); ofType->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, ofType->sizePolicy().hasHeightForWidth() ) ); ofType->setEditable( false ); searchType->setBuddy(ofType); ofType->insertItem(i18n("All Files")); ofType->insertItem(i18n("Archives")); ofType->insertItem(i18n("Directories")); ofType->insertItem(i18n("Image Files")); ofType->insertItem(i18n("Text Files")); ofType->insertItem(i18n("Video Files")); ofType->insertItem(i18n("Audio Files")); nameGroupLayout->addWidget( ofType, 1, 1 ); filterLayout->addMultiCellWidget( nameGroup, 0, 0, 0, 1 ); // Options for search in QGroupBox *searchInGroup = new QGroupBox( this, "searchInGroup" ); searchInGroup->setTitle( i18n( "&Search in" ) ); searchInGroup->setColumnLayout(0, Qt::Vertical ); searchInGroup->layout()->setSpacing( 0 ); searchInGroup->layout()->setMargin( 0 ); QGridLayout *searchInLayout = new QGridLayout( searchInGroup->layout() ); searchInLayout->setAlignment( Qt::AlignTop ); searchInLayout->setSpacing( 6 ); searchInLayout->setMargin( 11 ); searchInEdit = new KLineEdit( searchInGroup, "searchInEdit" ); searchInLayout->addWidget( searchInEdit, 0, 0 ); searchIn = new QListBox( searchInGroup, "searchIn" ); searchIn->setSelectionMode( QListBox::Extended ); searchInLayout->addMultiCellWidget( searchIn, 1, 1, 0, 2 ); searchInBtnAdd = new QToolButton( searchInGroup, "searchInBtnAdd" ); searchInBtnAdd->setText( "" ); searchInBtnAdd->setPixmap( QPixmap( ( const char** ) image2_data ) ); searchInLayout->addWidget( searchInBtnAdd, 0, 1 ); searchInBtn = new QToolButton( searchInGroup, "searchInBtn" ); searchInBtn->setText( "" ); searchInBtn->setPixmap( QPixmap( ( const char** ) image1_data ) ); searchInLayout->addWidget( searchInBtn, 0, 2 ); filterLayout->addWidget( searchInGroup, 1, 0 ); // Options for don't search in QGroupBox *dontSearchInGroup = new QGroupBox( this, "dontSearchInGroup" ); dontSearchInGroup->setTitle( i18n( "&Don't search in" ) ); dontSearchInGroup->setColumnLayout(0, Qt::Vertical ); dontSearchInGroup->layout()->setSpacing( 0 ); dontSearchInGroup->layout()->setMargin( 0 ); QGridLayout *dontSearchInLayout = new QGridLayout( dontSearchInGroup->layout() ); dontSearchInLayout->setAlignment( Qt::AlignTop ); dontSearchInLayout->setSpacing( 6 ); dontSearchInLayout->setMargin( 11 ); dontSearchInEdit = new KLineEdit( dontSearchInGroup, "dontSearchInEdit" ); dontSearchInLayout->addWidget( dontSearchInEdit, 0, 0 ); dontSearchInBtnAdd = new QToolButton( dontSearchInGroup, "dontSearchInBtnAdd" ); dontSearchInBtnAdd->setText( "" ); dontSearchInBtnAdd->setPixmap( QPixmap( ( const char** ) image2_data ) ); dontSearchInLayout->addWidget( dontSearchInBtnAdd, 0, 1 ); dontSearchInBtn = new QToolButton( dontSearchInGroup, "dontSearchInBtn" ); dontSearchInBtn->setText( "" ); dontSearchInBtn->setPixmap( QPixmap( ( const char** ) image1_data ) ); dontSearchInLayout->addWidget( dontSearchInBtn, 0, 2 ); dontSearchIn = new QListBox( dontSearchInGroup, "dontSearchIn" ); dontSearchIn->setSelectionMode( QListBox::Extended ); dontSearchInLayout->addMultiCellWidget( dontSearchIn, 1, 1, 0, 2 ); filterLayout->addWidget( dontSearchInGroup, 1, 1 ); // add shell completion completion.setMode( KURLCompletion::FileCompletion ); searchInEdit->setCompletionObject( &completion ); dontSearchInEdit->setCompletionObject( &completion ); // Options for containing text QGroupBox *containsGroup = new QGroupBox( this, "containsGroup" ); containsGroup->setTitle( i18n( "Containing text" ) ); containsGroup->setColumnLayout(0, Qt::Vertical ); containsGroup->layout()->setSpacing( 0 ); containsGroup->layout()->setMargin( 0 ); QGridLayout *containsLayout = new QGridLayout( containsGroup->layout() ); containsLayout->setAlignment( Qt::AlignTop ); containsLayout->setSpacing( 6 ); containsLayout->setMargin( 11 ); QHBoxLayout *containsTextLayout = new QHBoxLayout(); containsTextLayout->setSpacing( 6 ); containsTextLayout->setMargin( 0 ); QLabel *containsLabel = new QLabel( containsGroup, "containsLabel" ); containsLabel->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)1, containsLabel->sizePolicy().hasHeightForWidth() ) ); containsLabel->setText( i18n( "&Text:" ) ); containsTextLayout->addWidget( containsLabel ); containsText = new KHistoryCombo( false, containsGroup, "containsText" ); containsText->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, containsText->sizePolicy().hasHeightForWidth() ) ); containsTextLayout->addWidget( containsText ); containsLabel->setBuddy(containsText); containsLayout->addLayout( containsTextLayout, 0, 0 ); QHBoxLayout *containsCbsLayout = new QHBoxLayout(); containsCbsLayout->setSpacing( 6 ); containsCbsLayout->setMargin( 0 ); QSpacerItem* cbSpacer = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum ); containsCbsLayout->addItem( cbSpacer ); containsWholeWord = new QCheckBox( containsGroup, "containsWholeWord" ); containsWholeWord->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)0, containsWholeWord->sizePolicy().hasHeightForWidth() ) ); containsWholeWord->setText( i18n( "&Match whole word only" ) ); containsWholeWord->setChecked( false ); containsCbsLayout->addWidget( containsWholeWord ); containsTextCase = new QCheckBox( containsGroup, "containsTextCase" ); containsTextCase->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)0, containsTextCase->sizePolicy().hasHeightForWidth() ) ); containsTextCase->setText( i18n( "Cas&e sensitive" ) ); containsTextCase->setChecked( true ); containsCbsLayout->addWidget( containsTextCase ); containsLayout->addLayout( containsCbsLayout, 1, 0 ); filterLayout->addMultiCellWidget( containsGroup, 2, 2, 0, 1 ); // Options for recursive searching QHBoxLayout *recurseLayout = new QHBoxLayout(); recurseLayout->setSpacing( 6 ); recurseLayout->setMargin( 0 ); QSpacerItem* recurseSpacer = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum ); recurseLayout->addItem( recurseSpacer ); searchInDirs = new QCheckBox( this, "searchInDirs" ); searchInDirs->setText( i18n( "Search in s&ubdirectories" ) ); searchInDirs->setChecked( true ); recurseLayout->addWidget( searchInDirs ); searchInArchives = new QCheckBox( this, "searchInArchives" ); searchInArchives->setText( i18n( "Search in arch&ives" ) ); recurseLayout->addWidget( searchInArchives ); followLinks = new QCheckBox( this, "followLinks" ); followLinks->setText( i18n( "Follow &links" ) ); recurseLayout->addWidget( followLinks ); filterLayout->addMultiCellLayout( recurseLayout, 3, 3, 0, 1 ); // Connection table connect( searchInBtn, SIGNAL( clicked() ), this, SLOT( addToSearchIn() ) ); connect( searchInBtnAdd, SIGNAL( clicked() ), this, SLOT( addToSearchInManually() ) ); connect( searchInEdit, SIGNAL( returnPressed(const QString&) ), this, SLOT( addToSearchInManually() ) ); connect( dontSearchInBtn, SIGNAL( clicked() ), this, SLOT( addToDontSearchIn() ) ); connect( dontSearchInBtnAdd, SIGNAL( clicked() ), this, SLOT( addToDontSearchInManually() ) ); connect( dontSearchInEdit, SIGNAL( returnPressed(const QString&) ), this, SLOT( addToDontSearchInManually() ) ); connect( searchInArchives, SIGNAL(toggled(bool)), containsText, SLOT(setDisabled(bool))); connect( searchInArchives, SIGNAL(toggled(bool)), containsTextCase, SLOT(setDisabled(bool))); connect( searchInArchives, SIGNAL(toggled(bool)), containsWholeWord, SLOT(setDisabled(bool))); connect( searchFor, SIGNAL(activated(const QString&)), searchFor, SLOT(addToHistory(const QString&))); connect( containsText, SIGNAL(activated(const QString&)), containsText, SLOT(addToHistory(const QString&))); // tab order setTabOrder( searchFor, ofType ); setTabOrder( ofType, searchInEdit ); setTabOrder( searchInEdit, dontSearchInEdit ); setTabOrder( dontSearchInEdit, containsText ); setTabOrder( containsText, dontSearchIn ); setTabOrder( dontSearchIn, searchIn ); setTabOrder( searchIn, containsTextCase ); setTabOrder( containsTextCase, searchForCase ); setTabOrder( searchForCase, searchInDirs ); setTabOrder( searchInDirs, searchInArchives ); setTabOrder( searchInArchives, followLinks ); // load the completion and history lists // ==> search for krConfig->setGroup("Search"); QStringList list = krConfig->readListEntry("SearchFor Completion"); searchFor->completionObject()->setItems(list); list = krConfig->readListEntry("SearchFor History"); searchFor->setHistoryItems(list); // ==> grep krConfig->setGroup("Search"); list = krConfig->readListEntry("ContainsText Completion"); containsText->completionObject()->setItems(list); list = krConfig->readListEntry("ContainsText History"); containsText->setHistoryItems(list); } GeneralFilter::~GeneralFilter() { // save the history combos // ==> search for QStringList list = searchFor->completionObject()->items(); krConfig->setGroup("Search"); krConfig->writeEntry("SearchFor Completion", list); list = searchFor->historyItems(); krConfig->writeEntry("SearchFor History", list); // ==> grep text list = containsText->completionObject()->items(); krConfig->setGroup("Search"); krConfig->writeEntry("ContainsText Completion", list); list = containsText->historyItems(); krConfig->writeEntry("ContainsText History", list); krConfig->sync(); } void GeneralFilter::addToSearchIn() { KURL url = KFileDialog::getExistingURL(); if ( url.isEmpty()) return; searchInEdit->setText( url.prettyURL( 0,KURL::StripFileProtocol ) ); searchInEdit->setFocus(); } void GeneralFilter::addToSearchInManually() { if( searchInEdit->text().simplifyWhiteSpace().length() ) { searchIn->insertItem(searchInEdit->text()); searchInEdit->clear(); } } void GeneralFilter::addToDontSearchIn() { KURL url = KFileDialog::getExistingURL(); if ( url.isEmpty()) return; dontSearchInEdit->setText( url.prettyURL( 0,KURL::StripFileProtocol ) ); dontSearchInEdit->setFocus(); } void GeneralFilter::addToDontSearchInManually() { if( dontSearchInEdit->text().simplifyWhiteSpace().length() ) { dontSearchIn->insertItem(dontSearchInEdit->text()); dontSearchInEdit->clear(); } } bool GeneralFilter::fillQuery( KRQuery *query ) { // check that we have (at least) what to search, and where to search in if (searchFor->currentText().simplifyWhiteSpace().isEmpty()) { KMessageBox::error(0,i18n("No search criteria entered !")); searchFor->setFocus(); return false; } // now fill the query query->setFilter( searchFor->currentText().stripWhiteSpace() ); query->matchesCaseSensitive = searchForCase->isChecked(); if (containsText->isEnabled()) query->contain = containsText->currentText(); query->containCaseSensetive = containsTextCase->isChecked(); query->containWholeWord = containsWholeWord->isChecked(); query->inArchive = searchInArchives->isChecked(); query->recurse = searchInDirs->isChecked(); query->followLinks = followLinks->isChecked(); if (ofType->currentText()!=i18n("All Files")) query->type = ofType->currentText(); else query->type = QString::null; // create the lists query->whereToSearch.clear(); QListBoxItem *item = searchIn->firstItem(); while ( item ) { query->whereToSearch.append( vfs::fromPathOrURL( item->text().simplifyWhiteSpace() ) ); item = item->next(); } if (!searchInEdit->text().simplifyWhiteSpace().isEmpty()) query->whereToSearch.append( vfs::fromPathOrURL( searchInEdit->text().simplifyWhiteSpace() ) ); query->whereNotToSearch.clear(); item = dontSearchIn->firstItem(); while ( item ) { query->whereNotToSearch.append( vfs::fromPathOrURL( item->text().simplifyWhiteSpace() ) ); item = item->next(); } if (!dontSearchInEdit->text().simplifyWhiteSpace().isEmpty()) query->whereNotToSearch.append( vfs::fromPathOrURL( dontSearchInEdit->text().simplifyWhiteSpace() ) ); // checking the lists if (query->whereToSearch.isEmpty() ) { // we need a place to search in KMessageBox::error(0,i18n("Please specify a location to search in.")); searchInEdit->setFocus(); return false; } return true; } void GeneralFilter::queryAccepted() { searchFor->addToHistory(searchFor->currentText()); containsText->addToHistory(containsText->currentText()); } void GeneralFilter::deleteSelectedItems( QListBox *list_box ) { int i=0; QListBoxItem *item; while( (item = list_box->item(i)) ) { if( item->isSelected() ) { list_box->removeItem( i ); continue; } i++; } } void GeneralFilter::keyPressEvent(QKeyEvent *e) { if( e->key() == Key_Delete ) { if( searchIn->hasFocus() ) { deleteSelectedItems( searchIn ); return; } if( dontSearchIn->hasFocus() ) { deleteSelectedItems( dontSearchIn ); return; } } QWidget::keyPressEvent( e ); } #include "generalfilter.moc" Index: krquery.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krquery.h,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** krquery.h 23 Sep 2004 21:59:09 -0000 1.5 --- krquery.h 24 Sep 2004 20:40:04 -0000 1.6 *************** *** 43,46 **** --- 43,47 ---- bool match( vfile *file ); // checks if the given vfile object matches the conditions void normalize(); // make sure KRSearchMod can use the data + void setFilter( QString text ); // sets the text for filtering QStringList matches; // what to search Index: krquery.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krquery.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** krquery.cpp 23 Sep 2004 21:59:09 -0000 1.6 --- krquery.cpp 24 Sep 2004 20:40:04 -0000 1.7 *************** *** 98,101 **** --- 98,103 ---- // see if the name matches if ( !fileMatch( vf->vfile_getName() ) ) return false; + // checking the mime + if( !type.isEmpty() && !checkType( vf->vfile_getMime() ) ) return false; // check that the size fit KIO::filesize_t size = vf->vfile_getSize(); *************** *** 162,163 **** --- 164,188 ---- return false; } + + void KRQuery::setFilter( QString text ) + { + QString matchText = text; + QString excludeText; + + if( !matchText.contains( "*" ) && !matchText.contains( "?" ) && !matchText.contains( " " ) && !matchText.contains( "|" ) ) + matchText = "*" + matchText + "*"; + + int excludeNdx = matchText.find( '|' ); + if( excludeNdx > -1 ) + { + excludeText = matchText.mid( excludeNdx + 1 ).stripWhiteSpace(); + matchText.truncate( excludeNdx ); + matchText = matchText.stripWhiteSpace(); + if( matchText.isEmpty() ) + matchText = "*"; + } + + matches = QStringList::split(QChar(' '), matchText ); + excludes = QStringList::split(QChar(' '), excludeText ); + } + Index: krsearchdialog.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchdialog.h,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** krsearchdialog.h 23 Sep 2004 16:43:03 -0000 1.7 --- krsearchdialog.h 24 Sep 2004 20:40:04 -0000 1.8 *************** *** 36,40 **** #include <qwidget.h> #include <qstringlist.h> - #include <kshellcompletion.h> #include "krsearchdialogbase.h" #include "krquery.h" --- 36,39 ---- *************** *** 60,67 **** void found(QString what, QString where, KIO::filesize_t size, time_t mtime, QString perm); void closeDialog(); - void addToSearchIn(); - void addToSearchInManually(); - void addToDontSearchIn(); - void addToDontSearchInManually(); void modifiedBetweenSetDate1(); void modifiedBetweenSetDate2(); --- 59,62 ---- *************** *** 81,85 **** void fillList(QComboBox *list, QString filename); bool gui2query(); - void deleteSelectedItems( QListBox * ); void editCurrent(); void viewCurrent(); --- 76,79 ---- *************** *** 88,92 **** KRQuery *query; KRSearchMod *searcher; - KShellCompletion completion; QStringList savedSearches; bool isSearching; --- 82,85 ---- Index: Makefile.am =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/Makefile.am,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** Makefile.am 15 Apr 2002 18:50:57 -0000 1.1.1.1 --- Makefile.am 24 Sep 2004 20:40:04 -0000 1.2 *************** *** 6,13 **** libSearch_a_METASOURCES = AUTO ! libSearch_a_SOURCES = krsearchmod.cpp krsearchdialog.cpp krsearchdialogbase.cpp krquery.cpp ! EXTRA_DIST = krquery.cpp krquery.h krsearchdialogbase.cpp krsearchdialogbase.h krsearchdialog.cpp krsearchdialog.h krsearchmod.cpp krsearchmod.h ####### kdevelop will overwrite this part!!! (end)############ --- 6,13 ---- libSearch_a_METASOURCES = AUTO ! libSearch_a_SOURCES = krsearchmod.cpp krsearchdialog.cpp krsearchdialogbase.cpp krquery.cpp generalfilter.cpp ! EXTRA_DIST = krquery.cpp krquery.h krsearchdialogbase.cpp krsearchdialogbase.h krsearchdialog.cpp krsearchdialog.h krsearchmod.cpp krsearchmod.h generalfilter.h ####### kdevelop will overwrite this part!!! (end)############ |
From: Shie E. <er...@us...> - 2004-09-24 14:47:44
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Panel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22678/krusader/Panel Modified Files: panelpopup.cpp Log Message: 1) tree now shows home and root 2) single click opens a tree branch. double click to go there Index: panelpopup.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Panel/panelpopup.cpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** panelpopup.cpp 15 Sep 2004 11:22:21 -0000 1.11 --- panelpopup.cpp 24 Sep 2004 14:47:33 -0000 1.12 *************** *** 80,93 **** stack->addWidget( tree, Tree ); tree->addColumn( "" ); ! tree->addBranch( "/", i18n( "/" ) ); ! tree->setDirOnlyMode( tree->branch( i18n( "/" ) ), true ); tree->setShowFolderOpenPixmap(true); ! tree->branch( i18n( "/" ) ) ->setChildRecurse(false); ! ! tree->branch( i18n( "/" ) ) ->setOpen( true ); tree->header() ->setHidden( true ); ! connect(tree, SIGNAL(executed(QListViewItem*)), this, SLOT(treeSelection(QListViewItem*))); // start listing the tree ! tree->branch( i18n( "/" ) ) ->root(); // create the quickview part ------ --- 80,98 ---- stack->addWidget( tree, Tree ); tree->addColumn( "" ); ! // add ~ ! tree->addBranch( QDir::home().absPath(), i18n("Home")); ! tree->setDirOnlyMode( tree->branch(i18n("Home")), true); ! tree->branch(i18n("Home"))->setChildRecurse(false); ! // add / ! tree->addBranch( "/", i18n( "Root" ) ); ! tree->setDirOnlyMode( tree->branch( i18n( "Root" ) ), true ); tree->setShowFolderOpenPixmap(true); ! tree->branch( i18n( "Root" ) ) ->setChildRecurse(false); ! tree->branch( i18n( "Root" ) ) ->setOpen( true ); tree->header() ->setHidden( true ); ! connect(tree, SIGNAL(doubleClicked(QListViewItem*)), this, SLOT(treeSelection(QListViewItem*))); // start listing the tree ! tree->branch( i18n( "Root" ) ) ->root(); ! tree->branch( i18n( "Home" ) ) ->root(); // create the quickview part ------ |
From: Shie E. <er...@us...> - 2004-09-24 14:46:33
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Panel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22417/krusader/Panel Modified Files: listpanel.cpp Log Message: first time opening the 3rd panel, resize to 50% of the panel Index: listpanel.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Panel/listpanel.cpp,v retrieving revision 1.89 retrieving revision 1.90 diff -C2 -d -r1.89 -r1.90 *** listpanel.cpp 19 Sep 2004 11:47:45 -0000 1.89 --- listpanel.cpp 24 Sep 2004 14:46:22 -0000 1.90 *************** *** 267,274 **** void ListPanel::togglePanelPopup() { if (popup->isHidden()) { // ugly hack. resize the splitter since it won't do so itself ! if (popupSizes.count() > 0) dynamic_cast<QSplitter*>(popup->parent())->setSizes(popupSizes); ! popup->show(); popupBtn->setPixmap(krLoader->loadIcon("down", KIcon::Toolbar, 16)); } else { --- 267,279 ---- void ListPanel::togglePanelPopup() { if (popup->isHidden()) { + popup->show(); // ugly hack. resize the splitter since it won't do so itself ! if (popupSizes.count() > 0) { dynamic_cast<QSplitter*>(popup->parent())->setSizes(popupSizes); ! } else { ! QValueList<int> lst; ! lst << height()/2 << height()/2; ! dynamic_cast<QSplitter*>(popup->parent())->setSizes(lst); ! } popupBtn->setPixmap(krLoader->loadIcon("down", KIcon::Toolbar, 16)); } else { |
From: Karai C. <ck...@us...> - 2004-09-23 21:59:19
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Search In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25635/krusader_kde3/krusader/Search Modified Files: krquery.cpp krquery.h krsearchmod.cpp krsearchmod.h Log Message: Searcher: separating the filtering module from the searcher Index: krsearchmod.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchmod.h,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** krsearchmod.h 21 Sep 2004 20:25:34 -0000 1.6 --- krsearchmod.h 23 Sep 2004 21:59:09 -0000 1.7 *************** *** 67,73 **** private: bool stopSearch; - bool checkPerm(QString perm); - bool checkType(QString mime); - bool fileMatch(QString name); QValueStack<KURL> scannedUrls; QValueStack<KURL> unScannedUrls; --- 67,70 ---- Index: krsearchmod.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchmod.cpp,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** krsearchmod.cpp 23 Sep 2004 16:43:03 -0000 1.13 --- krsearchmod.cpp 23 Sep 2004 21:59:09 -0000 1.14 *************** *** 84,126 **** } - bool KRSearchMod::checkPerm( QString perm ) - { - QString q_perm = query->perm; - for ( int i = 0; i < 9; ++i ) - if ( q_perm[ i ] != '?' && q_perm[ i ] != perm[ i + 1 ] ) return false; - return true; - } - - bool KRSearchMod::checkType( QString mime ) - { - QString type = query->type; - if ( type == mime ) return true; - if ( type == i18n( "Archives" ) ) - return KRarcHandler::arcSupported( mime.right( 4 ) ); - if ( type == i18n( "Directories" ) ) return mime.contains( "directory" ); - if ( type == i18n( "Image Files" ) ) return mime.contains( "image/" ); - if ( type == i18n( "Text Files" ) ) return mime.contains( "text/" ); - if ( type == i18n( "Video Files" ) ) return mime.contains( "video/" ); - if ( type == i18n( "Audio Files" ) ) return mime.contains( "audio/" ); - if ( type == i18n( "Custom" ) ) return query->customType.contains( mime ); - return false; - } - - bool KRSearchMod::fileMatch( const QString name ) - { - unsigned int len; - for ( unsigned int i = 0; i < query->excludes.count(); ++i ) - { - QRegExp( *query->excludes.at( i ), query->matchesCaseSensitive, true ).match( name, 0, ( int* ) & len ); - if ( len == name.length() ) return false; - } - for ( unsigned int i = 0; i < query->matches.count(); ++i ) - { - QRegExp( *query->matches.at( i ), query->matchesCaseSensitive, true ).match( name, 0, ( int* ) & len ); - if ( len == name.length() ) return true; - } - return false; - } - void KRSearchMod::scanURL( KURL url ) { --- 84,87 ---- *************** *** 163,177 **** struct dirent* dirEnt; - QString name; - unsigned long size; - time_t mtime; - KURL url; while ( ( dirEnt = readdir( d ) ) != NULL ) { ! name = QString::fromLocal8Bit( dirEnt->d_name ); ! url = vfs::fromPathOrURL( dir + name ); ! ! QString mime = QString::null; // we dont scan the ".",".." enteries --- 124,131 ---- struct dirent* dirEnt; while ( ( dirEnt = readdir( d ) ) != NULL ) { ! QString name = QString::fromLocal8Bit( dirEnt->d_name ); // we dont scan the ".",".." enteries *************** *** 180,183 **** --- 134,150 ---- KDE_struct_stat stat_p; KDE_lstat( ( dir + name ).local8Bit(), &stat_p ); + + KURL url = vfs::fromPathOrURL( dir + name ); + + QString mime = QString::null; + if ( query->inArchive || !query->type.isEmpty() ) + mime = KMimeType::findByURL( url, stat_p.st_mode, true, false ) ->name(); + + // creating a vfile object for matching with krquery + vfile * vf = new vfile(name, (KIO::filesize_t)stat_p.st_size, KRpermHandler::mode2QString(stat_p.st_mode), + stat_p.st_mtime, S_ISLNK(stat_p.st_mode), stat_p.st_uid, stat_p.st_gid, + mime, "", stat_p.st_mode); + vf->vfile_setUrl( url ); + if ( query->recurse ) { *************** *** 189,193 **** if ( query->inArchive ) { - mime = KMimeType::findByURL( url, stat_p.st_mode, true, false ) ->name(); QString type = mime.right( 4 ); if ( mime.contains( "-rar" ) ) type = "-rar"; --- 156,159 ---- *************** *** 205,281 **** } } ! // see if the name matches ! if ( !fileMatch( name ) ) continue; ! // check that the size fit ! size = stat_p.st_size; ! if ( query->minSize && size < query->minSize ) continue; ! if ( query->maxSize && size > query->maxSize ) continue; ! // check the time frame ! mtime = stat_p.st_mtime; ! if ( query->olderThen && mtime > query->olderThen ) continue; ! if ( query->newerThen && mtime < query->newerThen ) continue; ! // check the type ! if ( !query->type.isEmpty() ) ! { ! if ( mime.isEmpty() ) ! mime = KMimeType::findByURL( url, stat_p.st_mode, true, false ) ->name(); ! if ( !checkType( mime ) ) continue; ! } ! // check owner name ! if ( !query->owner.isEmpty() && ! stat_p.st_uid != KRpermHandler::user2uid( query->owner ) ) continue; ! // check group name ! if ( !query->group.isEmpty() && ! stat_p.st_gid != KRpermHandler::group2gid( query->group ) ) continue; ! // check permission ! if ( !query->perm.isEmpty() && ! !checkPerm( KRpermHandler::mode2QString( stat_p.st_mode ) ) ) continue; ! // check if it contains the text (avoid the /dev diretory). ! // grep code from KFind ( the copyright goes with our thanx to the unknown author ) ! if ( !query->contain.isEmpty() && !dir.startsWith( "/dev" ) ) { ! QFile qf( dir + name ); ! ! qf.open( IO_ReadOnly ); ! QTextStream text( &qf ); ! text.setEncoding( QTextStream::Locale ); ! QString line; ! bool found = false; ! while ( !stopSearch && !text.atEnd() ) ! { ! line = text.readLine(); ! if ( line.isNull() ) break; ! if ( query->containWholeWord ) ! { ! int ndx = 0; ! ! while ( ( ndx = line.find( query->contain, ndx, query->containCaseSensetive ) ) != -1 ) ! { ! QChar before = line.at( ndx - 1 ); ! QChar after = line.at( ndx + query->contain.length() ); ! ! if ( !before.isLetterOrNumber() && !after.isLetterOrNumber() && ! after != '_' && before != '_' ) ! { ! found = true; ! break; ! } ! ndx++; ! } ! } ! else if ( line.find( query->contain, 0, query->containCaseSensetive ) != -1 ) ! found = true; ! ! if ( found ) ! break; ! } ! if ( !found ) continue; } ! ! // if we got here - we got a winner ! results.append( dir + name ); ! // kdWarning() << "Found: " << (dir+name).local8Bit() << endl; ! emit found( name, dir, ( KIO::filesize_t ) stat_p.st_size, stat_p.st_mtime, KRpermHandler::mode2QString( stat_p.st_mode ) ); ! if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); } // clean up --- 171,184 ---- } } ! ! if( query->match( vf ) ) { ! // if we got here - we got a winner ! results.append( dir + name ); ! // kdWarning() << "Found: " << (dir+name).local8Bit() << endl; ! emit found( name, dir, ( KIO::filesize_t ) stat_p.st_size, stat_p.st_mtime, KRpermHandler::mode2QString( stat_p.st_mode ) ); ! if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); } ! delete vf; } // clean up *************** *** 306,337 **** } } ! // see if the name matches ! if ( !fileMatch( name ) ) continue; ! // check that the size fit ! KIO::filesize_t size = vf->vfile_getSize(); ! if ( query->minSize && size < query->minSize ) continue; ! if ( query->maxSize && size > query->maxSize ) continue; ! // check the time frame ! time_t mtime = vf->vfile_getTime_t(); ! if ( query->olderThen && mtime > query->olderThen ) continue; ! if ( query->newerThen && mtime < query->newerThen ) continue; ! // check owner name ! if ( !query->owner.isEmpty() && ! vf->vfile_getOwner() != query->owner ) continue; ! // check group name ! if ( !query->group.isEmpty() && ! vf->vfile_getGroup() != query->group ) continue; ! //check permission ! if ( !query->perm.isEmpty() && !checkPerm( vf->vfile_getPerm() ) ) continue; ! ! if ( !query->contain.isEmpty() ) { ! /* TODO: search in remote vfs is not yet implemented */ } - - // if we got here - we got a winner - results.append( remote_vfs->vfs_getOrigin().prettyURL( 1 ) + name ); - emit found( name, remote_vfs->vfs_getOrigin().prettyURL( -1 ), size, vf->vfile_getTime_t(), vf->vfile_getPerm() ); - if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); } } --- 209,220 ---- } } ! ! if( query->match( vf ) ) { ! // if we got here - we got a winner ! results.append( remote_vfs->vfs_getOrigin().prettyURL( 1 ) + name ); ! emit found( name, remote_vfs->vfs_getOrigin().prettyURL( -1 ), vf->vfile_getSize(), vf->vfile_getTime_t(), vf->vfile_getPerm() ); ! if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); } } } Index: krquery.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krquery.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** krquery.cpp 23 Sep 2004 16:43:03 -0000 1.5 --- krquery.cpp 23 Sep 2004 21:59:09 -0000 1.6 *************** *** 34,37 **** --- 34,45 ---- #include "../krusader.h" #include "../resources.h" + #include "../VFS/krarchandler.h" + + #include <qtextstream.h> + #include <qregexp.h> + #include <klargefile.h> + #include <klocale.h> + #include <kmimetype.h> + #include <qfile.h> // set the defaults *************** *** 50,51 **** --- 58,163 ---- } + bool KRQuery::checkPerm( QString filePerm ) + { + for ( int i = 0; i < 9; ++i ) + if ( perm[ i ] != '?' && perm[ i ] != filePerm[ i + 1 ] ) return false; + return true; + } + + bool KRQuery::checkType( QString mime ) + { + if ( type == mime ) return true; + if ( type == i18n( "Archives" ) ) return KRarcHandler::arcSupported( mime.right( 4 ) ); + if ( type == i18n( "Directories" ) ) return mime.contains( "directory" ); + if ( type == i18n( "Image Files" ) ) return mime.contains( "image/" ); + if ( type == i18n( "Text Files" ) ) return mime.contains( "text/" ); + if ( type == i18n( "Video Files" ) ) return mime.contains( "video/" ); + if ( type == i18n( "Audio Files" ) ) return mime.contains( "audio/" ); + if ( type == i18n( "Custom" ) ) return customType.contains( mime ); + return false; + } + + bool KRQuery::fileMatch( const QString name ) + { + unsigned int len; + for ( unsigned int i = 0; i < excludes.count(); ++i ) + { + QRegExp( *excludes.at( i ), matchesCaseSensitive, true ).match( name, 0, ( int* ) & len ); + if ( len == name.length() ) return false; + } + for ( unsigned int i = 0; i < matches.count(); ++i ) + { + QRegExp( *matches.at( i ), matchesCaseSensitive, true ).match( name, 0, ( int* ) & len ); + if ( len == name.length() ) return true; + } + return false; + } + + bool KRQuery::match( vfile *vf ) + { + // see if the name matches + if ( !fileMatch( vf->vfile_getName() ) ) return false; + // check that the size fit + KIO::filesize_t size = vf->vfile_getSize(); + if ( minSize && size < minSize ) return false; + if ( maxSize && size > maxSize ) return false; + // check the time frame + time_t mtime = vf->vfile_getTime_t(); + if ( olderThen && mtime > olderThen ) return false; + if ( newerThen && mtime < newerThen ) return false; + // check owner name + if ( !owner.isEmpty() && vf->vfile_getOwner() != owner ) return false; + // check group name + if ( !group.isEmpty() && vf->vfile_getGroup() != group ) return false; + //check permission + if ( !perm.isEmpty() && !checkPerm( vf->vfile_getPerm() ) ) return false; + + if ( !contain.isEmpty() ) + { + if( vf->vfile_getUrl().isLocalFile() ) + { + if( !containsContent( vf->vfile_getUrl().path() ) ) return false; + } + else + { + /* TODO: search in remote vfs is not yet implemented */ + } + } + + return true; + } + + bool KRQuery::containsContent( QString file ) + { + QFile qf( file ); + + qf.open( IO_ReadOnly ); + QTextStream text( &qf ); + text.setEncoding( QTextStream::Locale ); + QString line; + while ( !text.atEnd() ) + { + line = text.readLine(); + if ( line.isNull() ) break; + if ( containWholeWord ) + { + int ndx = 0; + + while ( ( ndx = line.find( contain, ndx, containCaseSensetive ) ) != -1 ) + { + QChar before = line.at( ndx - 1 ); + QChar after = line.at( ndx + contain.length() ); + + if ( !before.isLetterOrNumber() && !after.isLetterOrNumber() && + after != '_' && before != '_' ) + return true; + + ndx++; + } + } + else if ( line.find( contain, 0, containCaseSensetive ) != -1 ) + return true; + + } + return false; + } Index: krquery.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krquery.h,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** krquery.h 23 Sep 2004 16:43:03 -0000 1.4 --- krquery.h 23 Sep 2004 21:59:09 -0000 1.5 *************** *** 34,37 **** --- 34,38 ---- #include <time.h> #include <kurl.h> + #include "../VFS/vfile.h" class KRQuery { *************** *** 40,43 **** --- 41,47 ---- ~KRQuery() {}; + bool match( vfile *file ); // checks if the given vfile object matches the conditions + void normalize(); // make sure KRSearchMod can use the data + QStringList matches; // what to search QStringList excludes; // what to exclude *************** *** 70,74 **** QString type; QStringList customType; ! void normalize(); // make sure KRSearchMod can use the data }; --- 74,83 ---- QString type; QStringList customType; ! ! private: ! bool checkPerm(QString perm); ! bool checkType(QString mime); ! bool fileMatch(QString name); ! bool containsContent( QString file ); }; |
From: Karai C. <ck...@us...> - 2004-09-23 16:43:16
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Search In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17775/krusader_kde3/krusader/Search Modified Files: krquery.cpp krquery.h krsearchdialog.cpp krsearchdialog.h krsearchmod.cpp Log Message: ADDED: TC like search ('text'=='*text*') + exclude filter ( '| moc.cpp' ) Index: krquery.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krquery.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** krquery.cpp 21 Sep 2004 20:25:34 -0000 1.4 --- krquery.cpp 23 Sep 2004 16:43:03 -0000 1.5 *************** *** 44,52 **** perm(QString::null),type(QString::null){} - KRQuery::KRQuery(QString name){ - KRQuery(); // fill in the default values - load(name); - } - void KRQuery::normalize(){ // remove the trailing "/" from the directories lists --- 44,47 ---- *************** *** 55,115 **** } - KRQuery::~KRQuery(){} - - void KRQuery::save(QString name){ - krConfig->setGroup("KRquery-"+name); - - krConfig->writeEntry("matches",matches); - krConfig->writeEntry("matchesCaseSensitive",matchesCaseSensitive); - krConfig->writeEntry("contain",contain); - krConfig->writeEntry("containCaseSensetive",containCaseSensetive); - krConfig->writeEntry("containWholeWord",containWholeWord); - krConfig->writeEntry("inArchive",inArchive); - krConfig->writeEntry("recurse",recurse); - krConfig->writeEntry("followLinks",followLinks); - krConfig->writeEntry("whereToSearch",whereToSearch.toStringList()); - krConfig->writeEntry("whereNotToSearch",whereNotToSearch.toStringList()); - // size - krConfig->writeEntry("minSize",minSize); - krConfig->writeEntry("maxSize",maxSize); - //date - krConfig->writeEntry("newerThen",newerThen); - krConfig->writeEntry("olderThen",olderThen); - //permissions - krConfig->writeEntry("owner",owner); - krConfig->writeEntry("group",group); - krConfig->writeEntry("perm", perm); - //type - krConfig->writeEntry("type", type); - krConfig->sync(); - } - - void KRQuery::load(QString name){ - krConfig->setGroup("KRquery-"+name); - - matches = krConfig->readListEntry("matches"); - //matches(amatches); - exit(0); - /* matchesCaseSensitive = krConfig->readBoolEntry("matchesCaseSensitive",true); - contain = krConfig->readEntry("contain"); - containCaseSensetive = krConfig->readBoolEntry("containCaseSensetive",true); - containWholeWord = krConfig->readBoolEntry("containWholeWord",false); - inArchive = krConfig->readBoolEntry("inArchive",false); - recurse = krConfig->readBoolEntry("recurse",true); - followLinks = krConfig->readBoolEntry("followLinks",false); - whereToSearch = krConfig->readListEntry("whereToSearch"); - whereNotToSearch = krConfig->readListEntry("whereNotToSearch"); - // size - minSize = krConfig->readUnsignedLongNumEntry("minSize",0); - maxSize = krConfig->readUnsignedLongNumEntry("maxSize",0); - //date - newerThen = krConfig->readUnsignedLongNumEntry("newerThen",0); - olderThen = krConfig->readUnsignedLongNumEntry("olderThen",0); - //permissions - owner = krConfig->readEntry("owner"); - group = krConfig->readEntry("group"); - perm = krConfig->readEntry("perm"); - //type - type = krConfig->readEntry("type");*/ - } - --- 50,51 ---- Index: krquery.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krquery.h,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** krquery.h 21 Sep 2004 20:25:34 -0000 1.3 --- krquery.h 23 Sep 2004 16:43:03 -0000 1.4 *************** *** 38,48 **** public: KRQuery(); ! KRQuery(QString name); // create a new KRquery from th kconfig file ! ~KRQuery(); ! ! void save(QString name); // save a query to the kconfig file ! void load(QString name); // load query from the kconfig file QStringList matches; // what to search bool matchesCaseSensitive; QString contain; // file must contain this string --- 38,45 ---- public: KRQuery(); ! ~KRQuery() {}; QStringList matches; // what to search + QStringList excludes; // what to exclude bool matchesCaseSensitive; QString contain; // file must contain this string Index: krsearchmod.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchmod.cpp,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** krsearchmod.cpp 22 Sep 2004 03:50:21 -0000 1.12 --- krsearchmod.cpp 23 Sep 2004 16:43:03 -0000 1.13 *************** *** 110,113 **** --- 110,118 ---- { unsigned int len; + for ( unsigned int i = 0; i < query->excludes.count(); ++i ) + { + QRegExp( *query->excludes.at( i ), query->matchesCaseSensitive, true ).match( name, 0, ( int* ) & len ); + if ( len == name.length() ) return false; + } for ( unsigned int i = 0; i < query->matches.count(); ++i ) { Index: krsearchdialog.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchdialog.cpp,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** krsearchdialog.cpp 21 Sep 2004 20:25:34 -0000 1.21 --- krsearchdialog.cpp 23 Sep 2004 16:43:03 -0000 1.22 *************** *** 282,301 **** } - void KrSearchDialog::query2gui() { - QString tmp; - // matches - - for ( QStringList::Iterator it = query->matches.begin(); - it != query->matches.end(); ++it ) - tmp += ((tmp == QString::null ? QString::null : QChar(' ')) + (*it)); - searchFor->insertItem(tmp,0); - } - bool KrSearchDialog::gui2query() { // prepare the query ... /////////////////// names, locations and greps if (query!=0) { delete query; query = 0; } query = new KRQuery(); ! query->matches = QStringList::split(QChar(' '),searchFor->currentText()); query->matchesCaseSensitive = searchForCase->isChecked(); if (containsText->isEnabled()) --- 282,309 ---- } bool KrSearchDialog::gui2query() { // prepare the query ... /////////////////// names, locations and greps if (query!=0) { delete query; query = 0; } + + QString matchText = searchFor->currentText().stripWhiteSpace(); + QString excludeText; + + if( !matchText.contains( "*" ) && !matchText.contains( "?" ) && !matchText.contains( " " ) && !matchText.contains( "|" ) ) + matchText = "*" + matchText + "*"; + + int excludeNdx = matchText.find( '|' ); + if( excludeNdx > -1 ) + { + excludeText = matchText.mid( excludeNdx + 1 ).stripWhiteSpace(); + matchText.truncate( excludeNdx ); + matchText = matchText.stripWhiteSpace(); + if( matchText.isEmpty() ) + matchText = "*"; + } + query = new KRQuery(); ! query->matches = QStringList::split(QChar(' '), matchText ); ! query->excludes = QStringList::split(QChar(' '), excludeText ); query->matchesCaseSensitive = searchForCase->isChecked(); if (containsText->isEnabled()) Index: krsearchdialog.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchdialog.h,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** krsearchdialog.h 10 Jan 2004 17:45:40 -0000 1.6 --- krsearchdialog.h 23 Sep 2004 16:43:03 -0000 1.7 *************** *** 81,85 **** void fillList(QComboBox *list, QString filename); bool gui2query(); - void query2gui(); void deleteSelectedItems( QListBox * ); void editCurrent(); --- 81,84 ---- |
From: Karai C. <ck...@us...> - 2004-09-23 16:43:15
|
Update of /cvsroot/krusader/krusader_kde3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17775/krusader_kde3 Modified Files: ChangeLog Log Message: ADDED: TC like search ('text'=='*text*') + exclude filter ( '| moc.cpp' ) Index: ChangeLog =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/ChangeLog,v retrieving revision 1.306 retrieving revision 1.307 diff -C2 -d -r1.306 -r1.307 *** ChangeLog 22 Sep 2004 07:38:27 -0000 1.306 --- ChangeLog 23 Sep 2004 16:43:03 -0000 1.307 *************** *** 1,3 **** --- 1,5 ---- ====================== + ADDED: searcher: TC like search ( 'text' == '*text*' ) + excluding files with '|' (ex. '*.cpp *.h | *.moc.cpp' ) ADDED: search on remote file systems ADDED: konfigurator|advanced has a new entry: just enter mountpoints |
From: Karai C. <ck...@us...> - 2004-09-23 09:47:47
|
Update of /cvsroot/krusader/krusader_kde3/iso In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19617/krusader_kde3/iso Modified Files: kiso.cpp Log Message: FIXED: Workaround for linux/cdrom.h kernel bug Index: kiso.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/iso/kiso.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** kiso.cpp 23 Aug 2004 22:10:28 -0000 1.1 --- kiso.cpp 23 Sep 2004 09:47:37 -0000 1.2 *************** *** 44,48 **** --- 44,50 ---- #ifdef __linux__ + #undef __STRICT_ANSI__ #include <linux/cdrom.h> + #define __STRICT_ANSI__ #include <sys/ioctl.h> #include <fcntl.h> |
From: Karai C. <ck...@us...> - 2004-09-22 07:38:42
|
Update of /cvsroot/krusader/krusader_kde3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20357/krusader_kde3 Modified Files: CVSNEWS ChangeLog Log Message: Searcher modifications Index: CVSNEWS =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/CVSNEWS,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** CVSNEWS 20 Sep 2004 22:33:03 -0000 1.15 --- CVSNEWS 22 Sep 2004 07:38:27 -0000 1.16 *************** *** 3,6 **** --- 3,8 ---- in some way an extension to the changelog. ------------------------------------------------------ + Search is possible on remote file systems as well. + If you have filesystems that you don't want to accidently unmount (or mount), just go to Konfigurator->Advanced, and enter a list of mountpoints seperated by commas Index: ChangeLog =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/ChangeLog,v retrieving revision 1.305 retrieving revision 1.306 diff -C2 -d -r1.305 -r1.306 *** ChangeLog 20 Sep 2004 22:33:37 -0000 1.305 --- ChangeLog 22 Sep 2004 07:38:27 -0000 1.306 *************** *** 1,3 **** --- 1,4 ---- ====================== + ADDED: search on remote file systems ADDED: konfigurator|advanced has a new entry: just enter mountpoints there, and mountman won't try to mount/unmount them. *************** *** 39,42 **** --- 40,44 ---- REACTIVATED: usermenu (now using the new useraction-system) + FIXED: searcher corrupts international characters FIXED: searcher cannot open remote URL-s for editing/viewing (archives) FIXED: the File/Properties function writes incorrect group name |
From: Karai C. <ck...@us...> - 2004-09-22 03:50:31
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Search In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8772/krusader_kde3/krusader/Search Modified Files: krsearchmod.cpp Log Message: FIX: faster stopping Index: krsearchmod.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchmod.cpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** krsearchmod.cpp 21 Sep 2004 20:25:34 -0000 1.11 --- krsearchmod.cpp 22 Sep 2004 03:50:21 -0000 1.12 *************** *** 69,72 **** --- 69,75 ---- void KRSearchMod::start() { + unScannedUrls.clear(); + scannedUrls.clear(); + // search every dir that needs to be searched for ( unsigned int i = 0; i < query->whereToSearch.count(); ++i ) *************** *** 124,127 **** --- 127,132 ---- KURL urlToCheck = unScannedUrls.pop(); + if( stopSearch ) return; + if ( query->whereNotToSearch.contains( urlToCheck ) ) continue; |
From: Dirk E. <des...@us...> - 2004-09-21 21:45:19
|
Update of /cvsroot/krusader/krusader_kde3/po In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv322/po Modified Files: bg.po bs.po ca.po cs.po de.po dk.po es.po fr.po hu.po it.po ja.po jp.po krusader.pot nl.po pl.po ru.po sk.po sv.po zh_CN.po Log Message: krusader-1.50-cvs Index: sv.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/sv.po,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** sv.po 7 Aug 2004 13:48:33 -0000 1.6 --- sv.po 21 Sep 2004 21:45:00 -0000 1.7 *************** *** 11,15 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-04-18 02:45+0000\n" "Last-Translator: Anders Lindén <con...@gm...>\n" --- 11,15 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-04-18 02:45+0000\n" [...4884 lines suppressed...] + #~ msgstr "Nyare filer (jämföringsläge)" + + #~ msgid "Older files (compare mode)" + #~ msgstr "Ãldre filer (jämföringsläge)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "Identiska filer (jämföringsläge)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "Exklusiva filer (jämföringsläge)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: hittat, uppackning aktiverat.\n" + + #, fuzzy + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Välj en temporär mapp" + #, fuzzy #~ msgid "Close this window" Index: sk.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/sk.po,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** sk.po 7 Aug 2004 13:48:33 -0000 1.8 --- sk.po 21 Sep 2004 21:45:00 -0000 1.9 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-04-24 19:16+0100\n" "Last-Translator: Zdenko Podobný <zd...@ma...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-04-24 19:16+0100\n" [...4761 lines suppressed...] + #~ msgid "Older files (compare mode)" + #~ msgstr "StarÅ¡ie súbory (porovnávacà mód)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "Identické súbory (porovnávacà mód)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "ExkluzÃvne súbory (porovnávacà mód)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: nájdený, komprimovanie a dekomprimovanie povolené.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Mód porovnávania je doÄasne neprÃstupný. PrepáÄte." + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "Nepodarilo sa spustiÅ¥ 'df'. Nie je možné spustiÅ¥ Správcu pripojenÃ." + #~ msgid "Close this window" #~ msgstr "Zavrie toto okno" Index: bs.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/bs.po,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** bs.po 7 Aug 2004 13:48:31 -0000 1.2 --- bs.po 21 Sep 2004 21:44:56 -0000 1.3 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-07-27 13:58+0200\n" "Last-Translator: Asim Husanovic <as...@me...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-07-27 13:58+0200\n" [...4734 lines suppressed...] + #~ msgid "Older files (compare mode)" + #~ msgstr "Zastarjele datoteke (mod poreÄenja)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "IdentiÄne datoteke (mod poreÄenja)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "Posebne datoteke (mod poreÄenja)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: pronaÄeno, pakiranje omoguÄeno.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Mod poreÄenja trenutno je nedostupan. Žao mi je." + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "GreÅ¡ka u pokretanju 'df', MenMontiranja ne može biti pokrenut." + #~ msgid "Close this window" #~ msgstr "Zatvori ovaj prozor" Index: fr.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/fr.po,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** fr.po 7 Aug 2004 13:48:31 -0000 1.5 --- fr.po 21 Sep 2004 21:44:57 -0000 1.6 *************** *** 17,21 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-05-24 21:30+0200\n" "Last-Translator: Frank Schoolmeesters <fra...@fa...>\n" --- 17,21 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-05-24 21:30+0200\n" [...4672 lines suppressed...] + #~ msgid "on a supermounted device." + #~ msgstr "avec un périphérique 'supermounté'" + + #~ msgid "For details, please read" + #~ msgstr "Pour plus de détails, reportez-vous à la" + + #~ msgid "the Krusader FAQ." + #~ msgstr "FAQ de Krusader" + + #~ msgid "Failed to pack" + #~ msgstr "Impossible de compresser le(s) fichier(s)" + + #~ msgid "History" + #~ msgstr "Historique" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: trouvé, compression activée.\n" + #~ msgid "Close this window" #~ msgstr "Ferme cette fenêtre" Index: ru.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/ru.po,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** ru.po 7 Aug 2004 13:48:33 -0000 1.5 --- ru.po 21 Sep 2004 21:44:59 -0000 1.6 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2003-10-01 11:52+0300\n" "Last-Translator: Dmitry V. Chernyak <dv...@ma...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2003-10-01 11:52+0300\n" [...4831 lines suppressed...] + #~ msgid "Newer files (compare mode)" + #~ msgstr "Ðолее новÑе ÑÐ°Ð¹Ð»Ñ (Ñежим ÑÑавнениÑ)" + + #~ msgid "Older files (compare mode)" + #~ msgstr "Ðолее ÑÑаÑÑе ÑÐ°Ð¹Ð»Ñ (Ñежим ÑÑавнениÑ)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "ÐдинаковÑе ÑÐ°Ð¹Ð»Ñ (Ñежим ÑÑавнениÑ)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "ÐкÑклÑзивнÑе ÑÐ°Ð¹Ð»Ñ (Ñежим ÑÑавнениÑ)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: найден, Ñпаковка вклÑÑена.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Режим ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ Ð²Ñеменно оÑклÑÑен, извиниÑе" + #, fuzzy #~ msgid "Close this window" Index: nl.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/nl.po,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** nl.po 7 Aug 2004 13:48:33 -0000 1.14 --- nl.po 21 Sep 2004 21:44:59 -0000 1.15 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-05-03 20:25+0200\n" "Last-Translator: Frank Schoolmeesters <fra...@fa...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-05-03 20:25+0200\n" [...4794 lines suppressed...] *************** *** 4418,4424 **** #~ msgstr "Kies een editor" - #~ msgid "Choose a terminal" - #~ msgstr "Kies een terminal" - #~ msgid "Choose a temporary directory" #~ msgstr "Kies een tijdelijke directory" --- 4643,4646 ---- *************** *** 4560,4566 **** #~ "te verplaatsen " - #~ msgid "Older files" - #~ msgstr "Oudere bestanden" - #~ msgid "Identical files" #~ msgstr "Identieke bestanden" --- 4782,4785 ---- Index: it.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/it.po,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** it.po 7 Aug 2004 13:48:32 -0000 1.9 --- it.po 21 Sep 2004 21:44:57 -0000 1.10 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-04-28 21:51+0200\n" "Last-Translator: Giuseppe Bordoni <ge...@ge...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-04-28 21:51+0200\n" [...4783 lines suppressed...] + #~ msgid "Older files (compare mode)" + #~ msgstr "File più vecchi (modo confronto)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "File identici (modo confronto)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "File esclusivi (modo confronto)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: trovato, compressione abilitata.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Spiacente, il modo confronto è temporaneamente disabilitato." + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "Impossibile eseguire 'df', MountMan non può essere avviato." + #~ msgid "Close this window" #~ msgstr "Chiude questa finestra" Index: dk.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/dk.po,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** dk.po 7 Aug 2004 13:48:31 -0000 1.7 --- dk.po 21 Sep 2004 21:44:56 -0000 1.8 *************** *** 11,15 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-06-04 08:32+0200\n" "Last-Translator: Anders Bruun Olsen <an...@br...>\n" --- 11,15 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-06-04 08:32+0200\n" [...4747 lines suppressed...] + #~ msgid "Older files (compare mode)" + #~ msgstr "Ãldre filer (sammenligningstilstand)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "Identiske filer (sammenligningstilstand)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "Ikke-identiske filer (sammenlignings tilstand)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: fundet, udpakning aktiveret.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Sammenligningstilstand er midlertidigt slÃ¥et fra. Beklager" + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "Kunne ikke køre 'df', MountMan kan ikke startes." + #~ msgid "Close this window" #~ msgstr "Luk dette vindue" Index: hu.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/hu.po,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** hu.po 30 Aug 2004 21:07:54 -0000 1.10 --- hu.po 21 Sep 2004 21:44:57 -0000 1.11 *************** *** 12,16 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-28 09:27+0200\n" "PO-Revision-Date: 2004-08-28 14:08+0200\n" "Last-Translator: Zoltán Kukk<kuk...@fr...>\n" --- 12,16 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-08-28 14:08+0200\n" [...4216 lines suppressed...] + #~ msgstr "Krusader GYIK-ot." + + #~ msgid "Newer files (compare mode)" + #~ msgstr "Ãjabb fájlok (összehasonlÃtó mód)" + + #~ msgid "Older files (compare mode)" + #~ msgstr "Régebbi fájlok (összehasonlÃtó mód)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "Egyedi fájlok (összehasonlÃtó mód)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "Kizárólagos fájlok (összehasonlÃtó mód)" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Sajnálom, de az összehasonlÃtó mód átmenetileg nem érhetÅ el" + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "" + #~ "Nem sikerült futtatni a 'df'-et, nem lehet elindÃtani a CsatoláskezelÅt." Index: ca.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/ca.po,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ca.po 7 Aug 2004 13:48:31 -0000 1.3 --- ca.po 21 Sep 2004 21:44:56 -0000 1.4 *************** *** 11,15 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-07-03 13:54+0200\n" "Last-Translator: Quim Perez <no...@os...>\n" --- 11,15 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-07-03 13:54+0200\n" [...4835 lines suppressed...] + #~ msgid "Newer files (compare mode)" + #~ msgstr "Fitxers recents (mode compara)" + + #~ msgid "Older files (compare mode)" + #~ msgstr "Fitxers antics (mode compara)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "Fitxers Idènticos (mode compara)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "Fitxers desaparellats (mode compara)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar:ok, es permet comprimir.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "El Mode Compara està deshabilitat temporalment, perdoneu." + #, fuzzy #~ msgid "Close this window" Index: bg.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/bg.po,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** bg.po 7 Aug 2004 13:48:31 -0000 1.7 --- bg.po 21 Sep 2004 21:44:56 -0000 1.8 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-05-21 17:52+0300\n" "Last-Translator: Milen Ivanov <ke...@ma...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-05-21 17:52+0300\n" [...4759 lines suppressed...] + #~ msgid "Older files (compare mode)" + #~ msgstr "СÑаÑи Ñайлове (Ñежим ÑÑавнÑване)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "ÐденÑиÑни Ñайлове (Ñежим ÑÑавнÑване)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "ÐÑобени Ñайлове (Ñежим ÑÑавнÑване)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: оÑкÑиÑ, аÑÑ Ð¸Ð²Ð¸ÑанеÑо доÑÑÑпно.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Режим ÑÑавнÑване вÑеменно е недоÑÑÑпен. ÐзвинеÑе." + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "ÐеÑÑпеÑно ÑÑаÑÑиÑане на 'df', MountMan не може да Ñе пÑÑне." + #~ msgid "Close this window" #~ msgstr "ÐаÑваÑÑне на пÑозоÑеÑа" Index: pl.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/pl.po,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** pl.po 22 Aug 2004 12:05:39 -0000 1.10 --- pl.po 21 Sep 2004 21:44:59 -0000 1.11 *************** *** 12,16 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-20 16:13+0200\n" "PO-Revision-Date: 2004-08-22 00:48+0200\n" "Last-Translator: Marcin Garski <mg...@po...>\n" --- 12,16 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-08-22 00:48+0200\n" [...4519 lines suppressed...] + #~ msgstr "Nowsze pliki (tryb porównania)" + + #~ msgid "Older files (compare mode)" + #~ msgstr "Starsze pliki (tryb porównania)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "Identyczne pliki (tryb porównania)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "PowtarzajÄ ce siÄ pliki (tryb porównania)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: odnaleziono, pakowanie uaktywnione.\n" + + #, fuzzy + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Wybierz katalog tymczasowy" + #~ msgid "Failed to pack" #~ msgstr "Spakowanie niemożliwe" Index: ja.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/ja.po,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** ja.po 7 Aug 2004 13:48:32 -0000 1.5 --- ja.po 21 Sep 2004 21:44:58 -0000 1.6 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-01-09 14:28+0900\n" "Last-Translator: UTUMI Hirosi <utu...@ya...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-01-09 14:28+0900\n" [...4830 lines suppressed...] + #~ msgstr "æä»ãã¡ã¤ã«(æ¯è¼ã¢ã¼ã)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: ããã packing is enabled.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "æ¯è¼ã¢ã¼ãã¯ä¸æçã«ç¡å¹ã«ãã¦ãã¾ãã" + #, fuzzy #~ msgid "Close this window" *************** *** 4443,4449 **** #~ msgstr "ãã¬ãã¥ã¼ãè¨å®" - #~ msgid "Older files" - #~ msgstr "å¤ããã¡ã¤ã«" - #~ msgid "Identical files" #~ msgstr "åããã¡ã¤ã«" --- 4655,4658 ---- Index: es.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/es.po,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** es.po 7 Aug 2004 13:48:31 -0000 1.7 --- es.po 21 Sep 2004 21:44:56 -0000 1.8 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-08-01 21:44+0200\n" "Last-Translator: Rafael Munoz Rodriguez <raf...@ne...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-08-01 21:44+0200\n" [...4760 lines suppressed...] + #~ msgid "Older files (compare mode)" + #~ msgstr "Antiguos (modo de comparación)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "Idénticos (modo de comparación)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "Exclusivos (modo de comparación)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: encontrado, compresión activada.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "El modo de comparación está desactivado temporalmente." + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "Error al ejecutar 'df', MountMan no puede iniciarse." + #~ msgid "Close this window" #~ msgstr "Cerrar ésta ventana" Index: krusader.pot =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/krusader.pot,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** krusader.pot 8 Sep 2004 22:53:44 -0000 1.20 --- krusader.pot 21 Sep 2004 21:44:58 -0000 1.21 *************** *** 11,15 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-09 00:15+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" --- 11,15 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" [...2755 lines suppressed...] ! #: krslots.cpp:607 msgid "Don't know which files to combine." msgstr "" ! #: krslots.cpp:619 msgid "You can't combine a directory!" msgstr "" ! #: krslots.cpp:635 krslots.cpp:698 msgid "Not a splitted file %1!" msgstr "" ! #: krslots.cpp:651 msgid "Select only one splitted file!" msgstr "" ! #: krslots.cpp:705 msgid "Combining %1.* to directory:" msgstr "" Index: de.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/de.po,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** de.po 8 Sep 2004 22:53:43 -0000 1.21 --- de.po 21 Sep 2004 21:44:56 -0000 1.22 *************** *** 1,5 **** - # translation of de.po to - # translation of de.po to - # translation of de.po to # Translation of krusader.pot to German # --- 1,2 ---- *************** *** 9,22 **** # Christoph Thielecke <cri...@gm...>, 2003. # Dirk Eschler <des...@us...>, 2003, 2004. [...3051 lines suppressed...] *************** *** 4350,4354 **** #: Splitter/combiner.cpp:138 ! msgid "Validity checking is impossible without a good CRC file. Continue combining?" msgstr "" "Eine Gültigkeitsüberprüfung ist ohne eine gültige CRC-Datei unmöglich. Mit " --- 4217,4222 ---- #: Splitter/combiner.cpp:138 ! msgid "" ! "Validity checking is impossible without a good CRC file. Continue combining?" msgstr "" "Eine Gültigkeitsüberprüfung ist ohne eine gültige CRC-Datei unmöglich. Mit " *************** *** 4391,4393 **** msgid "Error at reading file %1!" msgstr "Fehler beim Lesen der Datei %1!" - --- 4259,4260 ---- Index: cs.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/cs.po,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** cs.po 7 Aug 2004 13:48:31 -0000 1.8 --- cs.po 21 Sep 2004 21:44:56 -0000 1.9 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-04-27 18:23+0200\n" "Last-Translator: Martin Sixta <luk...@se...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-04-27 18:23+0200\n" [...4764 lines suppressed...] + #~ msgid "Older files (compare mode)" + #~ msgstr "Staršà soubory (režim porovnávánÃ)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "Shodné soubory (režim porovnávánÃ)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "Nespárované soubory (režim porovnávánÃ)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: nalezen, sbalovánà je možné.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "Porovnávánà souborů je doÄasnÄ nefunkÄnÃ." + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "Nelze spustit pÅÃkaz 'df', Správce pÅipojenà nemůže být spuÅ¡tÄn." + #~ msgid "Close this window" #~ msgstr "ZavÅÃt toto okno" Index: jp.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/jp.po,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** jp.po 7 Aug 2004 13:48:33 -0000 1.6 --- jp.po 21 Sep 2004 21:44:58 -0000 1.7 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-01-09 14:28+0900\n" "Last-Translator: UTUMI Hirosi <utu...@ya...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-01-09 14:28+0900\n" [...4830 lines suppressed...] + #~ msgstr "æä»ãã¡ã¤ã«(æ¯è¼ã¢ã¼ã)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: ããã packing is enabled.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "æ¯è¼ã¢ã¼ãã¯ä¸æçã«ç¡å¹ã«ãã¦ãã¾ãã" + #, fuzzy #~ msgid "Close this window" *************** *** 4443,4449 **** #~ msgstr "ãã¬ãã¥ã¼ãè¨å®" - #~ msgid "Older files" - #~ msgstr "å¤ããã¡ã¤ã«" - #~ msgid "Identical files" #~ msgstr "åããã¡ã¤ã«" --- 4655,4658 ---- Index: zh_CN.po =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/po/zh_CN.po,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** zh_CN.po 7 Aug 2004 13:48:33 -0000 1.5 --- zh_CN.po 21 Sep 2004 21:45:00 -0000 1.6 *************** *** 10,14 **** "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-08-07 15:42+0200\n" "PO-Revision-Date: 2004-04-29 13:04+0800\n" "Last-Translator: Jinghua Luo <luo...@ms...>\n" --- 10,14 ---- "Project-Id-Version: krusader-1.50-cvs\n" "Report-Msgid-Bugs-To: \n" ! "POT-Creation-Date: 2004-09-21 23:25+0200\n" "PO-Revision-Date: 2004-04-29 13:04+0800\n" [...4768 lines suppressed...] + #~ msgid "Older files (compare mode)" + #~ msgstr "æ§çæä»¶(æ¯è¾æ¨¡å¼)" + + #~ msgid "Identical files (compare mode)" + #~ msgstr "ç¸åçæä»¶(æ¯è¾æ¨¡å¼)" + + #~ msgid "Exclusive files (compare mode)" + #~ msgstr "æé¤çæä»¶(æ¯è¾æ¨¡å¼)" + + #~ msgid "rar: found, packing is enabled.\n" + #~ msgstr "rar: å·²ç»æ¾å°, rarå¯ç¨.\n" + + #~ msgid "Compare mode is temporarily disabled. sorry" + #~ msgstr "éæ©ä¸ä¸ªä¸´æ¶æä»¶ç®å½" + + #~ msgid "Failed to run 'df', MountMan cannot be started." + #~ msgstr "è¿è¡df失败'', MountManä¸è½å¯å¨." + #~ msgid "Close this window" #~ msgstr "å ³éè¿ä¸ªçªå£." |
From: Karai C. <ck...@us...> - 2004-09-21 20:25:44
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Search In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16912/krusader_kde3/krusader/Search Modified Files: krquery.cpp krquery.h krsearchdialog.cpp krsearchmod.cpp krsearchmod.h Log Message: ADDED: search on remote file systems FIXED: searcher corrupts the international characters Index: krquery.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krquery.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** krquery.cpp 1 Oct 2003 13:17:50 -0000 1.3 --- krquery.cpp 21 Sep 2004 20:25:34 -0000 1.4 *************** *** 4,8 **** copyright : (C) 2001 by Shie Erlich & Rafi Yanai email : kru...@us... ! web site : http://krusader.sourceforge.net --------------------------------------------------------------------------- Description --- 4,8 ---- copyright : (C) 2001 by Shie Erlich & Rafi Yanai email : kru...@us... ! web site : http://krusader.sourceforge.net --------------------------------------------------------------------------- Description *************** *** 49,66 **** } - - KRQuery::~KRQuery(){} - void KRQuery::normalize(){ ! // remove the trailing "/" from the directories lists ! for( QStringList::Iterator it = whereNotToSearch.begin(); ! it != whereNotToSearch.end(); ++it ){ ! ! if( (*it).right(1) != "/" && !((*it).isEmpty()) ){ ! (*it) = (*it)+"/"; ! } ! } } void KRQuery::save(QString name){ krConfig->setGroup("KRquery-"+name); --- 49,60 ---- } void KRQuery::normalize(){ ! // remove the trailing "/" from the directories lists ! for( KURL::List::Iterator it = whereNotToSearch.begin(); it != whereNotToSearch.end(); ++it ) ! (*it).setPath( (*it).path( -1 )); } + KRQuery::~KRQuery(){} + void KRQuery::save(QString name){ krConfig->setGroup("KRquery-"+name); *************** *** 74,81 **** krConfig->writeEntry("recurse",recurse); krConfig->writeEntry("followLinks",followLinks); ! krConfig->writeEntry("whereToSearch",whereToSearch); ! krConfig->writeEntry("whereNotToSearch",whereNotToSearch); ! // size ! krConfig->writeEntry("minSize",minSize); krConfig->writeEntry("maxSize",maxSize); //date --- 68,75 ---- krConfig->writeEntry("recurse",recurse); krConfig->writeEntry("followLinks",followLinks); ! krConfig->writeEntry("whereToSearch",whereToSearch.toStringList()); ! krConfig->writeEntry("whereNotToSearch",whereNotToSearch.toStringList()); ! // size ! krConfig->writeEntry("minSize",minSize); krConfig->writeEntry("maxSize",maxSize); //date *************** *** 104,111 **** recurse = krConfig->readBoolEntry("recurse",true); followLinks = krConfig->readBoolEntry("followLinks",false); ! whereToSearch = krConfig->readListEntry("whereToSearch"); whereNotToSearch = krConfig->readListEntry("whereNotToSearch"); ! // size ! minSize = krConfig->readUnsignedLongNumEntry("minSize",0); maxSize = krConfig->readUnsignedLongNumEntry("maxSize",0); //date --- 98,105 ---- recurse = krConfig->readBoolEntry("recurse",true); followLinks = krConfig->readBoolEntry("followLinks",false); ! whereToSearch = krConfig->readListEntry("whereToSearch"); whereNotToSearch = krConfig->readListEntry("whereNotToSearch"); ! // size ! minSize = krConfig->readUnsignedLongNumEntry("minSize",0); maxSize = krConfig->readUnsignedLongNumEntry("maxSize",0); //date Index: krsearchmod.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchmod.h,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** krsearchmod.h 9 Dec 2003 23:05:57 -0000 1.5 --- krsearchmod.h 21 Sep 2004 20:25:34 -0000 1.6 *************** *** 40,43 **** --- 40,45 ---- #include <kio/global.h> #include <kurl.h> + #include "../VFS/ftp_vfs.h" + class KRQuery; *************** *** 47,58 **** Q_OBJECT public: ! KRSearchMod(const KRQuery *q); ! ~KRSearchMod(); ! void scanDir( QString dir); ! void scanArchive( QString archive, QString type ); ! void scanURL( ftp_vfs* v, KURL url ); ! void start(); void stop(); signals: --- 49,62 ---- Q_OBJECT public: ! KRSearchMod(const KRQuery *q); ! ~KRSearchMod(); ! void scanURL( KURL url ); ! void start(); void stop(); + + private: + void scanLocalDir( KURL url ); + void scanRemoteDir( KURL url ); signals: *************** *** 62,73 **** private: ! bool stopSearch; ! bool checkPerm(QString perm); ! bool checkType(QString mime); ! bool fileMatch(QString name); ! QStringList scanedDirs; ! QValueStack<KURL> unScanedUrls; ! KRQuery *query; ! QStringList results; }; --- 66,79 ---- private: ! bool stopSearch; ! bool checkPerm(QString perm); ! bool checkType(QString mime); ! bool fileMatch(QString name); ! QValueStack<KURL> scannedUrls; ! QValueStack<KURL> unScannedUrls; ! KRQuery *query; ! QStringList results; ! ! ftp_vfs *remote_vfs; }; Index: krsearchmod.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchmod.cpp,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** krsearchmod.cpp 28 Jan 2004 23:12:12 -0000 1.10 --- krsearchmod.cpp 21 Sep 2004 20:25:34 -0000 1.11 *************** *** 4,8 **** copyright : (C) 2001 by Shie Erlich & Rafi Yanai email : kru...@us... ! web site : http://krusader.sourceforge.net --------------------------------------------------------------------------- Description --- 4,8 ---- copyright : (C) 2001 by Shie Erlich & Rafi Yanai email : kru...@us... ! web site : http://krusader.sourceforge.net --------------------------------------------------------------------------- Description *************** *** 33,37 **** #include "../krusader.h" #include "../resources.h" - #include "../VFS/ftp_vfs.h" #include "../VFS/vfile.h" #include "../VFS/krpermhandler.h" --- 33,36 ---- *************** *** 48,90 **** #include <qregexp.h> #include <klargefile.h> #include <kmimetype.h> KRSearchMod::KRSearchMod( const KRQuery* q ) ! { stopSearch = false; /// ===> added query = new KRQuery( *q ); query->normalize(); ! } KRSearchMod::~KRSearchMod() ! { delete query; ! } void KRSearchMod::start() ! { // search every dir that needs to be searched for ( unsigned int i = 0; i < query->whereToSearch.count(); ++i ) ! scanDir( *( query->whereToSearch.at( i ) ) ); ! emit finished(); ! } void KRSearchMod::stop() ! { stopSearch = true; ! } bool KRSearchMod::checkPerm( QString perm ) ! { QString q_perm = query->perm; for ( int i = 0; i < 9; ++i ) if ( q_perm[ i ] != '?' && q_perm[ i ] != perm[ i + 1 ] ) return false; return true; ! } bool KRSearchMod::checkType( QString mime ) ! { QString type = query->type; if ( type == mime ) return true; --- 47,94 ---- #include <qregexp.h> #include <klargefile.h> + #include <kurlrequesterdlg.h> #include <kmimetype.h> KRSearchMod::KRSearchMod( const KRQuery* q ) ! { stopSearch = false; /// ===> added query = new KRQuery( *q ); query->normalize(); ! ! remote_vfs = 0; ! } KRSearchMod::~KRSearchMod() ! { delete query; ! if( remote_vfs ) ! delete remote_vfs; ! } void KRSearchMod::start() ! { // search every dir that needs to be searched for ( unsigned int i = 0; i < query->whereToSearch.count(); ++i ) ! scanURL( query->whereToSearch [ i ] ); ! emit finished(); ! } void KRSearchMod::stop() ! { stopSearch = true; ! } bool KRSearchMod::checkPerm( QString perm ) ! { QString q_perm = query->perm; for ( int i = 0; i < 9; ++i ) if ( q_perm[ i ] != '?' && q_perm[ i ] != perm[ i + 1 ] ) return false; return true; ! } bool KRSearchMod::checkType( QString mime ) ! { QString type = query->type; if ( type == mime ) return true; *************** *** 98,105 **** if ( type == i18n( "Custom" ) ) return query->customType.contains( mime ); return false; ! } bool KRSearchMod::fileMatch( const QString name ) ! { unsigned int len; for ( unsigned int i = 0; i < query->matches.count(); ++i ) --- 102,109 ---- if ( type == i18n( "Custom" ) ) return query->customType.contains( mime ); return false; ! } bool KRSearchMod::fileMatch( const QString name ) ! { unsigned int len; for ( unsigned int i = 0; i < query->matches.count(); ++i ) *************** *** 109,127 **** } return false; ! } ! void KRSearchMod::scanDir( QString dir ) { int passes = 0; const int NO_OF_PASSES = 50; ! ! if ( stopSearch ) return ; ! if ( dir.right( 1 ) != "/" && !dir.isEmpty() ) dir = dir + "/"; ! if ( query->whereNotToSearch.contains( dir ) ) return ; ! if ( scanedDirs.contains( dir ) ) return ; // don't scan dirs twice ! scanedDirs.append( dir ); ! // let the gui know where we are ! emit searching( dir ); ! if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); DIR* d = opendir( dir.local8Bit() ); --- 113,151 ---- } return false; ! } ! void KRSearchMod::scanURL( KURL url ) ! { ! if( stopSearch ) return; ! ! unScannedUrls.push( url ); ! while ( !unScannedUrls.isEmpty() ) { + KURL urlToCheck = unScannedUrls.pop(); + + if ( query->whereNotToSearch.contains( urlToCheck ) ) + continue; + + if( scannedUrls.contains( urlToCheck ) ) + continue; + scannedUrls.push( urlToCheck ); + + emit searching( urlToCheck.prettyURL(0,KURL::StripFileProtocol) ); + + if ( urlToCheck.isLocalFile() ) + scanLocalDir( urlToCheck ); + else + scanRemoteDir( urlToCheck ); + + qApp->processEvents(); // do a last one, in case passes%50 != 0 + } + } + + void KRSearchMod::scanLocalDir( KURL urlToScan ) + { int passes = 0; const int NO_OF_PASSES = 50; ! ! QString dir = urlToScan.path( 1 ); DIR* d = opendir( dir.local8Bit() ); *************** *** 135,157 **** while ( ( dirEnt = readdir( d ) ) != NULL ) ! { QString mime = QString::null; ! name = dirEnt->d_name; // we dont scan the ".",".." enteries if ( name == "." || name == ".." ) continue; - url.setPath( dir + name ); KDE_struct_stat stat_p; ! KDE_lstat( dir.local8Bit() + name.local8Bit(), &stat_p ); if ( query->recurse ) ! { if ( S_ISLNK( stat_p.st_mode ) && query->followLinks ) ! { ! scanDir( QDir( dir + "/" + name ).canonicalPath() ); ! } ! else if ( S_ISDIR( stat_p.st_mode ) ) scanDir( dir + name ); ! } if ( query->inArchive ) ! { mime = KMimeType::findByURL( url, stat_p.st_mode, true, false ) ->name(); QString type = mime.right( 4 ); --- 159,182 ---- while ( ( dirEnt = readdir( d ) ) != NULL ) ! { ! name = QString::fromLocal8Bit( dirEnt->d_name ); ! url = vfs::fromPathOrURL( dir + name ); ! QString mime = QString::null; ! // we dont scan the ".",".." enteries if ( name == "." || name == ".." ) continue; KDE_struct_stat stat_p; ! KDE_lstat( ( dir + name ).local8Bit(), &stat_p ); if ( query->recurse ) ! { if ( S_ISLNK( stat_p.st_mode ) && query->followLinks ) ! unScannedUrls.push( vfs::fromPathOrURL( QDir( dir + name ).canonicalPath() ) ); ! else if ( S_ISDIR( stat_p.st_mode ) ) ! unScannedUrls.push( url ); ! } if ( query->inArchive ) ! { mime = KMimeType::findByURL( url, stat_p.st_mode, true, false ) ->name(); QString type = mime.right( 4 ); *************** *** 159,166 **** if ( KRarcHandler::arcSupported( type ) ) ! { ! scanArchive( dir + name, type ); ! } } // see if the name matches if ( !fileMatch( name ) ) continue; --- 184,198 ---- if ( KRarcHandler::arcSupported( type ) ) ! { ! KURL archiveURL = url; ! ! if ( type == "-tbz" || type == "-tgz" || type == "tarz" || type == "-tar" ) ! archiveURL.setProtocol( "tar" ); ! else ! archiveURL.setProtocol( "krarc" ); ! ! unScannedUrls.push( archiveURL ); } + } // see if the name matches if ( !fileMatch( name ) ) continue; *************** *** 175,183 **** // check the type if ( !query->type.isEmpty() ) ! { if ( mime.isEmpty() ) mime = KMimeType::findByURL( url, stat_p.st_mode, true, false ) ->name(); if ( !checkType( mime ) ) continue; ! } // check owner name if ( !query->owner.isEmpty() && --- 207,215 ---- // check the type if ( !query->type.isEmpty() ) ! { if ( mime.isEmpty() ) mime = KMimeType::findByURL( url, stat_p.st_mode, true, false ) ->name(); if ( !checkType( mime ) ) continue; ! } // check owner name if ( !query->owner.isEmpty() && *************** *** 192,196 **** // grep code from KFind ( the copyright goes with our thanx to the unknown author ) if ( !query->contain.isEmpty() && !dir.startsWith( "/dev" ) ) ! { QFile qf( dir + name ); --- 224,228 ---- // grep code from KFind ( the copyright goes with our thanx to the unknown author ) if ( !query->contain.isEmpty() && !dir.startsWith( "/dev" ) ) ! { QFile qf( dir + name ); *************** *** 205,213 **** if ( line.isNull() ) break; if ( query->containWholeWord ) ! { int ndx = 0; while ( ( ndx = line.find( query->contain, ndx, query->containCaseSensetive ) ) != -1 ) ! { QChar before = line.at( ndx - 1 ); QChar after = line.at( ndx + query->contain.length() ); --- 237,245 ---- if ( line.isNull() ) break; if ( query->containWholeWord ) ! { int ndx = 0; while ( ( ndx = line.find( query->contain, ndx, query->containCaseSensetive ) ) != -1 ) ! { QChar before = line.at( ndx - 1 ); QChar after = line.at( ndx + query->contain.length() ); *************** *** 215,226 **** if ( !before.isLetterOrNumber() && !after.isLetterOrNumber() && after != '_' && before != '_' ) ! { found = true; break; - } - //qApp->processEvents(); // is that needed ? - ndx++; } } else if ( line.find( query->contain, 0, query->containCaseSensetive ) != -1 ) found = true; --- 247,257 ---- if ( !before.isLetterOrNumber() && !after.isLetterOrNumber() && after != '_' && before != '_' ) ! { found = true; break; } + ndx++; } + } else if ( line.find( query->contain, 0, query->containCaseSensetive ) != -1 ) found = true; *************** *** 228,235 **** if ( found ) break; - //qApp->processEvents(); // is that needed ? } if ( !found ) continue; ! } // if we got here - we got a winner --- 259,265 ---- if ( found ) break; } if ( !found ) continue; ! } // if we got here - we got a winner *************** *** 238,293 **** emit found( name, dir, ( KIO::filesize_t ) stat_p.st_size, stat_p.st_mtime, KRpermHandler::mode2QString( stat_p.st_mode ) ); if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); ! } // clean up closedir( d ); ! qApp->processEvents(); // do a last one, in case passes%50 != 0 ! } ! ! void KRSearchMod::scanArchive( QString archive, QString type ) ! { ! if ( stopSearch ) return ; ! // ace and rar archives are currently not suported ! if ( type == "-arj" || type == "-ace" ) return ; ! ! QString url; ! ! if ( type == "-tbz" || type == "-tgz" || type == "tarz" || type == "-tar" ) ! { ! url = "tar:" + archive; ! } ! else ! { ! url = "krarc:" + archive; ! } ! ! ftp_vfs *v = new ftp_vfs( 0 ); ! ! emit searching( archive ); ! ! unScanedUrls.push( url ); ! while ( !unScanedUrls.isEmpty() ) scanURL( v, unScanedUrls.pop() ); ! delete v; ! } ! void KRSearchMod::scanURL( ftp_vfs* v, KURL url ) ! { int passes = 0; const int NO_OF_PASSES = 50; ! if ( !v->vfs_refresh( url ) ) return ; ! ! if ( scanedDirs.contains( v->vfs_getOrigin().url() ) ) return ; // don't re-scan urls.. ! scanedDirs.append( v->vfs_getOrigin().url() ); ! for ( vfile * vf = v->vfs_getFirstFile(); vf != 0 ; vf = v->vfs_getNextFile() ) ! { QString name = vf->vfile_getName(); ! if ( vf->vfile_isDir() ) { ! KURL url = v->vfs_getOrigin(); ! url.addPath( name ); ! unScanedUrls.push( url ); } // see if the name matches if ( !fileMatch( name ) ) continue; --- 268,299 ---- emit found( name, dir, ( KIO::filesize_t ) stat_p.st_size, stat_p.st_mtime, KRpermHandler::mode2QString( stat_p.st_mode ) ); if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); ! } // clean up closedir( d ); ! } ! void KRSearchMod::scanRemoteDir( KURL url ) ! { int passes = 0; const int NO_OF_PASSES = 50; ! if( remote_vfs == 0 ) ! remote_vfs = new ftp_vfs( 0 ); ! ! if ( !remote_vfs->vfs_refresh( url ) ) return ; ! for ( vfile * vf = remote_vfs->vfs_getFirstFile(); vf != 0 ; vf = remote_vfs->vfs_getNextFile() ) ! { QString name = vf->vfile_getName(); ! if ( query->recurse ) ! { ! if( ( vf->vfile_isSymLink() && query->followLinks ) || vf->vfile_isDir() ) { ! KURL recurseURL = remote_vfs->vfs_getOrigin(); ! recurseURL.addPath( name ); ! unScannedUrls.push( recurseURL ); } + } // see if the name matches if ( !fileMatch( name ) ) continue; *************** *** 302,319 **** // check owner name if ( !query->owner.isEmpty() && ! vf->vfile_getUid() != KRpermHandler::user2uid( query->owner ) ) continue; // check group name if ( !query->group.isEmpty() && ! vf->vfile_getGid() != KRpermHandler::group2gid( query->group ) ) continue; //check permission if ( !query->perm.isEmpty() && !checkPerm( vf->vfile_getPerm() ) ) continue; // if we got here - we got a winner ! results.append( v->vfs_getOrigin().prettyURL( 1 ) + name ); ! emit found( name, v->vfs_getOrigin().prettyURL( -1 ), size, vf->vfile_getTime_t(), vf->vfile_getPerm() ); if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); - } - qApp->processEvents(); // do a last one, in case passes%50 != 0 } #include "krsearchmod.moc" --- 308,329 ---- // check owner name if ( !query->owner.isEmpty() && ! vf->vfile_getOwner() != query->owner ) continue; // check group name if ( !query->group.isEmpty() && ! vf->vfile_getGroup() != query->group ) continue; //check permission if ( !query->perm.isEmpty() && !checkPerm( vf->vfile_getPerm() ) ) continue; + if ( !query->contain.isEmpty() ) + { + /* TODO: search in remote vfs is not yet implemented */ + } + // if we got here - we got a winner ! results.append( remote_vfs->vfs_getOrigin().prettyURL( 1 ) + name ); ! emit found( name, remote_vfs->vfs_getOrigin().prettyURL( -1 ), size, vf->vfile_getTime_t(), vf->vfile_getPerm() ); if ( passes++ % NO_OF_PASSES == 0 ) qApp->processEvents(); } + } #include "krsearchmod.moc" Index: krsearchdialog.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchdialog.cpp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** krsearchdialog.cpp 20 Sep 2004 18:51:29 -0000 1.20 --- krsearchdialog.cpp 21 Sep 2004 20:25:34 -0000 1.21 *************** *** 181,189 **** searchIn->clear(); dontSearchIn->clear(); ! // the path in the active panel should be the default search location ! if (krApp->mainView->activePanel->func->files()->vfs_getType() == vfs::NORMAL) { ! QString path = krApp->mainView->activePanel->getPath(); ! searchInEdit->setText(path); ! } // load the completion and history lists --- 181,187 ---- searchIn->clear(); dontSearchIn->clear(); ! // the path in the active panel should be the default search location ! QString path = krApp->mainView->activePanel->getPath(); ! searchInEdit->setText(path); // load the completion and history lists *************** *** 245,251 **** void KrSearchDialog::addToSearchIn() { ! QString dir = KFileDialog::getExistingDirectory(); ! if (dir==QString::null) return; ! searchInEdit->setText(dir); searchInEdit->setFocus(); } --- 243,249 ---- void KrSearchDialog::addToSearchIn() { ! KURL url = KFileDialog::getExistingURL(); ! if ( url.isEmpty()) return; ! searchInEdit->setText( url.prettyURL( 0,KURL::StripFileProtocol ) ); searchInEdit->setFocus(); } *************** *** 260,266 **** void KrSearchDialog::addToDontSearchIn() { ! QString dir = KFileDialog::getExistingDirectory(); ! if (dir==QString::null) return; ! dontSearchInEdit->setText(dir); dontSearchInEdit->setFocus(); } --- 258,264 ---- void KrSearchDialog::addToDontSearchIn() { ! KURL url = KFileDialog::getExistingURL(); ! if ( url.isEmpty()) return; ! dontSearchInEdit->setText( url.prettyURL( 0,KURL::StripFileProtocol ) ); dontSearchInEdit->setFocus(); } *************** *** 316,325 **** while ( item ) { ! query->whereToSearch.append( item->text().simplifyWhiteSpace() ); item = item->next(); } if (!searchInEdit->text().simplifyWhiteSpace().isEmpty()) ! query->whereToSearch.append(searchInEdit->text().simplifyWhiteSpace()); query->whereNotToSearch.clear(); --- 314,323 ---- while ( item ) { ! query->whereToSearch.append( vfs::fromPathOrURL( item->text().simplifyWhiteSpace() ) ); item = item->next(); } if (!searchInEdit->text().simplifyWhiteSpace().isEmpty()) ! query->whereToSearch.append( vfs::fromPathOrURL( searchInEdit->text().simplifyWhiteSpace() ) ); query->whereNotToSearch.clear(); *************** *** 327,335 **** while ( item ) { ! query->whereNotToSearch.append( item->text().simplifyWhiteSpace() ); item = item->next(); } if (!dontSearchInEdit->text().simplifyWhiteSpace().isEmpty()) ! query->whereNotToSearch.append(dontSearchInEdit->text().simplifyWhiteSpace()); // check that we have (at least) what to search, and where to search in --- 325,333 ---- while ( item ) { ! query->whereNotToSearch.append( vfs::fromPathOrURL( item->text().simplifyWhiteSpace() ) ); item = item->next(); } if (!dontSearchInEdit->text().simplifyWhiteSpace().isEmpty()) ! query->whereNotToSearch.append( vfs::fromPathOrURL( dontSearchInEdit->text().simplifyWhiteSpace() ) ); // check that we have (at least) what to search, and where to search in *************** *** 340,344 **** return false; } ! if (query->whereToSearch.isEmpty()) { // we need a place to search in KMessageBox::error(0,i18n("Please specify a location to search in.")); TabWidget2->setCurrentPage(0); // set page to general --- 338,342 ---- return false; } ! if (query->whereToSearch.isEmpty() ) { // we need a place to search in KMessageBox::error(0,i18n("Please specify a location to search in.")); TabWidget2->setCurrentPage(0); // set page to general *************** *** 473,480 **** KMessageBox::information(0, i18n("Since you chose to also search in archives, " "note the following limitations:\n" ! "1. Krusader will search in all of the supported" ! " archives, NOT INCLUDING arj, and ace.\n" ! "2. You cannot search for text (grep) while doing" ! " a search that includes archives."), 0, "searchInArchives"); } --- 471,476 ---- KMessageBox::information(0, i18n("Since you chose to also search in archives, " "note the following limitations:\n" ! "You cannot search for text (grep) while doing" ! " a search that includes archives."), 0, "searchInArchives"); } Index: krquery.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krquery.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** krquery.h 1 Oct 2003 13:17:50 -0000 1.2 --- krquery.h 21 Sep 2004 20:25:34 -0000 1.3 *************** *** 33,47 **** #include <qstringlist.h> #include <time.h> class KRQuery { public: ! KRQuery(); KRQuery(QString name); // create a new KRquery from th kconfig file ! ~KRQuery(); void save(QString name); // save a query to the kconfig file ! void load(QString name); // load query from the konfig file ! QStringList matches; // what to search bool matchesCaseSensitive; QString contain; // file must contain this string --- 33,48 ---- #include <qstringlist.h> #include <time.h> + #include <kurl.h> class KRQuery { public: ! KRQuery(); KRQuery(QString name); // create a new KRquery from th kconfig file ! ~KRQuery(); void save(QString name); // save a query to the kconfig file ! void load(QString name); // load query from the kconfig file ! QStringList matches; // what to search bool matchesCaseSensitive; QString contain; // file must contain this string *************** *** 51,58 **** bool recurse; // if true recurse ob sub-dirs... bool followLinks; ! QStringList whereToSearch; // directorys to search ! QStringList whereNotToSearch; // directorys NOT to search ! // size ! unsigned long minSize; unsigned long maxSize; //date --- 52,60 ---- bool recurse; // if true recurse ob sub-dirs... bool followLinks; ! ! KURL::List whereToSearch; // directorys to search ! KURL::List whereNotToSearch; // directorys NOT to search ! // size ! unsigned long minSize; unsigned long maxSize; //date *************** *** 63,75 **** QString group; QString perm; ! // type, must be one of the following: ! // 1. a valid mime type name ! // 2. one of: i18n("Archives"), i18n("Directories"), i18n("Image Files") // i18n("Text Files"), i18n("Video Files"), i18n("Audio Files") ! // 3. i18n("Custom") in which case you must supply a list of valid mime-types // in the member QStringList customType QString type; QStringList customType; ! void normalize(); // make sure KRSearchMod can use the data }; --- 65,77 ---- QString group; QString perm; ! // type, must be one of the following: ! // 1. a valid mime type name ! // 2. one of: i18n("Archives"), i18n("Directories"), i18n("Image Files") // i18n("Text Files"), i18n("Video Files"), i18n("Audio Files") ! // 3. i18n("Custom") in which case you must supply a list of valid mime-types // in the member QStringList customType QString type; QStringList customType; ! void normalize(); // make sure KRSearchMod can use the data }; |
From: Shie E. <er...@us...> - 2004-09-20 22:33:47
|
Update of /cvsroot/krusader/krusader_kde3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25225 Modified Files: ChangeLog Log Message: Index: ChangeLog =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/ChangeLog,v retrieving revision 1.304 retrieving revision 1.305 diff -C2 -d -r1.304 -r1.305 *** ChangeLog 20 Sep 2004 19:39:48 -0000 1.304 --- ChangeLog 20 Sep 2004 22:33:37 -0000 1.305 *************** *** 1,3 **** --- 1,5 ---- ====================== + ADDED: konfigurator|advanced has a new entry: just enter mountpoints + there, and mountman won't try to mount/unmount them. ADDED: mountman got a big nose-job ;-) plz test ADDED: dropping on the tree panel (copy,move,link) |
From: Shie E. <er...@us...> - 2004-09-20 22:33:27
|
Update of /cvsroot/krusader/krusader_kde3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25056 Modified Files: CVSNEWS Log Message: Index: CVSNEWS =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/CVSNEWS,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** CVSNEWS 17 Sep 2004 17:36:35 -0000 1.14 --- CVSNEWS 20 Sep 2004 22:33:03 -0000 1.15 *************** *** 3,6 **** --- 3,10 ---- in some way an extension to the changelog. ------------------------------------------------------ + If you have filesystems that you don't want to accidently unmount (or mount), just + go to Konfigurator->Advanced, and enter a list of mountpoints seperated by commas + (for example: /, /boot, /tmp) and mountman won't try to (un)mount them. + Mountman got a big nose-job ;-) plz test it well. |
From: Shie E. <er...@us...> - 2004-09-20 22:30:40
|
Update of /cvsroot/krusader/krusader_kde3/krusader/MountMan In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23777/MountMan Modified Files: kmountman.cpp kmountman.h kmountmangui.cpp Log Message: heiner's feature: select mountpoints that won't be handled by mountman - under konfigurator-advanced Index: kmountmangui.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/MountMan/kmountmangui.cpp,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** kmountmangui.cpp 20 Sep 2004 21:10:14 -0000 1.13 --- kmountmangui.cpp 20 Sep 2004 22:30:30 -0000 1.14 *************** *** 317,324 **** if ( !system->mounted() ) { popup.insertItem( i18n( "Mount" ), MOUNT_ID ); ! popup.setItemEnabled( MOUNT_ID, !krMtMan.nonmountFilesystem(system->type())); } else { popup.insertItem( i18n( "Unmount" ), UNMOUNT_ID ); ! popup.setItemEnabled( UNMOUNT_ID, !krMtMan.nonmountFilesystem(system->type())); } if ( krMtMan.ejectable( system->mntPoint() ) ) --- 317,326 ---- if ( !system->mounted() ) { popup.insertItem( i18n( "Mount" ), MOUNT_ID ); ! bool enable = !(krMtMan.nonmountFilesystem(system->type(), system->mntPoint())); ! popup.setItemEnabled( MOUNT_ID, enable); } else { popup.insertItem( i18n( "Unmount" ), UNMOUNT_ID ); ! bool enable = !(krMtMan.nonmountFilesystem(system->type(), system->mntPoint())); ! popup.setItemEnabled( UNMOUNT_ID, enable); } if ( krMtMan.ejectable( system->mntPoint() ) ) Index: kmountman.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/MountMan/kmountman.cpp,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** kmountman.cpp 20 Sep 2004 21:10:13 -0000 1.36 --- kmountman.cpp 20 Sep 2004 22:30:30 -0000 1.37 *************** *** 34,43 **** #include <kmessagebox.h> #include <kprocess.h> - //#include <kprocctrl.h> #include <klocale.h> #include <kpopupmenu.h> // Krusader includes #include "../krusader.h" #include "../Dialogs/krdialogs.h" #include "../krservices.h" --- 34,44 ---- #include <kmessagebox.h> #include <kprocess.h> #include <klocale.h> #include <kpopupmenu.h> + #include <kdebug.h> // Krusader includes #include "../krusader.h" + #include "../defaults.h" #include "../Dialogs/krdialogs.h" #include "../krservices.h" *************** *** 71,74 **** --- 72,85 ---- // list of FS that we don't allow to mount/unmount nonmount_fs << "supermount"; + { + KConfigGroupSaver saver(krConfig, "Advanced"); + QStringList nonmount = QStringList::split(",", krConfig->readEntry("Nonmount Points", _NonMountPoints)); + nonmount_fs_mntpoint += nonmount; + // simplify the white space + for ( QStringList::Iterator it = nonmount_fs_mntpoint.begin(); it != nonmount_fs_mntpoint.end(); ++it ) { + *it = (*it).simplifyWhiteSpace(); + } + } + } *************** *** 79,84 **** } ! bool KMountMan::nonmountFilesystem(QString type) { ! return (nonmount_fs.contains(type) > 0); } --- 90,96 ---- } ! // this is an ugly hack, but type can actually be a mountpoint. oh well... ! bool KMountMan::nonmountFilesystem(QString type, QString mntPoint) { ! return ((nonmount_fs.contains(type) > 0) || (nonmount_fs_mntpoint.contains(mntPoint) > 0)); } *************** *** 240,244 **** m = *it; // skip nonmountable file systems ! if (nonmountFilesystem(m->mountType()) || invalidFilesystem(m->mountType())) continue; // does the mountpoint exist in current list? if so, it can only --- 252,256 ---- m = *it; // skip nonmountable file systems ! if (nonmountFilesystem(m->mountType(), m->mountPoint()) || invalidFilesystem(m->mountType())) continue; // does the mountpoint exist in current list? if so, it can only Index: kmountman.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/MountMan/kmountman.h,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** kmountman.h 20 Sep 2004 21:10:14 -0000 1.16 --- kmountman.h 20 Sep 2004 22:30:30 -0000 1.17 *************** *** 66,70 **** QString convertSize( KIO::filesize_t size ); bool invalidFilesystem(QString type); ! bool nonmountFilesystem(QString type); KMountMan(); --- 66,70 ---- QString convertSize( KIO::filesize_t size ); bool invalidFilesystem(QString type); ! bool nonmountFilesystem(QString type, QString mntPoint); KMountMan(); *************** *** 89,94 **** --- 89,97 ---- bool Operational; // if false, something went terribly wrong on startup KMountManGUI *mountManGui; + // the following is the FS type QStringList invalid_fs; QStringList nonmount_fs; + // the following is the FS name + QStringList nonmount_fs_mntpoint; }; |
From: Shie E. <er...@us...> - 2004-09-20 22:30:40
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Konfigurator In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23777/Konfigurator Modified Files: kgadvanced.cpp Log Message: heiner's feature: select mountpoints that won't be handled by mountman - under konfigurator-advanced Index: kgadvanced.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Konfigurator/kgadvanced.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** kgadvanced.cpp 19 Sep 2004 11:47:45 -0000 1.8 --- kgadvanced.cpp 20 Sep 2004 22:30:30 -0000 1.9 *************** *** 55,58 **** --- 55,64 ---- generalGrid->addWidget( generals, 1, 0 ); + addLabel( generalGrid, 2, 0, i18n( "MountMan won't (un)mount the following mount-points:" ), + generalGrp, "KgAdvLabel2" ); + KonfiguratorEditBox *nonMountPoints = createEditBox( "Advanced", "Nonmount Points", _NonMountPoints, generalGrp, false ); + generalGrid->addWidget( nonMountPoints, 2, 1 ); + + #ifdef BSD generals->find( "AutoMount" )->setEnabled( false ); /* disable AutoMount on BSD */ |
From: Shie E. <er...@us...> - 2004-09-20 22:30:39
|
Update of /cvsroot/krusader/krusader_kde3/krusader In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23777 Modified Files: defaults.h Log Message: heiner's feature: select mountpoints that won't be handled by mountman - under konfigurator-advanced Index: defaults.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/defaults.h,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** defaults.h 31 Aug 2004 19:35:33 -0000 1.16 --- defaults.h 20 Sep 2004 22:30:29 -0000 1.17 *************** *** 134,137 **** --- 134,139 ---- // AutoMount ////////// #define _AutoMount false + // Nonmount Points //// + #define _NonMountPoints "/, " // Confirm Unempty Dir // (for delete) #define _ConfirmUnemptyDir true |
From: Shie E. <er...@us...> - 2004-09-20 21:10:24
|
Update of /cvsroot/krusader/krusader_kde3/krusader/MountMan In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4717 Modified Files: kmountman.cpp kmountman.h kmountmangui.cpp kmountmangui.h Log Message: mountman shows all filesystem now. both modes of mountman handles only the 'legal' filesystems Index: kmountmangui.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/MountMan/kmountmangui.cpp,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** kmountmangui.cpp 19 Sep 2004 11:47:45 -0000 1.12 --- kmountmangui.cpp 20 Sep 2004 21:10:14 -0000 1.13 *************** *** 56,69 **** KMountManGUI::KMountManGUI() : KDialogBase( krApp, 0, true, "Mount.Man" ), info( 0 ), mountList( 0 ) { - // list of file systems we don't want to touch ---------------- - invalid_fs << "swap" << "/dev/pts" << "tmpfs" << "supermount"; - #if defined(BSD) - invalid_fs << "procfs"; - #else - invalid_fs << "proc"; - #endif - - // ------------------------------------------------------------- - watcher = new QTimer( this ); connect( watcher, SIGNAL( timeout() ), this, SLOT( checkMountChange() ) ); --- 56,59 ---- *************** *** 222,231 **** void KMountManGUI::updateList() { - #define INVALID_FS(TYPE) (invalid_fs.contains(TYPE) > 0) - mountList->clear(); // this handles the mounted ones for ( QValueList<fsData>::iterator it = fileSystems.begin(); it != fileSystems.end() ; ++it ) { ! if (INVALID_FS((*it).type())) continue; addItemToMountList( mountList, *it ); } --- 212,219 ---- void KMountManGUI::updateList() { mountList->clear(); // this handles the mounted ones for ( QValueList<fsData>::iterator it = fileSystems.begin(); it != fileSystems.end() ; ++it ) { ! if (krMtMan.invalidFilesystem((*it).type())) continue; addItemToMountList( mountList, *it ); } *************** *** 244,248 **** fileSystems.append(data); ! if (INVALID_FS(data.type())) continue; addItemToMountList(mountList, data); } --- 232,236 ---- fileSystems.append(data); ! if (krMtMan.invalidFilesystem(data.type())) continue; addItemToMountList(mountList, data); } *************** *** 327,333 **** KPopupMenu popup; popup.insertTitle( i18n( "MountMan" ) ); ! if ( !system->mounted() ) popup.insertItem( i18n( "Mount" ), MOUNT_ID ); ! else popup.insertItem( i18n( "Unmount" ), UNMOUNT_ID ); if ( krMtMan.ejectable( system->mntPoint() ) ) // if (system->type()=="iso9660" || krMtMan.followLink(system->name()).left(2)=="cd") --- 315,325 ---- KPopupMenu popup; popup.insertTitle( i18n( "MountMan" ) ); ! if ( !system->mounted() ) { popup.insertItem( i18n( "Mount" ), MOUNT_ID ); ! popup.setItemEnabled( MOUNT_ID, !krMtMan.nonmountFilesystem(system->type())); ! } else { ! popup.insertItem( i18n( "Unmount" ), UNMOUNT_ID ); ! popup.setItemEnabled( UNMOUNT_ID, !krMtMan.nonmountFilesystem(system->type())); ! } if ( krMtMan.ejectable( system->mntPoint() ) ) // if (system->type()=="iso9660" || krMtMan.followLink(system->name()).left(2)=="cd") Index: kmountman.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/MountMan/kmountman.h,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** kmountman.h 17 Sep 2004 17:42:12 -0000 1.15 --- kmountman.h 20 Sep 2004 21:10:14 -0000 1.16 *************** *** 65,68 **** --- 65,70 ---- bool ejectable( QString path ); QString convertSize( KIO::filesize_t size ); + bool invalidFilesystem(QString type); + bool nonmountFilesystem(QString type); KMountMan(); *************** *** 87,90 **** --- 89,94 ---- bool Operational; // if false, something went terribly wrong on startup KMountManGUI *mountManGui; + QStringList invalid_fs; + QStringList nonmount_fs; }; Index: kmountman.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/MountMan/kmountman.cpp,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** kmountman.cpp 17 Sep 2004 17:42:49 -0000 1.35 --- kmountman.cpp 20 Sep 2004 21:10:13 -0000 1.36 *************** *** 61,68 **** --- 61,86 ---- } + // list of FS that we don't manage at all + invalid_fs << "swap" << "/dev/pts" << "tmpfs"; + #if defined(BSD) + invalid_fs << "procfs"; + #else + invalid_fs << "proc"; + #endif + + // list of FS that we don't allow to mount/unmount + nonmount_fs << "supermount"; } KMountMan::~KMountMan() {} + bool KMountMan::invalidFilesystem(QString type) { + return (invalid_fs.contains(type) > 0); + } + + bool KMountMan::nonmountFilesystem(QString type) { + return (nonmount_fs.contains(type) > 0); + } + void KMountMan::mainWindow() { mountManGui = new KMountManGUI(); *************** *** 221,224 **** --- 239,245 ---- for ( it = possible.begin(), idx = 0; it != possible.end(); ++it, ++idx ) { m = *it; + // skip nonmountable file systems + if (nonmountFilesystem(m->mountType()) || invalidFilesystem(m->mountType())) + continue; // does the mountpoint exist in current list? if so, it can only // be umounted, otherwise, it can be mounted Index: kmountmangui.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/MountMan/kmountmangui.h,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** kmountmangui.h 17 Sep 2004 17:34:40 -0000 1.6 --- kmountmangui.h 20 Sep 2004 21:10:14 -0000 1.7 *************** *** 91,95 **** QListView *mountList; QTimer *watcher; - QStringList invalid_fs; QDateTime lastMtab; // used for the getSpace - gotSpace functions --- 91,94 ---- |
From: Karai C. <ck...@us...> - 2004-09-20 19:39:57
|
Update of /cvsroot/krusader/krusader_kde3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17703/krusader_kde3 Modified Files: ChangeLog Log Message: FIXED: searcher cannot open remote URL-s for editing/viewing (archives) Index: ChangeLog =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/ChangeLog,v retrieving revision 1.303 retrieving revision 1.304 diff -C2 -d -r1.303 -r1.304 *** ChangeLog 17 Sep 2004 17:37:04 -0000 1.303 --- ChangeLog 20 Sep 2004 19:39:48 -0000 1.304 *************** *** 37,40 **** --- 37,41 ---- REACTIVATED: usermenu (now using the new useraction-system) + FIXED: searcher cannot open remote URL-s for editing/viewing (archives) FIXED: the File/Properties function writes incorrect group name FIXED: krarc doesn't keep the date/time information at extracting to local fs |
From: Karai C. <ck...@us...> - 2004-09-20 18:51:38
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Search In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7733/krusader_kde3/krusader/Search Modified Files: krsearchdialog.cpp Log Message: Search bugfixes! Index: krsearchdialog.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Search/krsearchdialog.cpp,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** krsearchdialog.cpp 24 Aug 2004 08:13:33 -0000 1.19 --- krsearchdialog.cpp 20 Sep 2004 18:51:29 -0000 1.20 *************** *** 136,139 **** --- 136,140 ---- connect(searchInArchives, SIGNAL(toggled(bool)), containsText, SLOT(setDisabled(bool))); connect(searchInArchives, SIGNAL(toggled(bool)), containsTextCase, SLOT(setDisabled(bool))); + connect(searchInArchives, SIGNAL(toggled(bool)), containsWholeWord, SLOT(setDisabled(bool))); ofType->insertItem(i18n("All Files")); *************** *** 642,647 **** if( current ) { ! KURL url = vfs::fromPathOrURL(current->text(1)); ! url.setFileName( current->text(0) ); KrViewer::edit( url, true ); } --- 643,649 ---- if( current ) { ! QString name = current->text(1); ! name += (name.endsWith( "/" ) ? current->text(0) : "/" + current->text(0) ); ! KURL url = vfs::fromPathOrURL( name ); KrViewer::edit( url, true ); } *************** *** 653,658 **** if( current ) { ! KURL url = vfs::fromPathOrURL(current->text(1)); ! url.setFileName( current->text(0) ); KrViewer::view( url ); } --- 655,661 ---- if( current ) { ! QString name = current->text(1); ! name += (name.endsWith( "/" ) ? current->text(0) : "/" + current->text(0) ); ! KURL url = vfs::fromPathOrURL( name ); KrViewer::view( url ); } |
From: Shie E. <er...@us...> - 2004-09-20 13:24:06
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Panel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv755/krusader/Panel Modified Files: krdetailedview.cpp krview.h panelfunc.cpp Log Message: Index: panelfunc.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Panel/panelfunc.cpp,v retrieving revision 1.88 retrieving revision 1.89 diff -C2 -d -r1.88 -r1.89 *** panelfunc.cpp 17 Sep 2004 16:53:21 -0000 1.88 --- panelfunc.cpp 20 Sep 2004 13:23:56 -0000 1.89 *************** *** 405,408 **** --- 405,409 ---- // called by signal itemRenamed() from the view to complete the renaming process void ListPanelFunc::rename(const QString &oldname, const QString &newname) { + kdWarning() << "old " << oldname << " new " << newname << endl; if (oldname == newname) return; // do nothing panel->view->setNameToMakeCurrent( newname ); Index: krview.h =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Panel/krview.h,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** krview.h 17 Sep 2004 13:00:31 -0000 1.15 --- krview.h 20 Sep 2004 13:23:56 -0000 1.16 *************** *** 37,40 **** --- 37,42 ---- #include "krviewitem.h" + #include <kdebug.h> + /**************************************************************************** * READ THIS FIRST: Using the view *************** *** 127,131 **** virtual void invertSelection(); virtual QString nameToMakeCurrent() const { return _nameToMakeCurrent; } ! virtual void setNameToMakeCurrent(const QString name) { _nameToMakeCurrent = name; } virtual QString firstUnmarkedBelowCurrent(); virtual QString statistics(); --- 129,133 ---- virtual void invertSelection(); virtual QString nameToMakeCurrent() const { return _nameToMakeCurrent; } ! virtual void setNameToMakeCurrent(const QString name) { _nameToMakeCurrent = name; kdWarning() << "!!! " << _nameToMakeCurrent << endl; } virtual QString firstUnmarkedBelowCurrent(); virtual QString statistics(); Index: krdetailedview.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Panel/krdetailedview.cpp,v retrieving revision 1.94 retrieving revision 1.95 diff -C2 -d -r1.94 -r1.95 *** krdetailedview.cpp 20 Sep 2004 12:49:56 -0000 1.94 --- krdetailedview.cpp 20 Sep 2004 13:23:55 -0000 1.95 *************** *** 998,1002 **** if ( !it ) { // major failure - call developers kdWarning() << "Major failure at inplaceRenameFinished(): item is null" << endl; ! exit( 0 ); } // check if the item was indeed renamed --- 998,1002 ---- if ( !it ) { // major failure - call developers kdWarning() << "Major failure at inplaceRenameFinished(): item is null" << endl; ! return; } // check if the item was indeed renamed |
From: Shie E. <er...@us...> - 2004-09-20 12:50:07
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Panel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25044/krusader/Panel Modified Files: krdetailedview.cpp Log Message: fixed: color for renaming is not constant Index: krdetailedview.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Panel/krdetailedview.cpp,v retrieving revision 1.93 retrieving revision 1.94 diff -C2 -d -r1.93 -r1.94 *** krdetailedview.cpp 15 Sep 2004 12:10:23 -0000 1.93 --- krdetailedview.cpp 20 Sep 2004 12:49:56 -0000 1.94 *************** *** 279,284 **** else _countSize += dynamic_cast<KrViewItem*>( item ) ->size(); ++_count; ensureItemVisible( currentItem() ); ! emit selectionChanged(); } --- 279,290 ---- else _countSize += dynamic_cast<KrViewItem*>( item ) ->size(); ++_count; + + //kdWarning() << "===> " << nameToMakeCurrent() << endl; + + if (item->name() == nameToMakeCurrent() ) + setCurrentItem(item->name()); // dictionary based - quick + ensureItemVisible( currentItem() ); ! emit selectionChanged(); } *************** *** 308,311 **** --- 314,318 ---- bool selected = it->isSelected(); bool current = ( getCurrentKrViewItem() == it ); + kdWarning() << "updated" << endl; delItem( vf->vfile_getName() ); addItem( vf ); *************** *** 945,948 **** --- 952,958 ---- } + renameLineEdit()->setBackgroundMode(Qt::FixedColor); + renameLineEdit()->setPaletteBackgroundColor(Qt::white); + renameLineEdit()->setPaletteForegroundColor(Qt::black); KListView::rename( item, c ); renameLineEdit() ->selectAll(); |
From: Shie E. <er...@us...> - 2004-09-19 11:47:55
|
Update of /cvsroot/krusader/krusader_kde3/krusader/Konfigurator In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19742/krusader/Konfigurator Modified Files: kgadvanced.cpp Log Message: BSD fixes Index: kgadvanced.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/Konfigurator/kgadvanced.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** kgadvanced.cpp 7 Mar 2004 22:48:47 -0000 1.7 --- kgadvanced.cpp 19 Sep 2004 11:47:45 -0000 1.8 *************** *** 34,37 **** --- 34,38 ---- #include <qhbox.h> #include <qtooltip.h> + #include <sys/param.h> KgAdvanced::KgAdvanced( bool first, QWidget* parent, const char* name ) : |
From: Shie E. <er...@us...> - 2004-09-19 11:47:55
|
Update of /cvsroot/krusader/krusader_kde3/krusader/MountMan In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19742/krusader/MountMan Modified Files: kmountmangui.cpp Log Message: BSD fixes Index: kmountmangui.cpp =================================================================== RCS file: /cvsroot/krusader/krusader_kde3/krusader/MountMan/kmountmangui.cpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** kmountmangui.cpp 17 Sep 2004 17:34:15 -0000 1.11 --- kmountmangui.cpp 19 Sep 2004 11:47:45 -0000 1.12 *************** *** 50,53 **** --- 50,54 ---- #include <kdiskfreesp.h> #include <qfileinfo.h> + #include <sys/param.h> #define MTAB "/etc/mtab" |