-rw-r--r-- | noncore/apps/opie-gutenbrowser/openetext.cpp | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/noncore/apps/opie-gutenbrowser/openetext.cpp b/noncore/apps/opie-gutenbrowser/openetext.cpp index a5d855d..75edacd 100644 --- a/noncore/apps/opie-gutenbrowser/openetext.cpp +++ b/noncore/apps/opie-gutenbrowser/openetext.cpp @@ -243,267 +243,265 @@ bool OpenEtext::FindTitle( QString filename) if( indexLine.find( target3, 0, TRUE) > -1 && !findCheck) { findCheck = TRUE; title = indexLine.mid( indexLine.find( target3, 0, TRUE) + ( target3.length()) , indexLine.find("\r", 0, TRUE)); title = title.left( title.find( "*",0, TRUE)); title = title.stripWhiteSpace (); // odebug << "Found the title 3 and it is " << title << "" << oendl; } if( indexLine.find( target4, 0, TRUE) > -1 && !findCheck) { findCheck = TRUE; title = indexLine.mid( indexLine.find( target4, 0, TRUE) + ( target4.length()) , indexLine.find("\r", 0, TRUE)); title = title.left( title.find( "*",0, TRUE)); title = title.stripWhiteSpace (); // odebug << "Found the title 4 and it is " << title << "" << oendl; } } //endof file indexLib.close(); if( !findCheck || title.length() < 2) { odebug << "Trying hard to find title from GUTINDEX.ALL" << oendl; title = titleFromLibrary( filename); findCheck = TRUE; } if ( checkConf() == false && findCheck == TRUE) { config.setGroup( "Files"); config.writeEntry("NumberOfFiles",i_numofFiles + 1 ); QString interger; interger.setNum( i_numofFiles +1); config.writeEntry(interger, filename); config.setGroup( "Titles" ); for (int i = 1; i <= i_numofFiles; i++) { //find dup titles in config file QString temp; temp.setNum(i); config.setGroup( "Files" ); QString ramble = config.readEntry(temp, "" ); config.setGroup( "Titles" ); QString title1 = config.readEntry(ramble, ""); if(title1==title) title+="1"; i= i_numofFiles+1; } if(title.length()<3) { // odebug << "title is empty" << oendl; title="Unknown"; } config.writeEntry( filename,title); } } else { QString sMsg; sMsg = "Error opening library file: "+filename; printf( sMsg+"\n"); } return true; } QString OpenEtext::titleFromLibrary( QString fileName) { QFile indexLib( local_index); QString target; int find1 = fileName.findRev("/",-1,TRUE) + 1; int find2 = fileName.findRev(".gtn",-1,TRUE) - find1; if(find2== (-1-find1)) find2 = fileName.findRev(".etx",-1,TRUE) - find1; else if(find2==(-1-find1)) find2 = fileName.findRev(".txt",-1,TRUE) - find1; target = fileName.mid( find1, find2 ); QString checker = target.right(1); bool ok; checker.toInt( &ok,10); if( ok) { target = target.left( target.length()-1); checker = target.right(1); ok = FALSE; checker.toInt( &ok,10); if( ok) { target = target.left( target.length()-1); } } if ( indexLib.open( IO_ReadOnly) ) { // file opened successfully QTextStream indexStream( &indexLib ); QString indexLine; bool findCheck = FALSE; while ( !indexStream.atEnd() ) { // until end of file.. indexLine = indexStream.readLine(); if( indexLine.find( target,0,FALSE) > 0 ) { findCheck = TRUE; title = indexLine.mid( 9, 50); title = title.stripWhiteSpace (); // odebug << "Finally Found the title and it is\n " << title << "" << oendl; // QListBox_1->insertItem ( title); } } //end while loop } else odebug << "Error opening library index "+ local_index << oendl; return title; } bool OpenEtext::checkConf() { QString file = fileName; Config config("Gutenbrowser"); config.setGroup( "Files" ); QString s_numofFiles = config.readEntry("NumberOfFiles", "0" ); int i_numofFiles = s_numofFiles.toInt(); for (int i = 1; i <= i_numofFiles; i++) { QString temp; temp.setNum(i); config.setGroup( "Files"); QString ramble = config.readEntry(temp, "" ); if(ramble == file ) { return true; } } return false; } void OpenEtext::remove() { title_text = QListBox_1->text( QListBox_1->currentItem() ); title_text=title_text.stripWhiteSpace(); QString msg ="<p>Do you really want to REMOVE\n" + title_text + "?\nThis will not delete the file.</P>"; - switch( QMessageBox::information( this, tr("Remove Etext"), - tr(msg), - tr("&Yes"), tr("&Cancel"), 0 ) ) - { - case 0: // Yes clicked, - removeSelection(); - QListBox_1->clear(); - getTitles(); - break; - case 1: - default: + unsigned short clickVal = + QMessageBox::information( this, tr("Remove Etext"), + tr(msg), + tr("&Yes"), tr("&Cancel"), 0 ); + if ( clickVal == 0 ) { + // The yes button was clicked + removeSelection(); + QListBox_1->clear(); + getTitles(); } } /*! * This removes selected title entry */ void OpenEtext::removeSelection() { Config config("Gutenbrowser"); config.setGroup( "Files" ); s_numofFiles = config.readEntry("NumberOfFiles", "0"); int rem=0; int i_numofFiles = s_numofFiles.toInt(); QString fileNum2; QString fileNum; for (int i = 1; i <= i_numofFiles; i++) { fileNum.setNum(i); config.setGroup( "Files" ); QString s_filename = config.readEntry(fileNum, "" ); config.setGroup( "Titles" ); QString file_title = config.readEntry( s_filename, ""); if(title_text == file_title) { rem=i; //odebug << "file title to remove is "+file_title << oendl; selFile = s_filename; config.removeEntry( s_filename); //removes file=title } } config.setGroup( "Files" ); for(int fg = rem; fg < i_numofFiles ; fg++ ) { //this rewrites Files number entry fileNum.setNum(fg); fileNum2.setNum( fg + 1); QString s_filename2 = config.readEntry(fileNum2, "" ); if (!s_filename2.isEmpty()) { config.writeEntry(fileNum, s_filename2 ); } } config.writeEntry("NumberOfFiles", i_numofFiles - 1 ); config.removeEntry(fileNum2); } /*! * Removes file title name from list and config file */ void OpenEtext::remFile() { Config config("Gutenbrowser"); config.setGroup( "Files" ); QString remFile; s_numofFiles = config.readEntry("NumberOfFiles", "0"); int i_numofFiles = s_numofFiles.toInt(); for (int i = 1; i <= i_numofFiles; i++) { QString fileNum; fileNum.setNum(i); QString s_filename = config.readEntry(fileNum, "" ); if( s_filename == selFile) { config.removeEntry(selFile); for(int fg = i_numofFiles - i; fg < i_numofFiles ; fg++ ) { //this rewrites Files number entry QString fileNum2; fileNum2.setNum( fg + 1); QString s_filename2 = config.readEntry(fileNum2, "" ); if (!s_filename2.isEmpty()) config.writeEntry(fileNum, s_filename2 ); } } } config.writeEntry("NumberOfFiles", i_numofFiles - 1 ); config.removeEntry(s_numofFiles); QListBox_1->triggerUpdate(true); } /*! * Sorts the list */ void OpenEtext::scan() { QListBox_1->sort(TRUE); QListBox_1->triggerUpdate(true); } void OpenEtext::editTitle() { int currentItem=QListBox_1->currentItem(); QString title_text = QListBox_1->text( currentItem); //odebug << "Selected "+title_text << oendl; Config config("Gutenbrowser"); config.setGroup( "Files" ); s_numofFiles = config.readEntry("NumberOfFiles", "0"); int i_numofFiles = s_numofFiles.toInt(); QString fileNum; for (int i = 1; i <= i_numofFiles+1; i++) { fileNum.setNum(i); config.setGroup( "Files" ); QString s_filename = config.readEntry(fileNum, "" ); config.setGroup( "Titles" ); QString file_title = config.readEntry( s_filename, ""); //odebug << "file_title is "+file_title << oendl; if(title_text == file_title ) { selFile = s_filename; //odebug << "Edit: "+ file_title << oendl; i=i_numofFiles+1; Edit_Title *titleEdit; titleEdit = new Edit_Title(this,file_title ,TRUE); if(titleEdit->exec() !=0) { //odebug << titleEdit->newTitle << oendl; config.writeEntry( s_filename, titleEdit->newTitle); QListBox_1->removeItem(currentItem); QListBox_1->insertItem ( QPixmap( QPEApplication::qpeDir()+ "pics/gutenbrowser/gutenbrowser_sm.png"), titleEdit->newTitle, currentItem ); } } } |