author | ar <ar> | 2004-05-03 21:35:18 (UTC) |
---|---|---|
committer | ar <ar> | 2004-05-03 21:35:18 (UTC) |
commit | 412619441fab46fc79c695a23ccf9e38135bdfad (patch) (side-by-side diff) | |
tree | 19d9b8af14cf6c345ef532bb32368b9c7b43c50f | |
parent | d1095d71394779557f446e2a67ba55bc62eec859 (diff) | |
download | opie-412619441fab46fc79c695a23ccf9e38135bdfad.zip opie-412619441fab46fc79c695a23ccf9e38135bdfad.tar.gz opie-412619441fab46fc79c695a23ccf9e38135bdfad.tar.bz2 |
- convert qDebug to odebug
29 files changed, 5340 insertions, 5269 deletions
diff --git a/noncore/apps/opie-gutenbrowser/LibraryDialog.cpp b/noncore/apps/opie-gutenbrowser/LibraryDialog.cpp index 5b22b00..270a4cf 100644 --- a/noncore/apps/opie-gutenbrowser/LibraryDialog.cpp +++ b/noncore/apps/opie-gutenbrowser/LibraryDialog.cpp @@ -8,786 +8,790 @@ // /*************************************************************************** // * 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. * // ***************************************************************************/ //ftp://ibiblio.org/pub/docs/books/gutenberg/GUTINDEX.ALL +#include "LibraryDialog.h" +#include "output.h" + +/* OPIE */ #include <qpe/applnk.h> #include <qpe/qpeapplication.h> #include <qpe/qpedialog.h> +#include <opie2/odebug.h> -#include "LibraryDialog.h" -#include "output.h" - +/* QT */ #include <qpushbutton.h> #include <qmultilineedit.h> //#include <qlayout.h> +/* STD */ #include <unistd.h> #include <stdio.h> #include <stdlib.h> /* * The dialog will by default be modeless, unless you set 'modal' to * TRUE to construct a modal dialog. */ LibraryDialog::LibraryDialog( QWidget* parent, const char* name , bool modal, WFlags fl ) - : QDialog( parent, name, true/* modal*/, fl ) + : QDialog( parent, name, true/* modal*/, fl ) { - if ( !name ) - setName( "LibraryDialog" ); - indexLoaded=false; - initDialog(); + if ( !name ) + setName( "LibraryDialog" ); + indexLoaded=false; + initDialog(); // this->setMaximumWidth(240); - index = "GUTINDEX.ALL"; - local_library = (QDir::homeDirPath ()) +"/Applications/gutenbrowser/"; - local_index = local_library + index; + index = "GUTINDEX.ALL"; + local_library = (QDir::homeDirPath ()) +"/Applications/gutenbrowser/"; + local_index = local_library + index; - QString iniFile ; - iniFile = QPEApplication::qpeDir()+"/etc/gutenbrowser/gutenbrowserrc"; + QString iniFile ; + iniFile = QPEApplication::qpeDir()+"/etc/gutenbrowser/gutenbrowserrc"; - new_index =QPEApplication::qpeDir()+"/etc/gutenbrowser/PGWHOLE.TXT"; + new_index =QPEApplication::qpeDir()+"/etc/gutenbrowser/PGWHOLE.TXT"; - old_index = QPEApplication::qpeDir()+"/etc/gutenbrowser/GUTINDEX.ALL"; - // old_index = QPEApplication::qpeDir()+"etc/gutenbrowser/GUTINDEX.ALL"; + old_index = QPEApplication::qpeDir()+"/etc/gutenbrowser/GUTINDEX.ALL"; + // old_index = QPEApplication::qpeDir()+"etc/gutenbrowser/GUTINDEX.ALL"; - // iniFile = local_library+"gutenbrowserrc"; - // new_index = local_library + "PGWHOLE.TXT"; - // old_index = local_library + "GUTINDEX.ALL"; + // iniFile = local_library+"gutenbrowserrc"; + // new_index = local_library + "PGWHOLE.TXT"; + // old_index = local_library + "GUTINDEX.ALL"; - Config config("Gutenbrowser"); + Config config("Gutenbrowser"); - config.setGroup( "HttpServer" ); - proxy_http = config.readEntry("Preferred", "http://sailor.gutenbook.org"); + config.setGroup( "HttpServer" ); + proxy_http = config.readEntry("Preferred", "http://sailor.gutenbook.org"); - config.setGroup( "FTPsite" ); - ftp_host=config.readEntry("SiteName", "sailor.gutenberg.org"); - qDebug("Library Dialog: ftp_host is "+ftp_host); - // ftp_host=ftp_host.right(ftp_host.length()-(ftp_host.find(") ",0,TRUE)+1) ); - // ftp_host=ftp_host.stripWhiteSpace(); - ftp_base_dir= config.readEntry("base", "/pub/gutenberg"); + config.setGroup( "FTPsite" ); + ftp_host=config.readEntry("SiteName", "sailor.gutenberg.org"); + odebug << "Library Dialog: ftp_host is "+ftp_host << oendl; + // ftp_host=ftp_host.right(ftp_host.length()-(ftp_host.find(") ",0,TRUE)+1) ); + // ftp_host=ftp_host.stripWhiteSpace(); + ftp_base_dir= config.readEntry("base", "/pub/gutenberg"); - i_binary = 0; + i_binary = 0; - config.setGroup("SortAuth"); - if( config.readEntry("authSort", "FALSE") == "TRUE") - authBox->setChecked(TRUE); + config.setGroup("SortAuth"); + if( config.readEntry("authSort", "FALSE") == "TRUE") + authBox->setChecked(TRUE); - config.setGroup("General"); - downDir =config.readEntry( "DownloadDirectory",local_library); - qDebug("downDir is "+downDir); - newindexLib.setName( old_index); - indexLib.setName( old_index); + config.setGroup("General"); + downDir =config.readEntry( "DownloadDirectory",local_library); + odebug << "downDir is "+downDir << oendl; + newindexLib.setName( old_index); + indexLib.setName( old_index); - new QPEDialogListener(this); + new QPEDialogListener(this); } LibraryDialog::~LibraryDialog() { -// delete QList_Item2; -// delete QList_Item1; -// delete QList_Item3; -// delete QList_Item4; -// delete QList_Item5; +// delete QList_Item2; +// delete QList_Item1; +// delete QList_Item3; +// delete QList_Item4; +// delete QList_Item5; - // saveConfig(); + // saveConfig(); } /*This groks using PGWHOLE.TXT */ void LibraryDialog::Newlibrary() { #ifndef Q_WS_QWS //sorry embedded gutenbrowser cant use zip files - //qDebug("Opening new library index %s",newindexLib); - if ( newindexLib.open( IO_ReadOnly) ) { - setCaption( tr( "Library Index - using master pg index." ) );// file opened successfully - QTextStream indexStream( &newindexLib ); - QString indexLine; - while ( !indexStream.atEnd() ) { // until end of file.. - indexLine = indexStream.readLine(); - if ( ( indexLine.mid(4,4)).toInt() && !( indexLine.left(3)).toInt()) { - year = indexLine.mid(4,4); - year = year.stripWhiteSpace(); - file = indexLine.mid( indexLine.find( "[", 0, TRUE )+1, 12 ); - file = file.stripWhiteSpace(); - number = indexLine.mid( indexLine.find( "]", 0, TRUE ) +1, indexLine.find( " ", 0, TRUE )+1 ); - if( year.toInt() < 1984) - number = number.left( number.length() -1 ); - number = number.stripWhiteSpace(); - title = indexLine.mid( indexLine.find(" ", 26, TRUE), indexLine.length() ); - title = title.stripWhiteSpace(); - - getAuthor(); // groks author - author = author.stripWhiteSpace(); - if (authBox->isChecked()) { // this reverses the first name and last name of the author - // qDebug("Sorting last name first"); - QString lastName, firstName=""; - int finder=author.findRev( ' ', -1, TRUE); - lastName=author.right( author.length()-finder); - firstName=author.left(finder); - lastName=lastName.stripWhiteSpace(); - firstName=firstName.stripWhiteSpace(); - - if( lastName.find( firstName, 0, true) == -1) // this avoids dup names - author=lastName+", "+firstName; - } - - if( !number.isEmpty() && (title.find( "reserved",0, FALSE) == -1) && (file.find( "]",0, TRUE) == -1) ) { - - // fill string list or something to be able to resort the whole library - if( author.isEmpty() ) - QList_Item5 = new QListViewItem( ListView5, /* number,*/ title, author, year, file ); - else { - - if( (author.left(1) >= QString("A") && author.left(1) <= QString("F")) || - (author.left(1) >= QString("a") && author.left(1) <= QString("f")) ) - QList_Item1 = new QListViewItem( ListView1,/* number,*/ title, author, year, file ); - - else if( (author.left(1) >= QString("G") && author.left(1) <= QString("M")) || - (author.left(1) >= QString("g") && author.left(1) <= QString("m")) ) - QList_Item2 = new QListViewItem( ListView2, /*number, */title, author, year, file ); - - else if( (author.left(1) >= QString("N") && author.left(1) <= QString("R")) || - (author.left(1) >= QString("n") && author.left(1) <= QString("r")) ) - QList_Item3 = new QListViewItem( ListView3, /*number,*/ title, author, year, file ); - - else if( (author.left(1) >= QString("S") && author.left(1) <= QString("Z")) || - (author.left(1) >= QString("s") && author.left(1) <= QString("z")) ) - QList_Item4 = new QListViewItem( ListView4, /* number,*/ title, author, year, file ); - - else - QList_Item5 = new QListViewItem( ListView5, /* number,*/ title, author, year, file ); - } - } - }// end if - }// end while - newindexLib.close(); - } + //odebug << "Opening new library index " << newindexLib << "" << oendl; + if ( newindexLib.open( IO_ReadOnly) ) { + setCaption( tr( "Library Index - using master pg index." ) );// file opened successfully + QTextStream indexStream( &newindexLib ); + QString indexLine; + while ( !indexStream.atEnd() ) { // until end of file.. + indexLine = indexStream.readLine(); + if ( ( indexLine.mid(4,4)).toInt() && !( indexLine.left(3)).toInt()) { + year = indexLine.mid(4,4); + year = year.stripWhiteSpace(); + file = indexLine.mid( indexLine.find( "[", 0, TRUE )+1, 12 ); + file = file.stripWhiteSpace(); + number = indexLine.mid( indexLine.find( "]", 0, TRUE ) +1, indexLine.find( " ", 0, TRUE )+1 ); + if( year.toInt() < 1984) + number = number.left( number.length() -1 ); + number = number.stripWhiteSpace(); + title = indexLine.mid( indexLine.find(" ", 26, TRUE), indexLine.length() ); + title = title.stripWhiteSpace(); + + getAuthor(); // groks author + author = author.stripWhiteSpace(); + if (authBox->isChecked()) { // this reverses the first name and last name of the author + // odebug << "Sorting last name first" << oendl; + QString lastName, firstName=""; + int finder=author.findRev( ' ', -1, TRUE); + lastName=author.right( author.length()-finder); + firstName=author.left(finder); + lastName=lastName.stripWhiteSpace(); + firstName=firstName.stripWhiteSpace(); + + if( lastName.find( firstName, 0, true) == -1) // this avoids dup names + author=lastName+", "+firstName; + } + + if( !number.isEmpty() && (title.find( "reserved",0, FALSE) == -1) && (file.find( "]",0, TRUE) == -1) ) { + + // fill string list or something to be able to resort the whole library + if( author.isEmpty() ) + QList_Item5 = new QListViewItem( ListView5, /* number,*/ title, author, year, file ); + else { + + if( (author.left(1) >= QString("A") && author.left(1) <= QString("F")) || + (author.left(1) >= QString("a") && author.left(1) <= QString("f")) ) + QList_Item1 = new QListViewItem( ListView1,/* number,*/ title, author, year, file ); + + else if( (author.left(1) >= QString("G") && author.left(1) <= QString("M")) || + (author.left(1) >= QString("g") && author.left(1) <= QString("m")) ) + QList_Item2 = new QListViewItem( ListView2, /*number, */title, author, year, file ); + + else if( (author.left(1) >= QString("N") && author.left(1) <= QString("R")) || + (author.left(1) >= QString("n") && author.left(1) <= QString("r")) ) + QList_Item3 = new QListViewItem( ListView3, /*number,*/ title, author, year, file ); + + else if( (author.left(1) >= QString("S") && author.left(1) <= QString("Z")) || + (author.left(1) >= QString("s") && author.left(1) <= QString("z")) ) + QList_Item4 = new QListViewItem( ListView4, /* number,*/ title, author, year, file ); + + else + QList_Item5 = new QListViewItem( ListView5, /* number,*/ title, author, year, file ); + } + } + }// end if + }// end while + newindexLib.close(); + } #ifndef Q_WS_QWS - setCursor( arrowCursor); + setCursor( arrowCursor); #endif #endif } // end Newlibrary() void LibraryDialog::Library() {// old library groking method - ListView1->clear(); - ListView2->clear(); - ListView3->clear(); - ListView4->clear(); - ListView5->clear(); - - qDebug("opening GUTINDEX.ALL file"); - IDontKnowWhy = ""; - if ( indexLib.open( IO_ReadOnly) ) { // file opened successfully - QTextStream indexStream( &indexLib ); - QString indexLine; - qApp->processEvents(); - // int jig; - while ( !indexStream.eof() ) { - - indexLine = indexStream.readLine(); - if ( indexLine != "") { - if( (indexLine.mid(4,4)).toInt() /* && !( indexLine.left(3)).toInt()*/ ) { - // month = indexLine.left( 3); - year = indexLine.mid(4,4); - // title = indexLine.mid( 9, 50); - file = indexLine.mid(60,12); - if(file.left(1).find("[",0,TRUE) != -1) - file.remove(1,1); - if( file.find("]",0,TRUE) != -1) - file = file.left( file.find("]",0,TRUE)); - //qDebug("file is "+file); - /// number = indexLine.mid( indexLine.find( "]", 0, TRUE ) +1, indexLine.find( " ", 0, TRUE )+1 ); - number = indexLine.mid(55,5); - number = number.stripWhiteSpace(); - // title = indexLine.mid( indexLine.find(" ", 26, TRUE), indexLine.length() ); - title = indexLine.mid( 9, 50 ); - title = title.stripWhiteSpace(); - //qDebug("title is "+title); - getAuthor(); // grok author - author = author.stripWhiteSpace(); - //qDebug("author is "+author); - if (authBox->isChecked() == TRUE) { // this reverses the first name and last name of the author - QString lastName, firstName=""; - int finder=author.findRev( ' ', -1, TRUE); - lastName=author.right( author.length()-finder); - firstName=author.left(finder); - lastName=lastName.stripWhiteSpace(); - firstName=firstName.stripWhiteSpace(); - - if( lastName.find( firstName, 0, true) == -1) // this avoids dup names - author=lastName+", "+firstName; - } - - if( !number.isEmpty() && (title.find( "reserved",0, FALSE) == -1) /*&& (file.find( "]",0, TRUE))*/ ) { - // fill string list or something to be able to sort by Author - if( author.isEmpty() ) - QList_Item5 = new QListViewItem( ListView5, /*number, */title, author, year, file ); - else { - if( (author.left(1) >= QString("A") && author.left(1) <= QString("F")) || - (author.left(1) >= QString("a") && author.left(1) <= QString("f")) ) - QList_Item1 = new QListViewItem( ListView1, /* number,*/ title, author, year, file ); - - else if( (author.left(1) >= QString("G") && author.left(1) <= QString("M")) || - (author.left(1) >= QString("g") && author.left(1) <= QString("m")) ) - QList_Item2 = new QListViewItem( ListView2, /* number,*/ title, author, year, file ); - - else if( (author.left(1) >= QString("N") && author.left(1) <= QString("R")) || - (author.left(1) >= QString("n") && author.left(1) <= QString("r")) ) - QList_Item3 = new QListViewItem( ListView3, /* number,*/ title, author, year, file ); - - else if( (author.left(1) >= QString("S") && author.left(1) <= QString("Z")) || - (author.left(1) >= QString("s") && author.left(1) <= QString("z")) ) - QList_Item4 = new QListViewItem( ListView4, /* number,*/ title, author, year, file ); - } - } - } - } - } - indexLib.close(); - } else { - QString sMsg; - sMsg = ( tr("Error opening local library index:\n "))+local_index; - QMessageBox::message( "Error",sMsg); - } + ListView1->clear(); + ListView2->clear(); + ListView3->clear(); + ListView4->clear(); + ListView5->clear(); + + odebug << "opening GUTINDEX.ALL file" << oendl; + IDontKnowWhy = ""; + if ( indexLib.open( IO_ReadOnly) ) { // file opened successfully + QTextStream indexStream( &indexLib ); + QString indexLine; + qApp->processEvents(); + // int jig; + while ( !indexStream.eof() ) { + + indexLine = indexStream.readLine(); + if ( indexLine != "") { + if( (indexLine.mid(4,4)).toInt() /* && !( indexLine.left(3)).toInt()*/ ) { + // month = indexLine.left( 3); + year = indexLine.mid(4,4); + // title = indexLine.mid( 9, 50); + file = indexLine.mid(60,12); + if(file.left(1).find("[",0,TRUE) != -1) + file.remove(1,1); + if( file.find("]",0,TRUE) != -1) + file = file.left( file.find("]",0,TRUE)); + //odebug << "file is "+file << oendl; + /// number = indexLine.mid( indexLine.find( "]", 0, TRUE ) +1, indexLine.find( " ", 0, TRUE )+1 ); + number = indexLine.mid(55,5); + number = number.stripWhiteSpace(); + // title = indexLine.mid( indexLine.find(" ", 26, TRUE), indexLine.length() ); + title = indexLine.mid( 9, 50 ); + title = title.stripWhiteSpace(); + //odebug << "title is "+title << oendl; + getAuthor(); // grok author + author = author.stripWhiteSpace(); + //odebug << "author is "+author << oendl; + if (authBox->isChecked() == TRUE) { // this reverses the first name and last name of the author + QString lastName, firstName=""; + int finder=author.findRev( ' ', -1, TRUE); + lastName=author.right( author.length()-finder); + firstName=author.left(finder); + lastName=lastName.stripWhiteSpace(); + firstName=firstName.stripWhiteSpace(); + + if( lastName.find( firstName, 0, true) == -1) // this avoids dup names + author=lastName+", "+firstName; + } + + if( !number.isEmpty() && (title.find( "reserved",0, FALSE) == -1) /*&& (file.find( "]",0, TRUE))*/ ) { + // fill string list or something to be able to sort by Author + if( author.isEmpty() ) + QList_Item5 = new QListViewItem( ListView5, /*number, */title, author, year, file ); + else { + if( (author.left(1) >= QString("A") && author.left(1) <= QString("F")) || + (author.left(1) >= QString("a") && author.left(1) <= QString("f")) ) + QList_Item1 = new QListViewItem( ListView1, /* number,*/ title, author, year, file ); + + else if( (author.left(1) >= QString("G") && author.left(1) <= QString("M")) || + (author.left(1) >= QString("g") && author.left(1) <= QString("m")) ) + QList_Item2 = new QListViewItem( ListView2, /* number,*/ title, author, year, file ); + + else if( (author.left(1) >= QString("N") && author.left(1) <= QString("R")) || + (author.left(1) >= QString("n") && author.left(1) <= QString("r")) ) + QList_Item3 = new QListViewItem( ListView3, /* number,*/ title, author, year, file ); + + else if( (author.left(1) >= QString("S") && author.left(1) <= QString("Z")) || + (author.left(1) >= QString("s") && author.left(1) <= QString("z")) ) + QList_Item4 = new QListViewItem( ListView4, /* number,*/ title, author, year, file ); + } + } + } + } + } + indexLib.close(); + } else { + QString sMsg; + sMsg = ( tr("Error opening local library index:\n "))+local_index; + QMessageBox::message( "Error",sMsg); + } } //end Library() /* Groks the author out of the title */ bool LibraryDialog::getAuthor() { - if( title.contains( ", by", TRUE)) { - int auth; - auth = title.find(", by", 0, TRUE); - author = title.right(title.length() - (auth + 4) ); - if( int finder = author.find("[", 0, TRUE)) { - author = author.left(finder); - } - } - else if ( title.contains( "by, ", TRUE) ) { - int auth; - auth = title.find("by, ", 0, TRUE); - author = title.right(title.length() - (auth + 4) ); - if( int finder = author.find("[", 0, TRUE)) { - author = author.left( finder); - } - } - else if ( title.contains( " by", TRUE) ) { - int auth; - auth = title.find(" by", 0, TRUE); - author = title.right(title.length() - (auth + 3) ); - if( int finder = author.find("[", 0, TRUE)) { - author = author.left( finder); - } - } - else if ( title.contains( "by ", TRUE) ) { - int auth; - auth = title.find("by ", 0, TRUE); - author = title.right(title.length() - (auth + 3) ); - if( int finder = author.find("[", 0, TRUE)) { - author = author.left( finder); - } - } - else if ( title.contains( ",", TRUE) ) { - int auth; - auth = title.find(",", 0, TRUE); - author = title.right( title.length() - (auth + 1) ); - if ( author.contains( ",", TRUE) ) { - int auth; - auth = author.find(",", 0, TRUE); - author = author.right( author.length() - (auth + 1) ); - } - if( int finder = author.find("[", 0, TRUE)) { - author = author.left( finder); - } - } - else if ( title.contains( "/", TRUE) ) { - int auth; - auth = title.find("/", 0, TRUE); - author = title.right(title.length() - (auth + 1) ); - if( int finder = author.find("[", 0, TRUE)) { - author = author.left( finder); - } - } - else if ( title.contains( "of", TRUE) ) { - int auth; - auth = title.find("of", 0, TRUE); - author = title.right(title.length() - (auth + 2) ); - if( int finder = author.find("[", 0, TRUE)) - { - author = author.left( finder); - } - } else { - author = ""; - } - if ( author.contains("et. al")) { - int auth; - auth = author.find("et. al", 0, TRUE); - author = author.left( auth ); - } - if ( author.contains("#")) { - int auth; - auth = author.find("#", 0, TRUE); - author = author.left( auth); - } - if ( author.contains("(")) { - int auth; - auth = author.find("(", 0, TRUE); - author = author.left( auth); - } - if ( author.contains("et al")) { - int auth; - auth = author.find("et al", 0, TRUE); - author = author.left( auth ); - } - QRegExp r = QRegExp("[0-9]", TRUE, FALSE); - if ( author.left(2).find( r) != -1 ) { - author = ""; - } - // if( author.contains(" ", TRUE)) { - // int suth = author.findRev(" ", -1, TRUE); - // author = author.right( author.length() - suth); - // } - - // title - // author - return true; + if( title.contains( ", by", TRUE)) { + int auth; + auth = title.find(", by", 0, TRUE); + author = title.right(title.length() - (auth + 4) ); + if( int finder = author.find("[", 0, TRUE)) { + author = author.left(finder); + } + } + else if ( title.contains( "by, ", TRUE) ) { + int auth; + auth = title.find("by, ", 0, TRUE); + author = title.right(title.length() - (auth + 4) ); + if( int finder = author.find("[", 0, TRUE)) { + author = author.left( finder); + } + } + else if ( title.contains( " by", TRUE) ) { + int auth; + auth = title.find(" by", 0, TRUE); + author = title.right(title.length() - (auth + 3) ); + if( int finder = author.find("[", 0, TRUE)) { + author = author.left( finder); + } + } + else if ( title.contains( "by ", TRUE) ) { + int auth; + auth = title.find("by ", 0, TRUE); + author = title.right(title.length() - (auth + 3) ); + if( int finder = author.find("[", 0, TRUE)) { + author = author.left( finder); + } + } + else if ( title.contains( ",", TRUE) ) { + int auth; + auth = title.find(",", 0, TRUE); + author = title.right( title.length() - (auth + 1) ); + if ( author.contains( ",", TRUE) ) { + int auth; + auth = author.find(",", 0, TRUE); + author = author.right( author.length() - (auth + 1) ); + } + if( int finder = author.find("[", 0, TRUE)) { + author = author.left( finder); + } + } + else if ( title.contains( "/", TRUE) ) { + int auth; + auth = title.find("/", 0, TRUE); + author = title.right(title.length() - (auth + 1) ); + if( int finder = author.find("[", 0, TRUE)) { + author = author.left( finder); + } + } + else if ( title.contains( "of", TRUE) ) { + int auth; + auth = title.find("of", 0, TRUE); + author = title.right(title.length() - (auth + 2) ); + if( int finder = author.find("[", 0, TRUE)) + { + author = author.left( finder); + } + } else { + author = ""; + } + if ( author.contains("et. al")) { + int auth; + auth = author.find("et. al", 0, TRUE); + author = author.left( auth ); + } + if ( author.contains("#")) { + int auth; + auth = author.find("#", 0, TRUE); + author = author.left( auth); + } + if ( author.contains("(")) { + int auth; + auth = author.find("(", 0, TRUE); + author = author.left( auth); + } + if ( author.contains("et al")) { + int auth; + auth = author.find("et al", 0, TRUE); + author = author.left( auth ); + } + QRegExp r = QRegExp("[0-9]", TRUE, FALSE); + if ( author.left(2).find( r) != -1 ) { + author = ""; + } + // if( author.contains(" ", TRUE)) { + // int suth = author.findRev(" ", -1, TRUE); + // author = author.right( author.length() - suth); + // } + + // title + // author + return true; }////// end getAuthor() /* selected one etext*/ void LibraryDialog::select_title( QListViewItem * item) { - if(item != NULL) { - i++; - int index = tabWidget->currentPageIndex(); - DlglistItemTitle = item->text(0); - DlglistItemYear = item->text(2); - DlglistItemFile = item->text(3); - switch (index) { - case 0: { - ListView1->clearSelection(); - } - break; - case 1: { - ListView2->clearSelection(); - } - break; - case 2: { - ListView3->clearSelection(); - } - break; - case 3: { - ListView4->clearSelection(); - } - break; - case 4: { - ListView5->clearSelection(); - } - break; - }; - } - - if(DlglistItemTitle.length()>2) { - // DlglistItemNumber = item->text(0); - item = 0; - qDebug( "string from librarydialog is:%s %s %s", DlglistItemYear.latin1(),DlglistItemFile.latin1(),DlglistItemNumber.latin1()); - qDebug("Title is "+DlglistItemTitle); - - // check for connection here - // if( get_extext()) - - if(download_Etext()) { - // qDebug("get here 2"); - if(i_binary == 1) { - - } - if(checkBox->isChecked () ) { - accept(); - } - } - } + if(item != NULL) { + i++; + int index = tabWidget->currentPageIndex(); + DlglistItemTitle = item->text(0); + DlglistItemYear = item->text(2); + DlglistItemFile = item->text(3); + switch (index) { + case 0: { + ListView1->clearSelection(); + } + break; + case 1: { + ListView2->clearSelection(); + } + break; + case 2: { + ListView3->clearSelection(); + } + break; + case 3: { + ListView4->clearSelection(); + } + break; + case 4: { + ListView5->clearSelection(); + } + break; + }; + } + + if(DlglistItemTitle.length()>2) { + // DlglistItemNumber = item->text(0); + item = 0; + odebug << "string from librarydialog is:" << DlglistItemYear << " " << DlglistItemFile << " " << DlglistItemNumber << "" << oendl; + odebug << "Title is "+DlglistItemTitle << oendl; + + // check for connection here + // if( get_extext()) + + if(download_Etext()) { + // odebug << "get here 2" << oendl; + if(i_binary == 1) { + + } + if(checkBox->isChecked () ) { + accept(); + } + } + } } bool LibraryDialog::download_Etext() { // ftp method // might have to use old gpl'd ftp for embedded!! - Config cfg("Gutenbrowser"); - cfg.setGroup("FTPsite"); - ftp_host=cfg.readEntry("SiteName", "sailor.gutenberg.org"); - ftp_base_dir= cfg.readEntry("base", "/pub/gutenberg"); - - qDebug("about to network dialog"); - QString NewlistItemNumber, NewlistItemYear, ls_result, result_line, s, dir, networkUrl, outputFile; - - //////////////////// FIXME- if 'x' is part of real name.... - NewlistItemFile = DlglistItemFile.left(DlglistItemFile.find(".xxx", 1, FALSE)).left(DlglistItemFile.left(DlglistItemFile.find(".xxx", 1, FALSE)).find("x", 1, FALSE)); - - if( NewlistItemFile.find( DlglistItemFile.left(4) ,0,TRUE) ==-1 ) { - NewlistItemFile.replace( 0,4, DlglistItemFile.left(4)); - qDebug("NewlistItemFile is now "+NewlistItemFile); - } - NewlistItemYear = DlglistItemYear.right(2); - int NewlistItemYear_Int = NewlistItemYear.toInt(0, 10); - qDebug(NewlistItemYear); - if (NewlistItemYear_Int < 91 && NewlistItemYear_Int > 70) { - NewlistItemYear = "90"; - } - Edir ="etext" +NewlistItemYear; - dir= ftp_base_dir + "/etext" +NewlistItemYear+"/"; - if( ftp_base_dir.find("=",0,true) ) - ftp_base_dir.remove( ftp_base_dir.find("=",0,true),1); - - networkUrl= "ftp://"+ftp_host+dir; - - outputFile=local_library+".guten_temp"; - //qDebug("Download file:%s",NewlistItemFile.latin1() ); - qDebug("Checking: "+ftp_host+" "+dir+" "+outputFile+" "+NewlistItemFile); - QStringList networkList; - networkList.append((const char *)ftp_host); - networkList.append((const char *)dir); - networkList.append((const char *)outputFile); - networkList.append((const char *)NewlistItemFile); + Config cfg("Gutenbrowser"); + cfg.setGroup("FTPsite"); + ftp_host=cfg.readEntry("SiteName", "sailor.gutenberg.org"); + ftp_base_dir= cfg.readEntry("base", "/pub/gutenberg"); + + odebug << "about to network dialog" << oendl; + QString NewlistItemNumber, NewlistItemYear, ls_result, result_line, s, dir, networkUrl, outputFile; + + //////////////////// FIXME- if 'x' is part of real name.... + NewlistItemFile = DlglistItemFile.left(DlglistItemFile.find(".xxx", 1, FALSE)).left(DlglistItemFile.left(DlglistItemFile.find(".xxx", 1, FALSE)).find("x", 1, FALSE)); + + if( NewlistItemFile.find( DlglistItemFile.left(4) ,0,TRUE) ==-1 ) { + NewlistItemFile.replace( 0,4, DlglistItemFile.left(4)); + odebug << "NewlistItemFile is now "+NewlistItemFile << oendl; + } + NewlistItemYear = DlglistItemYear.right(2); + int NewlistItemYear_Int = NewlistItemYear.toInt(0, 10); + odebug << NewlistItemYear << oendl; + if (NewlistItemYear_Int < 91 && NewlistItemYear_Int > 70) { + NewlistItemYear = "90"; + } + Edir ="etext" +NewlistItemYear; + dir= ftp_base_dir + "/etext" +NewlistItemYear+"/"; + if( ftp_base_dir.find("=",0,true) ) + ftp_base_dir.remove( ftp_base_dir.find("=",0,true),1); + + networkUrl= "ftp://"+ftp_host+dir; + + outputFile=local_library+".guten_temp"; + //odebug << "Download file:" << NewlistItemFile << "" << oendl; + odebug << "Checking: "+ftp_host+" "+dir+" "+outputFile+" "+NewlistItemFile << oendl; + QStringList networkList; + networkList.append((const char *)ftp_host); + networkList.append((const char *)dir); + networkList.append((const char *)outputFile); + networkList.append((const char *)NewlistItemFile); //<< (char *)ftp_host << (char *)dir << (char *)outputFile << (char *)NewlistItemFile; - NetworkDialog *NetworkDlg; - NetworkDlg = new NetworkDialog( this,"Network Protocol Dialog", TRUE, 0, networkList); - - - if( NetworkDlg->exec() != 0 ) { // use new, improved, *INSTANT* network-dialog-file-getterer - File_Name= NetworkDlg->localFileName; - qDebug("back to Library from Network Dialog"); - qDebug("Just downloaded "+NetworkDlg->localFileName); - - // if (File_Name.find( local_library, 0, TRUE) != -1 ) { //could not be found - // QString oldName=File_Name; - // File_Name.replace(0,local_library.length(),downDir); - // qDebug("File_Name now is "+File_Name); - - // } - // rename .txt to .etx - if(NetworkDlg->successDownload) { - qDebug("Filename is "+File_Name); - if(File_Name.right(4)==".txt") { - QString s_fileName=File_Name; - s_fileName.replace( s_fileName.length()-3,3,"gtn"); - // s_fileName.replace( s_fileName.length()-3,3,"etx"); - rename(File_Name.latin1(),s_fileName.latin1()); - File_Name=s_fileName; - - qDebug("Filename is now "+File_Name); - - } - if(File_Name.length() > 5 ) { - setTitle(); - QFileInfo fi(File_Name); - QString name_file=fi.fileName(); - name_file=name_file.left(name_file.length()-4); - - qDebug("Setting doclink"); - DocLnk lnk; - qDebug("name is "+name_file); - lnk.setName(name_file); //sets file name - qDebug("Title is "+DlglistItemTitle); - lnk.setComment(DlglistItemTitle); - - qDebug("Filename is "+File_Name); - lnk.setFile(File_Name); //sets File property - lnk.setType("guten/plain");// hey is this a REGISTERED mime type?!?!? ;D - lnk.setExec(File_Name); - lnk.setIcon("gutenbrowser/Gutenbrowser"); - if(!lnk.writeLink()) { - qDebug("Writing doclink did not work"); - } else { - } - } else - QMessageBox::message("Note","There was an error\nwith the file"); - } - } - return true; + NetworkDialog *NetworkDlg; + NetworkDlg = new NetworkDialog( this,"Network Protocol Dialog", TRUE, 0, networkList); + + + if( NetworkDlg->exec() != 0 ) { // use new, improved, *INSTANT* network-dialog-file-getterer + File_Name= NetworkDlg->localFileName; + odebug << "back to Library from Network Dialog" << oendl; + odebug << "Just downloaded "+NetworkDlg->localFileName << oendl; + + // if (File_Name.find( local_library, 0, TRUE) != -1 ) { //could not be found + // QString oldName=File_Name; + // File_Name.replace(0,local_library.length(),downDir); + // odebug << "File_Name now is "+File_Name << oendl; + + // } + // rename .txt to .etx + if(NetworkDlg->successDownload) { + odebug << "Filename is "+File_Name << oendl; + if(File_Name.right(4)==".txt") { + QString s_fileName=File_Name; + s_fileName.replace( s_fileName.length()-3,3,"gtn"); + // s_fileName.replace( s_fileName.length()-3,3,"etx"); + rename(File_Name.latin1(),s_fileName.latin1()); + File_Name=s_fileName; + + odebug << "Filename is now "+File_Name << oendl; + + } + if(File_Name.length() > 5 ) { + setTitle(); + QFileInfo fi(File_Name); + QString name_file=fi.fileName(); + name_file=name_file.left(name_file.length()-4); + + odebug << "Setting doclink" << oendl; + DocLnk lnk; + odebug << "name is "+name_file << oendl; + lnk.setName(name_file); //sets file name + odebug << "Title is "+DlglistItemTitle << oendl; + lnk.setComment(DlglistItemTitle); + + odebug << "Filename is "+File_Name << oendl; + lnk.setFile(File_Name); //sets File property + lnk.setType("guten/plain");// hey is this a REGISTERED mime type?!?!? ;D + lnk.setExec(File_Name); + lnk.setIcon("gutenbrowser/Gutenbrowser"); + if(!lnk.writeLink()) { + odebug << "Writing doclink did not work" << oendl; + } else { + } + } else + QMessageBox::message("Note","There was an error\nwith the file"); + } + } + return true; } bool LibraryDialog::httpDownload() {// httpDownload #ifndef Q_WS_QWS - Config config("Gutenbrowser"); - config.setGroup( "Browser" ); - QString brow = config.readEntry("Preferred", ""); - QString file_name = "./.guten_temp"; - // config.setGroup( "HttpServer" ); - // QString s_http = config.readEntry("Preferred", "http://sailor.gutenbook.org"); - QString httpName = proxy_http + "/"+Edir; - // progressBar->setProgress( i); - i++; - if ( brow != "Konq") { /////////// use lynx - // QString cmd = "lynx -source " + httpName +" | cat >> " + file_name; - // system(cmd); - } else { //////////// use KFM - // KFM::download( httpName, file_name); - } - i++; - QFile tmp( file_name); - QString str; - if (tmp.open(IO_ReadOnly)) { - QTextStream t( &tmp ); // use a text stream - while ( !t.eof()) { - QString s = t.readLine(); - if (s.contains( NewlistItemFile, FALSE) && (s.contains(".txt")) ) { - str = s.mid( s.find( ".txt\">"+NewlistItemFile, 0, TRUE)+6, (s.find( ".txt</A>", 0, TRUE) + 4) - ( s.find( ".txt\">"+NewlistItemFile, 0, TRUE)+6 ) ); - httpName += "/" + str; - } - } //end of while loop - } - tmp.close(); - m_getFilePath = local_library + str; - i++; - if ( brow != "KFM"){ ///////// use lynx - QString cmd = "lynx -source " + httpName +" | cat >> " + m_getFilePath; - // QMessageBox::message("Error", cmd); - system(cmd); - } else { ////////// use KFM - // KFM::download( httpName, m_getFilePath); - } - i++; + Config config("Gutenbrowser"); + config.setGroup( "Browser" ); + QString brow = config.readEntry("Preferred", ""); + QString file_name = "./.guten_temp"; + // config.setGroup( "HttpServer" ); + // QString s_http = config.readEntry("Preferred", "http://sailor.gutenbook.org"); + QString httpName = proxy_http + "/"+Edir; + // progressBar->setProgress( i); + i++; + if ( brow != "Konq") { /////////// use lynx + // QString cmd = "lynx -source " + httpName +" | cat >> " + file_name; + // system(cmd); + } else { //////////// use KFM + // KFM::download( httpName, file_name); + } + i++; + QFile tmp( file_name); + QString str; + if (tmp.open(IO_ReadOnly)) { + QTextStream t( &tmp ); // use a text stream + while ( !t.eof()) { + QString s = t.readLine(); + if (s.contains( NewlistItemFile, FALSE) && (s.contains(".txt")) ) { + str = s.mid( s.find( ".txt\">"+NewlistItemFile, 0, TRUE)+6, (s.find( ".txt</A>", 0, TRUE) + 4) - ( s.find( ".txt\">"+NewlistItemFile, 0, TRUE)+6 ) ); + httpName += "/" + str; + } + } //end of while loop + } + tmp.close(); + m_getFilePath = local_library + str; + i++; + if ( brow != "KFM"){ ///////// use lynx + QString cmd = "lynx -source " + httpName +" | cat >> " + m_getFilePath; + // QMessageBox::message("Error", cmd); + system(cmd); + } else { ////////// use KFM + // KFM::download( httpName, m_getFilePath); + } + i++; #endif - return false; + return false; } void LibraryDialog::cancelIt() { - saveConfig(); + saveConfig(); - DlglistItemNumber = ""; - this->reject(); + DlglistItemNumber = ""; + this->reject(); } bool LibraryDialog::setTitle() { - Config config("Gutenbrowser"); - qDebug("setting title"); - qDebug(DlglistItemTitle); - - if( DlglistItemTitle.find("[",0,TRUE) != -1) - DlglistItemTitle.replace(DlglistItemTitle.find("[",0,TRUE),1, "(" ); - if( DlglistItemTitle.find("]",0,TRUE) !=-1) - DlglistItemTitle.replace(DlglistItemTitle.find("]",0,TRUE),1, ")" ); - qDebug("Title being set is "+DlglistItemTitle); - int test = 0; - QString ramble, temp; - config.setGroup("Files"); - QString s_numofFiles = config.readEntry("NumberOfFiles", "0" ); - int i_numofFiles = s_numofFiles.toInt(); - for ( int i = 0; i <= i_numofFiles; i++){ - temp.setNum( i); - ramble = config.readEntry( temp, "" ); - if( strcmp( ramble, File_Name) == 0){ - test = 1; - } - } - config.setGroup("Files"); - config.writeEntry( "NumberOfFiles", i_numofFiles +1 ); - QString interger; - interger.setNum( i_numofFiles +1); - config.writeEntry( interger, File_Name); - config.setGroup( "Titles" ); - config.writeEntry( File_Name, DlglistItemTitle); - - test = 0; - return true; + Config config("Gutenbrowser"); + odebug << "setting title" << oendl; + odebug << DlglistItemTitle << oendl; + + if( DlglistItemTitle.find("[",0,TRUE) != -1) + DlglistItemTitle.replace(DlglistItemTitle.find("[",0,TRUE),1, "(" ); + if( DlglistItemTitle.find("]",0,TRUE) !=-1) + DlglistItemTitle.replace(DlglistItemTitle.find("]",0,TRUE),1, ")" ); + odebug << "Title being set is "+DlglistItemTitle << oendl; + int test = 0; + QString ramble, temp; + config.setGroup("Files"); + QString s_numofFiles = config.readEntry("NumberOfFiles", "0" ); + int i_numofFiles = s_numofFiles.toInt(); + for ( int i = 0; i <= i_numofFiles; i++){ + temp.setNum( i); + ramble = config.readEntry( temp, "" ); + if( strcmp( ramble, File_Name) == 0){ + test = 1; + } + } + config.setGroup("Files"); + config.writeEntry( "NumberOfFiles", i_numofFiles +1 ); + QString interger; + interger.setNum( i_numofFiles +1); + config.writeEntry( interger, File_Name); + config.setGroup( "Titles" ); + config.writeEntry( File_Name, DlglistItemTitle); + + test = 0; + return true; } void LibraryDialog::saveConfig() { - Config config("Gutenbrowser"); - if( httpBox->isChecked() == TRUE) { - checked = 1; - config.setGroup( "Proxy" ); - config.writeEntry("IsChecked", "TRUE"); - } else { - checked = 0; - config.setGroup( "Proxy" ); - config.writeEntry("IsChecked", "FALSE"); - } - if (authBox->isChecked() == TRUE) { - config.setGroup("SortAuth"); - config.writeEntry("authSort", "TRUE"); - } else { - config.setGroup("SortAuth"); - config.writeEntry("authSort", "FALSE"); - } - // config.write(); + Config config("Gutenbrowser"); + if( httpBox->isChecked() == TRUE) { + checked = 1; + config.setGroup( "Proxy" ); + config.writeEntry("IsChecked", "TRUE"); + } else { + checked = 0; + config.setGroup( "Proxy" ); + config.writeEntry("IsChecked", "FALSE"); + } + if (authBox->isChecked() == TRUE) { + config.setGroup("SortAuth"); + config.writeEntry("authSort", "TRUE"); + } else { + config.setGroup("SortAuth"); + config.writeEntry("authSort", "FALSE"); + } + // config.write(); } /* searches library index for user word*/ void LibraryDialog::onButtonSearch() { - ListView1->clearSelection(); - ListView2->clearSelection(); - ListView3->clearSelection(); - ListView4->clearSelection(); - ListView5->clearSelection(); - - int curTab=tabWidget->currentPageIndex(); - SearchDialog* searchDlg; - - // if( resultsList) - searchDlg = new SearchDialog( this, "Library Search", TRUE); - searchDlg->setCaption( tr( "Library Search" ) ); - searchDlg->setLabel( "- author or title"); - QString resultString; - int i_berger = 0; - if( searchDlg->exec() != 0 ) { - QString searcherStr = searchDlg->get_text(); - int fluff=0; - - // int tabPage = tabWidget->currentPageIndex(); - // TODO ititerate here... struct<listViews>?? - - QListViewItemIterator it1( ListView1 ); - QListViewItemIterator it2( ListView2 ); - QListViewItemIterator it3( ListView3 ); - QListViewItemIterator it4( ListView4 ); - QListViewItemIterator it5( ListView5 ); - - //// this is really pitiful work, - /////// - bool cS; - if( searchDlg->caseSensitiveCheckBox->isChecked()) - cS=true; //case sensitive - else - cS=false; - - if(fluff==0) { - for ( ; it1.current(); ++it1 ) { - resultString = ( it1.current() )->text(0); - resultString += (" : "); - resultString += ( it1.current() )->text(2); - resultString += (" : "); - resultString += ( it1.current() )->text(3); - if( resultString.find( searcherStr, 0, cS) != -1) - { - Searchlist.append( resultString); - } - } - } - if(fluff==0) {// search routine here - for ( ; it2.current(); ++it2 ) { - resultString = ( it2.current() )->text(0); - resultString += (" : "); - resultString += ( it2.current() )->text(2); - resultString += (" : "); - resultString += ( it2.current() )->text(3); - if( resultString.find( searcherStr, 0, cS) != -1) { - Searchlist.append( resultString); - } - } - } - if(fluff==0) {// search routine here - for ( ; it3.current(); ++it3 ) { - resultString = ( it3.current() )->text(0); - resultString += (" : "); - resultString += ( it3.current() )->text(2); - resultString += (" : "); - resultString += ( it3.current() )->text(3); - - if( resultString.find( searcherStr, 0, cS) != -1) { - Searchlist.append( resultString); - } - } - } - if(fluff==0) { - // search routine here - for ( ; it4.current(); ++it4 ) { - resultString = ( it4.current() )->text(0); - resultString += (" : "); - resultString += ( it4.current() )->text(2); - resultString += (" : "); - resultString += ( it4.current() )->text(3); - if( resultString.find( searcherStr, 0, cS) != -1) { - Searchlist.append( resultString); - } - } - } - if(fluff==0) { // search routine here - for ( ; it5.current(); ++it5 ) { - resultString = ( it5.current() )->text(0); - resultString += (" : "); - resultString += ( it5.current() )->text(2); - resultString += (" : "); - resultString += ( it5.current() )->text(3); - if( resultString.find( searcherStr, 0, cS) != -1) { - Searchlist.append( resultString); - } - } - } - - tabWidget->setCurrentPage( curTab); - - Searchlist.sort(); - SearchResultsDlg* SearchResultsDialog; - SearchResultsDialog = new SearchResultsDlg( searchDlg, "Results Dialog", true, 0 , Searchlist); - - SearchResultsDialog->showMaximized(); - if( SearchResultsDialog->exec() != 0) { - texter = SearchResultsDialog->selText; - // qDebug(texter); - resultLs= SearchResultsDialog->resultsList; - i_berger = 1; - } - Searchlist.clear(); - - // if(SearchResultsDialog) - // delete SearchResultsDialog; - QString tester; - for ( QStringList::Iterator it = resultLs.begin(); it != resultLs.end(); ++it ) { - texter.sprintf("%s \n",(*it).latin1()); - // qDebug(texter); - if( tester!=texter) - parseSearchResults( texter); - tester = texter; - } - if(searchDlg) - delete searchDlg; - } - if(checkBox->isChecked() ) { - accept(); - } else { - setActiveWindow(); - } + ListView1->clearSelection(); + ListView2->clearSelection(); + ListView3->clearSelection(); + ListView4->clearSelection(); + ListView5->clearSelection(); + + int curTab=tabWidget->currentPageIndex(); + SearchDialog* searchDlg; + + // if( resultsList) + searchDlg = new SearchDialog( this, "Library Search", TRUE); + searchDlg->setCaption( tr( "Library Search" ) ); + searchDlg->setLabel( "- author or title"); + QString resultString; + int i_berger = 0; + if( searchDlg->exec() != 0 ) { + QString searcherStr = searchDlg->get_text(); + int fluff=0; + + // int tabPage = tabWidget->currentPageIndex(); + // TODO ititerate here... struct<listViews>?? + + QListViewItemIterator it1( ListView1 ); + QListViewItemIterator it2( ListView2 ); + QListViewItemIterator it3( ListView3 ); + QListViewItemIterator it4( ListView4 ); + QListViewItemIterator it5( ListView5 ); + + //// this is really pitiful work, + /////// + bool cS; + if( searchDlg->caseSensitiveCheckBox->isChecked()) + cS=true; //case sensitive + else + cS=false; + + if(fluff==0) { + for ( ; it1.current(); ++it1 ) { + resultString = ( it1.current() )->text(0); + resultString += (" : "); + resultString += ( it1.current() )->text(2); + resultString += (" : "); + resultString += ( it1.current() )->text(3); + if( resultString.find( searcherStr, 0, cS) != -1) + { + Searchlist.append( resultString); + } + } + } + if(fluff==0) {// search routine here + for ( ; it2.current(); ++it2 ) { + resultString = ( it2.current() )->text(0); + resultString += (" : "); + resultString += ( it2.current() )->text(2); + resultString += (" : "); + resultString += ( it2.current() )->text(3); + if( resultString.find( searcherStr, 0, cS) != -1) { + Searchlist.append( resultString); + } + } + } + if(fluff==0) {// search routine here + for ( ; it3.current(); ++it3 ) { + resultString = ( it3.current() )->text(0); + resultString += (" : "); + resultString += ( it3.current() )->text(2); + resultString += (" : "); + resultString += ( it3.current() )->text(3); + + if( resultString.find( searcherStr, 0, cS) != -1) { + Searchlist.append( resultString); + } + } + } + if(fluff==0) { + // search routine here + for ( ; it4.current(); ++it4 ) { + resultString = ( it4.current() )->text(0); + resultString += (" : "); + resultString += ( it4.current() )->text(2); + resultString += (" : "); + resultString += ( it4.current() )->text(3); + if( resultString.find( searcherStr, 0, cS) != -1) { + Searchlist.append( resultString); + } + } + } + if(fluff==0) { // search routine here + for ( ; it5.current(); ++it5 ) { + resultString = ( it5.current() )->text(0); + resultString += (" : "); + resultString += ( it5.current() )->text(2); + resultString += (" : "); + resultString += ( it5.current() )->text(3); + if( resultString.find( searcherStr, 0, cS) != -1) { + Searchlist.append( resultString); + } + } + } + + tabWidget->setCurrentPage( curTab); + + Searchlist.sort(); + SearchResultsDlg* SearchResultsDialog; + SearchResultsDialog = new SearchResultsDlg( searchDlg, "Results Dialog", true, 0 , Searchlist); + + SearchResultsDialog->showMaximized(); + if( SearchResultsDialog->exec() != 0) { + texter = SearchResultsDialog->selText; + // odebug << texter << oendl; + resultLs= SearchResultsDialog->resultsList; + i_berger = 1; + } + Searchlist.clear(); + + // if(SearchResultsDialog) + // delete SearchResultsDialog; + QString tester; + for ( QStringList::Iterator it = resultLs.begin(); it != resultLs.end(); ++it ) { + texter.sprintf("%s \n",(*it).latin1()); + // odebug << texter << oendl; + if( tester!=texter) + parseSearchResults( texter); + tester = texter; + } + if(searchDlg) + delete searchDlg; + } + if(checkBox->isChecked() ) { + accept(); + } else { + setActiveWindow(); + } } /* splits the result string and calls download for the current search result*/ void LibraryDialog::parseSearchResults( QString resultStr) { - int stringLeng=resultStr.length(); - QString my; - my.setNum( stringLeng, 10); - - if( resultStr.length() > 2 && resultStr.length() < 130) { - int titleInt = resultStr.find( " : ", 0, TRUE); - DlglistItemTitle = resultStr.left( titleInt); - int yearInt = resultStr.find( " : ", titleInt+3, TRUE); - DlglistItemYear = resultStr.mid( titleInt+3, (yearInt - titleInt)-3); - DlglistItemFile = resultStr.right( resultStr.length() - (yearInt + 3)); - download_Etext(); - } - /* - printf( DlglistItemTitle+"\n"); printf( DlglistItemYear+"\n"); printf( DlglistItemFile+"\n");*/ + int stringLeng=resultStr.length(); + QString my; + my.setNum( stringLeng, 10); + + if( resultStr.length() > 2 && resultStr.length() < 130) { + int titleInt = resultStr.find( " : ", 0, TRUE); + DlglistItemTitle = resultStr.left( titleInt); + int yearInt = resultStr.find( " : ", titleInt+3, TRUE); + DlglistItemYear = resultStr.mid( titleInt+3, (yearInt - titleInt)-3); + DlglistItemFile = resultStr.right( resultStr.length() - (yearInt + 3)); + download_Etext(); + } + /* + printf( DlglistItemTitle+"\n"); printf( DlglistItemYear+"\n"); printf( DlglistItemFile+"\n");*/ } // bool LibraryDialog::UnzipIt( QString zipFile) { // //////////TODO findsome other way of dealingwithzip files. // ///usr/bin/unzip"; // if( QFile::exists( zipFile)) { // // QString thatFile = local_library +"PGWHOLE.TXT"; // QString cmd; @@ -801,17 +805,17 @@ void LibraryDialog::parseSearchResults( QString resultStr) // #endif // #ifndef Q_WS_QWS // // QString cmd = "gunzip -d " + zipFile /*newestLibraryFile */+" -d " + local_library; // cmd = "unzip " + zipFile; // #endif // int exit=QMessageBox::information(this, "Unzip?", "Ok to unzip "+ zipFile+" ?", QMessageBox::Yes, QMessageBox::No); // if (exit==QMessageBox::Yes) { - // qDebug("Issuing the command "+cmd); + // odebug << "Issuing the command "+cmd << oendl; // #if defined(_WS_WIN_) // WinExec( cmd, SW_HIDE ); // #endif // #if defined(_WS_X11_) // system( cmd); // #endif // #ifndef Q_WS_QWS // system( cmd); @@ -835,233 +839,233 @@ void LibraryDialog::sort() { } /* Downloads the current selected listitem*/ bool LibraryDialog::getItem(QListViewItem *it) { - // qDebug("selected getItem"); - - // DlglistItemNumber = it->text(0); - DlglistItemTitle = it->text(0); - DlglistItemYear = it->text(2); - DlglistItemFile = it->text(3); - - if(download_Etext()) { - if(i_binary == 1) { - } - } - return true; + // odebug << "selected getItem" << oendl; + + // DlglistItemNumber = it->text(0); + DlglistItemTitle = it->text(0); + DlglistItemYear = it->text(2); + DlglistItemFile = it->text(3); + + if(download_Etext()) { + if(i_binary == 1) { + } + } + return true; } /* download button is pushed so we get the current items to download*/ bool LibraryDialog::onButtonDownload() { - // qDebug("selected onButtonDownloadz"); - - QListViewItemIterator it1( ListView1 ); - QListViewItemIterator it2( ListView2 ); - QListViewItemIterator it3( ListView3 ); - QListViewItemIterator it4( ListView4 ); - QListViewItemIterator it5( ListView5 ); - - // iterate through all items of the listview - for ( ; it1.current(); ++it1 ) { - if ( it1.current()->isSelected() ) - getItem(it1.current()); - it1.current()->setSelected(FALSE); - } - for ( ; it2.current(); ++it2 ) { - if ( it2.current()->isSelected() ) - getItem(it2.current()); - it2.current()->setSelected(FALSE); - } - for ( ; it3.current(); ++it3 ) { - if ( it3.current()->isSelected() ) - getItem(it3.current()); - it3.current()->setSelected(FALSE); - } - for ( ; it4.current(); ++it4 ) { - if ( it4.current()->isSelected() ) - getItem(it4.current()); - it4.current()->setSelected(FALSE); - } - for ( ; it5.current(); ++it5 ) { - if ( it5.current()->isSelected() ) - getItem(it5.current()); - it5.current()->setSelected(FALSE); - } - return true; + // odebug << "selected onButtonDownloadz" << oendl; + + QListViewItemIterator it1( ListView1 ); + QListViewItemIterator it2( ListView2 ); + QListViewItemIterator it3( ListView3 ); + QListViewItemIterator it4( ListView4 ); + QListViewItemIterator it5( ListView5 ); + + // iterate through all items of the listview + for ( ; it1.current(); ++it1 ) { + if ( it1.current()->isSelected() ) + getItem(it1.current()); + it1.current()->setSelected(FALSE); + } + for ( ; it2.current(); ++it2 ) { + if ( it2.current()->isSelected() ) + getItem(it2.current()); + it2.current()->setSelected(FALSE); + } + for ( ; it3.current(); ++it3 ) { + if ( it3.current()->isSelected() ) + getItem(it3.current()); + it3.current()->setSelected(FALSE); + } + for ( ; it4.current(); ++it4 ) { + if ( it4.current()->isSelected() ) + getItem(it4.current()); + it4.current()->setSelected(FALSE); + } + for ( ; it5.current(); ++it5 ) { + if ( it5.current()->isSelected() ) + getItem(it5.current()); + it5.current()->setSelected(FALSE); + } + return true; } /* handles the sorting combo box */ void LibraryDialog::comboSelect(int index) { - // qDebug("we are sorting"); - ListView1->setSorting( index, TRUE); - ListView2->setSorting( index, TRUE); - ListView3->setSorting( index, TRUE); - ListView4->setSorting( index, TRUE); - ListView5->setSorting( index, TRUE); - - ListView1->sort(); - ListView2->sort(); - ListView3->sort(); - ListView4->sort(); - ListView5->sort(); - - // ListView1->triggerUpdate(); - // ListView2->triggerUpdate(); - // ListView3->triggerUpdate(); - // ListView4->triggerUpdate(); - // ListView5->triggerUpdate(); + // odebug << "we are sorting" << oendl; + ListView1->setSorting( index, TRUE); + ListView2->setSorting( index, TRUE); + ListView3->setSorting( index, TRUE); + ListView4->setSorting( index, TRUE); + ListView5->setSorting( index, TRUE); + + ListView1->sort(); + ListView2->sort(); + ListView3->sort(); + ListView4->sort(); + ListView5->sort(); + + // ListView1->triggerUpdate(); + // ListView2->triggerUpdate(); + // ListView3->triggerUpdate(); + // ListView4->triggerUpdate(); + // ListView5->triggerUpdate(); } void LibraryDialog::newList() { - if(indexLoaded) { - onButtonDownload(); - } else { - Output *outDlg; - buttonNewList->setDown(TRUE); - QDir gutDir(QPEApplication::qpeDir()+"etc/gutenbrowser"); - if(!gutDir.exists()) gutDir.mkdir(QPEApplication::qpeDir()+"etc/gutenbrowser",true); - if( chdir(QPEApplication::qpeDir()+"etc/gutenbrowser") == 0) { - qDebug("changing dir "+QPEApplication::qpeDir()+"etc/gutenbrowser"); - QString gutenindex1 = QPEApplication::qpeDir()+"etc/gutenbrowser/GUTINDEX.ALL"; - QString cmd="wget -O " + gutenindex1 + " http://sailor.gutenberg.org/GUTINDEX.ALL 2>&1"; - - int result = QMessageBox::warning( this,"Download" - ,"Ok to use /'wget/' to download\na new library list?\n" - ,"Yes","No",0,0,1); - qApp->processEvents(); - if(result == 0) { - outDlg = new Output( 0, tr("Downloading Gutenberg Index...."),TRUE); - outDlg->showMaximized(); - outDlg->show(); - qApp->processEvents(); - FILE *fp; - char line[130]; - outDlg->OutputEdit->append( tr("Running wget") ); - outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); - sleep(1); - fp = popen( (const char *) cmd, "r"); - if ( !fp ) { - } else { - qDebug("Issuing the command\n"+cmd); - // system(cmd); - while ( fgets( line, sizeof line, fp)) { - outDlg->OutputEdit->append(line); - outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); - } - pclose(fp); - outDlg->OutputEdit->append("Finished downloading\n"); - outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); - qApp->processEvents(); - - // if( QFile(gutenindex1).exists() ) { - // QString gutenindex=QPEApplication::qpeDir()+"etc/gutenbrowser/GUTINDEX.ALL"; - // if( rename(gutenindex1.latin1(),gutenindex.latin1()) !=0) - // qDebug("renaming error"); - // } - - } - // outDlg->close(); - FindLibrary(); - if(outDlg) delete outDlg; - } - buttonNewList->setDown(FALSE); - } else { - QMessageBox::message("Note","Could not change directories"); - } - // if(outDlg) - // delete outDlg; - } + if(indexLoaded) { + onButtonDownload(); + } else { + Output *outDlg; + buttonNewList->setDown(TRUE); + QDir gutDir(QPEApplication::qpeDir()+"etc/gutenbrowser"); + if(!gutDir.exists()) gutDir.mkdir(QPEApplication::qpeDir()+"etc/gutenbrowser",true); + if( chdir(QPEApplication::qpeDir()+"etc/gutenbrowser") == 0) { + odebug << "changing dir "+QPEApplication::qpeDir()+"etc/gutenbrowser" << oendl; + QString gutenindex1 = QPEApplication::qpeDir()+"etc/gutenbrowser/GUTINDEX.ALL"; + QString cmd="wget -O " + gutenindex1 + " http://sailor.gutenberg.org/GUTINDEX.ALL 2>&1"; + + int result = QMessageBox::warning( this,"Download" + ,"Ok to use /'wget/' to download\na new library list?\n" + ,"Yes","No",0,0,1); + qApp->processEvents(); + if(result == 0) { + outDlg = new Output( 0, tr("Downloading Gutenberg Index...."),TRUE); + outDlg->showMaximized(); + outDlg->show(); + qApp->processEvents(); + FILE *fp; + char line[130]; + outDlg->OutputEdit->append( tr("Running wget") ); + outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); + sleep(1); + fp = popen( (const char *) cmd, "r"); + if ( !fp ) { + } else { + odebug << "Issuing the command\n"+cmd << oendl; + // system(cmd); + while ( fgets( line, sizeof line, fp)) { + outDlg->OutputEdit->append(line); + outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); + } + pclose(fp); + outDlg->OutputEdit->append("Finished downloading\n"); + outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); + qApp->processEvents(); + + // if( QFile(gutenindex1).exists() ) { + // QString gutenindex=QPEApplication::qpeDir()+"etc/gutenbrowser/GUTINDEX.ALL"; + // if( rename(gutenindex1.latin1(),gutenindex.latin1()) !=0) + // odebug << "renaming error" << oendl; + // } + + } + // outDlg->close(); + FindLibrary(); + if(outDlg) delete outDlg; + } + buttonNewList->setDown(FALSE); + } else { + QMessageBox::message("Note","Could not change directories"); + } + // if(outDlg) + // delete outDlg; + } } bool LibraryDialog::moreInfo() { - QListViewItem * item; - item = 0; - QString titleString; - item = ListView1->currentItem(); - if( item != 0) { - titleString = item->text(0); - ListView1->clearSelection(); - item = 0; - } - if( item == 0) - item = ListView2->currentItem(); - if( item != 0) { - titleString = item->text(0); - ListView2->clearSelection(); - item = 0; - } - if( item == 0) - item = ListView3->currentItem(); - if( item != 0) { - titleString = item->text(0); - ListView3->clearSelection(); - item = 0; - } - if( item == 0) - item = ListView4->currentItem(); - if( item != 0) { - titleString = item->text(0); - ListView4->clearSelection(); - item = 0; - } - if( item == 0) - item = ListView5->currentItem(); - if( item != 0) { - titleString = item->text(0); - ListView5->clearSelection(); - item = 0; - } - item=0; - if(titleString.length()>2) { - qDebug( "Title is "+titleString ); - titleString.replace( QRegExp("\\s"), "%20"); - titleString.replace( QRegExp("'"), "%20"); - titleString.replace( QRegExp("\""), "%20"); - titleString.replace( QRegExp("&"), "%20"); - QString cmd= "http://google.com/search?q="+titleString+"&num=30&sa=Google+Search"; - cmd="opera "+cmd; - system(cmd); - } else - QMessageBox::message( "Note","If you select a title, this will\nsearch google.com for that title."); - return true; + QListViewItem * item; + item = 0; + QString titleString; + item = ListView1->currentItem(); + if( item != 0) { + titleString = item->text(0); + ListView1->clearSelection(); + item = 0; + } + if( item == 0) + item = ListView2->currentItem(); + if( item != 0) { + titleString = item->text(0); + ListView2->clearSelection(); + item = 0; + } + if( item == 0) + item = ListView3->currentItem(); + if( item != 0) { + titleString = item->text(0); + ListView3->clearSelection(); + item = 0; + } + if( item == 0) + item = ListView4->currentItem(); + if( item != 0) { + titleString = item->text(0); + ListView4->clearSelection(); + item = 0; + } + if( item == 0) + item = ListView5->currentItem(); + if( item != 0) { + titleString = item->text(0); + ListView5->clearSelection(); + item = 0; + } + item=0; + if(titleString.length()>2) { + odebug << "Title is "+titleString << oendl; + titleString.replace( QRegExp("\\s"), "%20"); + titleString.replace( QRegExp("'"), "%20"); + titleString.replace( QRegExp("\""), "%20"); + titleString.replace( QRegExp("&"), "%20"); + QString cmd= "http://google.com/search?q="+titleString+"&num=30&sa=Google+Search"; + cmd="opera "+cmd; + system(cmd); + } else + QMessageBox::message( "Note","If you select a title, this will\nsearch google.com for that title."); + return true; } /* This loads the library Index*/ void LibraryDialog::FindLibrary() { - buttonLibrary->setDown(TRUE); - - qApp->processEvents(); - if( QFile( new_index).exists() /* && this->isHidden() */) { - newindexLib.setName( new_index); - indexLib.setName( new_index); - qDebug("index file is "+ new_index); - Newlibrary(); - } else { - newindexLib.setName( old_index); - indexLib.setName( old_index); - qDebug("new index nameis "+ old_index); - Library(); - } - indexLoaded=true; - buttonSearch->setEnabled(TRUE); - moreInfoButton->setEnabled(TRUE); - - buttonLibrary->setDown(FALSE); - buttonNewList->setText("Download"); - qApp->processEvents(); + buttonLibrary->setDown(TRUE); + + qApp->processEvents(); + if( QFile( new_index).exists() /* && this->isHidden() */) { + newindexLib.setName( new_index); + indexLib.setName( new_index); + odebug << "index file is "+ new_index << oendl; + Newlibrary(); + } else { + newindexLib.setName( old_index); + indexLib.setName( old_index); + odebug << "new index nameis "+ old_index << oendl; + Library(); + } + indexLoaded=true; + buttonSearch->setEnabled(TRUE); + moreInfoButton->setEnabled(TRUE); + + buttonLibrary->setDown(FALSE); + buttonNewList->setText("Download"); + qApp->processEvents(); } diff --git a/noncore/apps/opie-gutenbrowser/NetworkDialog.cpp b/noncore/apps/opie-gutenbrowser/NetworkDialog.cpp index aed53c6..6e6b707 100644 --- a/noncore/apps/opie-gutenbrowser/NetworkDialog.cpp +++ b/noncore/apps/opie-gutenbrowser/NetworkDialog.cpp @@ -5,66 +5,72 @@ // email : ljp@llornkcor.com // * 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. * // ***************************************************************************/ // // half-assed attempt at providing a network dialog. // /* Created: Sun Aug 27 15:24:52 2000*/ -#include <unistd.h> -extern "C" { -#include <ftplib.h> -} #include "NetworkDialog.h" #include "gutenbrowser.h" +/* OPIE */ +#include <opie2/odebug.h> + +/* QT */ #include <qprogressbar.h> #include <qstringlist.h> #include <qpe/config.h> #include <qvaluelist.h> #include <qapplication.h> #include <qfile.h> #include <qstringlist.h> #include <qlabel.h> #include <qpushbutton.h> #include <qlayout.h> +/* STD */ +#include <unistd.h> +extern "C" { +#include <ftplib.h> +} + QProgressBar* ProgressBar1; QPushButton* buttonCancel; static netbuf *conn = NULL; static int log_progress(netbuf *ctl, int xfered, void *arg) { int fsz = *(int *)arg; int pct = (xfered * 100) / fsz; printf("%3d%%\r", pct); fflush(stdout); ProgressBar1->setProgress(xfered); qApp->processEvents(); return 1; } NetworkDialog::NetworkDialog( QWidget* parent, const char* name, bool modal, WFlags fl, const QStringList netL) - : QDialog( parent, name, modal, fl ) + : QDialog( parent, name, modal, fl ) { ftp_host = netL[0]; networkUrl = strUrl = netL[0]; dir = ftp_base_dir = netL[1]; - localFileName = netL[2]; - s_partialFileName = netL[3]; + localFileName = netL[2]; + s_partialFileName = netL[3]; - resize(240,110); + resize(240,110); - local_library = (QDir::homeDirPath ()) +"/Applications/gutenbrowser/"; -// autoOk = autoDownload; + local_library = (QDir::homeDirPath ()) +"/Applications/gutenbrowser/"; +// autoOk = autoDownload; // if( networkUrl.find("ftp",0,false)== -1 ) { // if ( !name ) // setName( "HTTP NetworkDialog" ); // setCaption( tr( "HTTP Download ) ); // qInitNetworkProtocols(); // registers ftp protocol // for now // QNetworkProtocol::registerNetworkProtocol( "http", new QNetworkProtocolFactory<Http> ); // } else { if ( !name ) @@ -113,21 +119,21 @@ void NetworkDialog::initDialog() { // timer= new QTimer(this,"vu timer"); // connectionTimer=new QTimer(this,"connectionTimeout"); connect(buttonOk,SIGNAL(clicked()),this,SLOT(doOk())); connect(buttonCancel,SIGNAL(clicked()),this,SLOT(reject())); // connect( timer, SIGNAL(timeout()), this , SLOT(timeSlot())); // connect( connectionTimer,SIGNAL( timeout()),this,SLOT( connectionTimeSlot())); - if(autoOk) { - qWarning("XXXXXXXXXXXXXXXXXXXXXXXX"); - buttonOk->setDown(true); - doOk(); - } + if(autoOk) { + owarn << "XXXXXXXXXXXXXXXXXXXXXXXX" << oendl; + buttonOk->setDown(true); + doOk(); + } } void NetworkDialog::timeSlot() { // if(timerProgess < 19 && posTimer) { // ProgressBar1->setProgress(timerProgess); // timerProgess++; // } else if(timerProgess > 19 && posTimer) { @@ -138,23 +144,23 @@ void NetworkDialog::timeSlot() { // if(timerProgess > 1 &&!posTimer) { // ProgressBar1->setProgress(timerProgess); // timerProgess--; // } else if(timerProgess > 1 &&!posTimer){ // ProgressBar1->setProgress(timerProgess); // timerProgess--; // posTimer=TRUE; // } -// // qDebug("timer event"); +// // odebug << "timer event" << oendl; // qApp->processEvents(); // repaint(); } void NetworkDialog::connectionTimeSlot() { -// qDebug("Connections timed out"); +// odebug << "Connections timed out" << oendl; // ftpQuit(); // qApp->processEvents(); // repaint(); // reject(); } /* @@ -162,31 +168,31 @@ downloads the file networkUrl */ bool NetworkDialog::downloadFile( QString networkUrl ) { int fsz; // timer->start( 250 , FALSE); // posTimer=TRUE; // connectionTimer->start( 600 , FALSE); warnLabel ->setText( ""); qApp->processEvents(); - qDebug("Downloading: %s",networkUrl.latin1()); - qDebug("Into: %s",localFileName.latin1()); + odebug << "Downloading: " << networkUrl << "" << oendl; + odebug << "Into: " << localFileName << "" << oendl; if( networkUrl.length() > 5) { QString ftp_user = "anonymous"; QString ftp_pass = "zaurus@gutenbrowser.com"; // ftp_host= networkUrl.mid(networkUrl.find("ftp://",0, TRUE), if(ftp_host.length() < 2) { - qDebug("Please select an ftp host" ); + odebug << "Please select an ftp host" << oendl; successDownload=false; QMessageBox::message("Note","You need to select an ftp host"); return false; } QString msg; - qDebug(ftp_host); - qDebug("Opening ftp connection."); + odebug << ftp_host << oendl; + odebug << "Opening ftp connection." << oendl; warnLabel->setText("connecting to: "+ftp_host ); qApp->processEvents(); /////////// Open FTP connection if (!FtpConnect( ftp_host.latin1(), &conn)) { i=0; successDownload=false; QMessageBox::message("Note","Unable to connect to\n"+ftp_host); return false; @@ -195,91 +201,91 @@ bool NetworkDialog::downloadFile( QString networkUrl ) qApp->processEvents(); if (!FtpLogin( ftp_user.latin1(), ftp_pass.latin1(),conn )) { FtpQuit(conn); successDownload=false; msg.sprintf("Unable to log in\n%s",FtpLastResponse(conn)); QMessageBox::message("Note",msg); return false; } - qDebug("Changing directories."); + odebug << "Changing directories." << oendl; TextLabel3->setText("Changing directories."); qApp->processEvents(); if (!FtpChdir( dir.latin1(), conn )) { successDownload=false; msg.sprintf("Unable to change directories "+dir+"\n%s",FtpLastResponse(conn)); QMessageBox::message("Note",msg); FtpQuit(conn); return false; } // if (!FtpNlst( "./.guten_temp", dir, conn)) { // successDownload=false; // msg.sprintf("Unable to change directories "+dir+"\n%s",FtpLastResponse(conn)); // QMessageBox::message("Note",msg); // FtpQuit(conn); // return false; // } - qDebug("Requesting directory list."); + odebug << "Requesting directory list." << oendl; TextLabel3->setText("Getting directory list."); qApp->processEvents(); if (!FtpDir( "./.guten_temp", dir.latin1(), conn) ) { msg.sprintf("Unable to list the directory\n"+dir+"\n%s",FtpLastResponse(conn)); QMessageBox::message("Note",msg); successDownload=false; FtpQuit(conn); return false; } QFile tmp("./.guten_temp"); QString s, File_Name; if (tmp.open(IO_ReadOnly)) { QTextStream t( &tmp ); // use a text stream - qDebug("Finding partial filename "+s_partialFileName); + odebug << "Finding partial filename "+s_partialFileName << oendl; while ( !t.eof()) { s = t.readLine(); if (s.contains(s_partialFileName, FALSE)) { QString str = s.right( (s.length()) - (s.find(s_partialFileName, FALSE)) ); if (str.contains(".txt")) { File_Name = str; - qDebug("Found file_name "+ File_Name); + odebug << "Found file_name "+ File_Name << oendl; break; } // if (str.contains(".zip")) { // File_Name = str; -// qDebug("Found file_name "+ File_Name); +// odebug << "Found file_name "+ File_Name << oendl; // break; // } - + } } //end of while loop tmp.close(); // tmp.remove(); ///TODO this is for release version Zaurus } else - qDebug("Error opening temp file."); + odebug << "Error opening temp file." << oendl; Config cfg("Gutenbrowser"); cfg.setGroup("General"); QString temp=cfg.readEntry("DownloadDirectory",local_library); localFileName = temp+File_Name; - qDebug("Requesting file "+ File_Name); - qDebug( "Saving as "+localFileName); + odebug << "Requesting file "+ File_Name << oendl; + odebug << "Saving as "+localFileName << oendl; msg="Requesting file "+ File_Name; TextLabel3->setText(msg); qApp->processEvents(); if( File_Name.length()>3) { if (!FtpSize( File_Name.latin1(), &fsz, FTPLIB_ASCII, conn)) fsz = 0; QString temp; - temp.sprintf( File_Name+" "+" %dkb", fsz); + temp.sprintf( File_Name+" "+" %dkb", fsz); TextLabel3->setText(temp); - + ProgressBar1->setTotalSteps(fsz); FtpOptions(FTPLIB_CALLBACK, (long) log_progress, conn); FtpOptions(FTPLIB_IDLETIME, (long) 1000, conn); FtpOptions(FTPLIB_CALLBACKARG, (long) &fsz, conn); FtpOptions(FTPLIB_CALLBACKBYTES, (long) fsz/10, conn); if (!FtpGet( localFileName.latin1(), File_Name.latin1(), FTPLIB_ASCII, conn)) { msg.sprintf("Could not download "+ File_Name+"\n%s",FtpLastResponse(conn)); @@ -288,38 +294,38 @@ bool NetworkDialog::downloadFile( QString networkUrl ) update(); } } else { QMessageBox::message("Note","Could not download file "+ File_Name); successDownload=false; FtpQuit(conn); return false; } - qDebug("Ftp session successful"); + odebug << "Ftp session successful" << oendl; successDownload=TRUE; FtpQuit(conn); return true; } //no network url return false; } void NetworkDialog::doOk() { - qWarning("Do OK"); + owarn << "Do OK" << oendl; QString loginStr; loginStr = "gutenbrowser"; if ( !ftp_host.isEmpty() ) { if( ftp_host.find( "/", ftp_host.length() - 1,TRUE) != -1 && ftp_host.find("ftp://",0, TRUE) != -1) { TextLabel3->setText( tr( "List remote dir:\n" + ftp_host) ); // TextLabel2->setText( tr( "local file to download into: " +localFileName ) ); if( downloadFile(ftp_host)) successDownload = true; else { successDownload = false; - reject(); + reject(); } } else { if(downloadFile(ftp_host)) successDownload = true; else { successDownload = false; reject(); } diff --git a/noncore/apps/opie-gutenbrowser/SearchDialog.cpp b/noncore/apps/opie-gutenbrowser/SearchDialog.cpp index 4ddb3f0..d989304 100644 --- a/noncore/apps/opie-gutenbrowser/SearchDialog.cpp +++ b/noncore/apps/opie-gutenbrowser/SearchDialog.cpp @@ -93,17 +93,17 @@ bool SearchDialog::case_sensitive() { bool SearchDialog::forward_search() { return true; } void SearchDialog::byeBye() { searchString = get_text(); -// qDebug("Search string is "+searchString); +// odebug << "Search string is "+searchString << oendl; Config cfg("Gutenbrowser"); cfg.setGroup("General"); cfg.writeEntry("LastSearch",searchString); QString thisName=name(); if( thisName.find("Library Search", 0, TRUE) != -1) { // searchString = SearchLineEdit->text(); accept(); @@ -114,17 +114,17 @@ void SearchDialog::byeBye() emit search_signal(); buttonOk->setDown(FALSE); } } void SearchDialog::closed() { searchString = get_text(); -// qDebug("Search string is "+searchString); +// odebug << "Search string is "+searchString << oendl; Config cfg("Gutenbrowser"); cfg.setGroup("General"); cfg.writeEntry("LastSearch",searchString); emit search_done_signal(); //this->reject(); this->hide(); } diff --git a/noncore/apps/opie-gutenbrowser/browserDialog.cpp b/noncore/apps/opie-gutenbrowser/browserDialog.cpp index 81dd516..cc05d04 100644 --- a/noncore/apps/opie-gutenbrowser/browserDialog.cpp +++ b/noncore/apps/opie-gutenbrowser/browserDialog.cpp @@ -5,16 +5,17 @@ copyright 2001 by L.J. Potter ljp@llornkcor.com ****************************************************************************/ #include "optionsDialog.h" //#include "fileBrowser.h" /* OPIE */ #include <opie2/ofiledialog.h> +#include <opie2/odebug.h> using namespace Opie::Ui; /* QT */ #include <qlabel.h> #include <qlistbox.h> #include <qpushbutton.h> #include <qlayout.h> @@ -47,17 +48,17 @@ void optionsDialog::BrowseSelected() { map.insert(tr("Text"), text ); text << "*"; map.insert(tr("All"), text ); QString str = OFileDialog::getOpenFileName( 2, dir , QString::null, map); if( !str.isEmpty() && QFile(str).exists() && !QFileInfo(str).isDir() ) { fileName = str; // QStringList fileList=browseForFiles->fileList; -// qDebug(selFile); +// odebug << selFile << oendl; // QStringList::ConstIterator f; // QString fileTemp,filer; // for ( f = fileList.begin(); f != fileList.end(); f++ ) { // fileTemp = *f; // fileTemp.right( fileTemp.length()-5); // fileName = fileTemp; // if( !fileName.isEmpty() ){ @@ -71,16 +72,16 @@ void optionsDialog::BrowseSelected() { } } } void optionsDialog::setHttp(int index) { Config config("Gutenbrowser"); config.setGroup( "HttpServer" ); - qDebug("writing http server"); + odebug << "writing http server" << oendl; if( index== 0) { config.writeEntry("Preferred", "http://sailor.gutenberg.org"); } else { config.writeEntry("Preferred", "http://www.prairienet.org/pg"); } } diff --git a/noncore/apps/opie-gutenbrowser/fontDialog.cpp b/noncore/apps/opie-gutenbrowser/fontDialog.cpp index a17b1d3..fa964a6 100644 --- a/noncore/apps/opie-gutenbrowser/fontDialog.cpp +++ b/noncore/apps/opie-gutenbrowser/fontDialog.cpp @@ -85,27 +85,27 @@ void FontDialog::familyListBoxSlot(const QString & text) { int styleInt = styleListBox->currentItem(); int sizeInt = sizeComboBox->currentText().toInt(); sizeComboBox->clear(); styleListBox->clear(); // clearListBoxes(); family = text; -// qDebug(family); +// odebug << family << oendl; QStringList styles = fdb.styles( family ); // string list of styles of our current font family styleListBox->insertStringList( styles); QString dstyle;// = "\t" + style + " ("; #ifdef BUGGY_SHARP_ZAURUS QValueList<int> smoothies = fdb.smoothSizes( family, styleListBox->text(0) ); for ( QValueList<int>::Iterator points = smoothies.begin(); points != smoothies.end(); ++points ) { dstyle = QString::number( *points ); - qDebug(dstyle); + odebug << dstyle << oendl; sizeComboBox->insertItem( dstyle.left( dstyle.length() - 1 )); } #else for (int i=0; i<nfontsizes; i++) { sizeComboBox->insertItem( QString::number(fontsize[i])); if(fontsize[i] == sizeInt) { sizeComboBox->setCurrentItem(i); @@ -146,17 +146,17 @@ void FontDialog::populateLists() int i_size = sizeStr.toInt(&ok,10); selectedFont = fdb.font(familyStr,styleStr,i_size,charSetStr); // defaultFont.setItalic(TRUE); families = fdb.families(); for ( QStringList::Iterator f = families.begin(); f != families.end();++f ) { QString family = *f; // if(family == defaultFont.family()) -// qDebug(family); +// odebug << family << oendl; familyListBox->insertItem( family); if( familyListBox->text(0) == family) { QStringList styles = fdb.styles( family ); // string list of styles of our current font family styleListBox->insertStringList( styles); for ( QStringList::Iterator s = styles.begin(); s != styles.end();++s ) { // for each font style @@ -204,57 +204,57 @@ void FontDialog::clearListBoxes() { void FontDialog::changeText() { if( familyListBox->currentItem() == -1) family= familyListBox->text(0); else { family = familyListBox->currentText(); } -// qDebug("Font family is "+family); +// odebug << "Font family is "+family << oendl; if( styleListBox->currentItem() == -1) style=styleListBox->text(0); else { style = styleListBox->currentText(); } -// qDebug("font style is "+style); +// odebug << "font style is "+style << oendl; if( sizeComboBox->currentItem() == -1 ) size = sizeComboBox->text(0); else { size = sizeComboBox->currentText(); } -// qDebug("Font size is "+size); +// odebug << "Font size is "+size << oendl; bool ok; int i_size = size.toInt(&ok,10); QStringList charSetList = fdb.charSets(family); // QStringList styles = fdb.styles( family ); // string list of styles of our current font family QString charSet; for ( QStringList::Iterator s = charSetList.begin(); s != charSetList.end();++s ) { // for each font style charSet = *s; -// qDebug(charSet); +// odebug << charSet << oendl; } selectedFont = fdb.font(family,style,i_size,charSet); QFontInfo fontInfo( selectedFont); -// if(fontInfo.italic() ) qDebug("italic"); +// if(fontInfo.italic() ) odebug << "italic" << oendl; selectedFont.setWeight(fontInfo.weight() ); -// qDebug("Style are "+style+" %d ",fontInfo.weight()); +// odebug << "Style are "+style+" " << fontInfo.weight() << " " << oendl; Config cfg("Gutenbrowser"); cfg.setGroup("Font"); cfg.writeEntry("Family",family); cfg.writeEntry("Style",style); cfg.writeEntry("Size",size); cfg.writeEntry("CharSet",charSet); if(style.find("Italic",0,TRUE) != -1) { selectedFont = fdb.font(family,"Regular",i_size,charSet); selectedFont.setItalic(TRUE); //ya right cfg.writeEntry("Italic","TRUE"); -// qDebug("Style is "+styleListBox->currentText()); +// odebug << "Style is "+styleListBox->currentText() << oendl; } else cfg.writeEntry("Italic","FALSE"); MultiLineEdit1->setFont( selectedFont); MultiLineEdit1->update(); changedFonts=TRUE; } diff --git a/noncore/apps/opie-gutenbrowser/ftpsitedlg.cpp b/noncore/apps/opie-gutenbrowser/ftpsitedlg.cpp index ad770b5..a9c7346 100644 --- a/noncore/apps/opie-gutenbrowser/ftpsitedlg.cpp +++ b/noncore/apps/opie-gutenbrowser/ftpsitedlg.cpp @@ -6,44 +6,49 @@ email : ljp@llornkcor.com ***************************************************************************/ /*************************************************************************** * 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 "optionsDialog.h" #include "gutenbrowser.h" //#include "NetworkDialog.h" #include "output.h" +/* OPIE */ +#include <opie2/odebug.h> +#include <qpe/config.h> + +/* QT */ #include <qprogressbar.h> -#include <stdlib.h> #include <qurloperator.h> -#include <qpe/config.h> #include <qlistbox.h> +/* STD */ +#include <stdlib.h> #include <unistd.h> #include <stdio.h> -#include <stdlib.h> // :)~ void optionsDialog::ftpSiteDlg( ) { //printf( "ftpSiteDlg: ListFile is "+ ListFile +"\n" ); // initDialog(); local_library = (QDir::homeDirPath ()) +"/Applications/gutenbrowser/"; // ListFile = local_library + "ftpList"; ListFile = QPEApplication::qpeDir() + "/etc/gutenbrowser"; QDir dir(ListFile); if( !dir.exists()) dir.mkdir(ListFile,true); ListFile+="/ftpList"; - qDebug("opening "+ListFile); + odebug << "opening "+ListFile << oendl; if ( QFile(ListFile).exists() ) { openSiteList(); } else { switch( QMessageBox::warning( this, "Gutenbrowser", "Do you want to download \nan ftp site list?", QMessageBox::Yes, QMessageBox::No)) { case QMessageBox::Yes: // yes getSite(); @@ -71,54 +76,54 @@ void optionsDialog::getSite() // QString networkUrl= "http://llornkcor.com/index.shtml"; // // "http://www.gutenberg.org/index.html" // //Qhttp stops working at times.... :( // NetworkDialog *NetworkDlg; // NetworkDlg = new NetworkDialog( this,"Network Protocol Dialog",TRUE,0,networkUrl,outputFile); // if( NetworkDlg->exec() != 0 ) // { // use new, improved, *INSTANT* network-dialog-file-getterer -// qDebug("gitcha!"); +// odebug << "gitcha!" << oendl; // } // delete NetworkDlg; //#ifdef Q_WS_QWS // TODO qprocess here QString cmd="wget -T 15 -O " +outputFile + " " + networkUrl + " 2>&1" ; - qDebug("Issuing the command "+cmd); + odebug << "Issuing the command "+cmd << oendl; Output *outDlg; outDlg = new Output( 0, tr("Downloading ftp sites...."),TRUE); outDlg->showMaximized(); outDlg->show(); qApp->processEvents(); FILE *fp; char line[130]; outDlg->OutputEdit->append( tr("Running wget") ); sleep(1); fp = popen( (const char *) cmd, "r"); while ( fgets( line, sizeof line, fp)) { outDlg->OutputEdit->append(line); outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); } - pclose(fp); + pclose(fp); outDlg->close(); if(outDlg) delete outDlg; - + // outputFile=ListFile; ftp_QListBox_1->clear(); parseFtpList( outputFile); // got the html list, now parse it so we can use it } bool optionsDialog::parseFtpList( QString outputFile) { // parse ftplist html and extract just the machine names/directories // TODO: add locations!! - qDebug("parse ftplist "+outputFile); + odebug << "parse ftplist "+outputFile << oendl; QString ftpList, s_location; QFile f( outputFile ); if( f.open( IO_ReadWrite )) { QTextStream t( &f); QString countryName; bool b_gotchTest=false; @@ -147,55 +152,55 @@ bool optionsDialog::parseFtpList( QString outputFile) ftpSite.remove( ftpSite.find("\"", 0, TRUE), 1); if( ftpSite.find("a>", 0, TRUE) ) ftpSite.remove( ftpSite.find("a>", 0, TRUE) -2, 4); s = t.readLine(); s = t.readLine(); if(( start=s.find("<BR>(", 0, TRUE) ) != -1) { -// qDebug("%s",s.latin1()); +// odebug << "" << s << "" << oendl; end = s.find( ")", 0, TRUE)+1; s_location= s.mid( start+4, (end - start) ); -// qDebug("%s", s_location.latin1()); +// odebug << "" << s_location << "" << oendl; // ftpList += ftpSite + "\n"; // ftp_QListBox_1->sort( TRUE ); ftpList += s_location+ " "+ftpSite+"\n"; ftp_QListBox_1->sort( TRUE ); QString winbug=" "; ftp_QListBox_1->insertItem ( s_location.latin1() +winbug+ftpSite); // ftp_QListBox_1->insertItem ( ftpSite+" "+s_location.latin1()); } // ftp_QListBox_1->insertItem ( ftpSite); } } // end find ftp:// } // end while loop QFile f2( ListFile); - if(!f2.open( IO_ReadWrite | IO_Truncate)) + if(!f2.open( IO_ReadWrite | IO_Truncate)) QMessageBox::message( (tr("Note")), (tr("File not opened sucessfully.\n"+ListFile )) ); f2.writeBlock( ftpList, ftpList.length() ); f.close(); f2.close(); if( f.exists() ) f.remove(); } else { QMessageBox::message( (tr("ftpSiteDlg")), (tr("List File not opened sucessfully." )) ); return false; } setActiveWindow(); return true; } void optionsDialog::openSiteList() { - qDebug(" just opens the ftp site list"); + odebug << " just opens the ftp site list" << oendl; // ListFile = ( QDir::homeDirPath ()) +"/.gutenbrowser/ftpList"; QFile f( ListFile); if(!f.open( IO_ReadWrite )) { QMessageBox::message( (tr("Note")), (tr("File not opened sucessfully." )) ); } else { QTextStream t( &f); while ( !t.atEnd() ) { QString ftpSite = t.readLine(); @@ -225,17 +230,17 @@ void optionsDialog::getSelection( QListBoxItem *item) void optionsDialog::select_site( const char *index ) { // ftp://ftp.datacanyon.com/pub/gutenberg/ s_site = index; QString s_site2; // if(s_site.find("(",0,TRUE)) s_site2=s_site.right( s_site.length()-(s_site.find(" ",0,TRUE)+4) ); -qDebug("Selected ftp site is "+ s_site2); +odebug << "Selected ftp site is "+ s_site2 << oendl; int i_ftp = s_site2.find("/", 0, FALSE); ftp_host = s_site2.left(i_ftp ); ftp_base_dir = s_site2.right( s_site2.length() - i_ftp); // config->read(); Config config("Gutenbrowser"); config.setGroup( "FTPsite" ); config.writeEntry("SiteName",ftp_host); diff --git a/noncore/apps/opie-gutenbrowser/gutenbrowser.cpp b/noncore/apps/opie-gutenbrowser/gutenbrowser.cpp index 2a9a71e..be2b897 100644 --- a/noncore/apps/opie-gutenbrowser/gutenbrowser.cpp +++ b/noncore/apps/opie-gutenbrowser/gutenbrowser.cpp @@ -9,36 +9,40 @@ * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * ***************************************************************************/ // http search // http://digital.library.upenn.edu/books/authors.html // http://digital.library.upenn.edu/books/titles.html // ftp://ibiblio.org/pub/docs/books/gutenberg/GUTINDEX.ALL // donate@gutenberg.net -#include <qpe/qpeapplication.h> -#include <qpe/fontdatabase.h> -#include <qpe/config.h> -#include <qpe/qcopenvelope_qws.h> -#include <qpe/mimetype.h> -#include <qpe/resource.h> -#include <qpe/applnk.h> + #include "editTitle.h" #include "gutenbrowser.h" #include "LibraryDialog.h" //#include "bookmarksdlg.h" #include "optionsDialog.h" #include "helpme.h" #include "NetworkDialog.h" #include "openetext.h" #include "output.h" +/* OPIE */ +#include <opie2/odebug.h> +#include <qpe/qpeapplication.h> +#include <qpe/fontdatabase.h> +#include <qpe/config.h> +#include <qpe/qcopenvelope_qws.h> +#include <qpe/mimetype.h> +#include <qpe/resource.h> +#include <qpe/applnk.h> +/* QT */ #include <qregexp.h> #include <qregion.h> #include <qpaintdevicemetrics.h> #include <qvaluelist.h> #include <qlabel.h> #include <qclipboard.h> #include <qpainter.h> #include <qpalette.h> @@ -46,1939 +50,1940 @@ #include <qfontdialog.h> #include <qtextview.h> #include <qbrush.h> #include <qfile.h> #include <qfontinfo.h> #include <qscrollview.h> #include <qpoint.h> +/* STD */ #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/stat.h> #include <fcntl.h> #include <errno.h> static const int nfontsizes = 9; static const int fontsize[nfontsizes] = {8,9,10,11,12,13,14,18,24}; #ifdef NOQUICKLAUNCH Gutenbrowser::Gutenbrowser() - Gutenbrowser(); + Gutenbrowser(); #else Gutenbrowser::Gutenbrowser(QWidget *,const char*, WFlags ) #endif - : QMainWindow() + : QMainWindow() { - // QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable; - // QCopEnvelope e("QPE/System", "grabKeyboard(QString)" ); - // e << ""; - // QPEApplication::grabKeyboard(); + // QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable; + // QCopEnvelope e("QPE/System", "grabKeyboard(QString)" ); + // e << ""; + // QPEApplication::grabKeyboard(); showMainList=TRUE; - working=false; - this->setUpdatesEnabled(TRUE); - // #ifndef Q_WS_QWS - QString msg; - msg="You have now entered unto gutenbrowser,\n"; - msg+="make your self at home, sit back, relax and read something great.\n"; - - local_library = (QDir::homeDirPath ()) +"/Applications/gutenbrowser/"; - setCaption("Gutenbrowser");// Embedded " VERSION); - this->setUpdatesEnabled(TRUE); - - // bool firstTime=FALSE; - topLayout = new QVBoxLayout( this, 0, 0, "topLayout"); - - menu = new QHBoxLayout(-1,"menu"); - buttons2 = new QHBoxLayout(-1,"buttons2"); - edits = new QHBoxLayout(-1,"edits"); - - useSplitter=TRUE; - - initConfig(); - initMenuBar(); - initButtonBar(); - initStatusBar(); - initView(); - initSlots(); - - QPEApplication::setStylusOperation( mainList->viewport(),QPEApplication::RightOnHold); - - connect( mainList, SIGNAL( mouseButtonPressed( int, QListBoxItem *, const QPoint &)), - this, SLOT( mainListPressed(int, QListBoxItem *, const QPoint &)) ); - if( useIcons) - toggleButtonIcons( TRUE); - else - toggleButtonIcons( FALSE); - - enableButtons(false); - - Config config("Gutenbrowser"); // populate menubuttonlist - config.setGroup("General"); - - config.setGroup( "Files" ); - QString s_numofFiles = config.readEntry("NumberOfFiles", "0" ); - int i_numofFiles = s_numofFiles.toInt(); - - QString tempFileName; - - for (int i = 0; i <= i_numofFiles; i++) { - // tempFileName.setNum(i); - config.setGroup( "Files" ); - QString ramble = config.readEntry( QString::number(i), "" ); - - config.setGroup( "Titles" ); - QString tempTitle = config.readEntry( ramble, ""); - config.setGroup( tempTitle); - int index=config.readNumEntry( "LineNumber", -1 ); - if( index != -1) { - // qDebug( tempTitle); - bookmarksMenu->insertItem( tempTitle); - } - } - - // QString gutenIndex= local_library + "GUTINDEX.ALL"; - QString gutenIndex= QPEApplication::qpeDir()+ "/etc/gutenbrowser/GUTINDEX.ALL"; - - if( QFile( gutenIndex).exists() ) { - indexLib.setName( gutenIndex); - } else { - QString localLibIndexFile = QPEApplication::qpeDir()+ "/etc/gutenbrowser/PGWHOLE.TXT"; - // QString localLibIndexFile= local_library + "PGWHOLE.TXT"; - newindexLib.setName( localLibIndexFile); - } - LibraryDlg = new LibraryDialog( this, "Library Index" /*, TRUE */); - loadCheck=false; - chdir(local_library); - if(!showMainList) { - Lview->setFocus(); - // if(firstTime) - // Bookmark(); - for (int i=1;i< qApp->argc();i++) { - qDebug("Suppose we open somethin"); - load(qApp->argv()[i]); - } - } else { - fillWithTitles(); - mainList->setFocus(); - // mainList->setCurrentItem(0); - - } - writeConfig(); + working=false; + this->setUpdatesEnabled(TRUE); + // #ifndef Q_WS_QWS + QString msg; + msg="You have now entered unto gutenbrowser,\n"; + msg+="make your self at home, sit back, relax and read something great.\n"; + + local_library = (QDir::homeDirPath ()) +"/Applications/gutenbrowser/"; + setCaption("Gutenbrowser");// Embedded " VERSION); + this->setUpdatesEnabled(TRUE); + + // bool firstTime=FALSE; + topLayout = new QVBoxLayout( this, 0, 0, "topLayout"); + + menu = new QHBoxLayout(-1,"menu"); + buttons2 = new QHBoxLayout(-1,"buttons2"); + edits = new QHBoxLayout(-1,"edits"); + + useSplitter=TRUE; + + initConfig(); + initMenuBar(); + initButtonBar(); + initStatusBar(); + initView(); + initSlots(); + + QPEApplication::setStylusOperation( mainList->viewport(),QPEApplication::RightOnHold); + + connect( mainList, SIGNAL( mouseButtonPressed( int, QListBoxItem *, const QPoint &)), + this, SLOT( mainListPressed(int, QListBoxItem *, const QPoint &)) ); + if( useIcons) + toggleButtonIcons( TRUE); + else + toggleButtonIcons( FALSE); + + enableButtons(false); + + Config config("Gutenbrowser"); // populate menubuttonlist + config.setGroup("General"); + + config.setGroup( "Files" ); + QString s_numofFiles = config.readEntry("NumberOfFiles", "0" ); + int i_numofFiles = s_numofFiles.toInt(); + + QString tempFileName; + + for (int i = 0; i <= i_numofFiles; i++) { + // tempFileName.setNum(i); + config.setGroup( "Files" ); + QString ramble = config.readEntry( QString::number(i), "" ); + + config.setGroup( "Titles" ); + QString tempTitle = config.readEntry( ramble, ""); + config.setGroup( tempTitle); + int index=config.readNumEntry( "LineNumber", -1 ); + if( index != -1) { + // odebug << tempTitle << oendl; + bookmarksMenu->insertItem( tempTitle); + } + } + + // QString gutenIndex= local_library + "GUTINDEX.ALL"; + QString gutenIndex= QPEApplication::qpeDir()+ "/etc/gutenbrowser/GUTINDEX.ALL"; + + if( QFile( gutenIndex).exists() ) { + indexLib.setName( gutenIndex); + } else { + QString localLibIndexFile = QPEApplication::qpeDir()+ "/etc/gutenbrowser/PGWHOLE.TXT"; + // QString localLibIndexFile= local_library + "PGWHOLE.TXT"; + newindexLib.setName( localLibIndexFile); + } + LibraryDlg = new LibraryDialog( this, "Library Index" /*, TRUE */); + loadCheck=false; + chdir(local_library); + if(!showMainList) { + Lview->setFocus(); + // if(firstTime) + // Bookmark(); + for (int i=1;i< qApp->argc();i++) { + odebug << "Suppose we open somethin" << oendl; + load(qApp->argv()[i]); + } + } else { + fillWithTitles(); + mainList->setFocus(); + // mainList->setCurrentItem(0); + + } + writeConfig(); } //end init Gutenbrowser::~Gutenbrowser() { - // QPEApplication::grabKeyboard(); - // QPEApplication::ungrabKeyboard(); - qDebug("Exit"); + // QPEApplication::grabKeyboard(); + // QPEApplication::ungrabKeyboard(); + odebug << "Exit" << oendl; } /* - Google.com search */ + Google.com search */ void Gutenbrowser::InfoBarClick() { - QString text; - if( Lview->hasSelectedText()) { - Lview->copy(); - QClipboard *cb = QApplication::clipboard(); - text = cb->text(); - } else { - // text=title; - text=this->caption(); - } - searchGoogle(text); + QString text; + if( Lview->hasSelectedText()) { + Lview->copy(); + QClipboard *cb = QApplication::clipboard(); + text = cb->text(); + } else { + // text=title; + text=this->caption(); + } + searchGoogle(text); } /* - download http with wget or preferred browser */ + download http with wget or preferred browser */ void Gutenbrowser::goGetit( const QString &url, bool showMsg) { - // int eexit=0; - QString cmd; - // config.read(); - qApp->processEvents(); - QString filename = QPEApplication::qpeDir(); - if(filename.right(1)!="/") - filename+="/etc/gutenbrowser/"; - else - filename+="etc/gutenbrowser/"; - qDebug("filename "+filename); - // QString filename = QDir::homeDirPath()+"/Applications/gutenbrowser/"; - - filename += url.right( url.length() - url.findRev("/",-1,TRUE) -1); - - Config config("Gutenbrowser"); - config.setGroup( "Browser" ); - QString brow = config.readEntry("Preferred", "Opera"); - qDebug("Preferred browser is "+brow); - if(!showMsg) { //if we just get the gutenindex.all - cmd="wget -O " + filename +" " + url+" 2>&1" ; - chdir(local_library); - qDebug("Issuing the system command: %s", cmd.latin1()); - - Output *outDlg; - outDlg = new Output(this, tr("Gutenbrowser Output"),FALSE); - outDlg->showMaximized(); - outDlg->show(); - qApp->processEvents(); - FILE *fp; - char line[130]; - outDlg->OutputEdit->append( tr("Running wget") ); - sleep(1); - fp = popen( (const char *) cmd, "r"); - // qDebug("Issuing the command\n"+cmd); - // system(cmd); - while ( fgets( line, sizeof line, fp)) { - outDlg->OutputEdit->append(line); - outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); - } - pclose(fp); - outDlg->close(); - if(outDlg) - delete outDlg; - } else { - if( brow == "Konq") { - cmd = "konqueror "+url+" &"; - } - if( brow == "Opera") { //for desktop testing - cmd = "opera "+url+" &"; - } - // if( brow == "Opera") { // on Zaurus - // cmd = "operagui "+url+" &"; - // } - if( brow == "Mozilla") { - cmd = "mozilla "+url+" &"; - } - if( brow == "Netscape") { - cmd = "netscape "+url+" &"; - } - if(brow == "wget") { - // cmd="wget -q "+url+" &"; - QString tempHtml=local_library+"webster.html"; - cmd="wget -O "+tempHtml+" -q "+url; - } - - chdir(local_library); - qDebug("Issuing the sys command: %s", cmd.latin1()); - system(cmd); - } + // int eexit=0; + QString cmd; + // config.read(); + qApp->processEvents(); + QString filename = QPEApplication::qpeDir(); + if(filename.right(1)!="/") + filename+="/etc/gutenbrowser/"; + else + filename+="etc/gutenbrowser/"; + odebug << "filename "+filename << oendl; + // QString filename = QDir::homeDirPath()+"/Applications/gutenbrowser/"; + + filename += url.right( url.length() - url.findRev("/",-1,TRUE) -1); + + Config config("Gutenbrowser"); + config.setGroup( "Browser" ); + QString brow = config.readEntry("Preferred", "Opera"); + odebug << "Preferred browser is "+brow << oendl; + if(!showMsg) { //if we just get the gutenindex.all + cmd="wget -O " + filename +" " + url+" 2>&1" ; + chdir(local_library); + odebug << "Issuing the system command: " << cmd << "" << oendl; + + Output *outDlg; + outDlg = new Output(this, tr("Gutenbrowser Output"),FALSE); + outDlg->showMaximized(); + outDlg->show(); + qApp->processEvents(); + FILE *fp; + char line[130]; + outDlg->OutputEdit->append( tr("Running wget") ); + sleep(1); + fp = popen( (const char *) cmd, "r"); + // odebug << "Issuing the command\n"+cmd << oendl; + // system(cmd); + while ( fgets( line, sizeof line, fp)) { + outDlg->OutputEdit->append(line); + outDlg->OutputEdit->setCursorPosition(outDlg->OutputEdit->numLines() + 1,0,FALSE); + } + pclose(fp); + outDlg->close(); + if(outDlg) + delete outDlg; + } else { + if( brow == "Konq") { + cmd = "konqueror "+url+" &"; + } + if( brow == "Opera") { //for desktop testing + cmd = "opera "+url+" &"; + } + // if( brow == "Opera") { // on Zaurus + // cmd = "operagui "+url+" &"; + // } + if( brow == "Mozilla") { + cmd = "mozilla "+url+" &"; + } + if( brow == "Netscape") { + cmd = "netscape "+url+" &"; + } + if(brow == "wget") { + // cmd="wget -q "+url+" &"; + QString tempHtml=local_library+"webster.html"; + cmd="wget -O "+tempHtml+" -q "+url; + } + + chdir(local_library); + odebug << "Issuing the sys command: " << cmd << "" << oendl; + system(cmd); + } } void Gutenbrowser::toggleButtonIcons( bool useEm) { - QString pixDir; - if(useEm) - useEm=TRUE; - pixDir=QPEApplication::qpeDir()+"pics/gutenbrowser"; - qDebug("Docdir is "+QPEApplication::documentDir()); - - if( useIcons && QDir( pixDir).exists() ) { - LibraryButton->setPixmap( Resource::loadPixmap("home") ); //in inline - OpenButton->setPixmap( Resource::loadPixmap("gutenbrowser/openbook")); - ForwardButton->setPixmap( Resource::loadPixmap("forward"));//in inline - BackButton->setPixmap( Resource::loadPixmap("back") );//in inline - SearchButton->setPixmap( Resource::loadPixmap("gutenbrowser/search") );//in inline - lastBmkButton->setPixmap( Resource::loadPixmap("gutenbrowser/bookmark_folder")); - setBookmarkButton->setPixmap( Resource::loadPixmap("gutenbrowser/bookmark") ); - dictionaryButton->setPixmap( Resource::loadPixmap("gutenbrowser/spellcheck") ); - InfoBar->setPixmap( Resource::loadPixmap("gutenbrowser/google")); - } + QString pixDir; + if(useEm) + useEm=TRUE; + pixDir=QPEApplication::qpeDir()+"pics/gutenbrowser"; + odebug << "Docdir is "+QPEApplication::documentDir() << oendl; + + if( useIcons && QDir( pixDir).exists() ) { + LibraryButton->setPixmap( Resource::loadPixmap("home") ); //in inline + OpenButton->setPixmap( Resource::loadPixmap("gutenbrowser/openbook")); + ForwardButton->setPixmap( Resource::loadPixmap("forward"));//in inline + BackButton->setPixmap( Resource::loadPixmap("back") );//in inline + SearchButton->setPixmap( Resource::loadPixmap("gutenbrowser/search") );//in inline + lastBmkButton->setPixmap( Resource::loadPixmap("gutenbrowser/bookmark_folder")); + setBookmarkButton->setPixmap( Resource::loadPixmap("gutenbrowser/bookmark") ); + dictionaryButton->setPixmap( Resource::loadPixmap("gutenbrowser/spellcheck") ); + InfoBar->setPixmap( Resource::loadPixmap("gutenbrowser/google")); + } } bool Gutenbrowser::queryExit() { - int exit=QMessageBox::information(this, "Quit...", "Do your really want to quit?", - QMessageBox::Ok, QMessageBox::Cancel); - if (exit==1) { - writeConfig(); - qApp->quit(); - } else { - }; - return (exit==1); + int exit=QMessageBox::information(this, "Quit...", "Do your really want to quit?", + QMessageBox::Ok, QMessageBox::Cancel); + if (exit==1) { + writeConfig(); + qApp->quit(); + } else { + }; + return (exit==1); } // SLOT IMPLEMENTATION void Gutenbrowser::slotFilePrint() { } void Gutenbrowser::ByeBye() { - if (b_queryExit) - queryExit(); - else { - // writeConfig(); - qApp->quit(); - } + if (b_queryExit) + queryExit(); + else { + // writeConfig(); + qApp->quit(); + } } void Gutenbrowser::HelpBtn() { - HelpMe* HelpDlg; - HelpDlg = new HelpMe( this, "Help Dialog"); - HelpDlg->showMaximized(); + HelpMe* HelpDlg; + HelpDlg = new HelpMe( this, "Help Dialog"); + HelpDlg->showMaximized(); } void Gutenbrowser::DownloadIndex() { #ifndef Q_WS_QWS - { - switch( QMessageBox::information( 0, (tr("Download Library Index, or FTP sites?")), - (tr("Do you want to download the newest\n" - "Project Gutenberg Library Index?\n" - "or select an ftp site?\n")), - (tr("&Library Index")), (tr("&Ftp Site")), (tr("&Cancel")), 2, 2 ) ) + { + switch( QMessageBox::information( 0, (tr("Download Library Index, or FTP sites?")), + (tr("Do you want to download the newest\n" + "Project Gutenberg Library Index?\n" + "or select an ftp site?\n")), + (tr("&Library Index")), (tr("&Ftp Site")), (tr("&Cancel")), 2, 2 ) ) { - case 0: // index clicked, - downloadLibIndex(); - break; + case 0: // index clicked, + downloadLibIndex(); + break; - case 1: // ftp selected - downloadFtpList(); - break; + case 1: // ftp selected + downloadFtpList(); + break; - case 2: // Cancel - break; + case 2: // Cancel + break; }; - } + } #endif } // end DownloadIndex void Gutenbrowser::downloadFtpList() { - // QString cmd="wget http://www.promo.net/pg/list.html"); - //system(cmd); - qApp->processEvents(); - optionsDialog* optDlg; - optDlg = new optionsDialog( this,"Options_Dlg", true); - optDlg->getSite(); - if(optDlg) - delete optDlg; + // QString cmd="wget http://www.promo.net/pg/list.html"); + //system(cmd); + qApp->processEvents(); + optionsDialog* optDlg; + optDlg = new optionsDialog( this,"Options_Dlg", true); + optDlg->getSite(); + if(optDlg) + delete optDlg; } void Gutenbrowser::downloadLibIndex() { - // QString dwmloader = local_library + "pgwhole.zip"; - // QString cmd = "lynx -source http://www.gutenberg.net/pgwhole.zip | cat >> " + dwmloader; - // system(cmd); - - // QString outputFile= local_library+ "GUTINDEX.ALL"; - // config.setGroup( "FTPsite" ); // ftp server config - // ftp_host=config.readEntry("SiteName", ""); - // ftp_base_dir= config.readEntry("base", ""); - // QString networkUrl= "ftp://"+ftp_host+ftp_base_dir+"/GUTINDEX.ALL"; - QDir dir( local_library); - dir.cd("", TRUE); - goGetit( "http://sailor.gutenberg.org/GUTINDEX.ALL", false); // until ghttp works on binaries -qt3 - // goGetit( "http://www.gutenberg.net/pgwhole.zip", true); // until ghttp works on binaries -qt3 - // NetworkDialog *NetworkDlg; - // NetworkDlg = new NetworkDialog( this,"Network Protocol Dialog", TRUE, 0, networkUrl, outputFile ); - // if( NetworkDlg->exec() != 0 ) - // { // use new, improved, *INSTANT* network-dialog-file-getterer - //// QMessageBox::message("Note",""); - // } - // if(NetworkDlg) - // delete NetworkDlg; + // QString dwmloader = local_library + "pgwhole.zip"; + // QString cmd = "lynx -source http://www.gutenberg.net/pgwhole.zip | cat >> " + dwmloader; + // system(cmd); + + // QString outputFile= local_library+ "GUTINDEX.ALL"; + // config.setGroup( "FTPsite" ); // ftp server config + // ftp_host=config.readEntry("SiteName", ""); + // ftp_base_dir= config.readEntry("base", ""); + // QString networkUrl= "ftp://"+ftp_host+ftp_base_dir+"/GUTINDEX.ALL"; + QDir dir( local_library); + dir.cd("", TRUE); + goGetit( "http://sailor.gutenberg.org/GUTINDEX.ALL", false); // until ghttp works on binaries -qt3 + // goGetit( "http://www.gutenberg.net/pgwhole.zip", true); // until ghttp works on binaries -qt3 + // NetworkDialog *NetworkDlg; + // NetworkDlg = new NetworkDialog( this,"Network Protocol Dialog", TRUE, 0, networkUrl, outputFile ); + // if( NetworkDlg->exec() != 0 ) + // { // use new, improved, *INSTANT* network-dialog-file-getterer + //// QMessageBox::message("Note",""); + // } + // if(NetworkDlg) + // delete NetworkDlg; } void Gutenbrowser::PrintBtn() { } void Gutenbrowser::SearchBtn() { - if( loadCheck) { - qDebug("loadCheck: we have a loaded doc"); - Search(); - } - // else - // QMessageBox::message("Note","Sorry, can't search. No etext is loaded"); + if( loadCheck) { + odebug << "loadCheck: we have a loaded doc" << oendl; + Search(); + } + // else + // QMessageBox::message("Note","Sorry, can't search. No etext is loaded"); } void Gutenbrowser::ForwardBtn() { - if( !ForwardButton->autoRepeat() && !ForwardButton->isDown()) { - - QString s; - QString insertString; - int pageSize= Lview->PageSize(); - Lview->clear(); - - for(int fd=0; fd < pageSize - 1;fd++) { - f.readLine(s, 256); - if(useWrap) - s.replace(QRegExp("\n"),""); - insertString+=s; - Lview->insertLine( s, -1); - // qDebug(s); - currentLine++; - } - // Lview->insertAt( insertString,0,0, FALSE); - currentFilePos = f.at(); - // if( i_pageNum != pages) { - // Lview->MultiLine_Ex::pageDown( FALSE); - i_pageNum++; - pageStopArray.resize(i_pageNum + 1); - // int length = Lview->length(); - - pageStopArray[i_pageNum ] = currentFilePos; - // qDebug("%d current page is number %d, pagesize %d, length %d, current %d", - // currentFilePos, i_pageNum, pageSize, Lview->length(), pageStopArray[i_pageNum] ); - setStatus(); - Lview->setCursorPosition( 0, 0, FALSE); - // } - - } else { - // qDebug("bal"); - // if( i_pageNum != pages) { - - // // int newTop = Lview->Top(); - // // if(Lview->lastRow() > i) - // Lview->ScrollUp(1); - // // i_pageNum++; - // setStatus(); - // Lview->setCursorPosition( Lview->Top(), 0, FALSE); - - // } - - } - Lview->setFocus(); - - // qDebug("page number %d line number %d", i_pageNum, currentLine); + if( !ForwardButton->autoRepeat() && !ForwardButton->isDown()) { + + QString s; + QString insertString; + int pageSize= Lview->PageSize(); + Lview->clear(); + + for(int fd=0; fd < pageSize - 1;fd++) { + f.readLine(s, 256); + if(useWrap) + s.replace(QRegExp("\n"),""); + insertString+=s; + Lview->insertLine( s, -1); + // odebug << s << oendl; + currentLine++; + } + // Lview->insertAt( insertString,0,0, FALSE); + currentFilePos = f.at(); + // if( i_pageNum != pages) { + // Lview->MultiLine_Ex::pageDown( FALSE); + i_pageNum++; + pageStopArray.resize(i_pageNum + 1); + // int length = Lview->length(); + + pageStopArray[i_pageNum ] = currentFilePos; + // qDebug("%d current page is number %d, pagesize %d, length %d, current %d", + // currentFilePos, i_pageNum, pageSize, Lview->length(), pageStopArray[i_pageNum] ); + setStatus(); + Lview->setCursorPosition( 0, 0, FALSE); + // } + + } else { + // odebug << "bal" << oendl; + // if( i_pageNum != pages) { + + // // int newTop = Lview->Top(); + // // if(Lview->lastRow() > i) + // Lview->ScrollUp(1); + // // i_pageNum++; + // setStatus(); + // Lview->setCursorPosition( Lview->Top(), 0, FALSE); + + // } + + } + Lview->setFocus(); + + // odebug << "page number " << i_pageNum << " line number " << currentLine << "" << oendl; } void Gutenbrowser::BackBtn() { - if( i_pageNum > 0) { - int pageSize= Lview->PageSize(); - // int length=Lview->length(); - - i_pageNum--; - currentFilePos = f.at(); - - // qDebug("%d move back to %d, current page number %d, %d, length %d", - // currentFilePos, pageStopArray[i_pageNum - 1 ], i_pageNum, pageSize, Lview->length() ); - - if( i_pageNum < 2) { - f.at( 0); - } else { - if(!f.at( pageStopArray[i_pageNum - 1] )) - qDebug("File positioned backward did not work"); - } - QString s; - // int sizeLine=0; - Lview->clear(); - // QString insertString; - - for(int fd = 0; fd < pageSize ;fd++) { - // Lview->removeLine( Lview->PageSize() ); - f.readLine(s, 256); - if(useWrap) - s.replace(QRegExp("\n"),""); - currentLine++; - // insertString+=s; - Lview->insertLine( s, -1); - } - - // Lview->insertAt( insertString,0,0, FALSE); - - if( !BackButton->autoRepeat() && !BackButton->isDown()) { - QString topR; - QString lastR; - QString pageR; - // int sizer = Lview->lastRow() - Lview->topRow(); - // int i_topRow = Lview->topRow(); - if( i_pageNum < 1) - i_pageNum = 1; + if( i_pageNum > 0) { + int pageSize= Lview->PageSize(); + // int length=Lview->length(); + + i_pageNum--; + currentFilePos = f.at(); + + // qDebug("%d move back to %d, current page number %d, %d, length %d", + // currentFilePos, pageStopArray[i_pageNum - 1 ], i_pageNum, pageSize, Lview->length() ); + + if( i_pageNum < 2) { + f.at( 0); + } else { + if(!f.at( pageStopArray[i_pageNum - 1] )) + odebug << "File positioned backward did not work" << oendl; + } + QString s; + // int sizeLine=0; + Lview->clear(); + // QString insertString; + + for(int fd = 0; fd < pageSize ;fd++) { + // Lview->removeLine( Lview->PageSize() ); + f.readLine(s, 256); + if(useWrap) + s.replace(QRegExp("\n"),""); + currentLine++; + // insertString+=s; + Lview->insertLine( s, -1); + } + + // Lview->insertAt( insertString,0,0, FALSE); + + if( !BackButton->autoRepeat() && !BackButton->isDown()) { + QString topR; + QString lastR; + QString pageR; + // int sizer = Lview->lastRow() - Lview->topRow(); + // int i_topRow = Lview->topRow(); + if( i_pageNum < 1) + i_pageNum = 1; setCaption(QString::number(i_pageNum)); - } else { - // int newTop = Lview->Top(); - // if(Lview->lastRow() > i) - Lview->MultiLine_Ex::pageUp( FALSE); - // Lview->ScrollDown(1); - // i_pageNum--; - if( i_pageNum < 1) - i_pageNum = 1; - setStatus(); - Lview->setCursorPosition( Lview->Top(), 0, FALSE); - - } - } - Lview->setFocus(); + } else { + // int newTop = Lview->Top(); + // if(Lview->lastRow() > i) + Lview->MultiLine_Ex::pageUp( FALSE); + // Lview->ScrollDown(1); + // i_pageNum--; + if( i_pageNum < 1) + i_pageNum = 1; + setStatus(); + Lview->setCursorPosition( Lview->Top(), 0, FALSE); + + } + } + Lview->setFocus(); } void Gutenbrowser::doBeginBtn() { - if(loadCheck) { - qApp->processEvents(); - BeginBtn(); - } + if(loadCheck) { + qApp->processEvents(); + BeginBtn(); + } } // moves text to the very top = 0 void Gutenbrowser::TopBtn() { - if(loadCheck) { - if( i_pageNum != 0) { - qDebug("top"); - qApp->processEvents(); - currentLine = 0; - i_pageNum = 1; - int pageSize = Lview->PageSize() ; - Lview->clear(); - QString s; - f.at(0); - for(int fd=0; fd < pageSize ;fd++) { - f.readLine(s, 256); - if(useWrap) - s.replace(QRegExp("\n"),""); - Lview->insertLine(s ,-1); - currentLine++; - } - Lview->setCursorPosition( 0,0, FALSE); - i_pageNum=1; - setStatus(); - } - Lview->setFocus(); - } + if(loadCheck) { + if( i_pageNum != 0) { + odebug << "top" << oendl; + qApp->processEvents(); + currentLine = 0; + i_pageNum = 1; + int pageSize = Lview->PageSize() ; + Lview->clear(); + QString s; + f.at(0); + for(int fd=0; fd < pageSize ;fd++) { + f.readLine(s, 256); + if(useWrap) + s.replace(QRegExp("\n"),""); + Lview->insertLine(s ,-1); + currentLine++; + } + Lview->setCursorPosition( 0,0, FALSE); + i_pageNum=1; + setStatus(); + } + Lview->setFocus(); + } } //moves text to the start of the EText void Gutenbrowser::BeginBtn() { - i_pageNum = 1; - currentLine = 0; - QString s_pattern="*END*THE SMALL PRINT"; - QString sPattern2 = "*END THE SMALL PRINT"; - - int pageSize = Lview->PageSize(); - Lview->clear(); - - // int lines = Lview->numLines(); - int pos = 0;//, i = 0; - int i_topRow = Lview->topRow(); - - QString LeftText;// = Lview->text(); - - int linesPerPage = Lview->lastRow() - Lview->topRow(); - // int pages = (( linesPerPage / Lview->editSize() ) ) +1; - // int pageN = 0; - i_pageNum = 1; - int lastPage=1; - int lineNo=0; - QString s; - f.at( 0); - - while ( !f.atEnd() ) { - f.readLine(s, 256); - lineNo++; - LeftText = s; - currentFilePos = f.at(); - - i_pageNum = lineNo/pageSize; - if(lastPage < i_pageNum) { - pageStopArray.resize(i_pageNum + 1); - pageStopArray[i_pageNum ] = currentFilePos; - // qDebug("new page number %d, found at %d", i_pageNum, currentFilePos); - } - // lastPage = i_pageNum; - if( LeftText.find( s_pattern, 0 , TRUE) != -1 || LeftText.find( sPattern2, 0 , TRUE) != -1 ) { - qDebug("<<<<<< FOUND IT!! new page number %d, found at %d", i_pageNum, currentFilePos); - break; - } - } - if(f.atEnd()) //in case we didnt find anything, we need to show something - f.at(0); - Lview->clear(); - for(int fd=0; fd < pageSize - 1;fd++) { - f.readLine(s, 256); - if(useWrap) - s.replace(QRegExp("\n"),""); - Lview->insertLine( s, -1); - currentLine++; - } - - i_pageNum = lineNo/pageSize; - pageStopArray.resize(i_pageNum + 1); - // int length = Lview->length(); - - qApp->processEvents(); - - if( pos > i_topRow ) { - Lview->setCursorPosition( pos+linesPerPage+2/* - i_topRow+3 */,0, FALSE); - } else { - Lview->setCursorPosition( pos+2 , 0, FALSE ); - } - - Lview->deselect(); - // AdjustStatus(); - Lview->setFocus(); + i_pageNum = 1; + currentLine = 0; + QString s_pattern="*END*THE SMALL PRINT"; + QString sPattern2 = "*END THE SMALL PRINT"; + + int pageSize = Lview->PageSize(); + Lview->clear(); + + // int lines = Lview->numLines(); + int pos = 0;//, i = 0; + int i_topRow = Lview->topRow(); + + QString LeftText;// = Lview->text(); + + int linesPerPage = Lview->lastRow() - Lview->topRow(); + // int pages = (( linesPerPage / Lview->editSize() ) ) +1; + // int pageN = 0; + i_pageNum = 1; + int lastPage=1; + int lineNo=0; + QString s; + f.at( 0); + + while ( !f.atEnd() ) { + f.readLine(s, 256); + lineNo++; + LeftText = s; + currentFilePos = f.at(); + + i_pageNum = lineNo/pageSize; + if(lastPage < i_pageNum) { + pageStopArray.resize(i_pageNum + 1); + pageStopArray[i_pageNum ] = currentFilePos; + // odebug << "new page number " << i_pageNum << ", found at " << currentFilePos << "" << oendl; + } + // lastPage = i_pageNum; + if( LeftText.find( s_pattern, 0 , TRUE) != -1 || LeftText.find( sPattern2, 0 , TRUE) != -1 ) { + odebug << "<<<<<< FOUND IT!! new page number " << i_pageNum << ", found at " << currentFilePos << "" << oendl; + break; + } + } + if(f.atEnd()) //in case we didnt find anything, we need to show something + f.at(0); + Lview->clear(); + for(int fd=0; fd < pageSize - 1;fd++) { + f.readLine(s, 256); + if(useWrap) + s.replace(QRegExp("\n"),""); + Lview->insertLine( s, -1); + currentLine++; + } + + i_pageNum = lineNo/pageSize; + pageStopArray.resize(i_pageNum + 1); + // int length = Lview->length(); + + qApp->processEvents(); + + if( pos > i_topRow ) { + Lview->setCursorPosition( pos+linesPerPage+2/* - i_topRow+3 */,0, FALSE); + } else { + Lview->setCursorPosition( pos+2 , 0, FALSE ); + } + + Lview->deselect(); + // AdjustStatus(); + Lview->setFocus(); } /* - sets the current page and place as a bookmark*/ + sets the current page and place as a bookmark*/ void Gutenbrowser::setBookmark() { - int eexit=QMessageBox::information(this, "Note", - "Do you really want to \nset this bookmark?." - ,QMessageBox::Yes, QMessageBox::No); - if (eexit== 3) { - - currentFilePos = f.at(); - - Config cfg("Gutenbrowser"); - cfg.setGroup("General"); - file_name=cfg.readEntry("Current",""); - qApp->processEvents(); - qDebug("Settingbook mark "+file_name); - - cfg.setGroup("Titles"); - title=cfg.readEntry(file_name,""); - qDebug("title is "+ title); - - cfg.setGroup( "Bookmarks" ); - - cfg.writeEntry("File Name",file_name); - cfg.writeEntry("Page Number",QString::number(i_pageNum) ); - cfg.writeEntry( "PagePosition", QString::number( pageStopArray[i_pageNum - 1])); - cfg.writeEntry("Title", title); - - int row = Lview->topRow();// Lview->Top(); - cfg.writeEntry("LineNumber",QString::number(row) ); - - cfg.setGroup(title); - cfg.writeEntry("File Name",file_name); - cfg.writeEntry( "LineNumber", QString::number( row)); - cfg.writeEntry( "PagePosition", QString::number( pageStopArray[i_pageNum - 1])); - cfg.writeEntry( "Page Number", QString::number( i_pageNum) ); - bookmarksMenu->insertItem( title); - } + int eexit=QMessageBox::information(this, "Note", + "Do you really want to \nset this bookmark?." + ,QMessageBox::Yes, QMessageBox::No); + if (eexit== 3) { + + currentFilePos = f.at(); + + Config cfg("Gutenbrowser"); + cfg.setGroup("General"); + file_name=cfg.readEntry("Current",""); + qApp->processEvents(); + odebug << "Settingbook mark "+file_name << oendl; + + cfg.setGroup("Titles"); + title=cfg.readEntry(file_name,""); + odebug << "title is "+ title << oendl; + + cfg.setGroup( "Bookmarks" ); + + cfg.writeEntry("File Name",file_name); + cfg.writeEntry("Page Number",QString::number(i_pageNum) ); + cfg.writeEntry( "PagePosition", QString::number( pageStopArray[i_pageNum - 1])); + cfg.writeEntry("Title", title); + + int row = Lview->topRow();// Lview->Top(); + cfg.writeEntry("LineNumber",QString::number(row) ); + + cfg.setGroup(title); + cfg.writeEntry("File Name",file_name); + cfg.writeEntry( "LineNumber", QString::number( row)); + cfg.writeEntry( "PagePosition", QString::number( pageStopArray[i_pageNum - 1])); + cfg.writeEntry( "Page Number", QString::number( i_pageNum) ); + bookmarksMenu->insertItem( title); + } } //end setBookmark /* goes to last set bookmark*/ void Gutenbrowser::Bookmark( int itemId) { - // qApp->processEvents(); - Config config("Gutenbrowser"); - config.setGroup( "Bookmarks" ); - - // qDebug("<<<<<< %d, %d", Lview->PageSize(), Lview->lastRow() - Lview->topRow() ); - - QString itemString; - - qDebug("menu item %d", itemId); - QString tempTitle; - QString s_Bmrkrow; - QString s_pageNum; - int Bmrkrow=0; - int bookmarkPosition = 0; - - // qApp->processEvents(); - config.setGroup( "Bookmarks" ); - title = config.readEntry("Title", ""); - file_name = config.readEntry("File Name", ""); - i_pageNum = config.readNumEntry("Page Number", 0); - bookmarkPosition = config.readNumEntry( "PagePosition",0); - Bmrkrow = config.readNumEntry("LineNumber",0); - if( !file_name.contains("/")) { - file_name = local_library + file_name; - } - - // getTitle(file_name); - // qApp->processEvents(); - // Lview->setFocus(); - this->setFocus(); - - Lview->clear(); - - load(file_name); - - int pageSize= Lview->PageSize(); - f.at(0); - // Lview->clear(); - QString s; - int lineNo=0; - int lastPage=1; - while ( !f.atEnd() ) { - f.readLine(s, 256); - lineNo++; - currentFilePos = f.at(); - - i_pageNum = lineNo/pageSize; - if(lastPage < i_pageNum) { - pageStopArray.resize(i_pageNum + 1); - pageStopArray[i_pageNum ] = currentFilePos; - // qDebug("new page number %d, found at %d", i_pageNum, currentFilePos); - } - if(currentFilePos == bookmarkPosition) - break; - } - if(f.atEnd()) - f.at(0); - else - f.at( bookmarkPosition); - - for(int fd=0; fd < pageSize - 1;fd++) { - f.readLine(s, 256); - lineNo++; - if(useWrap) - s.replace(QRegExp("\n"),""); - Lview->insertLine( s, -1); - currentLine++; - } - - i_pageNum = lineNo/pageSize; - pageStopArray.resize(i_pageNum + 1); - - if(showMainList) { - showMainList=FALSE; - mainList->hide(); - Lview->show(); - // qApp->processEvents(); - } - - qDebug("bookmark loaded"); - setCaption(title); + // qApp->processEvents(); + Config config("Gutenbrowser"); + config.setGroup( "Bookmarks" ); + + // odebug << "<<<<<< " << Lview->PageSize() << ", " << Lview->lastRow() - Lview->topRow() << "" << oendl; + + QString itemString; + + odebug << "menu item " << itemId << "" << oendl; + QString tempTitle; + QString s_Bmrkrow; + QString s_pageNum; + int Bmrkrow=0; + int bookmarkPosition = 0; + + // qApp->processEvents(); + config.setGroup( "Bookmarks" ); + title = config.readEntry("Title", ""); + file_name = config.readEntry("File Name", ""); + i_pageNum = config.readNumEntry("Page Number", 0); + bookmarkPosition = config.readNumEntry( "PagePosition",0); + Bmrkrow = config.readNumEntry("LineNumber",0); + if( !file_name.contains("/")) { + file_name = local_library + file_name; + } + + // getTitle(file_name); + // qApp->processEvents(); + // Lview->setFocus(); + this->setFocus(); + + Lview->clear(); + + load(file_name); + + int pageSize= Lview->PageSize(); + f.at(0); + // Lview->clear(); + QString s; + int lineNo=0; + int lastPage=1; + while ( !f.atEnd() ) { + f.readLine(s, 256); + lineNo++; + currentFilePos = f.at(); + + i_pageNum = lineNo/pageSize; + if(lastPage < i_pageNum) { + pageStopArray.resize(i_pageNum + 1); + pageStopArray[i_pageNum ] = currentFilePos; + // odebug << "new page number " << i_pageNum << ", found at " << currentFilePos << "" << oendl; + } + if(currentFilePos == bookmarkPosition) + break; + } + if(f.atEnd()) + f.at(0); + else + f.at( bookmarkPosition); + + for(int fd=0; fd < pageSize - 1;fd++) { + f.readLine(s, 256); + lineNo++; + if(useWrap) + s.replace(QRegExp("\n"),""); + Lview->insertLine( s, -1); + currentLine++; + } + + i_pageNum = lineNo/pageSize; + pageStopArray.resize(i_pageNum + 1); + + if(showMainList) { + showMainList=FALSE; + mainList->hide(); + Lview->show(); + // qApp->processEvents(); + } + + odebug << "bookmark loaded" << oendl; + setCaption(title); } bool Gutenbrowser::load( const char *fileName) { - // QCopEnvelope ( "QPE/System", "busy()" ); - // qDebug("Title is already set as "+title); - qDebug("sizeHint %d pageSize %d", sizeHint().height(),Lview->PageSize() ); - if( Lview->PageSize() < 4) { - - Lview->setMaximumHeight( sizeHint().height() ); - Lview->setMinimumHeight( sizeHint().height() ); - pointSize = Lview->fontInfo().pointSize(); - qDebug("sizeHint %d point size %d", sizeHint().height(), pointSize); - if(pointSize < 10) - Lview->setFixedVisibleLines(19); - else - Lview->setFixedVisibleLines( ( (sizeHint().height() / pointSize ) * 2) -2); - } - - Config cfg("Gutenbrowser"); - cfg.setGroup("General"); - cfg.writeEntry("Current",fileName); - currentLine=0; - - file_name=fileName; - QString o_file = fileName; - - // if (i_pageNum < 1) { - i_pageNum = 1; - // } - qDebug("ready to open "+o_file); - - if(f.isOpen()) f.close(); - f.setName( o_file); - - if ( !f.open( IO_ReadOnly)) { - QMessageBox::message( (tr("Note")), (tr("File not opened sucessfully.\n" +o_file)) ); - return false; - } - currentFilePos = 0; - pageStopArray.resize(3); - pageStopArray[0] = currentFilePos; - - fileHandle = f.handle(); - QString insertString; - QTextStream t(&f); - QString s; - for(int fd=0; fd < Lview->PageSize() ;fd++) { - s=t.readLine(); - // insertString+=s; - if(useWrap) - s.replace(QRegExp("\n"),""); - // s.replace(QRegExp("\r"),""); - Lview->insertLine( s,-1); - currentLine++; - } - - // int length = Lview->length(); - currentFilePos = f.at(); - - pageStopArray[1] = currentFilePos; - - qDebug("<<<<<<<<<<<%d current page is number %d, length %d, current %d, pageSize %d", - currentFilePos, i_pageNum, Lview->length(), pageStopArray[i_pageNum], Lview->PageSize() ); - - Lview->setMaxLines(Lview->PageSize()*2); - qDebug("Gulped %d", currentLine); - setCaption(title); - Lview->setAutoUpdate( TRUE); - - Lview->setCursorPosition(0,0,FALSE); - - // pages = (int)(( Lview->numLines() / Lview->editSize() ) / 2 ) +1; - //qDebug("number of pages %d", pages); - - loadCheck = true; - enableButtons(true); - if( donateMenu->count() == 3) { - donateMenu->insertItem("Current Title", this, SLOT( InfoBarClick() )); - } - Lview->setFocus(); - - // QCopEnvelope("QPE/System", "notBusy()" ); - return true; + // QCopEnvelope ( "QPE/System", "busy()" ); + // odebug << "Title is already set as "+title << oendl; + odebug << "sizeHint " << sizeHint().height() << " pageSize " << Lview->PageSize() << "" << oendl; + if( Lview->PageSize() < 4) { + + Lview->setMaximumHeight( sizeHint().height() ); + Lview->setMinimumHeight( sizeHint().height() ); + pointSize = Lview->fontInfo().pointSize(); + odebug << "sizeHint " << sizeHint().height() << " point size " << pointSize << "" << oendl; + if(pointSize < 10) + Lview->setFixedVisibleLines(19); + else + Lview->setFixedVisibleLines( ( (sizeHint().height() / pointSize ) * 2) -2); + } + + Config cfg("Gutenbrowser"); + cfg.setGroup("General"); + cfg.writeEntry("Current",fileName); + currentLine=0; + + file_name=fileName; + QString o_file = fileName; + + // if (i_pageNum < 1) { + i_pageNum = 1; + // } + odebug << "ready to open "+o_file << oendl; + + if(f.isOpen()) f.close(); + f.setName( o_file); + + if ( !f.open( IO_ReadOnly)) { + QMessageBox::message( (tr("Note")), (tr("File not opened sucessfully.\n" +o_file)) ); + return false; + } + currentFilePos = 0; + pageStopArray.resize(3); + pageStopArray[0] = currentFilePos; + + fileHandle = f.handle(); + QString insertString; + QTextStream t(&f); + QString s; + for(int fd=0; fd < Lview->PageSize() ;fd++) { + s=t.readLine(); + // insertString+=s; + if(useWrap) + s.replace(QRegExp("\n"),""); + // s.replace(QRegExp("\r"),""); + Lview->insertLine( s,-1); + currentLine++; + } + + // int length = Lview->length(); + currentFilePos = f.at(); + + pageStopArray[1] = currentFilePos; + + qDebug("<<<<<<<<<<<%d current page is number %d, length %d, current %d, pageSize %d", + currentFilePos, i_pageNum, Lview->length(), pageStopArray[i_pageNum], Lview->PageSize() ); + + Lview->setMaxLines(Lview->PageSize()*2); + odebug << "Gulped " << currentLine << "" << oendl; + setCaption(title); + Lview->setAutoUpdate( TRUE); + + Lview->setCursorPosition(0,0,FALSE); + + // pages = (int)(( Lview->numLines() / Lview->editSize() ) / 2 ) +1; + //odebug << "number of pages " << pages << "" << oendl; + + loadCheck = true; + enableButtons(true); + if( donateMenu->count() == 3) { + donateMenu->insertItem("Current Title", this, SLOT( InfoBarClick() )); + } + Lview->setFocus(); + + // QCopEnvelope("QPE/System", "notBusy()" ); + return true; } // end load void Gutenbrowser::Search() { - // if( searchDlg->isHidden()) - { - qDebug("Starting search dialog"); - searchDlg = new SearchDialog( this, "Etext Search", true); - searchDlg->setCaption( tr( "Etext Search" )); - // searchDlg->setLabel( "- searches etext"); - connect( searchDlg,SIGNAL( search_signal()),this,SLOT( search_slot())); - connect( searchDlg,SIGNAL( search_done_signal()),this,SLOT( searchdone_slot())); - - QString resultString; - QString string = searchDlg->searchString; - Lview->deselect(); - searchDlg->show(); - searchDlg->result(); - } + // if( searchDlg->isHidden()) + { + odebug << "Starting search dialog" << oendl; + searchDlg = new SearchDialog( this, "Etext Search", true); + searchDlg->setCaption( tr( "Etext Search" )); + // searchDlg->setLabel( "- searches etext"); + connect( searchDlg,SIGNAL( search_signal()),this,SLOT( search_slot())); + connect( searchDlg,SIGNAL( search_done_signal()),this,SLOT( searchdone_slot())); + + QString resultString; + QString string = searchDlg->searchString; + Lview->deselect(); + searchDlg->show(); + searchDlg->result(); + } } void Gutenbrowser::search_slot( ) { int line, col; if (!searchDlg /*&& !loadCheck */) - return; + return; Lview->getCursorPosition(&line,&col); QString to_find_string=searchDlg->get_text(); - // searchDlg->get_direction();// is true if searching backward + // searchDlg->get_direction();// is true if searching backward if ( last_search != 0 && searchDlg->get_direction() ){ - col = col - pattern.length() - 1 ; + col = col - pattern.length() - 1 ; } again: int result = doSearch( to_find_string , /* searchDlg->case_sensitive()*/ TRUE, searchDlg->forward_search(), line, col); if(result == 0){ - if(!searchDlg->get_direction()){ // forward search - int query = QMessageBox::information( searchDlg, "Find", - "End of document reached.\nContinue from the beginning?", - "Yes", "No", "", 0,1); - if (query == 0){ - line = 0; - col = 0; - goto again; - } - } else { //backward search - int query = QMessageBox::information( searchDlg, "Find", - "End of document reached.\nContinue from the beginning?", - "Yes", "No", "", 0,1); - if (query == 0){ - QString string = Lview->textLine( Lview->numLines() - 1 ); - line = Lview->numLines() - 1; - lineCheck = line; - col = string.length(); - last_search = -1; //BACKWARD; - goto again; - } - } + if(!searchDlg->get_direction()){ // forward search + int query = QMessageBox::information( searchDlg, "Find", + "End of document reached.\nContinue from the beginning?", + "Yes", "No", "", 0,1); + if (query == 0){ + line = 0; + col = 0; + goto again; + } + } else { //backward search + int query = QMessageBox::information( searchDlg, "Find", + "End of document reached.\nContinue from the beginning?", + "Yes", "No", "", 0,1); + if (query == 0){ + QString string = Lview->textLine( Lview->numLines() - 1 ); + line = Lview->numLines() - 1; + lineCheck = line; + col = string.length(); + last_search = -1; //BACKWARD; + goto again; + } + } } else { - //// emit CursorPositionChanged(); textLine + //// emit CursorPositionChanged(); textLine } } int Gutenbrowser::doSearch( const QString &s_pattern , bool case_sensitive, bool forward, int line, int col ) { - int i, length; - int pos = -1; - if(forward) { - QString string; - for(i = line; i < Lview->numLines(); i++) { - - string = Lview->textLine(i); - pos = string.find(s_pattern, i == line ? col : 0, case_sensitive); - if( pos != -1) { - int top = Lview->Top(); - length = s_pattern.length(); - if( i > Lview->lastRow() ) { - Lview->setCursorPosition(i,pos,FALSE); - for(int l = 0 ; l < length; l++) { - Lview->cursorRight(TRUE); - } - Lview->setCursorPosition( i , pos + length, TRUE ); - int newTop = Lview->Top(); - if(Lview->lastRow() > i) - Lview->ScrollUp( newTop - top); - // AdjustStatus(); - } else { - Lview->setCursorPosition(i,pos,FALSE); - for(int l = 0 ; l < length; l++) { - Lview->cursorRight(TRUE); - } - Lview->setCursorPosition( i , pos + length, TRUE ); - // AdjustStatus(); - } - pattern = s_pattern; - last_search = 1; //FORWARD; - return 1; - } - } - } else { //////////////// searching backwards - QString string; - for( i = line; i >= 0; i--) { - string = Lview->textLine(i); - int line_length = string.length(); - pos = string.findRev(s_pattern, line == i ? col : line_length , case_sensitive); - if (pos != -1) { - // int top = Lview->Top(); - length = s_pattern.length(); - if( i < Lview->Top() ) { - Lview->ScrollDown( Lview->PageSize() ); - Lview->MultiLine_Ex::pageUp( FALSE ); - if( ! (line == i && pos > col ) ) { - Lview->setCursorPosition( i ,pos ,FALSE ); - for(int l = 0 ; l < length; l++) { - Lview->cursorRight(TRUE); - } - Lview->setCursorPosition(i ,pos + length ,TRUE ); - // int newTop = Lview->Top(); - /* if(useSplitter) Rview->ScrollUp( newTop - top); - */ } - } else { - if( ! (line == i && pos > col ) ) { - Lview->setCursorPosition( i, pos, FALSE ); - for( int l = 0 ; l < length; l++) { - Lview->cursorRight( TRUE); - } - Lview->setCursorPosition( i, pos + length, TRUE ); - } - pattern = s_pattern; - last_search = -1; - return 1; - } - } - } - } - return 0; + int i, length; + int pos = -1; + if(forward) { + QString string; + for(i = line; i < Lview->numLines(); i++) { + + string = Lview->textLine(i); + pos = string.find(s_pattern, i == line ? col : 0, case_sensitive); + if( pos != -1) { + int top = Lview->Top(); + length = s_pattern.length(); + if( i > Lview->lastRow() ) { + Lview->setCursorPosition(i,pos,FALSE); + for(int l = 0 ; l < length; l++) { + Lview->cursorRight(TRUE); + } + Lview->setCursorPosition( i , pos + length, TRUE ); + int newTop = Lview->Top(); + if(Lview->lastRow() > i) + Lview->ScrollUp( newTop - top); + // AdjustStatus(); + } else { + Lview->setCursorPosition(i,pos,FALSE); + for(int l = 0 ; l < length; l++) { + Lview->cursorRight(TRUE); + } + Lview->setCursorPosition( i , pos + length, TRUE ); + // AdjustStatus(); + } + pattern = s_pattern; + last_search = 1; //FORWARD; + return 1; + } + } + } else { //////////////// searching backwards + QString string; + for( i = line; i >= 0; i--) { + string = Lview->textLine(i); + int line_length = string.length(); + pos = string.findRev(s_pattern, line == i ? col : line_length , case_sensitive); + if (pos != -1) { + // int top = Lview->Top(); + length = s_pattern.length(); + if( i < Lview->Top() ) { + Lview->ScrollDown( Lview->PageSize() ); + Lview->MultiLine_Ex::pageUp( FALSE ); + if( ! (line == i && pos > col ) ) { + Lview->setCursorPosition( i ,pos ,FALSE ); + for(int l = 0 ; l < length; l++) { + Lview->cursorRight(TRUE); + } + Lview->setCursorPosition(i ,pos + length ,TRUE ); + // int newTop = Lview->Top(); + /* if(useSplitter) Rview->ScrollUp( newTop - top); + */ } + } else { + if( ! (line == i && pos > col ) ) { + Lview->setCursorPosition( i, pos, FALSE ); + for( int l = 0 ; l < length; l++) { + Lview->cursorRight( TRUE); + } + Lview->setCursorPosition( i, pos + length, TRUE ); + } + pattern = s_pattern; + last_search = -1; + return 1; + } + } + } + } + return 0; } void Gutenbrowser::LibraryBtn() { - QString newestLibraryFile ="pgwhole.zip"; - QString zipFile; - // qDebug("Local Library is %s ", local_library.latin1()); - zipFile="/usr/bin/unzip"; - // qDebug("newestLibraryFile is %s ", newestLibraryFile.latin1()); - if( QFile::exists( local_library+newestLibraryFile)) { - if( QFile::exists(zipFile) ) { - UnZipIt(newestLibraryFile); - } - else - QMessageBox::message( "Note",( tr("Please install unzip")) ); - } - // LibraryDlg = new LibraryDialog( this, "Library Index"); - LibraryDlg->setCaption( tr( "Gutenberg Library")); - Config config("Gutenbrowser"); - config.setGroup("General"); - QString tmp=config.readEntry("RunBefore","FALSE"); - if(tmp=="FALSE") { - QMessageBox::message( "Note", - "<P>Your first time running gutenbrowser. You'll need to click the \"load library\" button to load the gutenberg index.</P>"); - config.writeEntry("RunBefore","TRUE"); - } - if(useSplitter) - LibraryDlg->useSmallInterface=FALSE; - - LibraryDlg->showMaximized(); - - if( LibraryDlg->exec() != 0 ) { - listItemNumber = LibraryDlg->DlglistItemNumber; - listItemFile = LibraryDlg->DlglistItemFile; - listItemYear = LibraryDlg->DlglistItemYear; - listItemTitle = LibraryDlg->DlglistItemTitle; - file_name = LibraryDlg->File_Name; - // qDebug("title is being set as "+title); - title = listItemTitle; - - // config.setGroup( "Proxy" ); - // if( LibraryDlg->checked == 1) { - // config.writeEntry("IsChecked", "TRUE"); - // } else { - // config.writeEntry("IsChecked", "FALSE"); - // } - // config.write(); - // config.read(); - if ( listItemNumber.isNull()) { - } else { - i_pageNum = 1; - if( file_name !="Error" && file_name.length() >2 && !file_name.isEmpty() ) { - //replace .zip with txt for opening it. - // printf("\nFile name is now\n"); - // printf(file_name); - // printf("\n"); - // - if( file_name.find(".zip")) - { - qDebug("Found zip file\n"); - // QStringList args; - // args="unzip"; - // args+="-o"; - // args+=local_library+file_name; - // args+="-d"; - // args+=local_library; - QString cmd = "/usr/bin/unzip -o " + local_library+file_name + " -d " + local_library; - qDebug("Issuing the command "+ cmd); - // unzipProc=new QProcess( this, "unzipProc" ); /// fark that idea! - // unzipProc->start(); - system(cmd); - remove( file_name); - - } - // // - // file_name = file_name.left(4)+ ".txt"; - if( LibraryDlg) - delete LibraryDlg; - setTitle(); - // QCopEnvelope ( "QPE/System", "busy()" ); - load( file_name); - } else { - printf("Not opening the file.\n"); - } - } - } - if(showMainList) { - if(!Lview->isHidden()) - Lview->hide(); - qApp->processEvents(); - showMainList=TRUE; - if(mainList->isHidden()) - mainList->show(); - fillWithTitles(); - qApp->processEvents(); - } else - setCentralWidget( Lview); - // QPEApplication::grabKeyboard(); - // fixKeys(); + QString newestLibraryFile ="pgwhole.zip"; + QString zipFile; + // odebug << "Local Library is " << local_library << " " << oendl; + zipFile="/usr/bin/unzip"; + // odebug << "newestLibraryFile is " << newestLibraryFile << " " << oendl; + if( QFile::exists( local_library+newestLibraryFile)) { + if( QFile::exists(zipFile) ) { + UnZipIt(newestLibraryFile); + } + else + QMessageBox::message( "Note",( tr("Please install unzip")) ); + } + // LibraryDlg = new LibraryDialog( this, "Library Index"); + LibraryDlg->setCaption( tr( "Gutenberg Library")); + Config config("Gutenbrowser"); + config.setGroup("General"); + QString tmp=config.readEntry("RunBefore","FALSE"); + if(tmp=="FALSE") { + QMessageBox::message( "Note", + "<P>Your first time running gutenbrowser. You'll need to click the \"load library\" button to load the gutenberg index.</P>"); + config.writeEntry("RunBefore","TRUE"); + } + if(useSplitter) + LibraryDlg->useSmallInterface=FALSE; + + LibraryDlg->showMaximized(); + + if( LibraryDlg->exec() != 0 ) { + listItemNumber = LibraryDlg->DlglistItemNumber; + listItemFile = LibraryDlg->DlglistItemFile; + listItemYear = LibraryDlg->DlglistItemYear; + listItemTitle = LibraryDlg->DlglistItemTitle; + file_name = LibraryDlg->File_Name; + // odebug << "title is being set as "+title << oendl; + title = listItemTitle; + + // config.setGroup( "Proxy" ); + // if( LibraryDlg->checked == 1) { + // config.writeEntry("IsChecked", "TRUE"); + // } else { + // config.writeEntry("IsChecked", "FALSE"); + // } + // config.write(); + // config.read(); + if ( listItemNumber.isNull()) { + } else { + i_pageNum = 1; + if( file_name !="Error" && file_name.length() >2 && !file_name.isEmpty() ) { + //replace .zip with txt for opening it. + // printf("\nFile name is now\n"); + // printf(file_name); + // printf("\n"); + // + if( file_name.find(".zip")) + { + odebug << "Found zip file\n" << oendl; + // QStringList args; + // args="unzip"; + // args+="-o"; + // args+=local_library+file_name; + // args+="-d"; + // args+=local_library; + QString cmd = "/usr/bin/unzip -o " + local_library+file_name + " -d " + local_library; + odebug << "Issuing the command "+ cmd << oendl; + // unzipProc=new QProcess( this, "unzipProc" ); /// fark that idea! + // unzipProc->start(); + system(cmd); + remove( file_name); + + } + // // + // file_name = file_name.left(4)+ ".txt"; + if( LibraryDlg) + delete LibraryDlg; + setTitle(); + // QCopEnvelope ( "QPE/System", "busy()" ); + load( file_name); + } else { + printf("Not opening the file.\n"); + } + } + } + if(showMainList) { + if(!Lview->isHidden()) + Lview->hide(); + qApp->processEvents(); + showMainList=TRUE; + if(mainList->isHidden()) + mainList->show(); + fillWithTitles(); + qApp->processEvents(); + } else + setCentralWidget( Lview); + // QPEApplication::grabKeyboard(); + // fixKeys(); } void Gutenbrowser::OpenBtn() { - QString s_temp; - s_temp = status; - OpenEtext* OpenDlg; - OpenDlg = new OpenEtext(this,"OpenDlg"); - OpenDlg->showMaximized(); - - if( OpenDlg->exec() != 0) { - title = OpenDlg->openFileTitle; - qDebug("title open as "+title); - file_name = OpenDlg->file; - i_pageNum = 1; - - if( !file_name.isEmpty() || file_name.length() > 2 ) { - if(showMainList) { - showMainList=FALSE; - qDebug("ShowMainList is now false"); - mainList->hide(); - Lview->show(); - qApp->processEvents(); - } - Lview->clear(); - // QCopEnvelope ( "QPE/System", "busy()" ); - load(file_name); - } else { - qDebug("file_name is empty!"); - if(showMainList) { - if(!Lview->isHidden()) - Lview->hide(); - qApp->processEvents(); - if(mainList->isHidden()) - mainList->show(); - fillWithTitles(); - qApp->processEvents(); - } - - } - } - if( OpenDlg) - delete OpenDlg; - /* - Config config("Gutenbrowser"); - config.setGroup( title); - file_name = config.readEntry("File Name", ""); - i_pageNum = config.readNumEntry("Page Number", -1); - int Bmrkrow = config.readNumEntry("LineNumber", -1); - if(Bmrkrow > -1) { - if( Bmrkrow > Lview->topRow() ) { - Lview->setCursorPosition( Bmrkrow ,0, FALSE ); - Lview->ScrollUp( Bmrkrow - Lview->topRow() ); - // AdjustStatus(); + QString s_temp; + s_temp = status; + OpenEtext* OpenDlg; + OpenDlg = new OpenEtext(this,"OpenDlg"); + OpenDlg->showMaximized(); + + if( OpenDlg->exec() != 0) { + title = OpenDlg->openFileTitle; + odebug << "title open as "+title << oendl; + file_name = OpenDlg->file; + i_pageNum = 1; + + if( !file_name.isEmpty() || file_name.length() > 2 ) { + if(showMainList) { + showMainList=FALSE; + odebug << "ShowMainList is now false" << oendl; + mainList->hide(); + Lview->show(); + qApp->processEvents(); + } + Lview->clear(); + // QCopEnvelope ( "QPE/System", "busy()" ); + load(file_name); + } else { + odebug << "file_name is empty!" << oendl; + if(showMainList) { + if(!Lview->isHidden()) + Lview->hide(); + qApp->processEvents(); + if(mainList->isHidden()) + mainList->show(); + fillWithTitles(); + qApp->processEvents(); + } + + } + } + if( OpenDlg) + delete OpenDlg; + /* + Config config("Gutenbrowser"); + config.setGroup( title); + file_name = config.readEntry("File Name", ""); + i_pageNum = config.readNumEntry("Page Number", -1); + int Bmrkrow = config.readNumEntry("LineNumber", -1); + if(Bmrkrow > -1) { + if( Bmrkrow > Lview->topRow() ) { + Lview->setCursorPosition( Bmrkrow ,0, FALSE ); + Lview->ScrollUp( Bmrkrow - Lview->topRow() ); + // AdjustStatus(); } else if( Bmrkrow < Lview->topRow() ) { - Lview->setCursorPosition( Lview->topRow() - Bmrkrow ,0, FALSE ); - Lview->ScrollDown( Lview->topRow() - Bmrkrow ); - // AdjustStatus(); - } - } - */ - // ResizeEdits(); + Lview->setCursorPosition( Lview->topRow() - Bmrkrow ,0, FALSE ); + Lview->ScrollDown( Lview->topRow() - Bmrkrow ); + // AdjustStatus(); + } + } + */ + // ResizeEdits(); } void Gutenbrowser::ChangeFont() { #ifndef Q_WS_QWS - bool ok; + bool ok; - weight= Lview->fontInfo().weight(); - italic = Lview->fontInfo().italic(); - bold=Lview->fontInfo().bold(); - pointSize= Lview->fontInfo().pointSize(); - fontStr=Lview->fontInfo().family(); + weight= Lview->fontInfo().weight(); + italic = Lview->fontInfo().italic(); + bold=Lview->fontInfo().bold(); + pointSize= Lview->fontInfo().pointSize(); + fontStr=Lview->fontInfo().family(); - if(italic == true) + if(italic == true) italicStr="TRUE"; - else + else italicStr="FALSE"; - QFont currentfont( fontStr, pointSize, weight, italic ); + QFont currentfont( fontStr, pointSize, weight, italic ); - if (ok) { - QFontInfo fontInfo(font ); - fontStr=fontInfo.family(); + if (ok) { + QFontInfo fontInfo(font ); + fontStr=fontInfo.family(); - pointSize= fontInfo.pointSize(); + pointSize= fontInfo.pointSize(); - font.setFontSize(pointSize); + font.setFontSize(pointSize); - pointSizeStr.setNum( pointSize); + pointSizeStr.setNum( pointSize); - weight= fontInfo.weight(); - weightStr.setNum( weight); - italic =fontInfo.italic(); - bold=fontInfo.bold(); + weight= fontInfo.weight(); + weightStr.setNum( weight); + italic =fontInfo.italic(); + bold=fontInfo.bold(); - if(italic == true) - italicStr="TRUE"; - else - italicStr="FALSE"; - if(bold == true) - boldStr="TRUE"; - else - boldStr="FALSE"; + if(italic == true) + italicStr="TRUE"; + else + italicStr="FALSE"; + if(bold == true) + boldStr="TRUE"; + else + boldStr="FALSE"; pointSizeStr.setNum( pointSize); config.setGroup( "Font" ); config.writeEntry("Family", fontStr ); config.writeEntry("Size", pointSizeStr ); config.writeEntry("Weight", weightStr ); config.writeEntry("Italic", italicStr ); config.writeEntry("Bold", boldStr ); - // config.write(); + // config.write(); Lview->setFont(font); QRect lRect; QRect rRect; lRect = Lview->rect(); if(useSplitter) { } - // if(loadCheck) { - // ResizeEdits(); - // } + // if(loadCheck) { + // ResizeEdits(); + // } update(); - } + } #endif } /* - performs dictionary look ups on the web */ + performs dictionary look ups on the web */ void Gutenbrowser::LookupBtn() { - QString text; - if( Lview->hasSelectedText()) { - Lview->copy(); - } - QClipboard *cb = QApplication::clipboard(); - text = cb->text(); - int eexit=QMessageBox::information(this, - "Note","Do you want to lookup\n\""+text+"\"\non websters web dictionary?", - QMessageBox::Yes, QMessageBox::No); - if (eexit== 3) { - // this link for sale!! - qApp->processEvents(); - goGetit( "http://www.m-w.com/cgi-bin/dictionary?" + text, true); - } + QString text; + if( Lview->hasSelectedText()) { + Lview->copy(); + } + QClipboard *cb = QApplication::clipboard(); + text = cb->text(); + int eexit=QMessageBox::information(this, + "Note","Do you want to lookup\n\""+text+"\"\non websters web dictionary?", + QMessageBox::Yes, QMessageBox::No); + if (eexit== 3) { + // this link for sale!! + qApp->processEvents(); + goGetit( "http://www.m-w.com/cgi-bin/dictionary?" + text, true); + } } void Gutenbrowser::ClearEdit() { - Lview->setText(""); - loadCheck = false; - status = ( tr("Gutenbrowser")); - InfoBar->setText( ""); - setCaption( tr("Gutenbrowser")); - i_pageNum = 0; - enableButtons(false); - - if(!showMainList) { - Lview->hide(); - showMainList=TRUE; - mainList->show(); - fillWithTitles(); - qApp->processEvents(); - } - if(donateMenu->idAt(3) != -1) - donateMenu->removeItemAt(3); + Lview->setText(""); + loadCheck = false; + status = ( tr("Gutenbrowser")); + InfoBar->setText( ""); + setCaption( tr("Gutenbrowser")); + i_pageNum = 0; + enableButtons(false); + + if(!showMainList) { + Lview->hide(); + showMainList=TRUE; + mainList->show(); + fillWithTitles(); + qApp->processEvents(); + } + if(donateMenu->idAt(3) != -1) + donateMenu->removeItemAt(3); } bool Gutenbrowser::getTitle( const char *file ) { - QString s_file; - QString filer = file; - if( filer.contains(local_library, TRUE)) { - QFileInfo f(file); - s_file = f.fileName(); - } else { - s_file = filer; - } - 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); - QString ramble = config.readEntry(temp, "" ); - - if( strcmp(ramble, s_file) == 0) { - config.setGroup( "Titles" ); - title = config.readEntry(ramble, ""); - // qDebug("(getTitle)title is being set as "+title); - } - } - return true; + QString s_file; + QString filer = file; + if( filer.contains(local_library, TRUE)) { + QFileInfo f(file); + s_file = f.fileName(); + } else { + s_file = filer; + } + 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); + QString ramble = config.readEntry(temp, "" ); + + if( strcmp(ramble, s_file) == 0) { + config.setGroup( "Titles" ); + title = config.readEntry(ramble, ""); + // odebug << "(getTitle)title is being set as "+title << oendl; + } + } + return true; } void Gutenbrowser::searchdone_slot() { - // if (!searchDlg) - // return; - // searchDlg->hide(); - // Lview->setFocus(); - this->setFocus(); + // if (!searchDlg) + // return; + // searchDlg->hide(); + // Lview->setFocus(); + this->setFocus(); last_search = 0; - // ResizeEdits(); + // ResizeEdits(); } /* - sets the status message */ + sets the status message */ bool Gutenbrowser::setStatus() { #ifndef Q_WS_QWS - QString s_pages; - s_pages.setNum( pages); - QString chNum; - statusTop = status.left( status.find(" ", TRUE) ); - status.append(chNum.setNum( i_pageNum)); - status += " / " + s_pages; - - if(loadCheck) { - statusBar->message( status); - InfoBar->setText( title); - } else { - } + QString s_pages; + s_pages.setNum( pages); + QString chNum; + statusTop = status.left( status.find(" ", TRUE) ); + status.append(chNum.setNum( i_pageNum)); + status += " / " + s_pages; + + if(loadCheck) { + statusBar->message( status); + InfoBar->setText( title); + } else { + } #else - QString msg; - msg.sprintf(title+" %d", i_pageNum); - setCaption( msg); + QString msg; + msg.sprintf(title+" %d", i_pageNum); + setCaption( msg); #endif - return true; + return true; } void Gutenbrowser::keyReleaseEvent( QKeyEvent *e) { - switch ( e->key() ) { - - case Key_M: - // Bookmark(); - break; - case Key_D: - DownloadIndex(); - break; - case Key_L: - LibraryBtn(); - break; - case Key_O: - OpenBtn(); - break; - case Key_F: - ForwardBtn(); - break; - case Key_B: - BackBtn(); - break; - case Key_P: - PrintBtn(); - break; - case Key_S: - SearchBtn(); - break; - case Key_E: - ByeBye(); - break; - case Key_R: - // setBookmark(); - break; - case Key_T: - ChangeFont(); - break; - case Key_C: - ClearEdit(); - break; - case Key_H: - HelpBtn(); - break; - case Key_K: - LookupBtn(); - break; - case Key_U:// hide menu - if(menubar->isHidden() ) + switch ( e->key() ) { + + case Key_M: + // Bookmark(); + break; + case Key_D: + DownloadIndex(); + break; + case Key_L: + LibraryBtn(); + break; + case Key_O: + OpenBtn(); + break; + case Key_F: + ForwardBtn(); + break; + case Key_B: + BackBtn(); + break; + case Key_P: + PrintBtn(); + break; + case Key_S: + SearchBtn(); + break; + case Key_E: + ByeBye(); + break; + case Key_R: + // setBookmark(); + break; + case Key_T: + ChangeFont(); + break; + case Key_C: + ClearEdit(); + break; + case Key_H: + HelpBtn(); + break; + case Key_K: + LookupBtn(); + break; + case Key_U:// hide menu + if(menubar->isHidden() ) menubar->show(); - else + else menubar->hide(); - break; - case Key_I: - hideButtons(); - break; - ////////////////////////////// Zaurus keys - case Key_Home: - // BeginBtn(); - break; + break; + case Key_I: + hideButtons(); + break; + ////////////////////////////// Zaurus keys + case Key_Home: + // BeginBtn(); + break; case Key_F9: //activity - OpenBtn(); - break; + OpenBtn(); + break; case Key_F10: //contacts - hideButtons(); - break; + hideButtons(); + break; case Key_F11: //menu - if(menubar->isHidden() ) - menubar->show(); - else - menubar->hide(); - break; + if(menubar->isHidden() ) + menubar->show(); + else + menubar->hide(); + break; case Key_F12: //home - BeginBtn(); - break; + BeginBtn(); + break; case Key_F13: //mail LibraryBtn(); break; - case Key_Space: - if(loadCheck) + case Key_Space: + if(loadCheck) ForwardBtn(); - // else - // Bookmark(); - break; - case Key_Down: - if(loadCheck) { - // if( !e->isAutoRepeat() ) - // AdjustStatus(); - // } else { - // LibraryBtn(); - // ForwardBtn(); - } - - // ForwardButton->setFocus(); - // Lview->setFocus(); - // if(s_Wrap=="FALSE") - // Lview->MultiLine_Ex::ScrollDown( 1); - // LibraryBtn(); - break; - case Key_Up: - if(loadCheck) { - // if( !e->isAutoRepeat() ) - // AdjustStatus(); - // } else { - // OpenBtn(); - // BackBtn(); - } - // BackButton->setFocus(); - // Lview->setFocus(); - // if(s_Wrap=="FALSE") - // Lview->MultiLine_Ex::ScrollUp( 1); - - // LibraryBtn(); - break; - case Key_Right: - ForwardButton->setFocus(); - ForwardBtn(); - // LibraryBtn(); - break; - case Key_Left: - BackBtn(); - BackButton->setFocus(); - // OpenBtn(); - break; - case Key_Escape: - ByeBye(); - break; - case Key_PageUp: - BackBtn(); - break; - case Key_PageDown: - ForwardBtn(); - break; - - ////////////////////////////// Zaurus keys - }; + // else + // Bookmark(); + break; + case Key_Down: + if(loadCheck) { + // if( !e->isAutoRepeat() ) + // AdjustStatus(); + // } else { + // LibraryBtn(); + // ForwardBtn(); + } + + // ForwardButton->setFocus(); + // Lview->setFocus(); + // if(s_Wrap=="FALSE") + // Lview->MultiLine_Ex::ScrollDown( 1); + // LibraryBtn(); + break; + case Key_Up: + if(loadCheck) { + // if( !e->isAutoRepeat() ) + // AdjustStatus(); + // } else { + // OpenBtn(); + // BackBtn(); + } + // BackButton->setFocus(); + // Lview->setFocus(); + // if(s_Wrap=="FALSE") + // Lview->MultiLine_Ex::ScrollUp( 1); + + // LibraryBtn(); + break; + case Key_Right: + ForwardButton->setFocus(); + ForwardBtn(); + // LibraryBtn(); + break; + case Key_Left: + BackBtn(); + BackButton->setFocus(); + // OpenBtn(); + break; + case Key_Escape: + ByeBye(); + break; + case Key_PageUp: + BackBtn(); + break; + case Key_PageDown: + ForwardBtn(); + break; + + ////////////////////////////// Zaurus keys + }; } void Gutenbrowser::keyPressEvent( QKeyEvent *e) { - switch ( e->key() ) { - // case Key_Next: - // ForwardBtn(); - // break; - // case Key_Prior: - // BackBtn(); - // break; - // case Key_Space: - // ForwardBtn(); - // break; - // case Key_Down: - // Lview->MultiLine_Ex::ScrollUp( 1); - // if(useSplitter) Rview->MultiLine_Ex::ScrollUp( 1); - // break; - // case Key_Up: - // if( Lview->Top() != 0) { - // Lview->MultiLine_Ex::ScrollDown( 1); - // if(useSplitter) Rview->MultiLine_Ex::ScrollDown( 1); - // } - // break; - } + switch ( e->key() ) { + // case Key_Next: + // ForwardBtn(); + // break; + // case Key_Prior: + // BackBtn(); + // break; + // case Key_Space: + // ForwardBtn(); + // break; + // case Key_Down: + // Lview->MultiLine_Ex::ScrollUp( 1); + // if(useSplitter) Rview->MultiLine_Ex::ScrollUp( 1); + // break; + // case Key_Up: + // if( Lview->Top() != 0) { + // Lview->MultiLine_Ex::ScrollDown( 1); + // if(useSplitter) Rview->MultiLine_Ex::ScrollDown( 1); + // } + // break; + } } void Gutenbrowser::resizeEvent( QResizeEvent *ev) { - // qDebug("resize: %d,%d\n",ev->size().width(),ev->size().height()); + // odebug << "resize: " << ev->size().width() << "," << ev->size().height() << "\n" << oendl; - if( !LibraryDlg->isHidden()) - LibraryDlg->resize(ev->size().width(),ev->size().height() ); + if( !LibraryDlg->isHidden()) + LibraryDlg->resize(ev->size().width(),ev->size().height() ); - // if( loadCheck == true) { - // ResizeEdits(); - // AdjustStatus(); - // } + // if( loadCheck == true) { + // ResizeEdits(); + // AdjustStatus(); + // } } void Gutenbrowser::doOptions() { - optionsDialog* optDlg; - optDlg = new optionsDialog( this,"Options_Dlg", true); - QString Ddir; - Config config("Gutenbrowser"); - config.setGroup( "General" ); - QFont myFont; - optDlg->showMaximized(); - - if( optDlg->exec() !=0) { - qApp->processEvents(); - brow=optDlg->browserName; - toggleButtonIcons( optDlg->useIcon); - ftp_host= optDlg->ftp_host; - ftp_base_dir= optDlg->ftp_base_dir; - brow=optDlg->browserName; - Ddir=optDlg->downloadDirEdit->text(); - - qDebug("writing library config"); - Config config("Gutenbrowser"); - config.setGroup("General"); - - QString dirname= optDlg->downloadDirEdit->text(); - if(dirname.right(1)!="/") - dirname+="/"; - config.writeEntry( "DownloadDirectory",dirname); - QDir newDir( optDlg->downloadDirEdit->text()); - - if( !newDir.exists() ) { - int exit=QMessageBox::information(this, "Note", "Ok, to make a new directory\n"+Ddir+" ?", - QMessageBox::Ok, QMessageBox::Cancel); - if (exit==1) { - QString cmd="mkdir -p "; - cmd+=Ddir.latin1(); - system(cmd); - qDebug("Making new dir "+cmd); - if(Ddir.right(1)!="/") { - Ddir+="/"; - } - config.writeEntry("DownloadDirectory",Ddir); - } - } + optionsDialog* optDlg; + optDlg = new optionsDialog( this,"Options_Dlg", true); + QString Ddir; + Config config("Gutenbrowser"); + config.setGroup( "General" ); + QFont myFont; + optDlg->showMaximized(); + + if( optDlg->exec() !=0) { + qApp->processEvents(); + brow=optDlg->browserName; + toggleButtonIcons( optDlg->useIcon); + ftp_host= optDlg->ftp_host; + ftp_base_dir= optDlg->ftp_base_dir; + brow=optDlg->browserName; + Ddir=optDlg->downloadDirEdit->text(); + + odebug << "writing library config" << oendl; + Config config("Gutenbrowser"); + config.setGroup("General"); + + QString dirname= optDlg->downloadDirEdit->text(); + if(dirname.right(1)!="/") + dirname+="/"; + config.writeEntry( "DownloadDirectory",dirname); + QDir newDir( optDlg->downloadDirEdit->text()); + + if( !newDir.exists() ) { + int exit=QMessageBox::information(this, "Note", "Ok, to make a new directory\n"+Ddir+" ?", + QMessageBox::Ok, QMessageBox::Cancel); + if (exit==1) { + QString cmd="mkdir -p "; + cmd+=Ddir.latin1(); + system(cmd); + odebug << "Making new dir "+cmd << oendl; + if(Ddir.right(1)!="/") { + Ddir+="/"; + } + config.writeEntry("DownloadDirectory",Ddir); + } + } // if(optDlg->styleChanged) // setStyle( optDlg->styleInt); - if(optDlg->b_qExit==TRUE) - b_queryExit=TRUE; - else - b_queryExit=FALSE; - - if(optDlg->fontDlg-> changedFonts) { - qDebug("Setting font"); - myFont=optDlg->fontDlg->selectedFont; - Lview->setFont( myFont); - } - - if(optDlg->useWordWrap_CheckBox->isChecked() ) { - qDebug("WORD WRAP is set"); - Lview->setWordWrap(QMultiLineEdit::WidgetWidth); - useWrap=true; - } else { - qDebug("Word wrap is NOT set"); - Lview->setWordWrap(QMultiLineEdit::NoWrap); - useWrap=false; - } - } - if(showMainList) { - if(!Lview->isHidden()) - Lview->hide(); - qApp->processEvents(); - if(mainList->isHidden()) - mainList->show(); - fillWithTitles(); - } else { - Lview->show(); - showMainList=FALSE; - mainList->hide(); - } - qApp->processEvents(); - update(); + if(optDlg->b_qExit==TRUE) + b_queryExit=TRUE; + else + b_queryExit=FALSE; + + if(optDlg->fontDlg-> changedFonts) { + odebug << "Setting font" << oendl; + myFont=optDlg->fontDlg->selectedFont; + Lview->setFont( myFont); + } + + if(optDlg->useWordWrap_CheckBox->isChecked() ) { + odebug << "WORD WRAP is set" << oendl; + Lview->setWordWrap(QMultiLineEdit::WidgetWidth); + useWrap=true; + } else { + odebug << "Word wrap is NOT set" << oendl; + Lview->setWordWrap(QMultiLineEdit::NoWrap); + useWrap=false; + } + } + if(showMainList) { + if(!Lview->isHidden()) + Lview->hide(); + qApp->processEvents(); + if(mainList->isHidden()) + mainList->show(); + fillWithTitles(); + } else { + Lview->show(); + showMainList=FALSE; + mainList->hide(); + } + qApp->processEvents(); + update(); } bool Gutenbrowser::setTitle() { - if( file_name.contains( local_library)) { - QFileInfo f( file_name); - QString s_file = f.fileName(); - file_name = s_file; - } - - int test = 0; - 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); - QString ramble = config.readEntry(temp, "" ); - - if( strcmp(ramble, file_name) == 0) { - test = 1; - } - } - if (test == 0) { - config.writeEntry("NumberOfFiles",i_numofFiles +1 ); - QString interger; - interger.setNum( i_numofFiles +1); - config.writeEntry(interger, file_name); - - config.setGroup( "Titles" ); - config.writeEntry(file_name,listItemTitle); - } - test = 0; - // config.write(); - return true; + if( file_name.contains( local_library)) { + QFileInfo f( file_name); + QString s_file = f.fileName(); + file_name = s_file; + } + + int test = 0; + 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); + QString ramble = config.readEntry(temp, "" ); + + if( strcmp(ramble, file_name) == 0) { + test = 1; + } + } + if (test == 0) { + config.writeEntry("NumberOfFiles",i_numofFiles +1 ); + QString interger; + interger.setNum( i_numofFiles +1); + config.writeEntry(interger, file_name); + + config.setGroup( "Titles" ); + config.writeEntry(file_name,listItemTitle); + } + test = 0; + // config.write(); + return true; } /*Calls new fangled network dialog */ void Gutenbrowser::OnNetworkDialog( const QString &/*networkUrl*/, const QString &/*output*/) { - // qDebug(networkUrl); - // qDebug(output); - // #ifndef Q_WS_QWS - // NetworkDialog *NetworkDlg; - // if( networkUrl.length() < 4 ) networkUrl= "http://sailor.gutenberg.org/mirror.sites.html"; - // NetworkDlg = new NetworkDialog( this,"Network Protocol Dialog", TRUE, 0, networkUrl, output); - // if( NetworkDlg->exec() != 0 ) { - // } - // if(NetworkDlg) - // delete NetworkDlg; - // #endif + // odebug << networkUrl << oendl; + // odebug << output << oendl; + // #ifndef Q_WS_QWS + // NetworkDialog *NetworkDlg; + // if( networkUrl.length() < 4 ) networkUrl= "http://sailor.gutenberg.org/mirror.sites.html"; + // NetworkDlg = new NetworkDialog( this,"Network Protocol Dialog", TRUE, 0, networkUrl, output); + // if( NetworkDlg->exec() != 0 ) { + // } + // if(NetworkDlg) + // delete NetworkDlg; + // #endif } void Gutenbrowser::donateGutenberg() { - int exit=QMessageBox::information(this, "Info", "http://www.gutenberg.org\ndonate@gutenberg.net", - QMessageBox::Ok, QMessageBox::Cancel); + int exit=QMessageBox::information(this, "Info", "http://www.gutenberg.org\ndonate@gutenberg.net", + QMessageBox::Ok, QMessageBox::Cancel); - if (exit==1) { - } else { - }; + if (exit==1) { + } else { + }; } void Gutenbrowser::donateByteMonkie() { } void Gutenbrowser::writeConfig() { - // config.read(); - // Config config("Gutenbrowser"); - // #ifndef Q_WS_QWS - // config.setGroup( "Geometry" ); - // QString s; - // QString globalPosition; - // QPoint point; - // point=mapToGlobal(QPoint(0,0) ); - // int posiX, posiY; - // posiX=point.x(); - // posiY=point.y(); - // globalPosition.sprintf("%i,%i", posiX, posiY); - - // QRect frameRect; - // frameRect = geometry(); - // s.sprintf("%i,%i", frameRect.width(), frameRect.height()); - // config.writeEntry("Frame", s); - // config.writeEntry("Position", globalPosition); - - // if( useIcons==TRUE) - // config.writeEntry("Icons", "TRUE"); - // else - // config.writeEntry("Icons", "FALSE"); - // #endif - - // #ifndef Q_WS_QWS - // QString temp; - // temp.setNum(styleI, 10); - // config.setGroup( "StyleIze" ); - // config.writeEntry( "Style", temp); - // #endif - - // config.setGroup("General"); + // config.read(); + // Config config("Gutenbrowser"); + // #ifndef Q_WS_QWS + // config.setGroup( "Geometry" ); + // QString s; + // QString globalPosition; + // QPoint point; + // point=mapToGlobal(QPoint(0,0) ); + // int posiX, posiY; + // posiX=point.x(); + // posiY=point.y(); + // globalPosition.sprintf("%i,%i", posiX, posiY); + + // QRect frameRect; + // frameRect = geometry(); + // s.sprintf("%i,%i", frameRect.width(), frameRect.height()); + // config.writeEntry("Frame", s); + // config.writeEntry("Position", globalPosition); + + // if( useIcons==TRUE) + // config.writeEntry("Icons", "TRUE"); + // else + // config.writeEntry("Icons", "FALSE"); + // #endif + + // #ifndef Q_WS_QWS + // QString temp; + // temp.setNum(styleI, 10); + // config.setGroup( "StyleIze" ); + // config.writeEntry( "Style", temp); + // #endif + + // config.setGroup("General"); } void Gutenbrowser::annotations() { - // #ifndef Q_WS_QWS - // QMessageBox::message("Note","hi annotate"); - // lastBmkButton->setDown(FALSE); - // #endif + // #ifndef Q_WS_QWS + // QMessageBox::message("Note","hi annotate"); + // lastBmkButton->setDown(FALSE); + // #endif } void Gutenbrowser::hideButtons() { if( !buttonsHidden) { - buttonsHidden=TRUE; - LibraryButton->hide(); - SearchButton->hide(); - InfoBar->hide(); - OpenButton->hide(); - BackButton->hide(); - ForwardButton->hide(); - setBookmarkButton->hide(); - lastBmkButton->hide(); - dictionaryButton->hide(); - if(useSplitter) { - ClearButton->hide(); - PrintButton->hide(); - beginButton->hide(); - HelpButton->hide(); - FontButton->hide(); - ExitButton->hide(); - OptionsButton->hide(); - DownloadButton->hide(); - } + buttonsHidden=TRUE; + LibraryButton->hide(); + SearchButton->hide(); + InfoBar->hide(); + OpenButton->hide(); + BackButton->hide(); + ForwardButton->hide(); + setBookmarkButton->hide(); + lastBmkButton->hide(); + dictionaryButton->hide(); + if(useSplitter) { + ClearButton->hide(); + PrintButton->hide(); + beginButton->hide(); + HelpButton->hide(); + FontButton->hide(); + ExitButton->hide(); + OptionsButton->hide(); + DownloadButton->hide(); + } } else { - buttonsHidden=FALSE; - - LibraryButton->show(); - SearchButton->show(); - InfoBar->show(); - OpenButton->show(); - BackButton->show(); - ForwardButton->show(); - setBookmarkButton->show(); - lastBmkButton->show(); - dictionaryButton->show(); - if(useSplitter) { - ClearButton->show(); - PrintButton->show(); - beginButton->show(); - HelpButton->show(); - FontButton->show(); - ExitButton->show(); - OptionsButton->show(); - DownloadButton->show(); - } + buttonsHidden=FALSE; + + LibraryButton->show(); + SearchButton->show(); + InfoBar->show(); + OpenButton->show(); + BackButton->show(); + ForwardButton->show(); + setBookmarkButton->show(); + lastBmkButton->show(); + dictionaryButton->show(); + if(useSplitter) { + ClearButton->show(); + PrintButton->show(); + beginButton->show(); + HelpButton->show(); + FontButton->show(); + ExitButton->show(); + OptionsButton->show(); + DownloadButton->show(); + } } } void Gutenbrowser::focusInEvent( QFocusEvent* ) { } void Gutenbrowser::focusOutEvent( QFocusEvent* ) { } void Gutenbrowser::cleanUp( ) { - writeConfig(); - QPEApplication::grabKeyboard(); + writeConfig(); + QPEApplication::grabKeyboard(); - QPEApplication::ungrabKeyboard(); - // qDebug("Cleanup"); - if(f.isOpen()) f.close(); + QPEApplication::ungrabKeyboard(); + // odebug << "Cleanup" << oendl; + if(f.isOpen()) f.close(); } void Gutenbrowser::fixKeys() { - qDebug("Attempting to fix keys"); + odebug << "Attempting to fix keys" << oendl; } void Gutenbrowser::enableButtons(bool b) { - BackButton->setEnabled(b); - ForwardButton->setEnabled(b); - SearchButton->setEnabled(b); - setBookmarkButton->setEnabled(b); - dictionaryButton->setEnabled(b); - InfoBar->setEnabled(b); - - editMenu->setItemEnabled( -5, b); - editMenu->setItemEnabled( -6, b); - editMenu->setItemEnabled( -7, b); - editMenu->setItemEnabled( -8, b); + BackButton->setEnabled(b); + ForwardButton->setEnabled(b); + SearchButton->setEnabled(b); + setBookmarkButton->setEnabled(b); + dictionaryButton->setEnabled(b); + InfoBar->setEnabled(b); + + editMenu->setItemEnabled( -5, b); + editMenu->setItemEnabled( -6, b); + editMenu->setItemEnabled( -7, b); + editMenu->setItemEnabled( -8, b); } void Gutenbrowser::fillWithTitles() { - Config config("Gutenbrowser"); - config.setGroup( "Files" ); - int i_numofFiles = config.readNumEntry("NumberOfFiles", 0); - mainList->clear(); - QString temp; - for (int i = 1; i <= i_numofFiles; i++) { - temp.setNum(i); - config.setGroup( "Files" ); - QString ramble = config.readEntry(temp, "" ); - config.setGroup( "Titles" ); - temp = config.readEntry(ramble, ""); - if( !temp.isEmpty()) { - mainList->insertItem ( Resource::loadPixmap("gutenbrowser/gutenbrowser_sm"), temp, -1); - } - } + Config config("Gutenbrowser"); + config.setGroup( "Files" ); + int i_numofFiles = config.readNumEntry("NumberOfFiles", 0); + mainList->clear(); + QString temp; + for (int i = 1; i <= i_numofFiles; i++) { + temp.setNum(i); + config.setGroup( "Files" ); + QString ramble = config.readEntry(temp, "" ); + config.setGroup( "Titles" ); + temp = config.readEntry(ramble, ""); + if( !temp.isEmpty()) { + mainList->insertItem ( Resource::loadPixmap("gutenbrowser/gutenbrowser_sm"), temp, -1); + } + } } void Gutenbrowser::listClickedSlot( QListBoxItem * index) { - // if( !working) { - // working=true; - if(index) { - // QCopEnvelope ( "QPE/System", "busy()" ); - title = index->text(); - showMainList=FALSE; - mainList->hide(); - Lview->show(); - qApp->processEvents(); - QString temp; - temp.setNum( mainList->currentItem() + 1); - // openFileTitle = title; - Config config("Gutenbrowser"); - config.setGroup( "Files" ); - QString file = config.readEntry(temp, ""); - qDebug("About to load"); - if( Lview->isVisible()) - load(file); - - config.setGroup( title); - file_name = config.readEntry("File Name", ""); - i_pageNum = config.readNumEntry("Page Number", 1); - int Bmrkrow = config.readNumEntry("LineNumber", -1); - if(Bmrkrow > -1) { - if( Bmrkrow > Lview->topRow() ) { - Lview->setCursorPosition( Bmrkrow /* - Lview->topRow() */,0, FALSE ); - Lview->ScrollUp( Bmrkrow - Lview->topRow() ); - // AdjustStatus(); - } - else if( Bmrkrow < Lview->topRow() ) { - Lview->setCursorPosition( Lview->topRow() - Bmrkrow ,0, FALSE ); - Lview->ScrollDown( Lview->topRow() - Bmrkrow ); - // AdjustStatus(); - } - } - } + // if( !working) { + // working=true; + if(index) { + // QCopEnvelope ( "QPE/System", "busy()" ); + title = index->text(); + showMainList=FALSE; + mainList->hide(); + Lview->show(); + qApp->processEvents(); + QString temp; + temp.setNum( mainList->currentItem() + 1); + // openFileTitle = title; + Config config("Gutenbrowser"); + config.setGroup( "Files" ); + QString file = config.readEntry(temp, ""); + odebug << "About to load" << oendl; + if( Lview->isVisible()) + load(file); + + config.setGroup( title); + file_name = config.readEntry("File Name", ""); + i_pageNum = config.readNumEntry("Page Number", 1); + int Bmrkrow = config.readNumEntry("LineNumber", -1); + if(Bmrkrow > -1) { + if( Bmrkrow > Lview->topRow() ) { + Lview->setCursorPosition( Bmrkrow /* - Lview->topRow() */,0, FALSE ); + Lview->ScrollUp( Bmrkrow - Lview->topRow() ); + // AdjustStatus(); + } + else if( Bmrkrow < Lview->topRow() ) { + Lview->setCursorPosition( Lview->topRow() - Bmrkrow ,0, FALSE ); + Lview->ScrollDown( Lview->topRow() - Bmrkrow ); + // AdjustStatus(); + } + } + } } void Gutenbrowser::infoGutenbrowser() { - QMessageBox::message("Info","Gutenbrowser was developed by\n" - "Lorn Potter\n" - "ljp<ljp@llornkcor.com>\n"); + QMessageBox::message("Info","Gutenbrowser was developed by\n" + "Lorn Potter\n" + "ljp<ljp@llornkcor.com>\n"); } void Gutenbrowser::setDocument(const QString & frozenBoogers) { - this->hide(); - if(showMainList) { - showMainList=FALSE; - if(!mainList->isHidden()) - mainList->hide(); - if(Lview->isHidden()) - Lview->show(); - qApp->processEvents(); - } - DocLnk lnk; - lnk = DocLnk(frozenBoogers); - // qDebug(lnk.file() ); - title=lnk.comment(); - load( lnk.file()); - this->show(); - // qDebug(title); - // qApp->processEvents(); - // repaint(); + this->hide(); + if(showMainList) { + showMainList=FALSE; + if(!mainList->isHidden()) + mainList->hide(); + if(Lview->isHidden()) + Lview->show(); + qApp->processEvents(); + } + DocLnk lnk; + lnk = DocLnk(frozenBoogers); + // odebug << lnk.file() << oendl; + title=lnk.comment(); + load( lnk.file()); + this->show(); + // odebug << title << oendl; + // qApp->processEvents(); + // repaint(); } void Gutenbrowser::mainListPressed(int mouse, QListBoxItem * , const QPoint & ) { - switch (mouse) { - case 1: - break; - case 2: { - QPopupMenu m;// = new QPopupMenu( Local_View ); - m.insertItem( tr( "Open" ), this, SLOT( menuOpen() )); - m.insertSeparator(); - m.insertItem( tr( "Search google.com" ), this, SLOT( menuGoogle())); - m.insertItem( tr( "Edit Title" ), this, SLOT( menuEditTitle())); - // m.insertSeparator(); - // m.insertItem( tr( "Delete" ), this, SLOT( remoteDelete() )); - m.exec( QCursor::pos() ); - } - break; - }; + switch (mouse) { + case 1: + break; + case 2: { + QPopupMenu m;// = new QPopupMenu( Local_View ); + m.insertItem( tr( "Open" ), this, SLOT( menuOpen() )); + m.insertSeparator(); + m.insertItem( tr( "Search google.com" ), this, SLOT( menuGoogle())); + m.insertItem( tr( "Edit Title" ), this, SLOT( menuEditTitle())); + // m.insertSeparator(); + // m.insertItem( tr( "Delete" ), this, SLOT( remoteDelete() )); + m.exec( QCursor::pos() ); + } + break; + }; } void Gutenbrowser::menuOpen() { - listClickedSlot( mainList->item( mainList->currentItem())); + listClickedSlot( mainList->item( mainList->currentItem())); } void Gutenbrowser::menuGoogle() { - searchGoogle( mainList->text(mainList->currentItem())); + searchGoogle( mainList->text(mainList->currentItem())); } void Gutenbrowser::searchGoogle( const QString &tempText) { - QString text = tempText; - - int eexit=QMessageBox::information(this, "Note","Do you want to search for\n"+text+ - "\non google.com?",QMessageBox::Yes, QMessageBox::No); - if (eexit== 3) { - qApp->processEvents(); - text.replace( QRegExp("\\s"), "%20"); - text.replace( QRegExp("#"), ""); - text.replace( QRegExp(","), "%20"); - text.replace( QRegExp("'"), "%20"); - text.replace( QRegExp("("), ""); - text.replace( QRegExp(")"), ""); - // text.replace( QRegExp("[0-9]"), ""); - QString s_lookup = "http://google.com/search?q="+text+"&num=30&sa=Google+Search"; - goGetit( s_lookup, true); - } + QString text = tempText; + + int eexit=QMessageBox::information(this, "Note","Do you want to search for\n"+text+ + "\non google.com?",QMessageBox::Yes, QMessageBox::No); + if (eexit== 3) { + qApp->processEvents(); + text.replace( QRegExp("\\s"), "%20"); + text.replace( QRegExp("#"), ""); + text.replace( QRegExp(","), "%20"); + text.replace( QRegExp("'"), "%20"); + text.replace( QRegExp("("), ""); + text.replace( QRegExp(")"), ""); + // text.replace( QRegExp("[0-9]"), ""); + QString s_lookup = "http://google.com/search?q="+text+"&num=30&sa=Google+Search"; + goGetit( s_lookup, true); + } } void Gutenbrowser::menuEditTitle() { - int currentItem = mainList->currentItem(); - QString title_text = mainList->text( currentItem); - //qDebug("Selected "+title_text); - - Config config("Gutenbrowser"); - config.setGroup( "Files" ); - QString 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, ""); - //qDebug("file_title is "+file_title); - if(title_text == file_title ) { - // selFile = s_filename; - //qDebug("Edit: "+ file_title ); - i=i_numofFiles+1; - Edit_Title *titleEdit; - titleEdit = new Edit_Title(this,file_title ,TRUE); - if(titleEdit->exec() !=0) { - //qDebug(titleEdit->newTitle); - config.writeEntry( s_filename, titleEdit->newTitle); - mainList->removeItem(currentItem); - mainList->insertItem ( Resource::loadPixmap("gutenbrowser/gutenbrowser_sm"), titleEdit->newTitle, currentItem); - } - } - } - - // getTitles(); - mainList->triggerUpdate(true); + int currentItem = mainList->currentItem(); + QString title_text = mainList->text( currentItem); + //odebug << "Selected "+title_text << oendl; + + Config config("Gutenbrowser"); + config.setGroup( "Files" ); + QString 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); + mainList->removeItem(currentItem); + mainList->insertItem ( Resource::loadPixmap("gutenbrowser/gutenbrowser_sm"), titleEdit->newTitle, currentItem); + } + } + } + + // getTitles(); + mainList->triggerUpdate(true); } bool Gutenbrowser::UnZipIt(const QString &zipFile) { - qDebug(zipFile); + odebug << zipFile << oendl; #ifndef Q_WS_QWS - if( QFile::exists( zipFile)) { // TODO findsome other way of dealingwithzip files. - bool isPgWhole=false; - QString thatFile; - if(zipFile.find("pgwhole",0,TRUE)) { - isPgWhole=TRUE; - thatFile= local_library +"PGWHOLE.TXT"; - } - // else { - // thatFile=zipFile.left(4); - // } - // qDebug((const char*)local_library.latin1()); - QString cmd; + if( QFile::exists( zipFile)) { // TODO findsome other way of dealingwithzip files. + bool isPgWhole=false; + QString thatFile; + if(zipFile.find("pgwhole",0,TRUE)) { + isPgWhole=TRUE; + thatFile= local_library +"PGWHOLE.TXT"; + } + // else { + // thatFile=zipFile.left(4); + // } + // odebug << (const char*)local_library.latin1() << oendl; + QString cmd; #if defined(_WS_X11_) - if( chdir((const char*)local_library.latin1())!=0) - qDebug("chdir failed."); + if( chdir((const char*)local_library.latin1())!=0) + odebug << "chdir failed." << oendl; cmd = "gunzip -S .zip " + local_library+zipFile; - //cmd = "gunzip -d " + zipFile /*newestLibraryFile */+" -d " + local_library; + //cmd = "gunzip -d " + zipFile /*newestLibraryFile */+" -d " + local_library; #endif #ifdef Q_WS_QWS - if( chdir((const char*)local_library.latin1())!=0) - qDebug("chdir failed."); + if( chdir((const char*)local_library.latin1())!=0) + odebug << "chdir failed." << oendl; cmd = "unzip " + local_library+zipFile; - // cmd = "/usr/bin/unzip -o " + local_library+zipFile +" -d /usr/share/doc/gutenbrowser" ;//+ local_library; + // cmd = "/usr/bin/unzip -o " + local_library+zipFile +" -d /usr/share/doc/gutenbrowser" ;//+ local_library; #endif - int exit=QMessageBox::information(this, "Ok to unzip?", - "Ok to unnzip\n"+ zipFile+" ?", - QMessageBox::Yes, QMessageBox::No); - if (exit==QMessageBox::Yes) { + int exit=QMessageBox::information(this, "Ok to unzip?", + "Ok to unnzip\n"+ zipFile+" ?", + QMessageBox::Yes, QMessageBox::No); + if (exit==QMessageBox::Yes) { #if defined(_WS_X11_)// - qDebug("Issuing the command "+cmd); - system( cmd); - if( QFile::exists(thatFile)) - remove (thatFile); - if(isPgWhole) { - if( rename("pgwhole","PGWHOLE.TXT") !=0) - qDebug("rename failed"); - } else { - if( rename(thatFile.left(4),thatFile.left(4)+".txt") !=0) - qDebug("rename failed"); - } + odebug << "Issuing the command "+cmd << oendl; + system( cmd); + if( QFile::exists(thatFile)) + remove (thatFile); + if(isPgWhole) { + if( rename("pgwhole","PGWHOLE.TXT") !=0) + odebug << "rename failed" << oendl; + } else { + if( rename(thatFile.left(4),thatFile.left(4)+".txt") !=0) + odebug << "rename failed" << oendl; + } #endif #ifdef Q_WS_QWS - qDebug("Issuing the command "+cmd); - system( cmd); - if( QFile::exists(thatFile)) - remove(thatFile); - if(isPgWhole) { - if( rename("pgwhole","PGWHOLE.TXT") !=0) - qDebug("rename failed"); - } else { - if( rename(thatFile.left(4),thatFile.left(4)+".txt") !=0) - qDebug("rename failed"); - } + odebug << "Issuing the command "+cmd << oendl; + system( cmd); + if( QFile::exists(thatFile)) + remove(thatFile); + if(isPgWhole) { + if( rename("pgwhole","PGWHOLE.TXT") !=0) + odebug << "rename failed" << oendl; + } else { + if( rename(thatFile.left(4),thatFile.left(4)+".txt") !=0) + odebug << "rename failed" << oendl; + } #endif - // remove( zipFile); - return true; - } - else if(exit==QMessageBox::No) { - // qDebug("unzip"); - return false; - } - } - else - QMessageBox::message( "Note",( tr("Please install unzip in your PATH")) ); + // remove( zipFile); + return true; + } + else if(exit==QMessageBox::No) { + // odebug << "unzip" << oendl; + return false; + } + } + else + QMessageBox::message( "Note",( tr("Please install unzip in your PATH")) ); #endif - return false; + return false; } diff --git a/noncore/apps/opie-gutenbrowser/gutenbrowserData.cpp b/noncore/apps/opie-gutenbrowser/gutenbrowserData.cpp index c9149ac..a226258 100644 --- a/noncore/apps/opie-gutenbrowser/gutenbrowserData.cpp +++ b/noncore/apps/opie-gutenbrowser/gutenbrowserData.cpp @@ -6,45 +6,49 @@ email : ljp@llornkcor.com ***************************************************************************/ /*************************************************************************** * 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 "gutenbrowserData.h" #include "gutenbrowser.h" +/* OPIE */ +#include <opie2/odebug.h> #include <qpe/config.h> #include <qpe/fontdatabase.h> #include <qpe/menubutton.h> #include <qpe/resource.h> #include <qpe/qpeapplication.h> +/* QT */ #include <qfontinfo.h> #include <qtoolbutton.h> void Gutenbrowser::initSlots() { connect(LibraryButton,SIGNAL(released()),SLOT(LibraryBtn())); connect(OpenButton,SIGNAL(released()),SLOT(OpenBtn())); connect(SearchButton,SIGNAL(released()),SLOT(SearchBtn())); connect(ForwardButton,SIGNAL(clicked()),SLOT(ForwardBtn())); connect(BackButton,SIGNAL(clicked()),SLOT(BackBtn())); connect(setBookmarkButton,SIGNAL(released()),SLOT(setBookmark())); connect(dictionaryButton,SIGNAL(released()),SLOT(LookupBtn())); connect(InfoBar,SIGNAL(clicked()),SLOT(InfoBarClick())); connect(qApp,SIGNAL(aboutToQuit()),SLOT(cleanUp())); connect(mainList,SIGNAL(clicked(QListBoxItem *)),SLOT(listClickedSlot(QListBoxItem *))); - connect(bookmarksMenu,SIGNAL(activated(int)),SLOT(Bookmark(int))); + connect(bookmarksMenu,SIGNAL(activated(int)),SLOT(Bookmark(int))); } void Gutenbrowser::initConfig() { -//qDebug("Starting configuration."); +//odebug << "Starting configuration." << oendl; QDir library(local_library); if ( !library.exists()) { library.mkdir(local_library, TRUE); QString msg; // #ifndef Q_WS_WIN msg = "chmod 755 " + local_library; system(msg); // QDir pixdir(local_library+"pix"); @@ -52,17 +56,17 @@ void Gutenbrowser::initConfig() { // pixdir.mkdir(local_library+"pix", TRUE); // QString msg; // msg = "chmod 755 " + local_library+"pix"; // system(msg); // } // #endif } - // qDebug( "init file is %s",iniFile.latin1()); + // odebug << "init file is " << iniFile << "" << oendl; #ifdef Q_WS_QWS useSplitter=FALSE; Config config("Gutenbrowser"); config.setGroup( "General" ); //useWordWrap_CheckBox useIcons=TRUE; @@ -132,63 +136,63 @@ void Gutenbrowser::initConfig() { config.setGroup( "FTPsite" ); // ftp server config ftp_host=config.readEntry("SiteName", "sailor.gutenberg.org"); // ftp_host=ftp_host.right(ftp_host.length()-(ftp_host.find(") ",0,TRUE)+1) ); ftp_host=ftp_host.right(ftp_host.length()-(ftp_host.find(") ",0,TRUE)+1) ); ftp_host=ftp_host.stripWhiteSpace(); ftp_base_dir= config.readEntry("base", "/pub/gutenberg"); - //bool ok2; + //bool ok2; QString temp; QString copying; copying=""; config.setGroup("General"); QString qExit; qExit=config.readEntry("queryExit","TRUE"); if(qExit=="TRUE") { b_queryExit=TRUE; -// qDebug("Please query before leaving the library."); +// odebug << "Please query before leaving the library." << oendl; } else { -// qDebug("Please DO NOT query before leaving the library."); +// odebug << "Please DO NOT query before leaving the library." << oendl; b_queryExit=FALSE; } // bookmarks // config.setGroup("Titles"); // QString tmpTitle=config.readEntry(file_name,""); - + }// end initConfig() void Gutenbrowser::initMenuBar() { -// qDebug("Starting menu init."); +// odebug << "Starting menu init." << oendl; // menuBar entry fileMenu menubar = new QPEMenuBar(this); fileMenu=new QPopupMenu(); fileMenu->insertItem(Resource::loadPixmap("gutenbrowser/openbook"), "Open Local Library...", this, SLOT( OpenBtn()) ); // fileMenu->insertItem("Download FTPSite", this, SLOT( downloadFtpList()) ); fileMenu->insertItem( Resource::loadPixmap("home"), "Download Library Index", this, SLOT( downloadLibIndex()) ); fileMenu->insertItem( Resource::loadPixmap("quit"), "Quit Gutenbrowser...", this, SLOT( ByeBye()) ); // menuBar entry editMenu editMenu=new QPopupMenu(); - + editMenu->insertItem(Resource::loadPixmap("up"), "Top", - this, SLOT(TopBtn()) ); + this, SLOT(TopBtn()) ); editMenu->insertItem( Resource::loadPixmap("back"), "Beginning", this, SLOT(doBeginBtn()) ); editMenu->insertItem( Resource::loadPixmap("gutenbrowser/search"), "Search", this, SLOT(SearchBtn()) ); - + editMenu->insertItem("Clear", this, SLOT(ClearEdit()) ); optionsMenu= new QPopupMenu(); optionsMenu->insertItem( Resource::loadPixmap("gutenbrowser/configure"), "Configure", this, SLOT(doOptions()) ); donateMenu = new QPopupMenu(); // donateMenu->insertItem("Gutenberg", this, SLOT(donateGutenberg()) ); @@ -202,51 +206,51 @@ void Gutenbrowser::initMenuBar() menu->addWidget( menubar,0); topLayout->addLayout( menu, 0); } void Gutenbrowser::initButtonBar() { -//qDebug("Starting buttonbar init."); +//odebug << "Starting buttonbar init." << oendl; OpenButton = new QPushButton( this, "OpenButton" ); OpenButton->setFocusPolicy( QWidget::TabFocus ); LibraryButton = new QPushButton( this, "LibraryButton" ); LibraryButton->setFocusPolicy( QWidget::TabFocus ); BackButton = new QPushButton( this, "BackButton" ); BackButton->setFocusPolicy( QWidget::TabFocus ); BackButton->setAutoRepeat(TRUE); ForwardButton = new QPushButton( this, "ForwardButton" ); ForwardButton->setFocusPolicy( QWidget::TabFocus ); // ForwardButton->setAutoRepeat(TRUE); - + SearchButton = new QPushButton( this, "SearchButton" ); SearchButton->setFocusPolicy( QWidget::TabFocus ); setBookmarkButton = new QPushButton( this, "setBookmark" ); setBookmarkButton->setFocusPolicy( QWidget::TabFocus ); lastBmkButton = new MenuButton( this, "lastBmkButton" ); lastBmkButton->setFocusPolicy( QWidget::TabFocus ); bookmarksMenu = new QPopupMenu(); bookmarksMenu->insertItem("Last Set", this, SLOT(Bookmark( int) )); - + lastBmkButton->setPopup(bookmarksMenu); dictionaryButton = new QPushButton( this, "dictionaryButton" ); dictionaryButton->setFocusPolicy( QWidget::TabFocus ); InfoBar = new QPushButton( this, "Info_Bar" ); -// qDebug("Infobar"); +// odebug << "Infobar" << oendl; // if(!useSplitter) { buttonsHidden=FALSE; buttons2->setSpacing(2); buttons2->addWidget(OpenButton, 0, AlignCenter); buttons2->addWidget(LibraryButton, 0, AlignCenter); buttons2->addWidget(BackButton, 0, AlignCenter); buttons2->addWidget(ForwardButton, 0, AlignCenter); @@ -271,34 +275,34 @@ void Gutenbrowser::initStatusBar() // #endif } void Gutenbrowser::initView() { // set the main widget here // QFont defaultFont( "charter", 10, 50, 0 ); Lview = new MultiLine_Ex(this); - + Config cfg("Gutenbrowser"); cfg.setGroup("Font"); FontDatabase fdb; QFont defaultFont=Lview->font(); QFontInfo fontInfo(defaultFont); QString family = cfg.readEntry("Family", fontInfo.family()); QString style = cfg.readEntry("Style", fdb.styleString(defaultFont)); int i_size = cfg.readNumEntry("Size", fontInfo.pointSize()/10); QString charSet = cfg.readEntry("CharSet", QFont::encodingName( fontInfo.charSet()) ); defaultFont = fdb.font(family,style,i_size,charSet); QString italic=cfg.readEntry("Italic","FALSE"); if(italic=="TRUE") { - qDebug("Set Italic font"); + odebug << "Set Italic font" << oendl; defaultFont = fdb.font(family,"Regular",i_size,charSet); //workaround defaultFont.setItalic(TRUE); } Lview->setFont( defaultFont); update(); cfg.setGroup("General"); diff --git a/noncore/apps/opie-gutenbrowser/helpme.cpp b/noncore/apps/opie-gutenbrowser/helpme.cpp index 6a9b8c0..53e0236 100644 --- a/noncore/apps/opie-gutenbrowser/helpme.cpp +++ b/noncore/apps/opie-gutenbrowser/helpme.cpp @@ -9,25 +9,30 @@ /*************************************************************************** * * * 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 <qpe/qcopenvelope_qws.h> -#include <qpe/qpeapplication.h> #include "helpme.h" #include "helpwindow.h" +/* OPIE */ +#include <qpe/qcopenvelope_qws.h> +#include <qpe/qpeapplication.h> +#include <opie2/odebug.h> + +/* QT */ #include <qprogressdialog.h> #include <qlayout.h> +/* STD */ #include <sys/stat.h> #include <unistd.h> HelpMe::HelpMe(QWidget *parent, QString name ) : QDialog(parent,name) { local_library = ( QDir::homeDirPath ())+"/Applications/gutenbrowser/"; setCaption(tr("Gutenbrowser About " VERSION)); @@ -106,17 +111,17 @@ void HelpMe::goGetit( QString url) help->showMaximized(); help->show(); } void HelpMe::help() { QString msg ; msg=QPEApplication::qpeDir()+"help/html/gutenbrowser-index.html"; // or where ever this ends up to be -qDebug(msg); +odebug << msg << oendl; QString url = "file://"+msg; goGetit( url); // QCopEnvelope e("QPE/Application/helpbrowser", "setDocument(QString)" ); // e << msg; - + // goGetit( msg); } diff --git a/noncore/apps/opie-gutenbrowser/main.cpp b/noncore/apps/opie-gutenbrowser/main.cpp index 5c3348c..71c836d 100644 --- a/noncore/apps/opie-gutenbrowser/main.cpp +++ b/noncore/apps/opie-gutenbrowser/main.cpp @@ -32,17 +32,17 @@ OPIE_EXPORT_APP( OApplicationFactory<Gutenbrowser> ) // // for( int i=0; i < argc; i++) { // // psz = argv[i]; // // if( psz[0] == '-' || psz[0] == '/' ) { // // // The next character is the option. // // switch( psz[1] ) // // { // // case 'v': // help // // printf("Gutenbrowser: "VERSION"\n"); -// // // qDebug("Gutenbrowser: "VERSION); +// // // odebug << "Gutenbrowser: "VERSION << oendl; // // // return 0; // // break; // // case 't': // current time 19:34:20 04/03/00 // // // return 0; // // break; // // case 'f': // // // // file_Name=argv[i+1]; // // break; diff --git a/noncore/apps/opie-gutenbrowser/openetext.cpp b/noncore/apps/opie-gutenbrowser/openetext.cpp index bd44ce6..0267416 100644 --- a/noncore/apps/opie-gutenbrowser/openetext.cpp +++ b/noncore/apps/opie-gutenbrowser/openetext.cpp @@ -13,30 +13,33 @@ ***************************************************************************/ #include "gutenbrowser.h" #include "openetext.h" #include "editTitle.h" /* OPIE */ #include <opie2/ofiledialog.h> +#include <opie2/odebug.h> #include <qpe/applnk.h> #include <qpe/config.h> #include <qpe/qpeapplication.h> using namespace Opie::Ui; -#include <stdlib.h> +/* QT */ #include <qtextstream.h> #include <qfileinfo.h> +/* STD */ #if defined(_WS_WIN_) #include <windows.h> #else #include <unistd.h> -#include "sys/stat.h" +#include <stdlib.h> +#include <sys/stat.h> #endif OpenEtext::OpenEtext(QWidget *parent, QString name) : QDialog(parent,name,true) { local_library = (QDir::homeDirPath ()) +"/Applications/gutenbrowser/"; local_index=local_library+"GUTINDEX.ALL"; initDialog(); connect( QListBox_1, SIGNAL(selected ( int)),this, SLOT(select_title(int)) ); @@ -129,17 +132,17 @@ OpenFileButton->setDown(TRUE); text << "*"; map.insert(tr("All"), text ); QString str = OFileDialog::getOpenFileName( 2, dir , QString::null, map); if( !str.isEmpty() && QFile(str).exists() && !QFileInfo(str).isDir() ) { filer = str; - qDebug("Open file: "+str); + odebug << "Open file: "+str << oendl; // QStringList::ConstIterator f; // QString fileTemp; // for ( f = fileList.begin(); f != fileList.end(); f++ ) { // fileTemp = *f; // fileTemp.right( fileTemp.length()-5); // fileName = fileTemp; // if( !fileName.isEmpty() ){ @@ -159,121 +162,121 @@ OpenFileButton->setDown(TRUE); || filer.right(4) == ".ZIP" ) { QFileInfo zipFile( filer); QString s_fileName = zipFile.fileName(); QString cmd; if( s_fileName.right(4) == ".zip") { // unzip that sucker.... s_fileName = s_fileName.left( s_fileName.length() - 4); if( chdir((const char*)local_library.latin1())!=0) - qDebug("chdir failed.");// QString cmd = "gunzip -d " + filer + " -d " + local_library; + odebug << "chdir failed." << oendl; // QString cmd = "gunzip -d " + filer + " -d " + local_library; cmd = "gunzip -S .zip " + filer; fileName = local_library + s_fileName + ".txt"; system( cmd); } // this renames the .txt to .etx!! else /*if( s_fileName.right(4) == ".txt" || if( s_fileName.right(4) == ".TXT"))*/ { -// qDebug("Filename is "+fileName); +// odebug << "Filename is "+fileName << oendl; s_fileName = fileName; s_fileName.replace( s_fileName.length()-3,3,"gtn");// s_fileName.replace( s_fileName.length()-3,3,"etx"); rename(fileName.latin1(),s_fileName.latin1()); fileName = s_fileName; -// qDebug("Filename is now "+fileName); +// odebug << "Filename is now "+fileName << oendl; } } else fileName = str; FindTitle(fileName); QFileInfo fi( fileName); name_file = fi.fileName(); name_file = name_file.left(name_file.length() - 4); - qDebug("Setting doclink"); + odebug << "Setting doclink" << oendl; DocLnk lnk; - qDebug("name is " + name_file); + odebug << "name is " + name_file << oendl; lnk.setName(name_file); //sets file name - qDebug("Title is "+title); + odebug << "Title is "+title << oendl; lnk.setComment(title); QListBox_1->clear(); getTitles(); - qDebug("Filename is "+fileName); + odebug << "Filename is "+fileName << oendl; lnk.setFile(fileName); //sets File property lnk.setType("guten/plain");// hey is this a REGISTERED mime type?!?!? ;D lnk.setExec(fileName); lnk.setIcon("gutenbrowser/Gutenbrowser"); if(!lnk.writeLink()) - qDebug("Writing doclink did not work"); + odebug << "Writing doclink did not work" << oendl; } // end of for each file name.... OpenFileButton->setDown(FALSE); } /* find the title in the config file */ bool OpenEtext::FindTitle( QString filename) { Config config("Gutenbrowser"); config.setGroup( "Files" ); QString s_numofFiles = config.readEntry("NumberOfFiles", "0"); int i_numofFiles = s_numofFiles.toInt(); QFileInfo fi(filename); name = fi.fileName(); - qDebug("filename to open is " + name); + odebug << "filename to open is " + name << oendl; QFile indexLib( filename); bool findCheck = FALSE; // int Titlenumber=0; if ( indexLib.open( IO_ReadOnly) ) { - qDebug("file opened successfully"); + odebug << "file opened successfully" << oendl; QTextStream indexStream( &indexLib ); QString target = "Project Gutenberg Etext of"; QString target2 = "Project Gutenberg Etext"; QString target3 = "Project Gutenberg's Etext of"; QString target4 = "Project Gutenberg's Etext"; QString indexLine; while ( !indexStream.eof() ) { // until end of file.. indexLine = indexStream.readLine(); if( indexLine.find(target, 0, TRUE) > -1 && !findCheck) {findCheck = TRUE; title = indexLine.mid( indexLine.find(target, 0, TRUE) + (target.length()) , indexLine.find("\r", 0, TRUE)); title = title.left( title.find( "*",0, TRUE)); title = title.stripWhiteSpace (); -// qDebug("Found the title 1 and it is %s", title.latin1()); +// odebug << "Found the title 1 and it is " << title << "" << oendl; // QListBox_1->insertItem ( title); } if( indexLine.find( target2, 0, TRUE) > -1 && !findCheck) { findCheck = TRUE; title = indexLine.mid( indexLine.find( target2, 0, TRUE ) + ( target2.length()) , indexLine.find("\r", 0, TRUE) ); title = title.left( title.find( "*",0, TRUE)); title = title.stripWhiteSpace (); -// qDebug("Found the title 2 and it is %s", title.latin1()); +// odebug << "Found the title 2 and it is " << title << "" << oendl; // QListBox_1->insertItem ( title); } 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 (); -// qDebug("Found the title 3 and it is %s", title.latin1()); +// 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 (); -// qDebug("Found the title 4 and it is %s", title.latin1()); +// odebug << "Found the title 4 and it is " << title << "" << oendl; } } //endof file indexLib.close(); if( !findCheck || title.length() < 2) { - qDebug("Trying hard to find title from GUTINDEX.ALL"); + 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 ); @@ -288,17 +291,17 @@ bool OpenEtext::FindTitle( QString filename) 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) { -// qDebug("title is empty"); +// odebug << "title is empty" << oendl; title="Unknown"; } config.writeEntry( filename,title); } } else { QString sMsg; sMsg = "Error opening library file: "+filename; printf( sMsg+"\n"); @@ -338,23 +341,23 @@ QString OpenEtext::titleFromLibrary( QString fileName) 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 = indexLine.mid( 26, indexLine.length() ); title = title.stripWhiteSpace (); -// qDebug("Finally Found the title and it is\n %s", title.latin1()); +// odebug << "Finally Found the title and it is\n " << title << "" << oendl; // QListBox_1->insertItem ( title); } } //end while loop } else - qDebug("Error opening library index "+ local_index); + odebug << "Error opening library index "+ local_index << oendl; return title; } bool OpenEtext::checkConf() { QString file = fileName; Config config("Gutenbrowser"); config.setGroup( "Files" ); @@ -409,17 +412,17 @@ void OpenEtext::removeSelection() 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; -//qDebug("file title to remove is "+file_title); +//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); @@ -477,39 +480,39 @@ 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); -//qDebug("Selected "+title_text); +//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, ""); -//qDebug("file_title is "+file_title); +//odebug << "file_title is "+file_title << oendl; if(title_text == file_title ) { selFile = s_filename; -//qDebug("Edit: "+ file_title ); +//odebug << "Edit: "+ file_title << oendl; i=i_numofFiles+1; Edit_Title *titleEdit; titleEdit = new Edit_Title(this,file_title ,TRUE); if(titleEdit->exec() !=0) { -//qDebug(titleEdit->newTitle); +//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); } } } // getTitles(); diff --git a/noncore/apps/opie-gutenbrowser/optionsDialog.cpp b/noncore/apps/opie-gutenbrowser/optionsDialog.cpp index bfd9c26..8cc83da 100644 --- a/noncore/apps/opie-gutenbrowser/optionsDialog.cpp +++ b/noncore/apps/opie-gutenbrowser/optionsDialog.cpp @@ -8,41 +8,49 @@ /*************************************************************************** * * * 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 "optionsDialog.h" -#include <qpe/config.h> -#include "fontDialog.h" -// #include <unistd.h> -// #include <stdio.h> -// #include <stdlib.h> +#include "optionsDialog.h" +#include "fontDialog.h" //#include "ftpsitedlg.h" //#include "browserDialog.h" //#define Inherited QDialog + +/* OPIE */ +#include <opie2/odebug.h> +#include <qpe/config.h> + +/* QT */ #include <qfont.h> #include <qcheckbox.h> #include <qcombobox.h> #include <qlabel.h> #include <qlistbox.h> #include <qpushbutton.h> #include <qtabwidget.h> #include <qwidget.h> #include <qlayout.h> #include <qvariant.h> #include <qtooltip.h> #ifndef Q_WS_QWS #include <qwhatsthis.h> #endif + +/* STD */ +// #include <unistd.h> +// #include <stdio.h> +// #include <stdlib.h> + /* * The dialog will by default be modeless, unless you set 'modal' to * TRUE to construct a modal dialog. */ optionsDialog::optionsDialog( QWidget* parent, const char* name, bool modal, WFlags fl ) : QDialog( parent, name, modal, fl ) { if ( !name ) @@ -55,17 +63,17 @@ optionsDialog::optionsDialog( QWidget* parent, const char* name, bool modal, WF ftpSiteDlg(); BrowserDlg(); FontDialog(); } optionsDialog::~optionsDialog() { -//qDebug("OnExit()"); +//odebug << "OnExit()" << oendl; // writeConfig(); } /// optionsDialog void optionsDialog::doOptions() { // config.read(); getConfig(); @@ -120,33 +128,33 @@ void optionsDialog::getConfig() // if( i_style==7) { styleInt=7; ComboBoxStyle->setCurrentItem(7);}//"stylePlatinumPlus") ); // if( i_style==9){ styleInt=9; ComboBoxStyle->setCurrentItem(9);}//"styleLace")); // if( i_style==10){ styleInt=10; ComboBoxStyle->setCurrentItem(10);}//"styleLacePlus")); // #endif config.setGroup("General"); QString qExit=config.readEntry("queryExit","TRUE"); if(qExit=="TRUE") { cb_queryExit->setChecked(TRUE); - qDebug("Config Setting b_qExit=TRUE;"); + odebug << "Config Setting b_qExit=TRUE;" << oendl; b_qExit=TRUE; } else { cb_queryExit->setChecked(FALSE); - qDebug("ConfigSetting b_qExit=FALSE;"); + odebug << "ConfigSetting b_qExit=FALSE;" << oendl; b_qExit=FALSE; } - + useWordWrap_CheckBox->setChecked( config.readBoolEntry("WordWrap", 1)); QString downDir=config.readEntry( "DownloadDirectory",local_library); downloadDirEdit->setText(downDir); } // end getConfig // // void optionsDialog::setStyle( int index) { -// // qDebug("Set style%d",index); +// // odebug << "Set style" << index << "" << oendl; // // //int styleInt= index; // // styleChanged=TRUE; // // if( ComboBoxStyle->currentItem()==0) styleInt=0;//"styleMetal")); // // if( ComboBoxStyle->currentItem()==1) styleInt=1;//"styleWindows") ); // // if( ComboBoxStyle->currentItem()==2) styleInt=2;//"stylePlatinum")); // // // if( ComboBoxStyle->currentItem()==2) styleInt=2;//"styleCDE") ); // // // if( ComboBoxStyle->currentItem()==3) styleInt=3;//"styleMotif") ); // // // if( ComboBoxStyle->currentItem()==4) styleInt=4;//"styleMotifPlus")); @@ -162,46 +170,46 @@ void optionsDialog::getConfig() // // config.writeEntry( "Style", temp); // // config.write(); // // } void optionsDialog::slotQueryExit() { Config config("Gutenbrowser"); config.setGroup("General"); - qDebug("writing queryExit"); + odebug << "writing queryExit" << oendl; if(cb_queryExit->isChecked()) { b_qExit=TRUE; config.writeEntry("queryExit","TRUE"); - qDebug("WritingConfig queryExit=TRUE"); + odebug << "WritingConfig queryExit=TRUE" << oendl; } else { b_qExit=FALSE; config.writeEntry("queryExit","FALSE"); - qDebug("WritingConfig queryExit=FALSE"); + odebug << "WritingConfig queryExit=FALSE" << oendl; } config.write(); } // void optionsDialog::slotUseSplit() // { // } // void optionsDialog::lineEditChanged(const QString &editText) { -// qDebug(editText); +// odebug << editText << oendl; // } -void optionsDialog::changeFonts() +void optionsDialog::changeFonts() { changedFonts=TRUE; } void optionsDialog::slotWordWrap(bool b) { Config config("Gutenbrowser"); config.setGroup("General"); config.writeEntry("WordWrap", b); config.write(); - + } diff --git a/noncore/apps/opie-reader/Aportis.cpp b/noncore/apps/opie-reader/Aportis.cpp index 2f8cdc3..06f44a4 100644 --- a/noncore/apps/opie-reader/Aportis.cpp +++ b/noncore/apps/opie-reader/Aportis.cpp @@ -23,24 +23,24 @@ CList<Bkmk>* Aportis::getbkmklist() { if (nRecs2 > nRecs) { CList<Bkmk>* t = new CList<Bkmk>; for (int i = nRecs; i < nRecs2; i++) { char name[17]; name[16] = '\0'; -// qDebug("Record:%d, Length:%u",i,recordlength(i)); +// odebug << "Record:" << i << ", Length:" << recordlength(i) << "" << oendl; gotorecordnumber(i); fread(name,1,16,fin); unsigned long lcn; fread(&lcn,sizeof(lcn),1,fin); lcn ^= 0xa5a5a5a5; lcn = SwapLong(lcn); -// qDebug("Bookmark:%s:%u", name,lcn); +// odebug << "Bookmark:" << name << ":" << lcn << "" << oendl; tchar tname[17]; memset(tname, 0, sizeof(tname)); for (int i = 0; name[i] != 0; i++) { tname[i] = name[i] ^ 0xa5; } t->push_back(Bkmk(tname, NULL, lcn)); } @@ -116,17 +116,17 @@ int Aportis::OpenFile(const char *src) dwLen = ftell(fin); if (peanutfile) { PeanutHeader hdr0; gotorecordnumber(0); fread(&hdr0, sizeof(hdr0), 1, fin); -// qDebug("Version:%x", ntohs(hdr0.Version)); +// odebug << "Version:" << ntohs(hdr0.Version) << "" << oendl; if (hdr0.Version && 0x0200) { bCompressed = 2; } else { bCompressed = 1; } @@ -177,17 +177,17 @@ int Aportis::OpenFile(const char *src) // this is the main record buffer // it knows how to stretch to accomodate the decompress currentrec = 0; cbptr = 0; outptr = 0; refreshbuffer(); -// qDebug("Number of records:[%u,%u]", nRecs, nRecs2); +// odebug << "Number of records:[" << nRecs << "," << nRecs2 << "]" << oendl; return ret; } int Aportis::getch() { if (bCompressed == 1) { if ((dwRecLen == 0) && !refreshbuffer()) return EOF; diff --git a/noncore/apps/opie-reader/Bkmks.cpp b/noncore/apps/opie-reader/Bkmks.cpp index 16bc1f1..480c240 100644 --- a/noncore/apps/opie-reader/Bkmks.cpp +++ b/noncore/apps/opie-reader/Bkmks.cpp @@ -212,25 +212,25 @@ CList<Bkmk>* BkmkFile::readall() } else { switch(newmagic & 0xff) { case 6: isUpgraded = false; bl = readall00(read06); -// qDebug("Correct version!"); +// odebug << "Correct version!" << oendl; break; case 5: isUpgraded = true; bl = readall00(read05); -// qDebug("Known version!"); +// odebug << "Known version!" << oendl; break; default: -// qDebug("Unknown version!"); +// odebug << "Unknown version!" << oendl; isUpgraded = true; bl = readall00(read05); } } } return bl; } diff --git a/noncore/apps/opie-reader/BuffDoc.cpp b/noncore/apps/opie-reader/BuffDoc.cpp index 4fbab93..68391b8 100644 --- a/noncore/apps/opie-reader/BuffDoc.cpp +++ b/noncore/apps/opie-reader/BuffDoc.cpp @@ -27,27 +27,27 @@ linkType BuffDoc::hyperlink(unsigned int n, QString& wrd) lastsizes[0] = laststartline = exp->locate(); } } return bRet; } void BuffDoc::locate(unsigned int n) { - // //qDebug("BuffDoc:locating:%u",n); + // //odebug << "BuffDoc:locating:" << n << "" << oendl; lastword.empty(); lastsizes[0] = laststartline = n; #ifdef NEWLINEBREAK lastispara = true; #else lastispara = false; #endif // tchar linebuf[1024]; if (exp != NULL) exp->locate(n); - // //qDebug("BuffDoc:Located"); + // //odebug << "BuffDoc:Located" << oendl; } #ifdef NEWLINEBREAK bool BuffDoc::getline(CDrawBuffer* buff, int wth, unsigned char _border) { bool moreleft = true; bool margindone = false; int w = wth-2*_border; @@ -183,17 +183,17 @@ bool BuffDoc::getline(CDrawBuffer* buff, int wth, unsigned char _border) if (lastword.length() > 0) { *buff = lastword; cs = lastword.laststyle(); w -= buff->leftMargin() + buff->rightMargin(); margindone = true; } else buff->empty(); -// //qDebug("Buff:%s Lastword:%s", (const char*)toQString(buff->data()), (const char*)toQString(lastword.data())); +// //odebug << "Buff:" << toQString(buff->data()) << " Lastword:" << toQString(lastword.data()) << "" << oendl; lastcheck = len = buff->length(); unsigned int slen = buff->width(len); if (slen > w) { for ( ; len > 1; len--) { if (buff->width(len) < w) break; } @@ -317,18 +317,18 @@ bool BuffDoc::getline(CDrawBuffer* buff, int wth, int cw, unsigned char _border) buff->truncate(i); laststartline = exp->locate(); buff->resize(); return (ch != UEOF); } int BuffDoc::openfile(QWidget* _parent, const char *src) { - // //qDebug("BuffDoc:Openfile:%s", src); - // //qDebug("Trying aportis %x",exp); + // //odebug << "BuffDoc:Openfile:" << src << "" << oendl; + // //odebug << "Trying aportis " << exp << "" << oendl; if (exp != NULL) delete exp; lastword.empty(); lastsizes[0] = laststartline = 0; #ifdef NEWLINEBREAK lastispara = true; #else lastispara = false; #endif @@ -373,40 +373,40 @@ int BuffDoc::openfile(QWidget* _parent, const char *src) delete exp; exp = new CPlucker; ret = exp->openfile(src); } if (ret != 0) { delete exp; - //qDebug("Trying ppms"); + //odebug << "Trying ppms" << oendl; exp = new ppm_expander; ret = exp->openfile(src); } if (ret != 0) { delete exp; exp = new Text; -// //qDebug("Trying text"); +// //odebug << "Trying text" << oendl; ret = exp->openfile(src); } if (ret != 0) { delete exp; QMessageBox::information(_parent, PROGNAME, "Unknown file compression type","Try another file"); return ret; } - // //qDebug("Doing final open:%x:%x",exp,filt); + // //odebug << "Doing final open:" << exp << ":" << filt << "" << oendl; lastword.empty(); lastsizes[0] = laststartline = 0; #ifdef NEWLINEBREAK lastispara = true; #else lastispara = false; #endif exp->locate(0); filt->setsource(exp); - // //qDebug("BuffDoc:file opened"); + // //odebug << "BuffDoc:file opened" << oendl; return 0; } diff --git a/noncore/apps/opie-reader/CDrawBuffer.cpp b/noncore/apps/opie-reader/CDrawBuffer.cpp index ec36fb2..b137ac3 100644 --- a/noncore/apps/opie-reader/CDrawBuffer.cpp +++ b/noncore/apps/opie-reader/CDrawBuffer.cpp @@ -35,17 +35,17 @@ void CDrawBuffer::setright(CDrawBuffer& rhs, int f) for (i = f; rhs[i] != '\0'; i++) (*this)[i-f] = rhs[i]; (*this)[i-f] = '\0'; len = i; } CDrawBuffer& CDrawBuffer::operator=(CDrawBuffer& rhs) { int i; -// //qDebug("Trying 2"); +// //odebug << "Trying 2" << oendl; len = rhs.len; m_maxstyle = rhs.m_maxstyle; m_ascent = rhs.m_ascent; m_descent = rhs.m_descent; m_lineSpacing = rhs.m_lineSpacing; m_lineExtraSpacing = rhs.m_lineExtraSpacing; while (!segs.isEmpty()) { @@ -53,17 +53,17 @@ CDrawBuffer& CDrawBuffer::operator=(CDrawBuffer& rhs) } for (CList<textsegment>::iterator iter = rhs.segs.begin(); iter != rhs.segs.end(); iter++) { segs.push_back(*iter); } for (i = 0; rhs[i] != '\0'; i++) (*this)[i] = rhs[i]; (*this)[i] = '\0'; len = i; -// //qDebug("Tried 2"); +// //odebug << "Tried 2" << oendl; return *this; } CDrawBuffer& CDrawBuffer::operator=(const tchar*sztmp) { int i; while (!segs.isEmpty()) { @@ -203,17 +203,17 @@ int CDrawBuffer::width(int numchars, bool onscreen, int scwidth, unsigned char _ int lw = fm.width(nstr); cx += lw+nexttoadd; spacesofar += nexttoadd; lastspace = nsp; } else { QString nstr = str.mid(lastspace+1, nsp-lastspace); -// qDebug("str:%s: last:%d new:%d nstr:%s:", (const char*)str, lastspace, nsp, (const char*)nstr); +// odebug << "str:" << str << ": last:" << lastspace << " new:" << nsp << " nstr:" << nstr << ":" << oendl; int lw = fm.width(nstr); cx += lw; lastspace = nsp; } } QString nstr = str.right(str.length()-1-lastspace); cx += fm.width(nstr); currentx = cx; @@ -312,17 +312,17 @@ void CDrawBuffer::render(QPainter* _p, int _y, bool _bMono, int _charWidth, int CList<textsegment>::iterator textend = textstart; do { textend++; int end = (textend != segs.end()) ? textend->start : len; CStyle currentstyle = textstart->style; QFont f((currentstyle.isMono() && fc->hasCourier()) ? fc->fixedfontname() : fc->name(), fc->getsize(currentstyle), (currentstyle.isBold()) ? QFont::Bold : QFont::Normal, (currentstyle.isItalic()) ); // f.setUnderline(currentstyle.isUnderline()); -// if (currentstyle.isUnderline()) qDebug("UNDERLINE"); +// if (currentstyle.isUnderline()) odebug << "UNDERLINE" << oendl; _p->setFont(f); QString str = text.mid(textstart->start, end-textstart->start); #if defined(OPIE) || !defined(USEQPE) _p->setPen(QPen(QColor(currentstyle.Red(), currentstyle.Green(), currentstyle.Blue()), fc->getsize(currentstyle)/100)); #else _p->setPen(QPen(QColor(currentstyle.Red(), currentstyle.Green(), currentstyle.Blue()), fc->getsize(currentstyle)/10)); #endif int voffset = currentstyle.getVOffset()*fc->getsize(currentstyle)/2; @@ -403,27 +403,27 @@ void CDrawBuffer::render(QPainter* _p, int _y, bool _bMono, int _charWidth, int int cx = currentx; while ((nsp = str.find(" ", lastspace+1)) >= 0) { if (nsp+textstart->start >= nonspace) { spacenumber++; int nexttoadd = (extraspace*spacenumber+spaces/2)/spaces - spacesofar; QString nstr = str.mid(lastspace+1, nsp-lastspace); -// qDebug("str:%s: last:%d new:%d nstr:%s:", (const char*)str, lastspace, nsp, (const char*)nstr); +// odebug << "str:" << str << ": last:" << lastspace << " new:" << nsp << " nstr:" << nstr << ":" << oendl; int lw = fm.width(nstr); _p->drawText( cx, _y+voffset, nstr); cx += lw+nexttoadd; spacesofar += nexttoadd; lastspace = nsp; } else { QString nstr = str.mid(lastspace+1, nsp-lastspace); -// qDebug("str:%s: last:%d new:%d nstr:%s:", (const char*)str, lastspace, nsp, (const char*)nstr); +// odebug << "str:" << str << ": last:" << lastspace << " new:" << nsp << " nstr:" << nstr << ":" << oendl; int lw = fm.width(nstr); _p->drawText( cx, _y+voffset, nstr); cx += lw; lastspace = nsp; } } QString nstr = str.right(str.length()-1-lastspace); _p->drawText( cx, _y+voffset, nstr); @@ -465,24 +465,24 @@ linkType CDrawBuffer::getLinkType(int numchars, size_t& tgt) CList<textsegment>::iterator textstart = segs.begin(); CList<textsegment>::iterator textend = textstart; do { textend++; end = (textend != segs.end()) ? textend->start : len; currentstyle = textstart->style; /* - if (currentstyle.isPicture()) qDebug("Passed thru picture"); - if (currentstyle.getLink()) qDebug("Passed thru link"); - //qDebug("islink:%d - %d", numchars, end); + if (currentstyle.isPicture()) odebug << "Passed thru picture" << oendl; + if (currentstyle.getLink()) odebug << "Passed thru link" << oendl; + //odebug << "islink:" << numchars << " - " << end << "" << oendl; */ textstart = textend; } while (textend != segs.end() && end <= numchars); -// if (currentstyle.isPicture()) qDebug("Clicked on picture"); +// if (currentstyle.isPicture()) odebug << "Clicked on picture" << oendl; if (currentstyle.getPictureLink()) { tgt = currentstyle.getPictureLinkData(); return ePicture; } if (currentstyle.getLink()) { tgt = currentstyle.getData(); @@ -534,13 +534,13 @@ void CDrawBuffer::resize() { int xt = (lead*m_lineSpacing+5)/10; m_descent += xt; m_lineSpacing += xt; } if (m_bSop) { int xt = ((segs.begin()->style.getExtraSpace()+fc->getextraspace())*fc->getsize(segs.begin()->style)+5)/10; -// qDebug("ExtraSpace:%d", xt); +// odebug << "ExtraSpace:" << xt << "" << oendl; m_ascent += xt; m_lineSpacing += xt; } } diff --git a/noncore/apps/opie-reader/QTReader.cpp b/noncore/apps/opie-reader/QTReader.cpp index d64abb4..b356ba5 100644 --- a/noncore/apps/opie-reader/QTReader.cpp +++ b/noncore/apps/opie-reader/QTReader.cpp @@ -75,41 +75,41 @@ QTReader::QTReader( const QString& filename, QWidget *parent=0, const tchar *nam bunindent(false), brepara(false), bdblspce(false), btight(false), bindenter(0), m_fm(NULL) { init(); -// // qDebug("Load_file(1)"); +// // odebug << "Load_file(1)" << oendl; load_file((const tchar*)filename); } */ /* void QTReader::mouseMoveEvent(QMouseEvent* _e) { mouseUpOn = !(_e->pos().x() == -1); - qDebug("MouseMove:[%d, %d]", _e->pos().x(), _e->pos().y()); + odebug << "MouseMove:[" << _e->pos().x() << ", " << _e->pos().y() << "]" << oendl; } */ long QTReader::real_delay() { return ( 8976 + m_delay ) / ( m_linespacing * m_linespacing ); } void QTReader::mousePressEvent( QMouseEvent* _e ) { buffdoc.unsuspend(); if (_e->button() == RightButton) { -// qDebug("MousePress"); +// odebug << "MousePress" << oendl; mouseUpOn = false; if (m_swapmouse) { int lineno = 0; int ht = textarray[0]->lineSpacing(); while ((ht < _e->y()) && (lineno < numlines)) { ht += textarray[++lineno]->lineSpacing(); @@ -312,39 +312,39 @@ void QTReader::processmousewordevent(size_t startpos, size_t startoffset, QMouse int tgt = _e->x() - t->offset(width(), m_border); while (1) { int i = first+1; while (QChar((*t)[i]).isLetter() && (*t)[i] != 0) i++; if (t->width(i, true, width(), m_border) > tgt) { wrd = toQString(t->data()+first, i - first); -// qDebug("Got %s", (const char *)wrd); +// odebug << "Got " << (const char *)wrd << "" << oendl; break; } while (!QChar((*t)[i]).isLetter() && (*t)[i] != 0) i++; if ((*t)[i] == 0) break; first = i; } } if (!wrd.isEmpty()) { -// qDebug("Selected:%s", (const char*)wrd); +// odebug << "Selected:" << wrd << "" << oendl; emit OnWordSelected(wrd, locnarray[lineno], (m_twotouch) ? wrd : toQString(textarray[lineno]->data())); } } void QTReader::mouseReleaseEvent( QMouseEvent* _e ) { buffdoc.unsuspend(); if (_e->button() == LeftButton) { if (mouseUpOn) { -// qDebug("MouseRelease"); +// odebug << "MouseRelease" << oendl; if (_e->x() > width() - m_border) { locate(buffdoc.startSection()+((buffdoc.endSection()-buffdoc.startSection())*_e->y()+height()/2)/height()); return; } if (textarray[0] != NULL) { QString line; @@ -389,33 +389,33 @@ void QTReader::mouseReleaseEvent( QMouseEvent* _e ) } } locate(pagelocate()); } return; } case ePicture: { -// qDebug("Picture:%x", tgt); +// odebug << "Picture:" << tgt << "" << oendl; QImage* pm = buffdoc.getPicture(tgt); if (pm != NULL) { emit OnShowPicture(*pm); delete pm; } else { locate(pagelocate()); } return; } case eNone: break; default: -// qDebug("Unknown linktype"); +// odebug << "Unknown linktype" << oendl; return; } if (m_swapmouse) processmousepositionevent(_e); else processmousewordevent(startpos, startoffset, _e, lineno); } } @@ -691,17 +691,17 @@ void QTReader::setautoscroll(bool _sc) else { CDrawBuffer* reusebuffer = textarray[numlines]; if (reusebuffer == NULL || reusebuffer->eof()) return; m_autoScroll = true; #ifdef _SCROLLPIPE if (!m_pipetarget.isEmpty()) { -// qDebug("Opening pipe to %s", (const char*)m_pipetarget); +// odebug << "Opening pipe to " << m_pipetarget << "" << oendl; m_pipeout = popen((const char*)m_pipetarget, "w"); m_isPaused = false; } #endif autoscroll(); #ifdef USEQPE QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Disable; // light is even not dimmed #endif @@ -818,57 +818,57 @@ void QTReader::setfont() m_descent = m_fontControl.descent(); m_linespacing = m_fontControl.lineSpacing(); } void QTReader::drawFonts( QPainter *p ) { if (bDoUpdates) { -// qDebug("How refreshing..."); +// odebug << "How refreshing..." << oendl; if (buffdoc.empty()) return; setfont(); if (m_lastwidth != width()) { -// qDebug("Not Optimised %d", m_lastwidth); +// odebug << "Not Optimised " << m_lastwidth << "" << oendl; m_lastwidth = width(); m_lastheight = height(); buffdoc.setwidth(m_lastwidth-2*m_border); locate(pagelocate()); -// qDebug("Not Optimised %d", m_lastwidth); +// odebug << "Not Optimised " << m_lastwidth << "" << oendl; } else { int newht = height(); if (m_lastheight > newht) { -// qDebug("Optimised < %d %d %d", numlines, m_lastheight, newht); +// odebug << "Optimised < " << numlines << " " << m_lastheight << " " << newht << "" << oendl; int ypos = 0; for (int i = 0; i < numlines; i++) { if ((ypos += textarray[i]->lineSpacing()) > newht) { numlines = i; jumpto(mylastpos = locnarray[i+1]); break; } } -// qDebug("Optimised < %d", numlines); +// odebug << "Optimised < " << numlines << "" << oendl; m_lastheight = newht; } else if (m_lastheight < newht) { -// qDebug("Optimised > %d", numlines); +// odebug << "Optimised > " << numlines << "" << oendl; int ypos = 0; for (int i = 0; i <= numlines; i++) { ypos += textarray[i]->lineSpacing(); } fillbuffer(numlines+1, ypos, newht); -// qDebug("Optimised > %d", numlines); +// odebug << "Optimised > " << numlines << "" << oendl; } if (numlines > 0) { int ypos = textarray[0]->ascent(); textarray[0]->render( p, ypos, m_bMonoSpaced, m_charWidth, width(), m_border); // int last = (m_showlast) ? numlines : numlines-1; // for (int i = 1; i <= last; i++) for (int i = 1; i < numlines; i++) @@ -892,17 +892,17 @@ void QTReader::drawFonts( QPainter *p ) p->fillRect(width()-2, (height()*(locnarray[0]-buffdoc.startSection())+sectionsize/2)/sectionsize, 2, ((locnarray[numlines]-locnarray[0])*height()+sectionsize/2)/sectionsize, magenta); } emit OnRedraw(); } /* else { - qDebug("Not so refreshing..."); + odebug << "Not so refreshing..." << oendl; } */ } QString QTReader::firstword() { if (m_bMonoSpaced) { @@ -1023,17 +1023,17 @@ void QTReader::paintEvent( QPaintEvent * ) // // Called when the widget has been resized. // Moves the button group to the upper right corner // of the widget. /* void QTReader::resizeEvent( QResizeEvent * ) { -// // qDebug("resize:(%u,%u)", width(), height()); +// // odebug << "resize:(" << width() << "," << height() << ")" << oendl; // bgroup->move( width()-bgroup->width(), 0 ); } */ // // Create and display our widget. // /* @@ -1048,21 +1048,21 @@ int main( int argc, tchar **argv ) } */ bool QTReader::locate(unsigned long n) { //printf("Locate\n"); buffdoc.unsuspend(); buffdoc.locate(n); -// // qDebug("&buffdoc.located"); +// // odebug << "&buffdoc.located" << oendl; fillbuffer(); -// // qDebug("&Buffer filled"); +// // odebug << "&Buffer filled" << oendl; update(); -// // qDebug("&Located"); +// // odebug << "&Located" << oendl; return true; } unsigned int QTReader::screenlines() { // int linespacing = (tight) ? m_ascent : m_ascent+m_descent; // return (height()-m_descent)/(m_linespacing); return (height()-2)/(m_linespacing); @@ -1112,22 +1112,22 @@ bool QTReader::fillbuffer(int reuse, int ht, int newht) mylastpos = locate(); m_scrolldy1 = m_scrolldy2 = m_scrollpart = m_lastheight - lastypos; return true; } void QTReader::dopagedn() { -// qDebug("HEIGHT(2):%d", m_lastheight); +// odebug << "HEIGHT(2):" << m_lastheight << "" << oendl; buffdoc.unsuspend(); int skip = 0, ypos = 0; if (locate() != mylastpos) { -//// qDebug("Jumping to %u", mylastpos); +//// odebug << "Jumping to " << mylastpos << "" << oendl; jumpto(mylastpos); } CDrawBuffer* reusebuffer = textarray[numlines]; if (reusebuffer != NULL && reusebuffer->eof()) return; if (reusebuffer != NULL) { for (int i = 0; i <= m_overlap; i++) { @@ -1308,23 +1308,23 @@ bool QTReader::load_file(const char *newfile, unsigned int _lcn) m_lastwidth = width(); m_lastheight = height(); if (buffdoc.openfile(this,newfile) == 0) { m_lastfile = newfile; buffdoc.setwidth(m_lastwidth-2*m_border); bRC = true; buffdoc.setContinuous(m_continuousDocument); -// // qDebug("buffdoc.openfile done"); +// // odebug << "buffdoc.openfile done" << oendl; locate(lcn); -// // qDebug("buffdoc.locate done"); +// // odebug << "buffdoc.locate done" << oendl; } setfilter(getfilter()); update(); -// // qDebug("Updated"); +// // odebug << "Updated" << oendl; return bRC; } void QTReader::lineDown() { int ypos = 0; int offset = numlines; diff --git a/noncore/apps/opie-reader/QTReaderApp.cpp b/noncore/apps/opie-reader/QTReaderApp.cpp index b072854..f18cb59 100644 --- a/noncore/apps/opie-reader/QTReaderApp.cpp +++ b/noncore/apps/opie-reader/QTReaderApp.cpp @@ -12,82 +12,83 @@ ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ + #include "useqpe.h" -#include <qregexp.h> -#include <qclipboard.h> -#include <qwidgetstack.h> +#include "QTReader.h" +#include "GraphicWin.h" +#include "Bkmks.h" +#include "cbkmkselector.h" +#include "infowin.h" +#include "ToolbarPrefs.h" +#include "Prefs.h" +#include "CAnnoEdit.h" +#include "QFloatBar.h" +#include "FixedFont.h" +#include "URLDialog.h" +#include "QTReaderApp.h" +#include "CDrawBuffer.h" +#include "Filedata.h" +#include "opie.h" +#include "names.h" +#include "CEncoding_tables.h" +#include "CloseDialog.h" + +/* OPIE */ +#include <opie2/odebug.h> +#ifdef USEQPE +#include <qpe/menubutton.h> +#include <qpe/fontdatabase.h> +#include <qpe/global.h> +#include <qpe/applnk.h> +#include <qpe/config.h> +#include <qpe/qcopenvelope_qws.h> +#endif + +/* QT */ #ifdef USEQPE #include <qmenubar.h> #include <qtoolbar.h> #endif +#include <qregexp.h> +#include <qclipboard.h> +#include <qwidgetstack.h> #include <qmenubar.h> #include <qtoolbar.h> -#ifdef USEQPE -#include <qpe/menubutton.h> -#include <qpe/fontdatabase.h> -#endif #include <qcombobox.h> #include <qpopupmenu.h> #include <qaction.h> #include <qapplication.h> #include <qlineedit.h> #include <qtoolbutton.h> #include <qspinbox.h> #include <qobjectlist.h> -#ifdef USEQPE -#include <qpe/global.h> -#include <qpe/applnk.h> -#endif #include <qfileinfo.h> -#include <stdlib.h> //getenv #include <qprogressbar.h> -#ifdef USEQPE -#include <qpe/config.h> -#endif #include <qbuttongroup.h> #include <qradiobutton.h> -#ifdef USEQPE -#include <qpe/qcopenvelope_qws.h> -#endif -#include "QTReader.h" -#include "GraphicWin.h" -#include "Bkmks.h" -#include "cbkmkselector.h" -#include "infowin.h" -#include "ToolbarPrefs.h" -#include "Prefs.h" -#include "CAnnoEdit.h" -#include "QFloatBar.h" -#include "FixedFont.h" -#include "URLDialog.h" -//#include <qpe/fontdatabase.h> + +/* STD */ +#include <stdlib.h> //getenv + #ifdef USEQPE #include <qpe/resource.h> #include <qpe/qpeapplication.h> #include "fileBrowser.h" #else #include "qfiledialog.h" #endif -#include "QTReaderApp.h" -#include "CDrawBuffer.h" -#include "Filedata.h" -#include "opie.h" -#include "names.h" -#include "CEncoding_tables.h" -#include "CloseDialog.h" - bool CheckVersion(int&, int&, char&); #ifdef _WINDOWS #define PICDIR "c:\\uqtreader\\pics\\" #else #ifdef USEQPE #define PICDIR "opie-reader/" #else @@ -120,116 +121,116 @@ void QTReaderApp::listBkmkFiles() { bkmkselector->clear(); bkmkselector->setText("Cancel"); #ifndef USEQPE int cnt = 0; QDir d = QDir::home(); // "/" if ( !d.cd(APPDIR) ) { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "\" directory" ); - d = QDir::home(); - d.mkdir(APPDIR); - d.cd(APPDIR); + owarn << "Cannot find the \"~/" APPDIR "\" directory" << oendl; + d = QDir::home(); + d.mkdir(APPDIR); + d.cd(APPDIR); } d.setFilter( QDir::Files | QDir::NoSymLinks ); // d.setSorting( QDir::Size | QDir::Reversed ); const QFileInfoList *list = d.entryInfoList(); QFileInfoListIterator it( *list ); // create list iterator QFileInfo *fi; // pointer for traversing while ( (fi=it.current()) ) { // for each file... - bkmkselector->insertItem(fi->fileName()); - cnt++; + bkmkselector->insertItem(fi->fileName()); + cnt++; - //qDebug( "%10li %s", fi->size(), fi->fileName().data() ); + //odebug << "" << fi->size() << " " << fi->fileName().data() << "" << oendl; ++it; // goto next list element } #else /* USEQPE */ int cnt = 0; DIR *d; d = opendir((const char *)Global::applicationFileName(APPDIR,"")); while(1) { - struct dirent* de; - struct stat buf; - de = readdir(d); - if (de == NULL) break; + struct dirent* de; + struct stat buf; + de = readdir(d); + if (de == NULL) break; - if (lstat((const char *)Global::applicationFileName(APPDIR,de->d_name),&buf) == 0 && S_ISREG(buf.st_mode)) - { - bkmkselector->insertItem(de->d_name); - cnt++; - } + if (lstat((const char *)Global::applicationFileName(APPDIR,de->d_name),&buf) == 0 && S_ISREG(buf.st_mode)) + { + bkmkselector->insertItem(de->d_name); + cnt++; + } } closedir(d); #endif if (cnt > 0) { //tjw menu->hide(); editorStack->raiseWidget( bkmkselector ); hidetoolbars(); - m_nBkmkAction = cRmBkmkFile; + m_nBkmkAction = cRmBkmkFile; } else QMessageBox::information(this, PROGNAME, "No bookmark files"); } void QTReaderApp::hidetoolbars() { menubar->hide(); if (fileBar != NULL) fileBar->hide(); if (viewBar != NULL) viewBar->hide(); if (navBar != NULL) navBar->hide(); if (markBar != NULL) markBar->hide(); if (m_fontVisible) m_fontBar->hide(); if (regVisible) { #ifdef USEQPE - Global::hideInputMethod(); + Global::hideInputMethod(); #endif - regBar->hide(); + regBar->hide(); } if (searchVisible) { #ifdef USEQPE - Global::hideInputMethod(); + Global::hideInputMethod(); #endif - searchBar->hide(); + searchBar->hide(); } } QTReaderApp::QTReaderApp( QWidget *parent, const char *name, WFlags f ) : QMainWindow( parent, name, f ), bFromDocView( FALSE ), m_dontSave(false), fileBar(NULL), navBar(NULL), viewBar(NULL), markBar(NULL) { - m_url_clipboard = false; - m_url_localfile = false; - m_url_globalfile = false; - ftime(&m_lastkeytime); -//// qDebug("Application directory = %s", (const tchar *)QPEApplication::documentDir()); -//// qDebug("Application directory = %s", (const tchar *)Global::applicationFileName("uqtreader","bkmks.xml")); + m_url_clipboard = false; + m_url_localfile = false; + m_url_globalfile = false; + ftime(&m_lastkeytime); +//// odebug << "Application directory = " << (const tchar *)QPEApplication::documentDir() << "" << oendl; +//// odebug << "Application directory = " << (const tchar *)Global::applicationFileName("uqtreader" << "" << oendl; m_bcloseDisabled = true; m_disableesckey = false; pBkmklist = NULL; pOpenlist = NULL; // doc = 0; - m_fBkmksChanged = false; - + m_fBkmksChanged = false; + QString lang = getenv( "LANG" ); QString rot = getenv( "QWS_DISPLAY" ); /* int m_rot = 0; if (rot.contains("Rot90")) { m_rot = 90; @@ -238,40 +239,40 @@ QTReaderApp::QTReaderApp( QWidget *parent, const char *name, WFlags f ) { m_rot = 180; } else if (rot.contains("Rot270")) { m_rot = 270; } -// qDebug("Initial Rotation(%d):%s", m_rot, (const char*)rot); +// odebug << "Initial Rotation(" << m_rot << "):" << rot << "" << oendl; */ m_autogenstr = "^ *[A-Z].*[a-z] *$"; #ifdef USEQPE setIcon( Resource::loadPixmap( PICDIR "uqtreader") ); #else setIcon( QPixmap (PICDIR "uqtreader.png") ); #endif /* USEQPE */ // QToolBar *bar = new QToolBar( this ); // menubar = new QToolBar( this ); #ifdef USEQPE Config config( APPDIR ); #else QDir d = QDir::home(); // "/" if ( !d.cd(APPDIR) ) { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "\" directory" ); - d = QDir::home(); - d.mkdir(APPDIR); - d.cd(APPDIR); + owarn << "Cannot find the \"~/" APPDIR "\" directory" << oendl; + d = QDir::home(); + d.mkdir(APPDIR); + d.cd(APPDIR); } QFileInfo fi(d, INIFILE); -// qDebug("Path:%s", (const char*)fi.absFilePath()); +// odebug << "Path:" << fi.absFilePath() << "" << oendl; Config config(fi.absFilePath()); #endif config.setGroup("Toolbar"); m_tbmovesave = m_tbmove = config.readBoolEntry("Movable", false); m_tbpolsave = m_tbpol = (ToolbarPolicy)config.readNumEntry("Policy", 1); m_tbposition = (ToolBarDock)config.readNumEntry("Position", 2); menubar = new QToolBar("Menus", this, m_tbposition); @@ -350,29 +351,29 @@ QTReaderApp::QTReaderApp( QWidget *parent, const char *name, WFlags f ) /* importSelector = new FileSelector( "*", editorStack, "importselector", false ); connect( importSelector, SIGNAL( fileSelected(const DocLnk&) ), this, SLOT( importFile(const DocLnk&) ) ); editorStack->addWidget( importSelector, get_unique_id() ); // don't need the close visible, it is redundant... importSelector->setCloseVisible( FALSE ); -*/ -// qDebug("Reading file list"); +*/ +// odebug << "Reading file list" << oendl; readfilelist(); reader = new QTReader( editorStack ); reader->bDoUpdates = false; #ifdef USEQPE ((QPEApplication*)qApp)->setStylusOperation(reader, QPEApplication::RightOnHold); #endif -// qDebug("Reading config"); +// odebug << "Reading config" << oendl; // Config config( APPDIR ); config.setGroup( "View" ); m_debounce = config.readNumEntry("Debounce", 0); #ifdef USEQPE m_bFloatingDialog = config.readBoolEntry("FloatDialogs", false); #else m_bFloatingDialog = config.readBoolEntry("FloatDialogs", true); #endif @@ -432,23 +433,23 @@ QTReaderApp::QTReaderApp( QWidget *parent, const char *name, WFlags f ) m_rightScroll = config.readBoolEntry("RightScroll", false); m_upScroll = config.readBoolEntry("UpScroll", true); m_downScroll = config.readBoolEntry("DownScroll", true); m_propogatefontchange = config.readBoolEntry( "RequestorFontChange", false); reader->setBaseSize(config.readNumEntry( "Basesize", 10 )); #ifndef USEQPE - config.setGroup( "Geometry" ); - setGeometry(0,0, - config.readNumEntry( "width", QApplication::desktop()->width()/2 ), - config.readNumEntry( "height", QApplication::desktop()->height()/2 )); - move( - config.readNumEntry( "x", 20 ), - config.readNumEntry( "y", 20 )); + config.setGroup( "Geometry" ); + setGeometry(0,0, + config.readNumEntry( "width", QApplication::desktop()->width()/2 ), + config.readNumEntry( "height", QApplication::desktop()->height()/2 )); + move( + config.readNumEntry( "x", 20 ), + config.readNumEntry( "y", 20 )); #endif setTwoTouch(m_twoTouch); connect( reader, SIGNAL( OnShowPicture(QImage&) ), this, SLOT( showgraphic(QImage&) ) ); @@ -541,17 +542,17 @@ QTReaderApp::QTReaderApp( QWidget *parent, const char *name, WFlags f ) m_pageline_action = new QAction( tr( "Page/Line Scroll" ), geticon( "pass" ), QString::null, 0, this, NULL, true ); connect( m_pageline_action, SIGNAL( toggled(bool) ), this, SLOT( pagemode(bool) ) ); m_pageline_action->addTo(navigation); m_pageline_action->setOn(reader->m_bpagemode); m_pageup_action = new QAction( tr( "Up" ), geticon( "up" ), QString::null, 0, this, 0 ); connect( m_pageup_action, SIGNAL( activated() ), this, SLOT( pageup() ) ); m_pageup_action->addTo( navigation ); - + m_pagedn_action = new QAction( tr( "Down" ), geticon( "down" ), QString::null, 0, this, 0 ); connect( m_pagedn_action, SIGNAL( activated() ), this, SLOT( pagedn() ) ); m_pagedn_action->addTo( navigation ); m_back_action = new QAction( tr( "Back" ), geticon( "back" ), QString::null, 0, this, 0 ); connect( m_back_action, SIGNAL( activated() ), reader, SLOT( goBack() ) ); m_back_action->addTo( navigation ); @@ -722,20 +723,20 @@ QTReaderApp::QTReaderApp( QWidget *parent, const char *name, WFlags f ) searchEdit = new QLineEdit( searchBar, "searchEdit" ); // QFont f("unifont", 16 /*, QFont::Bold*/); // searchEdit->setFont( f ); searchBar->setStretchableWidget( searchEdit ); #ifdef __ISEARCH connect( searchEdit, SIGNAL( textChanged(const QString&) ), - this, SLOT( search(const QString&) ) ); + this, SLOT( search(const QString&) ) ); #else connect( searchEdit, SIGNAL( returnPressed() ), - this, SLOT( search() ) ); + this, SLOT( search() ) ); #endif QAction*a = new QAction( tr( "Find Next" ), geticon( "next" ), QString::null, 0, this, 0 ); connect( a, SIGNAL( activated() ), this, SLOT( findNext() ) ); a->addTo( searchBar ); a = new QAction( tr( "Close Find" ), geticon( "close" ), QString::null, 0, this, 0 ); connect( a, SIGNAL( activated() ), this, SLOT( findClose() ) ); a->addTo( searchBar ); @@ -748,183 +749,183 @@ QTReaderApp::QTReaderApp( QWidget *parent, const char *name, WFlags f ) regBar->setHorizontalStretchable( TRUE ); regEdit = new QLineEdit( regBar, "regEdit" ); // regEdit->setFont( f ); regBar->setStretchableWidget( regEdit ); connect( regEdit, SIGNAL( returnPressed() ), - this, SLOT( do_regaction() ) ); + this, SLOT( do_regaction() ) ); a = new QAction( tr( "Do Reg" ), geticon( "enter" ), QString::null, 0, this, 0 ); connect( a, SIGNAL( activated() ), this, SLOT( do_regaction() ) ); a->addTo( regBar ); a = new QAction( tr( "Close Edit" ), geticon( "close" ), QString::null, 0, this, 0 ); connect( a, SIGNAL( activated() ), this, SLOT( regClose() ) ); a->addTo( regBar ); regBar->hide(); m_fontBar = new QToolBar( "Autogen", this, QMainWindow::Top, TRUE ); m_fontBar->setHorizontalStretchable( TRUE ); -// qDebug("Font selector"); +// odebug << "Font selector" << oendl; m_fontSelector = new QComboBox(false, m_fontBar); m_fontBar->setStretchableWidget( m_fontSelector ); { #ifndef USEQPE - QFontDatabase f; + QFontDatabase f; #else - FontDatabase f; + FontDatabase f; #endif - QStringList flist = f.families(); - bool realfont = false; - for (QStringList::Iterator nm = flist.begin(); nm != flist.end(); nm++) - { - if (reader->m_fontname == *nm) - { - realfont = true; - } - if ((*nm).contains(FIXEDFONT,false)) reader->m_fontControl.hasCourier(true, *nm); - } - if (!realfont) reader->m_fontname = flist[0]; + QStringList flist = f.families(); + bool realfont = false; + for (QStringList::Iterator nm = flist.begin(); nm != flist.end(); nm++) + { + if (reader->m_fontname == *nm) + { + realfont = true; + } + if ((*nm).contains(FIXEDFONT,false)) reader->m_fontControl.hasCourier(true, *nm); + } + if (!realfont) reader->m_fontname = flist[0]; } // delete the FontDatabase!!! connect( m_fontSelector, SIGNAL( activated(const QString&) ), - this, SLOT( do_setfont(const QString&) ) ); + this, SLOT( do_setfont(const QString&) ) ); connect( m_fontSelector, SIGNAL( activated(int) ), - this, SLOT( do_setencoding(int) ) ); + this, SLOT( do_setencoding(int) ) ); m_fontBar->hide(); m_fontVisible = false; #ifdef USEMSGS connect(qApp, SIGNAL( appMessage(const QCString&,const QByteArray&) ), - this, SLOT( msgHandler(const QCString&,const QByteArray&) ) ); + this, SLOT( msgHandler(const QCString&,const QByteArray&) ) ); #endif -// qDebug("Initing"); +// odebug << "Initing" << oendl; reader->init(); -// qDebug("Inited"); +// odebug << "Inited" << oendl; // m_buttonAction[m_spaceTarget]->setOn(true); -// qDebug("fonting"); +// odebug << "fonting" << oendl; do_setfont(reader->m_fontname); if (!reader->m_lastfile.isEmpty()) { -// qDebug("doclnk"); -// doc = new DocLnk(reader->m_lastfile); -// qDebug("doclnk done"); - if (pOpenlist != NULL) - { +// odebug << "doclnk" << oendl; +// doc = new DocLnk(reader->m_lastfile); +// odebug << "doclnk done" << oendl; + if (pOpenlist != NULL) + { /* - int ind = 0; - Bkmk* p = (*pOpenlist)[ind]; - while (p != NULL && toQString(CFiledata(p->anno()).name()) != reader->m_lastfile) - { - p = (*pOpenlist)[++ind]; - } + int ind = 0; + Bkmk* p = (*pOpenlist)[ind]; + while (p != NULL && toQString(CFiledata(p->anno()).name()) != reader->m_lastfile) + { + p = (*pOpenlist)[++ind]; + } */ - Bkmk* p = NULL; - for (CList<Bkmk>::iterator iter = pOpenlist->begin(); iter != pOpenlist->end(); iter++) - { - p = iter.pContent(); - if (toQString(CFiledata(p->anno()).name()) == reader->m_lastfile) - { - break; - } -// qDebug("Item:%s", (const char*)toQString(CFiledata(p->anno()).name())); - p = NULL; - } - if (p != NULL) - { -// qDebug("openfrombkmk"); - if (!openfrombkmk(p)) - showEditTools(); - } - else - { -// qDebug("openfile"); - openFile( reader->m_lastfile ); - } - } - else - { -// qDebug("Openfile 2"); - if (!reader->m_lastfile.isEmpty()) - openFile( reader->m_lastfile ); - } + Bkmk* p = NULL; + for (CList<Bkmk>::iterator iter = pOpenlist->begin(); iter != pOpenlist->end(); iter++) + { + p = iter.pContent(); + if (toQString(CFiledata(p->anno()).name()) == reader->m_lastfile) + { + break; + } +// odebug << "Item:" << toQString(CFiledata(p->anno()).name()) << "" << oendl; + p = NULL; + } + if (p != NULL) + { +// odebug << "openfrombkmk" << oendl; + if (!openfrombkmk(p)) + showEditTools(); + } + else + { +// odebug << "openfile" << oendl; + openFile( reader->m_lastfile ); + } + } + else + { +// odebug << "Openfile 2" << oendl; + if (!reader->m_lastfile.isEmpty()) + openFile( reader->m_lastfile ); + } } else { showEditTools(); } // qApp->processEvents(); reader->bDoUpdates = true; reader->update(); config.setGroup("Version"); int major = config.readNumEntry("Major", 0); int bkmktype = config.readNumEntry("BkmkType", 0); char minor = config.readNumEntry("Minor", 0); if (CheckVersion(major, bkmktype, minor)) { - config.writeEntry("Major", major); - config.writeEntry("BkmkType", bkmktype); - config.writeEntry("Minor", (int)minor); + config.writeEntry("Major", major); + config.writeEntry("BkmkType", bkmktype); + config.writeEntry("Minor", (int)minor); } -// qDebug("finished update"); +// odebug << "finished update" << oendl; } void QTReaderApp::addtoolbars(Config* config) { config->setGroup("Toolbar"); if (fileBar != NULL) { - if (fileBar != menubar) - { - fileBar->clear(); - } - else - { - m_preferences_action->removeFrom( filebar() ); - m_open_action->removeFrom( filebar() ); - m_close_action->removeFrom( filebar() ); - m_info_action->removeFrom( filebar() ); - m_touch_action->removeFrom( filebar() ); - m_find_action->removeFrom( filebar() ); - } + if (fileBar != menubar) + { + fileBar->clear(); + } + else + { + m_preferences_action->removeFrom( filebar() ); + m_open_action->removeFrom( filebar() ); + m_close_action->removeFrom( filebar() ); + m_info_action->removeFrom( filebar() ); + m_touch_action->removeFrom( filebar() ); + m_find_action->removeFrom( filebar() ); + } } m_preferences_action->addTo( filebar() ); addfilebar(config, "Open", m_open_action); addfilebar(config, "Close", m_close_action); addfilebar(config, "Info", m_info_action); addfilebar(config, "Two/One Touch", m_touch_action); addfilebar(config, "Find", m_find_action); if (navBar != NULL) { - if ((navBar == fileBar) && (fileBar == menubar)) - { - m_scrollButton->removeFrom( navbar() ); - m_start_action->removeFrom( navbar() ); - m_end_action->removeFrom( navbar() ); - m_jump_action->removeFrom( navbar() ); - m_pageline_action->removeFrom( navbar() ); - m_pageup_action->removeFrom( navbar() ); - m_pagedn_action->removeFrom( navbar() ); - m_back_action->removeFrom( navbar() ); - m_home_action->removeFrom( navbar() ); - m_forward_action->removeFrom( navbar() ); - } - else if (navBar != fileBar) - { - navBar->clear(); - } + if ((navBar == fileBar) && (fileBar == menubar)) + { + m_scrollButton->removeFrom( navbar() ); + m_start_action->removeFrom( navbar() ); + m_end_action->removeFrom( navbar() ); + m_jump_action->removeFrom( navbar() ); + m_pageline_action->removeFrom( navbar() ); + m_pageup_action->removeFrom( navbar() ); + m_pagedn_action->removeFrom( navbar() ); + m_back_action->removeFrom( navbar() ); + m_home_action->removeFrom( navbar() ); + m_forward_action->removeFrom( navbar() ); + } + else if (navBar != fileBar) + { + navBar->clear(); + } } addnavbar(config, "Scroll", m_scrollButton); addnavbar(config, "Goto Start", m_start_action); addnavbar(config, "Goto End", m_end_action); addnavbar(config, "Jump", m_jump_action); addnavbar(config, "Page/Line Scroll", m_pageline_action); @@ -933,177 +934,177 @@ void QTReaderApp::addtoolbars(Config* config) addnavbar(config, "Page Down", m_pagedn_action); addnavbar(config, "Back", m_back_action); addnavbar(config, "Home", m_home_action); addnavbar(config, "Forward", m_forward_action); if (viewBar != NULL) { - if ((viewBar == fileBar) && (fileBar == menubar)) - { - m_actFullscreen->removeFrom( filebar() ); - m_zoomin_action->removeFrom( viewbar() ); - m_zoomout_action->removeFrom( viewbar() ); - m_setfont_action->removeFrom( viewbar() ); - m_setenc_action->removeFrom( viewbar() ); - m_setmono_action->removeFrom( viewbar() ); - } - else if (viewBar != fileBar) - { - viewBar->clear(); - } + if ((viewBar == fileBar) && (fileBar == menubar)) + { + m_actFullscreen->removeFrom( filebar() ); + m_zoomin_action->removeFrom( viewbar() ); + m_zoomout_action->removeFrom( viewbar() ); + m_setfont_action->removeFrom( viewbar() ); + m_setenc_action->removeFrom( viewbar() ); + m_setmono_action->removeFrom( viewbar() ); + } + else if (viewBar != fileBar) + { + viewBar->clear(); + } } addviewbar(config, "Fullscreen", m_actFullscreen); addviewbar(config, "Zoom In", m_zoomin_action); addviewbar(config, "Zoom Out", m_zoomout_action); addviewbar(config, "Set Font", m_setfont_action); addviewbar(config, "Encoding Select", m_setenc_action); addviewbar(config, "Ideogram Mode", m_setmono_action); if (markBar != NULL) { - if ((markBar == fileBar) && (fileBar == menubar)) - { - m_mark_action->removeFrom( markbar() ); - m_annotate_action->removeFrom( markbar()); - m_goto_action->removeFrom( markbar() ); - m_delete_action->removeFrom( markbar() ); - m_autogen_action->removeFrom( markbar() ); - m_clear_action->removeFrom( markbar() ); - m_save_action->removeFrom( markbar() ); - m_tidy_action->removeFrom( markbar() ); - m_startBlock_action->removeFrom( markbar() ); - m_endBlock_action->removeFrom( markbar() ); - } - else if (markBar != fileBar) - { - markBar->clear(); - } + if ((markBar == fileBar) && (fileBar == menubar)) + { + m_mark_action->removeFrom( markbar() ); + m_annotate_action->removeFrom( markbar()); + m_goto_action->removeFrom( markbar() ); + m_delete_action->removeFrom( markbar() ); + m_autogen_action->removeFrom( markbar() ); + m_clear_action->removeFrom( markbar() ); + m_save_action->removeFrom( markbar() ); + m_tidy_action->removeFrom( markbar() ); + m_startBlock_action->removeFrom( markbar() ); + m_endBlock_action->removeFrom( markbar() ); + } + else if (markBar != fileBar) + { + markBar->clear(); + } } addmarkbar(config, "Mark", m_mark_action); addmarkbar(config, "Annotate", m_annotate_action); addmarkbar(config, "Goto", m_goto_action); addmarkbar(config, "Delete", m_delete_action); addmarkbar(config, "Autogen", m_autogen_action); addmarkbar(config, "Clear", m_clear_action); addmarkbar(config, "Save", m_save_action); addmarkbar(config, "Tidy", m_tidy_action); addmarkbar(config, "Start Block", m_startBlock_action); addmarkbar(config, "Copy Block", m_endBlock_action); if (checkbar(config, "Annotation indicator")) { - if (m_bkmkAvail == NULL) - { - m_bkmkAvail = new QAction( tr( "Annotation" ), geticon( "find" ), QString::null, 0, this, 0 ); - connect( m_bkmkAvail, SIGNAL( activated() ), this, SLOT( showAnnotation() ) ); - - m_bkmkAvail->setEnabled(false); - } - QLabel *spacer = new QLabel(markBar, ""); - markbar()->setStretchableWidget(spacer); - m_bkmkAvail->removeFrom( markbar() ); - m_bkmkAvail->addTo( markbar() ); + if (m_bkmkAvail == NULL) + { + m_bkmkAvail = new QAction( tr( "Annotation" ), geticon( "find" ), QString::null, 0, this, 0 ); + connect( m_bkmkAvail, SIGNAL( activated() ), this, SLOT( showAnnotation() ) ); + + m_bkmkAvail->setEnabled(false); + } + QLabel *spacer = new QLabel(markBar, ""); + markbar()->setStretchableWidget(spacer); + m_bkmkAvail->removeFrom( markbar() ); + m_bkmkAvail->addTo( markbar() ); } else { - if (m_bkmkAvail != NULL) - { - m_bkmkAvail->removeFrom( markbar() ); - delete m_bkmkAvail; - m_bkmkAvail = NULL; - } + if (m_bkmkAvail != NULL) + { + m_bkmkAvail->removeFrom( markbar() ); + delete m_bkmkAvail; + m_bkmkAvail = NULL; + } } } bool QTReaderApp::checkbar(Config* _config, const QString& key) { return _config->readBoolEntry(key, false); } QToolBar* QTReaderApp::filebar() { if (fileBar == NULL) { - switch (m_tbpol) - { - case cesSingle: -// qDebug("Setting filebar to menubar"); - fileBar = menubar; - break; - default: - qDebug("Incorrect toolbar policy set"); - case cesMenuTool: - case cesMultiple: -// qDebug("Creating new file bar"); - fileBar = new QToolBar("File", this, m_tbposition); - break; - } -// fileBar->setHorizontalStretchable( true ); + switch (m_tbpol) + { + case cesSingle: +// odebug << "Setting filebar to menubar" << oendl; + fileBar = menubar; + break; + default: + odebug << "Incorrect toolbar policy set" << oendl; + case cesMenuTool: + case cesMultiple: +// odebug << "Creating new file bar" << oendl; + fileBar = new QToolBar("File", this, m_tbposition); + break; + } +// fileBar->setHorizontalStretchable( true ); } return fileBar; } QToolBar* QTReaderApp::viewbar() { if (viewBar == NULL) { - switch (m_tbpol) - { - case cesMultiple: - viewBar = new QToolBar("View", this, m_tbposition); - break; - default: - qDebug("Incorrect toolbar policy set"); - case cesSingle: - case cesMenuTool: - viewBar = fileBar; - break; - } + switch (m_tbpol) + { + case cesMultiple: + viewBar = new QToolBar("View", this, m_tbposition); + break; + default: + odebug << "Incorrect toolbar policy set" << oendl; + case cesSingle: + case cesMenuTool: + viewBar = fileBar; + break; + } } return viewBar; } QToolBar* QTReaderApp::navbar() { if (navBar == NULL) { - switch (m_tbpol) - { - case cesMultiple: -// qDebug("Creating new nav bar"); - navBar = new QToolBar("Navigation", this, m_tbposition); - break; - default: - qDebug("Incorrect toolbar policy set"); - case cesSingle: - case cesMenuTool: - navBar = fileBar; -// qDebug("Setting navbar to filebar"); - break; - } + switch (m_tbpol) + { + case cesMultiple: +// odebug << "Creating new nav bar" << oendl; + navBar = new QToolBar("Navigation", this, m_tbposition); + break; + default: + odebug << "Incorrect toolbar policy set" << oendl; + case cesSingle: + case cesMenuTool: + navBar = fileBar; +// odebug << "Setting navbar to filebar" << oendl; + break; + } } return navBar; } QToolBar* QTReaderApp::markbar() { if (markBar == NULL) { - switch (m_tbpol) - { - case cesMultiple: - markBar = new QToolBar("Marks", this, m_tbposition); - break; - default: - qDebug("Incorrect toolbar policy set"); - case cesSingle: - case cesMenuTool: - markBar = fileBar; - break; - } + switch (m_tbpol) + { + case cesMultiple: + markBar = new QToolBar("Marks", this, m_tbposition); + break; + default: + odebug << "Incorrect toolbar policy set" << oendl; + case cesSingle: + case cesMenuTool: + markBar = fileBar; + break; + } } return markBar; } void QTReaderApp::addfilebar(Config* _config, const QString& key, QAction* a) { if (_config->readBoolEntry(key, false)) a->addTo( filebar() ); } @@ -1122,371 +1123,371 @@ void QTReaderApp::addviewbar(Config* _config, const QString& key, QAction* a) void QTReaderApp::suspend() { reader->suspend(); } #ifdef USEMSGS void QTReaderApp::msgHandler(const QCString& _msg, const QByteArray& _data) { QString msg = QString::fromUtf8(_msg); -//// qDebug("Received:%s", (const char*)msg); +//// odebug << "Received:" << msg << "" << oendl; QDataStream stream( _data, IO_ReadOnly ); if ( msg == "info(QString)" ) { - QString info; - stream >> info; - QMessageBox::information(this, PROGNAME, info); + QString info; + stream >> info; + QMessageBox::information(this, PROGNAME, info); } else if ( msg == "Update(int)" ) { - int info; - stream >> info; - if (info) - { - reader->bDoUpdates = true; - reader->refresh(); - } - else - { - reader->bDoUpdates = false; - } + int info; + stream >> info; + if (info) + { + reader->bDoUpdates = true; + reader->refresh(); + } + else + { + reader->bDoUpdates = false; + } } else if ( msg == "warn(QString)" ) { - QString info; - stream >> info; - QMessageBox::warning(this, PROGNAME, info); + QString info; + stream >> info; + QMessageBox::warning(this, PROGNAME, info); } else if ( msg == "exit()" ) { - m_dontSave = true; - close(); + m_dontSave = true; + close(); } else if ( msg == "pageDown()" ) { - reader->dopagedn(); + reader->dopagedn(); } else if ( msg == "pageUp()" ) { - reader->dopageup(); + reader->dopageup(); } else if ( msg == "lineDown()" ) { - reader->lineDown(); + reader->lineDown(); } else if ( msg == "lineUp()" ) { - reader->lineUp(); + reader->lineUp(); } else if ( msg == "showText()" ) { - showEditTools(); + showEditTools(); } else if ( msg == "home()" ) { - reader->goHome(); + reader->goHome(); } else if ( msg == "back()" ) { - reader->goBack(); + reader->goBack(); } else if ( msg == "forward()" ) { - reader->goForward(); + reader->goForward(); } else if ( msg == "File/Open(QString)" ) { - QString info; - stream >> info; - openFile( info ); + QString info; + stream >> info; + openFile( info ); } else if ( msg == "File/Info()" ) { - showinfo(); + showinfo(); } else if ( msg == "File/Action(QString)" ) { - QString info; - stream >> info; - m_spaceTarget = ActNameToInt(info); + QString info; + stream >> info; + m_spaceTarget = ActNameToInt(info); } else if ( msg == "Navigation/Scroll(int)" ) { - int info; - stream >> info; - autoScroll(info); + int info; + stream >> info; + autoScroll(info); } else if ( msg == "Navigation/GotoStart()" ) { - gotoStart(); + gotoStart(); } else if ( msg == "Navigation/GotoEnd()" ) { - gotoEnd(); + gotoEnd(); } else if ( msg == "Navigation/Jump(int)" ) { - int info; - stream >> info; - reader->locate(info); + int info; + stream >> info; + reader->locate(info); } else if ( msg == "Navigation/Page/LineScroll(int)" ) { - int info; - stream >> info; - pagemode(info); + int info; + stream >> info; + pagemode(info); } else if ( msg == "Navigation/SetOverlap(int)" ) { - int info; - stream >> info; - reader->m_overlap = info; + int info; + stream >> info; + reader->m_overlap = info; } else if ( msg == "Navigation/SetMargin(int)" ) { - int info; - stream >> info; - do_margin(info); + int info; + stream >> info; + do_margin(info); } else if ( msg == "File/SetDictionary(QString)" ) { - QString info; - stream >> info; - do_settarget(info); + QString info; + stream >> info; + do_settarget(info); } #ifdef _SCROLLPIPE else if ( msg == "File/SetScrollTarget(QString)" ) { - QString info; - stream >> info; - reader->m_pipetarget = info; + QString info; + stream >> info; + reader->m_pipetarget = info; } #endif else if ( msg == "File/Two/OneTouch(int)" ) { - int info; - stream >> info; - setTwoTouch(info); + int info; + stream >> info; + setTwoTouch(info); } else if ( msg == "Target/Annotation(int)" ) { - int info; - stream >> info; - OnAnnotation(info); + int info; + stream >> info; + OnAnnotation(info); } else if ( msg == "Target/Dictionary(int)" ) { - int info; - stream >> info; - OnDictionary(info); + int info; + stream >> info; + OnDictionary(info); } else if ( msg == "Target/Clipboard(int)" ) { - int info; - stream >> info; - OnClipboard(info); + int info; + stream >> info; + OnClipboard(info); } else if ( msg == "File/Find(QString)" ) { - QString info; - stream >> info; - QRegExp arg(info); - size_t pos = reader->pagelocate(); - size_t start = pos; - CDrawBuffer test(&(reader->m_fontControl)); - reader->getline(&test); - while (arg.match(toQString(test.data())) == -1) - { - pos = reader->locate(); - if (!reader->getline(&test)) - { - QMessageBox::information(this, PROGNAME, QString("Can't find\n")+info); - pos = start; - break; - } - } - reader->locate(pos); + QString info; + stream >> info; + QRegExp arg(info); + size_t pos = reader->pagelocate(); + size_t start = pos; + CDrawBuffer test(&(reader->m_fontControl)); + reader->getline(&test); + while (arg.match(toQString(test.data())) == -1) + { + pos = reader->locate(); + if (!reader->getline(&test)) + { + QMessageBox::information(this, PROGNAME, QString("Can't find\n")+info); + pos = start; + break; + } + } + reader->locate(pos); } else if ( msg == "File/Fullscreen(int)" ) { - int info; - stream >> info; - setfullscreen(info); + int info; + stream >> info; + setfullscreen(info); } else if ( msg == "File/Continuous(int)" ) { - int info; - stream >> info; - setcontinuous(info); + int info; + stream >> info; + setcontinuous(info); } else if ( msg == "Markup(QString)" ) { - QString info; - stream >> info; - if (info == "Auto") - { - autofmt(true); - } - if (info == "None") - { - autofmt(false); - textfmt(false); - striphtml(false); - peanut(false); - } - if (info == "Text") - { - textfmt(true); - } - if (info == "HTML") - { - striphtml(true); - } - if (info == "Peanut/PML") - { - peanut(true); - } + QString info; + stream >> info; + if (info == "Auto") + { + autofmt(true); + } + if (info == "None") + { + autofmt(false); + textfmt(false); + striphtml(false); + peanut(false); + } + if (info == "Text") + { + textfmt(true); + } + if (info == "HTML") + { + striphtml(true); + } + if (info == "Peanut/PML") + { + peanut(true); + } } else if ( msg == "Layout/StripCR(int)" ) { - int info; - stream >> info; - stripcr(info); + int info; + stream >> info; + stripcr(info); } else if ( msg == "Layout/Dehyphen(int)" ) { - int info; - stream >> info; - dehyphen(info); + int info; + stream >> info; + dehyphen(info); } else if ( msg == "Layout/Depluck(int)" ) { - int info; - stream >> info; - depluck(info); + int info; + stream >> info; + depluck(info); } else if ( msg == "Layout/Dejpluck(int)" ) { - int info; - stream >> info; - dejpluck(info); + int info; + stream >> info; + dejpluck(info); } else if ( msg == "Layout/SingleSpace(int)" ) { - int info; - stream >> info; - onespace(info); + int info; + stream >> info; + onespace(info); } #ifdef REPALM else if ( msg == "Layout/Repalm(int)" ) { - int info; - stream >> info; - repalm(info); + int info; + stream >> info; + repalm(info); } #endif else if ( msg == "Layout/Unindent(int)" ) { - int info; - stream >> info; - unindent(info); + int info; + stream >> info; + unindent(info); } else if ( msg == "Layout/Re-paragraph(int)" ) { - int info; - stream >> info; - repara(info); + int info; + stream >> info; + repara(info); } else if ( msg == "Layout/DoubleSpace(int)" ) { - int info; - stream >> info; - dblspce(info); + int info; + stream >> info; + dblspce(info); } else if ( msg == "Layout/Indent(int)" ) { - int info; - stream >> info; - reader->bindenter = info; - reader->setfilter(reader->getfilter()); + int info; + stream >> info; + reader->bindenter = info; + reader->setfilter(reader->getfilter()); } else if ( msg == "Layout/Remap(int)" ) { - int info; - stream >> info; - remap(info); + int info; + stream >> info; + remap(info); } else if ( msg == "Layout/Embolden(int)" ) { - int info; - stream >> info; - embolden(info); + int info; + stream >> info; + embolden(info); } else if ( msg == "Format/Ideogram/Word(int)" ) { - int info; - stream >> info; - monospace(info); + int info; + stream >> info; + monospace(info); } else if ( msg == "Format/SetWidth(int)" ) { - int info; - stream >> info; - reader->m_charpc = info; - reader->setfont(); - reader->refresh(); + int info; + stream >> info; + reader->m_charpc = info; + reader->setfont(); + reader->refresh(); } else if ( msg == "Format/SetFont(QString,int)" ) { - QString fontname; - int size; - stream >> fontname; - stream >> size; - setfontHelper(fontname, size); + QString fontname; + int size; + stream >> fontname; + stream >> size; + setfontHelper(fontname, size); } else if ( msg == "Marks/Autogen(QString)" ) { - QString info; - stream >> info; - do_autogen(info); + QString info; + stream >> info; + do_autogen(info); } else if ( msg == "File/StartBlock()" ) { - editMark(); + editMark(); } else if ( msg == "File/CopyBlock()" ) { - editCopy(); + editCopy(); } } #endif ActionTypes QTReaderApp::ActNameToInt(const QString& _enc) { for (int i = 0; i < MAX_ACTIONS; i++) { - if (m_buttonAction[i]->text() == _enc) return (ActionTypes)i; + if (m_buttonAction[i]->text() == _enc) return (ActionTypes)i; } return cesAutoScroll; } void QTReaderApp::setfullscreen(bool sfs) { reader->bDoUpdates = false; m_fullscreen = sfs; showEditTools(); // qApp->processEvents(); reader->bDoUpdates = true; reader->update(); } void QTReaderApp::buttonActionSelected(QAction* _a) { -//// qDebug("es:%x : %s (%u)", _a, (const char *)(_a->text()), ActNameToInt(_a->text())); +//// odebug << "es:" << _a << " : " << (const char *)(_a->text()) << " (" << ActNameToInt(_a->text()) << ")" << oendl; m_spaceTarget = ActNameToInt(_a->text()); } QTReaderApp::~QTReaderApp() { } void QTReaderApp::autoScroll(bool _b) @@ -1502,182 +1503,182 @@ void QTReaderApp::zoomin() void QTReaderApp::zoomout() { reader->zoomout(); } void QTReaderApp::clearBkmkList() { - delete pBkmklist; - pBkmklist = NULL; - m_fBkmksChanged = false; + delete pBkmklist; + pBkmklist = NULL; + m_fBkmksChanged = false; } void QTReaderApp::fileClose() { CCloseDialog* cd = new CCloseDialog(reader->m_string, false, this); if (cd->exec()) { - if (pOpenlist != NULL) - { - int ind = 0; - Bkmk* p = (*pOpenlist)[ind]; - while (p != NULL && toQString(CFiledata(p->anno()).name()) != reader->m_lastfile) - { - p = (*pOpenlist)[++ind]; - } - if (p != NULL) pOpenlist->erase(ind); - if (cd->delFile()) - { - unlink((const char*)reader->m_lastfile); - } - if (cd->delMarks()) - { + if (pOpenlist != NULL) + { + int ind = 0; + Bkmk* p = (*pOpenlist)[ind]; + while (p != NULL && toQString(CFiledata(p->anno()).name()) != reader->m_lastfile) + { + p = (*pOpenlist)[++ind]; + } + if (p != NULL) pOpenlist->erase(ind); + if (cd->delFile()) + { + unlink((const char*)reader->m_lastfile); + } + if (cd->delMarks()) + { #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR); - d.remove(reader->m_string); + QDir d = QDir::home(); // "/" + d.cd(APPDIR); + d.remove(reader->m_string); #else /* USEQPE */ - unlink((const char *)Global::applicationFileName(APPDIR,reader->m_string)); + unlink((const char *)Global::applicationFileName(APPDIR,reader->m_string)); #endif /* USEQPE */ - } - if (cd->delConfig()) - { + } + if (cd->delConfig()) + { #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR "/configs"); - d.remove(reader->m_string); + QDir d = QDir::home(); // "/" + d.cd(APPDIR "/configs"); + d.remove(reader->m_string); #else /* USEQPE */ - unlink((const char *)Global::applicationFileName(APPDIR "/configs",reader->m_string)); + unlink((const char *)Global::applicationFileName(APPDIR "/configs",reader->m_string)); #endif /* USEQPE */ - } - } - - fileOpen2(); + } + } + + fileOpen2(); } delete cd; } void QTReaderApp::updatefileinfo() { if (reader->m_string.isEmpty()) return; if (reader->m_lastfile.isEmpty()) return; tchar* nm = fromQString(reader->m_string); tchar* fl = fromQString(reader->m_lastfile); -// qDebug("Lastfile:%x", fl); +// odebug << "Lastfile:" << fl << "" << oendl; bool notadded = true; if (pOpenlist == NULL) pOpenlist = new CList<Bkmk>; else { - for (CList<Bkmk>::iterator iter = pOpenlist->begin(); iter != pOpenlist->end(); iter++) - { - if (ustrcmp(CFiledata(iter->anno()).name(), fl) == 0) - { - iter->value(reader->pagelocate()); - unsigned short dlen; - unsigned char* data; - CFiledata fd(iter->anno()); - reader->setSaveData(data, dlen, fd.content(), fd.length()); -// qDebug("Filedata(1):%u, %u", fd.length(), dlen); -// getstate(data, dlen); - iter->setAnno(data, dlen); - notadded = false; - delete [] data; - break; - } - } - } -// qDebug("Added?:%x", notadded); + for (CList<Bkmk>::iterator iter = pOpenlist->begin(); iter != pOpenlist->end(); iter++) + { + if (ustrcmp(CFiledata(iter->anno()).name(), fl) == 0) + { + iter->value(reader->pagelocate()); + unsigned short dlen; + unsigned char* data; + CFiledata fd(iter->anno()); + reader->setSaveData(data, dlen, fd.content(), fd.length()); +// odebug << "Filedata(1):" << fd.length() << ", " << dlen << "" << oendl; +// getstate(data, dlen); + iter->setAnno(data, dlen); + notadded = false; + delete [] data; + break; + } + } + } +// odebug << "Added?:" << notadded << "" << oendl; if (notadded) { - struct stat fnstat; - stat((const char *)reader->m_lastfile, &fnstat); - CFiledata fd(fnstat.st_mtime, fl); - unsigned short dlen; - unsigned char* data; - reader->setSaveData(data, dlen, fd.content(), fd.length()); - pOpenlist->push_front(Bkmk(nm, data, dlen, reader->pagelocate())); -// qDebug("Filedata(2):%u, %u", fd.length(), dlen); - delete [] data; + struct stat fnstat; + stat((const char *)reader->m_lastfile, &fnstat); + CFiledata fd(fnstat.st_mtime, fl); + unsigned short dlen; + unsigned char* data; + reader->setSaveData(data, dlen, fd.content(), fd.length()); + pOpenlist->push_front(Bkmk(nm, data, dlen, reader->pagelocate())); +// odebug << "Filedata(2):" << fd.length() << ", " << dlen << "" << oendl; + delete [] data; } delete [] nm; delete [] fl; } void QTReaderApp::fileOpen() { /* menu->hide(); fileBar->hide(); if (regVisible) regBar->hide(); if (searchVisible) searchBar->hide(); */ -// qDebug("fileOpen"); +// odebug << "fileOpen" << oendl; // if (!reader->m_lastfile.isEmpty()) updatefileinfo(); fileOpen2(); } void QTReaderApp::fileOpen2() { if (pBkmklist != NULL) { - if (m_fBkmksChanged) - { - if (QMessageBox::warning(this, PROGNAME, "Save bookmarks?", "Save", "Don't bother") == 0) - savebkmks(); - } - delete pBkmklist; - pBkmklist = NULL; - m_fBkmksChanged = false; + if (m_fBkmksChanged) + { + if (QMessageBox::warning(this, PROGNAME, "Save bookmarks?", "Save", "Don't bother") == 0) + savebkmks(); + } + delete pBkmklist; + pBkmklist = NULL; + m_fBkmksChanged = false; } reader->disableAutoscroll(); /* editorStack->raiseWidget( fileSelector ); fileSelector->reread(); */ bool usebrowser = true; if (pOpenlist != NULL) { - m_nBkmkAction = cOpenFile; - if (listbkmk(pOpenlist, "Browse")) usebrowser = false; + m_nBkmkAction = cOpenFile; + if (listbkmk(pOpenlist, "Browse")) usebrowser = false; } if (usebrowser) { - QString fn = usefilebrowser(); -// qApp->processEvents(); - if (!fn.isEmpty() && QFileInfo(fn).isFile()) - { - openFile(fn); - } - reader->setFocus(); + QString fn = usefilebrowser(); +// qApp->processEvents(); + if (!fn.isEmpty() && QFileInfo(fn).isFile()) + { + openFile(fn); + } + reader->setFocus(); } // reader->refresh(); -// qDebug("HEIGHT:%d", reader->m_lastheight); +// odebug << "HEIGHT:" << reader->m_lastheight << "" << oendl; } QString QTReaderApp::usefilebrowser() { #ifndef USEQPE QString s( QFileDialog::getOpenFileName( reader->m_lastfile, QString::null, this ) ); return s; #else fileBrowser* fb = new fileBrowser(false, this,"OpieReader",!m_bFloatingDialog, - 0, -// WStyle_Customize | WStyle_NoBorderEx, - "*", QFileInfo(reader->m_lastfile).dirPath(true)); + 0, +// WStyle_Customize | WStyle_NoBorderEx, + "*", QFileInfo(reader->m_lastfile).dirPath(true)); QString fn; if (fb->exec()) { - fn = fb->getCurrentFile(); + fn = fb->getCurrentFile(); } -// qDebug("Selected %s", (const char*)fn); +// odebug << "Selected " << fn << "" << oendl; delete fb; showEditTools(); return fn; #endif } void QTReaderApp::showgraphic(QImage& pm) { @@ -1688,50 +1689,50 @@ void QTReaderApp::showgraphic(QImage& pm) m_graphicwin->setFocus(); } void QTReaderApp::showprefs() { CPrefs* prefwin = new CPrefs(!m_bFloatingDialog, this); - prefwin->twotouch(m_twoTouch); + prefwin->twotouch(m_twoTouch); prefwin->propfontchange(m_propogatefontchange); prefwin->StripCR(reader->bstripcr); prefwin->Dehyphen(reader->bdehyphen); prefwin->SingleSpace(reader->bonespace); prefwin->Unindent(reader->bunindent); prefwin->Reparagraph(reader->brepara); prefwin->DoubleSpace(reader->bdblspce); prefwin->Remap(reader->bremap); prefwin->Embolden(reader->bmakebold); prefwin->FullJustify(reader->bfulljust); prefwin->ParaLead(reader->getextraspace()); prefwin->LineLead(reader->getlead()); prefwin->Margin(reader->m_border); prefwin->Indent(reader->bindenter); if (reader->bautofmt) { - prefwin->Markup(0); + prefwin->Markup(0); } else if (reader->btextfmt) { - prefwin->Markup(2); + prefwin->Markup(2); } else if (reader->bstriphtml) { - prefwin->Markup(3); + prefwin->Markup(3); } else if (reader->bpeanut) { - prefwin->Markup(4); + prefwin->Markup(4); } else { - prefwin->Markup(1); + prefwin->Markup(1); } prefwin->Depluck(reader->bdepluck); prefwin->Dejpluck(reader->bdejpluck); prefwin->Continuous(reader->m_continuousDocument); prefwin->dictApplication(m_targetapp); prefwin->dictMessage(m_targetmsg); @@ -1763,286 +1764,286 @@ void QTReaderApp::showprefs() prefwin->ideogram(reader->m_bMonoSpaced); prefwin->encoding(reader->m_encd); prefwin->ideogramwidth(reader->m_charpc); if (prefwin->exec()) { - m_twoTouch = prefwin->twotouch(); - reader->setTwoTouch(m_twoTouch); - m_touch_action->setOn(m_twoTouch); - - reader->bstripcr = prefwin->StripCR(); - reader->bdehyphen = prefwin->Dehyphen(); - reader->bonespace = prefwin->SingleSpace(); - reader->bunindent = prefwin->Unindent(); - reader->brepara = prefwin->Reparagraph(); - reader->bdblspce = prefwin->DoubleSpace(); - reader->bremap = prefwin->Remap(); - reader->bmakebold = prefwin->Embolden(); - reader->bfulljust = prefwin->FullJustify(); - reader->setextraspace(prefwin->ParaLead()); - reader->setlead(prefwin->LineLead()); - reader->m_border = prefwin->Margin(); - reader->bindenter = prefwin->Indent(); - reader->bautofmt = reader->btextfmt = reader->bstriphtml = reader->bpeanut = false; - switch (prefwin->Markup()) - { - case 0: - reader->bautofmt = true; - break; - case 1: - break; - case 2: - reader->btextfmt = true; - break; - case 3: - reader->bstriphtml = true; - break; - case 4: - reader->bpeanut = true; - break; - default: - qDebug("Format out of range"); - } - reader->bdepluck = prefwin->Depluck(); - reader->bdejpluck = prefwin->Dejpluck(); - reader->setContinuous(prefwin->Continuous()); - - m_spaceTarget = (ActionTypes)prefwin->spaceAction(); - m_escapeTarget = (ActionTypes)prefwin->escapeAction(); - m_returnTarget = (ActionTypes)prefwin->returnAction(); - m_leftTarget = (ActionTypes)prefwin->leftAction(); - m_rightTarget = (ActionTypes)prefwin->rightAction(); - m_upTarget = (ActionTypes)prefwin->upAction(); - m_downTarget = (ActionTypes)prefwin->downAction(); - m_leftScroll = prefwin->leftScroll(); - m_rightScroll = prefwin->rightScroll(); - m_upScroll = prefwin->upScroll(); - m_downScroll = prefwin->downScroll(); - - m_targetapp = prefwin->dictApplication(); - m_targetmsg = prefwin->dictMessage(); - - m_doAnnotation = prefwin->miscannotation(); - m_doDictionary = prefwin->miscdictionary(); - m_doClipboard = prefwin->miscclipboard(); - reader->m_swapmouse = prefwin->SwapMouse(); - reader->setBaseSize(prefwin->gfxsize()); - reader->m_overlap = prefwin->pageoverlap(); - reader->m_bMonoSpaced = prefwin->ideogram(); - m_setmono_action->setOn(reader->m_bMonoSpaced); - reader->m_encd = prefwin->encoding(); - reader->m_charpc = prefwin->ideogramwidth(); - - if ( - reader->m_fontname != prefwin->Font() - || - m_propogatefontchange != prefwin->propfontchange()) - { - m_propogatefontchange = prefwin->propfontchange(); - setfontHelper(prefwin->Font()); - } - delete prefwin; - reader->setfilter(reader->getfilter()); - reader->refresh(); + m_twoTouch = prefwin->twotouch(); + reader->setTwoTouch(m_twoTouch); + m_touch_action->setOn(m_twoTouch); + + reader->bstripcr = prefwin->StripCR(); + reader->bdehyphen = prefwin->Dehyphen(); + reader->bonespace = prefwin->SingleSpace(); + reader->bunindent = prefwin->Unindent(); + reader->brepara = prefwin->Reparagraph(); + reader->bdblspce = prefwin->DoubleSpace(); + reader->bremap = prefwin->Remap(); + reader->bmakebold = prefwin->Embolden(); + reader->bfulljust = prefwin->FullJustify(); + reader->setextraspace(prefwin->ParaLead()); + reader->setlead(prefwin->LineLead()); + reader->m_border = prefwin->Margin(); + reader->bindenter = prefwin->Indent(); + reader->bautofmt = reader->btextfmt = reader->bstriphtml = reader->bpeanut = false; + switch (prefwin->Markup()) + { + case 0: + reader->bautofmt = true; + break; + case 1: + break; + case 2: + reader->btextfmt = true; + break; + case 3: + reader->bstriphtml = true; + break; + case 4: + reader->bpeanut = true; + break; + default: + odebug << "Format out of range" << oendl; + } + reader->bdepluck = prefwin->Depluck(); + reader->bdejpluck = prefwin->Dejpluck(); + reader->setContinuous(prefwin->Continuous()); + + m_spaceTarget = (ActionTypes)prefwin->spaceAction(); + m_escapeTarget = (ActionTypes)prefwin->escapeAction(); + m_returnTarget = (ActionTypes)prefwin->returnAction(); + m_leftTarget = (ActionTypes)prefwin->leftAction(); + m_rightTarget = (ActionTypes)prefwin->rightAction(); + m_upTarget = (ActionTypes)prefwin->upAction(); + m_downTarget = (ActionTypes)prefwin->downAction(); + m_leftScroll = prefwin->leftScroll(); + m_rightScroll = prefwin->rightScroll(); + m_upScroll = prefwin->upScroll(); + m_downScroll = prefwin->downScroll(); + + m_targetapp = prefwin->dictApplication(); + m_targetmsg = prefwin->dictMessage(); + + m_doAnnotation = prefwin->miscannotation(); + m_doDictionary = prefwin->miscdictionary(); + m_doClipboard = prefwin->miscclipboard(); + reader->m_swapmouse = prefwin->SwapMouse(); + reader->setBaseSize(prefwin->gfxsize()); + reader->m_overlap = prefwin->pageoverlap(); + reader->m_bMonoSpaced = prefwin->ideogram(); + m_setmono_action->setOn(reader->m_bMonoSpaced); + reader->m_encd = prefwin->encoding(); + reader->m_charpc = prefwin->ideogramwidth(); + + if ( + reader->m_fontname != prefwin->Font() + || + m_propogatefontchange != prefwin->propfontchange()) + { + m_propogatefontchange = prefwin->propfontchange(); + setfontHelper(prefwin->Font()); + } + delete prefwin; + reader->setfilter(reader->getfilter()); + reader->refresh(); } else { - delete prefwin; + delete prefwin; } } void QTReaderApp::showtoolbarprefs() { #ifdef USEQPE CBarPrefs* prefwin = new CBarPrefs(APPDIR, !m_bFloatingDialog, this); #else - QFileInfo fi; + QFileInfo fi; QDir d = QDir::home(); // "/" - if ( !d.cd(APPDIR) ) - { // "/tmp" - qWarning( "Cannot find the \"~/%s\" directory", APPDIR ); - d = QDir::home(); - d.mkdir(APPDIR); - d.cd(APPDIR); - } - fi.setFile(d, INIFILE); + if ( !d.cd(APPDIR) ) + { // "/tmp" + owarn << "Cannot find the \"~/" << APPDIR << "\" directory" << oendl; + d = QDir::home(); + d.mkdir(APPDIR); + d.cd(APPDIR); + } + fi.setFile(d, INIFILE); CBarPrefs* prefwin = new CBarPrefs(fi.absFilePath(), !m_bFloatingDialog, this); #endif prefwin->tbpolicy(m_tbpolsave); prefwin->tbposition(m_tbposition-2); prefwin->tbmovable(m_tbmovesave); prefwin->floating(m_bFloatingDialog); if (prefwin->exec()) { - m_bFloatingDialog = prefwin->floating(); - if ( - m_tbpolsave != (ToolbarPolicy)prefwin->tbpolicy() - || - m_tbposition != (ToolBarDock)(prefwin->tbposition()+2) - || - m_tbmovesave != prefwin->tbmovable() - ) - { - QMessageBox::warning(this, PROGNAME, "Some changes won't take effect\nuntil the next time the\napplication is started"); - } - m_tbpolsave = (ToolbarPolicy)prefwin->tbpolicy(); - m_tbposition = (ToolBarDock)(prefwin->tbposition()+2); - m_tbmovesave = prefwin->tbmovable(); - bool isChanged = prefwin->isChanged(); - delete prefwin; + m_bFloatingDialog = prefwin->floating(); + if ( + m_tbpolsave != (ToolbarPolicy)prefwin->tbpolicy() + || + m_tbposition != (ToolBarDock)(prefwin->tbposition()+2) + || + m_tbmovesave != prefwin->tbmovable() + ) + { + QMessageBox::warning(this, PROGNAME, "Some changes won't take effect\nuntil the next time the\napplication is started"); + } + m_tbpolsave = (ToolbarPolicy)prefwin->tbpolicy(); + m_tbposition = (ToolBarDock)(prefwin->tbposition()+2); + m_tbmovesave = prefwin->tbmovable(); + bool isChanged = prefwin->isChanged(); + delete prefwin; #ifdef USEQPE - Config config( APPDIR ); + Config config( APPDIR ); #else - QFileInfo fi; + QFileInfo fi; QDir d = QDir::home(); // "/" - if ( !d.cd(APPDIR) ) - { // "/tmp" - qWarning( "Cannot find the \"~/%s\" directory", APPDIR ); - d = QDir::home(); - d.mkdir(APPDIR); - d.cd(APPDIR); - } - fi.setFile(d, INIFILE); - Config config( fi.absFilePath() ); + if ( !d.cd(APPDIR) ) + { // "/tmp" + owarn << "Cannot find the \"~/" << APPDIR << "\" directory" << oendl; + d = QDir::home(); + d.mkdir(APPDIR); + d.cd(APPDIR); + } + fi.setFile(d, INIFILE); + Config config( fi.absFilePath() ); #endif - if (isChanged) addtoolbars(&config); + if (isChanged) addtoolbars(&config); } else { - delete prefwin; + delete prefwin; } } void QTReaderApp::showinfo() { unsigned long fs, ts, pl; if (reader->empty()) { - QMessageBox::information(this, PROGNAME, "No file loaded", 1); + QMessageBox::information(this, PROGNAME, "No file loaded", 1); } else { - reader->sizes(fs,ts); - pl = reader->pagelocate(); - m_infoWin->setFileSize(fs); - m_infoWin->setTextSize(ts); - m_infoWin->setRatio(100-(100*fs + (ts >> 1))/ts); - m_infoWin->setLocation(pl); - m_infoWin->setRead((100*pl + (ts >> 1))/ts); - editorStack->raiseWidget( m_infoWin ); - m_infoWin->setFocus(); + reader->sizes(fs,ts); + pl = reader->pagelocate(); + m_infoWin->setFileSize(fs); + m_infoWin->setTextSize(ts); + m_infoWin->setRatio(100-(100*fs + (ts >> 1))/ts); + m_infoWin->setLocation(pl); + m_infoWin->setRead((100*pl + (ts >> 1))/ts); + editorStack->raiseWidget( m_infoWin ); + m_infoWin->setFocus(); } } void QTReaderApp::addAnno(const QString& name, const QString& text, size_t posn) { if (pBkmklist == NULL) pBkmklist = new CList<Bkmk>; #ifdef _UNICODE CBuffer buff(name.length()+1); int i; for (i = 0; i < name.length(); i++) { - buff[i] = name[i].unicode(); + buff[i] = name[i].unicode(); } buff[i] = 0; CBuffer buff2(text.length()+1); for (i = 0; i < text.length(); i++) { - buff2[i] = text[i].unicode(); + buff2[i] = text[i].unicode(); } buff2[i] = 0; pBkmklist->push_front(Bkmk(buff.data(), buff2.data(), posn)); #else pBkmklist->push_front(Bkmk((const tchar*)text,posn)); #endif m_fBkmksChanged = true; pBkmklist->sort(); } void QTReaderApp::addAnno(const QString& name, const QString& text) { if (m_annoIsEditing) { - if (name.isEmpty()) - { - QMessageBox::information(this, PROGNAME, "Need a name for the bookmark\nPlease try again", 1); - } - else - { - addAnno(name, text, m_annoWin->getPosn()); - } - showEditTools(); + if (name.isEmpty()) + { + QMessageBox::information(this, PROGNAME, "Need a name for the bookmark\nPlease try again", 1); + } + else + { + addAnno(name, text, m_annoWin->getPosn()); + } + showEditTools(); + } + else + { + if (m_annoWin->edited()) + { + CBuffer buff(text.length()+1); + int i; + for (i = 0; i < text.length(); i++) + { + buff[i] = text[i].unicode(); + } + buff[i] = 0; + m_fBkmksChanged = true; + m_anno->setAnno(buff.data()); + } + bool found = findNextBookmark(m_anno->value()+1); + if (found) + { + m_annoWin->setName(toQString(m_anno->name())); + m_annoWin->setAnno(toQString(m_anno->anno())); } else { - if (m_annoWin->edited()) - { - CBuffer buff(text.length()+1); - int i; - for (i = 0; i < text.length(); i++) - { - buff[i] = text[i].unicode(); - } - buff[i] = 0; - m_fBkmksChanged = true; - m_anno->setAnno(buff.data()); - } - bool found = findNextBookmark(m_anno->value()+1); - if (found) - { - m_annoWin->setName(toQString(m_anno->name())); - m_annoWin->setAnno(toQString(m_anno->anno())); - } - else - { - showEditTools(); - } + showEditTools(); + } } } bool QTReaderApp::findNextBookmark(size_t start) { bool found = false; for (CList<Bkmk>::iterator iter = pBkmklist->begin(); iter != pBkmklist->end(); iter++) { - if (iter->value() >= start) - { - if (iter->value() < reader->locate()) - { - found = true; - m_anno = iter.pContent(); - } - break; - } + if (iter->value() >= start) + { + if (iter->value() < reader->locate()) + { + found = true; + m_anno = iter.pContent(); + } + break; + } } return found; } void QTReaderApp::addanno() { if (reader->empty()) { - QMessageBox::information(this, PROGNAME, "No file loaded", 1); + QMessageBox::information(this, PROGNAME, "No file loaded", 1); } else { - m_annoWin->setName(""); - m_annoWin->setAnno(""); - m_annoWin->setPosn(reader->pagelocate()); - m_annoIsEditing = true; - editorStack->raiseWidget( m_annoWin ); + m_annoWin->setName(""); + m_annoWin->setAnno(""); + m_annoWin->setPosn(reader->pagelocate()); + m_annoIsEditing = true; + editorStack->raiseWidget( m_annoWin ); #ifdef USEQPE - Global::showInputMethod(); + Global::showInputMethod(); #endif - m_annoWin->setFocus(); + m_annoWin->setFocus(); } } void QTReaderApp::infoClose() { showEditTools(); } @@ -2062,33 +2063,33 @@ void QTReaderApp::editCut() */ void QTReaderApp::editMark() { m_savedpos = reader->pagelocate(); } void QTReaderApp::editCopy() { - QClipboard* cb = QApplication::clipboard(); - QString text; - int ch; - unsigned long currentpos = reader->pagelocate(); - unsigned long endpos = reader->locate(); - if (m_savedpos == 0xffffffff) - { - m_savedpos = currentpos; - } - reader->jumpto(m_savedpos); - while (reader->explocate() < endpos && (ch = reader->getch()) != UEOF) - { - text += ch; - } - cb->setText(text); - reader->locate(currentpos); - m_savedpos = 0xffffffff; + QClipboard* cb = QApplication::clipboard(); + QString text; + int ch; + unsigned long currentpos = reader->pagelocate(); + unsigned long endpos = reader->locate(); + if (m_savedpos == 0xffffffff) + { + m_savedpos = currentpos; + } + reader->jumpto(m_savedpos); + while (reader->explocate() < endpos && (ch = reader->getch()) != UEOF) + { + text += ch; + } + cb->setText(text); + reader->locate(currentpos); + m_savedpos = 0xffffffff; } void QTReaderApp::gotoStart() { reader->locate(reader->buffdoc.startSection()); } void QTReaderApp::gotoEnd() @@ -2120,36 +2121,36 @@ void QTReaderApp::setspacing() regEdit->setText(lcn); do_regedit(); } */ void QTReaderApp::settarget() { m_nRegAction = cSetTarget; QString text = ((m_targetapp.isEmpty()) ? QString("") : m_targetapp) - + "/" - + ((m_targetmsg.isEmpty()) ? QString("") : m_targetmsg); + + "/" + + ((m_targetmsg.isEmpty()) ? QString("") : m_targetmsg); regEdit->setText(text); do_regedit(); } /* void QTReaderApp::do_mono(const QString& lcn) { bool ok; unsigned long ulcn = lcn.toULong(&ok); if (ok) { - reader->m_charpc = ulcn; - reader->setfont(); - reader->refresh(); -// reader->setmono(true); + reader->m_charpc = ulcn; + reader->setfont(); + reader->refresh(); +// reader->setmono(true); } else - QMessageBox::information(this, PROGNAME, "Must be a number"); + QMessageBox::information(this, PROGNAME, "Must be a number"); } */ /* void QTReaderApp::editPaste() { #ifndef QT_NO_CLIPBOARD editor->paste(); #endif @@ -2170,17 +2171,17 @@ void QTReaderApp::editFind() searchEdit->setFocus(); #ifdef __ISEARCH searchStack->push(new searchrecord("",reader->pagelocate())); #endif } void QTReaderApp::findNext() { -// // qDebug("findNext called\n"); +// // odebug << "findNext called\n" << oendl; #ifdef __ISEARCH QString arg = searchEdit->text(); #else QRegExp arg = searchEdit->text(); #endif CDrawBuffer test(&(reader->m_fontControl)); size_t start = reader->pagelocate(); reader->jumpto(start); @@ -2244,54 +2245,54 @@ bool QTReaderApp::dosearch(size_t start, CDrawBuffer& test, const QRegExp& arg) #else #ifdef _UNICODE while ((offset = arg.match(toQString(test.data()))) == -1) #else while (arg.match(test.data()) == -1) #endif #endif { - pos = reader->locate(); - int pc = (100*pos)/ts; - if (pc != lastpc) - { - pbar->setProgress(pc); - qApp->processEvents(); - reader->setFocus(); - lastpc = pc; - } - - if (reader->buffdoc.getpara(test) < 0) - { - if (QMessageBox::warning(this, "Can't find", searchEdit->text(), 1, 2) == 2) - pos = searchStart; - else - pos = start; - findClose(); - pbar->hide(); - reader->locate(pos); - return false; - } + pos = reader->locate(); + int pc = (100*pos)/ts; + if (pc != lastpc) + { + pbar->setProgress(pc); + qApp->processEvents(); + reader->setFocus(); + lastpc = pc; } -// qDebug("Found it at %u:%u", pos, offset); + + if (reader->buffdoc.getpara(test) < 0) + { + if (QMessageBox::warning(this, "Can't find", searchEdit->text(), 1, 2) == 2) + pos = searchStart; + else + pos = start; + findClose(); + pbar->hide(); + reader->locate(pos); + return false; + } + } +// odebug << "Found it at " << pos << ":" << offset << "" << oendl; pbar->hide(); -// qDebug("Hid"); +// odebug << "Hid" << oendl; reader->locate(pos+offset); -// qDebug("Loacted"); -// qDebug("page up"); +// odebug << "Loacted" << oendl; +// odebug << "page up" << oendl; ret = true; } else { - if (QMessageBox::warning(this, "Can't find", searchEdit->text(), 1, 2) == 2) - pos = searchStart; - else - pos = start; - ret = false; - findClose(); + if (QMessageBox::warning(this, "Can't find", searchEdit->text(), 1, 2) == 2) + pos = searchStart; + else + pos = start; + ret = false; + findClose(); } return ret; } #ifdef __ISEARCH void QTReaderApp::search(const QString & arg) { searchrecord* ss = searchStack->top(); @@ -2328,636 +2329,636 @@ void QTReaderApp::search(const QString & arg) void QTReaderApp::search() { findNext(); } #endif void QTReaderApp::openFile( const QString &f ) { -// qDebug("File:%s", (const char*)f); +// odebug << "File:" << f << "" << oendl; // openFile(DocLnk(f)); //} // //void QTReaderApp::openFile( const DocLnk &f ) //{ clear(); QFileInfo fm(f); if ( fm.exists() ) { // QMessageBox::information(0, "Progress", "Calling fileNew()"); #ifdef USEQPE - if (fm.extension( FALSE ) == "desktop") - { - DocLnk d(f); - QFileInfo fnew(d.file()); - fm = fnew; - if (!fm.exists()) return; - } + if (fm.extension( FALSE ) == "desktop") + { + DocLnk d(f); + QFileInfo fnew(d.file()); + fm = fnew; + if (!fm.exists()) return; + } #endif clear(); reader->setText(fm.baseName(), fm.absFilePath()); m_loadedconfig = readconfig(reader->m_string, false); showEditTools(); readbkmks(); m_savedpos = 0xffffffff; } else { QMessageBox::information(this, PROGNAME, "File does not exist"); reader->m_lastfile = QString::null; } - + } /* void QTReaderApp::resizeEvent(QResizeEvent* e) { if (m_fullscreen) { - showNormal(); - showFullScreen(); + showNormal(); + showFullScreen(); } } */ void QTReaderApp::handlekey(QKeyEvent* e) { -// qDebug("Keypress event"); +// odebug << "Keypress event" << oendl; timeb now; ftime(&now); unsigned long etime = (1000*(now.time - m_lastkeytime.time) + now.millitm)-m_lastkeytime.millitm; if (etime < m_debounce) { - return; + return; } m_lastkeytime = now; switch(e->key()) { - case Key_Escape: -// qDebug("escape event"); - if (m_disableesckey) - { - m_disableesckey = false; - } - else - { - m_bcloseDisabled = true; - if (m_fullscreen) - { - m_actFullscreen->setOn(false); - e->accept(); - } - else - { -// qDebug("escape action"); - doAction(m_escapeTarget, e); - } - } - break; - case Key_Space: - { - doAction(m_spaceTarget, e); - } - break; - case Key_Return: - { - doAction(m_returnTarget, e); - } - break; - case Key_Left: - { - if (reader->m_autoScroll && m_leftScroll) - { - reader->reduceScroll(); - } - else - { - doAction(m_leftTarget, e); - } - } - break; - case Key_Right: - { - if (reader->m_autoScroll && m_rightScroll) - { - reader->increaseScroll(); - } - else - { - doAction(m_rightTarget, e); - } - } - break; - case Key_Up: - { - if (reader->m_autoScroll && m_upScroll) - { - reader->increaseScroll(); - } - else - { - doAction(m_upTarget, e); - } - } - break; - case Key_Down: - { - if (reader->m_autoScroll && m_downScroll) - { - reader->reduceScroll(); - } - else - { - doAction(m_downTarget, e); - } - } - break; - default: - { - e->ignore(); - } - + case Key_Escape: +// odebug << "escape event" << oendl; + if (m_disableesckey) + { + m_disableesckey = false; + } + else + { + m_bcloseDisabled = true; + if (m_fullscreen) + { + m_actFullscreen->setOn(false); + e->accept(); + } + else + { +// odebug << "escape action" << oendl; + doAction(m_escapeTarget, e); + } + } + break; + case Key_Space: + { + doAction(m_spaceTarget, e); + } + break; + case Key_Return: + { + doAction(m_returnTarget, e); + } + break; + case Key_Left: + { + if (reader->m_autoScroll && m_leftScroll) + { + reader->reduceScroll(); + } + else + { + doAction(m_leftTarget, e); + } + } + break; + case Key_Right: + { + if (reader->m_autoScroll && m_rightScroll) + { + reader->increaseScroll(); + } + else + { + doAction(m_rightTarget, e); + } + } + break; + case Key_Up: + { + if (reader->m_autoScroll && m_upScroll) + { + reader->increaseScroll(); + } + else + { + doAction(m_upTarget, e); + } + } + break; + case Key_Down: + { + if (reader->m_autoScroll && m_downScroll) + { + reader->reduceScroll(); + } + else + { + doAction(m_downTarget, e); + } + } + break; + default: + { + e->ignore(); + } + /* - QString msg("Key press was:"); - QString key; - msg += key.setNum(e->key()); - QMessageBox::information(this, PROGNAME, msg); + QString msg("Key press was:"); + QString key; + msg += key.setNum(e->key()); + QMessageBox::information(this, PROGNAME, msg); */ } } void QTReaderApp::showEditTools() { // if ( !doc ) -// close(); +// close(); if (m_fullscreen) { - if (menubar != NULL) menubar->hide(); - if (fileBar != NULL) fileBar->hide(); - if (viewBar != NULL) viewBar->hide(); - if (navBar != NULL) navBar->hide(); - if (markBar != NULL) markBar->hide(); - searchBar->hide(); - regBar->hide(); + if (menubar != NULL) menubar->hide(); + if (fileBar != NULL) fileBar->hide(); + if (viewBar != NULL) viewBar->hide(); + if (navBar != NULL) navBar->hide(); + if (markBar != NULL) markBar->hide(); + searchBar->hide(); + regBar->hide(); #ifdef USEQPE - Global::hideInputMethod(); + Global::hideInputMethod(); #endif - m_fontBar->hide(); -// showNormal(); - showFullScreen(); + m_fontBar->hide(); +// showNormal(); + showFullScreen(); } else { -// qDebug("him"); +// odebug << "him" << oendl; #ifdef USEQPE - Global::hideInputMethod(); + Global::hideInputMethod(); #endif -// qDebug("eb"); - menubar->show(); - if (fileBar != NULL) fileBar->show(); - if (viewBar != NULL) viewBar->show(); - if (navBar != NULL) navBar->show(); - if (markBar != NULL) markBar->show(); - mb->show(); - if ( searchVisible ) - { +// odebug << "eb" << oendl; + menubar->show(); + if (fileBar != NULL) fileBar->show(); + if (viewBar != NULL) viewBar->show(); + if (navBar != NULL) navBar->show(); + if (markBar != NULL) markBar->show(); + mb->show(); + if ( searchVisible ) + { #ifdef USEQPE - Global::showInputMethod(); + Global::showInputMethod(); #endif - searchBar->show(); - } - if ( regVisible ) - { + searchBar->show(); + } + if ( regVisible ) + { #ifdef USEQPE - Global::showInputMethod(); + Global::showInputMethod(); #endif - regBar->show(); - } - if (m_fontVisible) m_fontBar->show(); -// qDebug("sn"); - showNormal(); -// qDebug("sm"); + regBar->show(); + } + if (m_fontVisible) m_fontBar->show(); +// odebug << "sn" << oendl; + showNormal(); +// odebug << "sm" << oendl; #ifdef USEQPE - showMaximized(); + showMaximized(); #endif -// setCentralWidget(reader); +// setCentralWidget(reader); } -// qDebug("uc"); +// odebug << "uc" << oendl; updateCaption(); -// qDebug("rw"); +// odebug << "rw" << oendl; editorStack->raiseWidget( reader ); -// qDebug("sf"); +// odebug << "sf" << oendl; reader->setFocus(); reader->refresh(); } /* void QTReaderApp::save() { if ( !doc ) - return; + return; if ( !editor->edited() ) - return; + return; QString rt = editor->text(); QString pt = rt; if ( doc->name().isEmpty() ) { - unsigned ispace = pt.find( ' ' ); - unsigned ienter = pt.find( '\n' ); - int i = (ispace < ienter) ? ispace : ienter; - QString docname; - if ( i == -1 ) { - if ( pt.isEmpty() ) - docname = "Empty Text"; - else - docname = pt; - } else { - docname = pt.left( i ); - } - doc->setName(docname); + unsigned ispace = pt.find( ' ' ); + unsigned ienter = pt.find( '\n' ); + int i = (ispace < ienter) ? ispace : ienter; + QString docname; + if ( i == -1 ) { + if ( pt.isEmpty() ) + docname = "Empty Text"; + else + docname = pt; + } else { + docname = pt.left( i ); + } + doc->setName(docname); } FileManager fm; fm.saveFile( *doc, rt ); } */ void QTReaderApp::clear() { // if (doc != 0) // { // QMessageBox::information(this, PROGNAME, "Deleting doc", 1); -// delete doc; +// delete doc; // QMessageBox::information(this, PROGNAME, "Deleted doc", 1); -// doc = 0; +// doc = 0; // } reader->clear(); } void QTReaderApp::updateCaption() { // if ( !doc ) -// setCaption( tr("QTReader") ); +// setCaption( tr("QTReader") ); // else { -// QString s = doc->name(); -// if ( s.isEmpty() ) -// s = tr( "Unnamed" ); - setCaption( reader->m_string + " - " + tr("Reader") ); +// QString s = doc->name(); +// if ( s.isEmpty() ) +// s = tr( "Unnamed" ); + setCaption( reader->m_string + " - " + tr("Reader") ); // } } void QTReaderApp::setDocument(const QString& fileref) { bFromDocView = TRUE; //QMessageBox::information(0, "setDocument", fileref); openFile(fileref); // showEditTools(); } void QTReaderApp::closeEvent( QCloseEvent *e ) { -// qDebug("Close event"); +// odebug << "Close event" << oendl; if (m_fullscreen) { - m_fullscreen = false; - showEditTools(); - e->accept(); + m_fullscreen = false; + showEditTools(); + e->accept(); } else if (m_dontSave) { - e->accept(); + e->accept(); } else { - if (editorStack->visibleWidget() == reader) - { - if ((m_escapeTarget != cesNone) && m_bcloseDisabled) - { -// qDebug("Close disabled"); - m_bcloseDisabled = false; - e->ignore(); - } - else - { - if (m_fontVisible) - { - m_fontBar->hide(); - m_fontVisible = false; - } - if (regVisible) - { - regBar->hide(); + if (editorStack->visibleWidget() == reader) + { + if ((m_escapeTarget != cesNone) && m_bcloseDisabled) + { +// odebug << "Close disabled" << oendl; + m_bcloseDisabled = false; + e->ignore(); + } + else + { + if (m_fontVisible) + { + m_fontBar->hide(); + m_fontVisible = false; + } + if (regVisible) + { + regBar->hide(); #ifdef USEQPE - Global::hideInputMethod(); + Global::hideInputMethod(); #endif - regVisible = false; - return; - } - if (searchVisible) - { - searchBar->hide(); + regVisible = false; + return; + } + if (searchVisible) + { + searchBar->hide(); #ifdef USEQPE - Global::hideInputMethod(); + Global::hideInputMethod(); #endif - searchVisible = false; - return; - } - if (m_fBkmksChanged && pBkmklist != NULL) - { - if (QMessageBox::warning(this, PROGNAME, "Save bookmarks?", "Save", "Don't bother") == 0) - savebkmks(); - delete pBkmklist; - pBkmklist = NULL; - m_fBkmksChanged = false; - } - bFromDocView = FALSE; - updatefileinfo(); - saveprefs(); - e->accept(); - } - } - else - { - showEditTools(); - m_disableesckey = true; - } + searchVisible = false; + return; + } + if (m_fBkmksChanged && pBkmklist != NULL) + { + if (QMessageBox::warning(this, PROGNAME, "Save bookmarks?", "Save", "Don't bother") == 0) + savebkmks(); + delete pBkmklist; + pBkmklist = NULL; + m_fBkmksChanged = false; + } + bFromDocView = FALSE; + updatefileinfo(); + saveprefs(); + e->accept(); + } + } + else + { + showEditTools(); + m_disableesckey = true; + } } } void QTReaderApp::do_gotomark() { m_nBkmkAction = cGotoBkmk; if (!listbkmk(pBkmklist)) - QMessageBox::information(this, PROGNAME, "No bookmarks in memory"); + QMessageBox::information(this, PROGNAME, "No bookmarks in memory"); } void QTReaderApp::do_delmark() { m_nBkmkAction = cDelBkmk; if (!listbkmk(pBkmklist)) - QMessageBox::information(this, PROGNAME, "No bookmarks in memory"); + QMessageBox::information(this, PROGNAME, "No bookmarks in memory"); } bool QTReaderApp::listbkmk(CList<Bkmk>* plist, const QString& _lab) { bkmkselector->clear(); if (_lab.isEmpty()) - bkmkselector->setText("Cancel"); + bkmkselector->setText("Cancel"); else - bkmkselector->setText(_lab); + bkmkselector->setText(_lab); int cnt = 0; if (plist != NULL) { - for (CList<Bkmk>::iterator i = plist->begin(); i != plist->end(); i++) - { + for (CList<Bkmk>::iterator i = plist->begin(); i != plist->end(); i++) + { #ifdef _UNICODE -// qDebug("Item:%s", (const char*)toQString(i->name())); - bkmkselector->insertItem(toQString(i->name())); +// odebug << "Item:" << toQString(i->name()) << "" << oendl; + bkmkselector->insertItem(toQString(i->name())); #else - bkmkselector->insertItem(i->name()); + bkmkselector->insertItem(i->name()); #endif - cnt++; - } + cnt++; + } } if (cnt > 0) { - hidetoolbars(); + hidetoolbars(); editorStack->raiseWidget( bkmkselector ); - return true; + return true; } else - return false; + return false; } void QTReaderApp::do_autogen() { m_nRegAction = cAutoGen; regEdit->setText(m_autogenstr); do_regedit(); } void QTReaderApp::do_regedit() { // fileBar->hide(); reader->bDoUpdates = false; -// qDebug("Showing regbar"); +// odebug << "Showing regbar" << oendl; regBar->show(); -// qDebug("Showing kbd"); +// odebug << "Showing kbd" << oendl; #ifdef USEQPE Global::showInputMethod(); #endif regVisible = true; regEdit->setFocus(); // qApp->processEvents(); reader->bDoUpdates = true; reader->update(); } bool QTReaderApp::openfrombkmk(Bkmk* bk) { QString fn = toQString( - CFiledata(bk->anno()).name() - ); -// qDebug("fileinfo"); + CFiledata(bk->anno()).name() + ); +// odebug << "fileinfo" << oendl; if (!fn.isEmpty() && QFileInfo(fn).isFile()) { -// qDebug("Opening"); - openFile(fn); - struct stat fnstat; - stat((const char *)reader->m_lastfile, &fnstat); - - if (CFiledata(bk->anno()).date() - != fnstat.st_mtime) - { - CFiledata fd(bk->anno()); - fd.setdate(fnstat.st_mtime); - bk->value(0); - } - else - { - unsigned short svlen = bk->filedatalen(); - unsigned char* svdata = bk->filedata(); - reader->putSaveData(svdata, svlen); -// setstate(svdata, svlen); - if (svlen != 0) - { - QMessageBox::warning(this, PROGNAME, "Not all file data used\nNew version?"); - } -// qDebug("updating"); -// showEditTools(); - reader->locate(bk->value()); - } - return true; +// odebug << "Opening" << oendl; + openFile(fn); + struct stat fnstat; + stat((const char *)reader->m_lastfile, &fnstat); + + if (CFiledata(bk->anno()).date() + != fnstat.st_mtime) + { + CFiledata fd(bk->anno()); + fd.setdate(fnstat.st_mtime); + bk->value(0); } else { - return false; + unsigned short svlen = bk->filedatalen(); + unsigned char* svdata = bk->filedata(); + reader->putSaveData(svdata, svlen); +// setstate(svdata, svlen); + if (svlen != 0) + { + QMessageBox::warning(this, PROGNAME, "Not all file data used\nNew version?"); + } +// odebug << "updating" << oendl; +// showEditTools(); + reader->locate(bk->value()); + } + return true; + } + else + { + return false; } } void QTReaderApp::gotobkmk(int ind) { showEditTools(); switch (m_nBkmkAction) { - case cOpenFile: - { -// qApp->processEvents(); - if (!openfrombkmk((*pOpenlist)[ind])) - { - pOpenlist->erase(ind); - QMessageBox::information(this, PROGNAME, "Can't find file"); - } - } - break; - case cGotoBkmk: - reader->locate((*pBkmklist)[ind]->value()); - break; - case cDelBkmk: -//// qDebug("Deleting:%s\n",(*pBkmklist)[ind]->name()); - pBkmklist->erase(ind); - m_fBkmksChanged = true; -// pBkmklist->sort(); - break; - case cRmBkmkFile: - { + case cOpenFile: + { +// qApp->processEvents(); + if (!openfrombkmk((*pOpenlist)[ind])) + { + pOpenlist->erase(ind); + QMessageBox::information(this, PROGNAME, "Can't find file"); + } + } + break; + case cGotoBkmk: + reader->locate((*pBkmklist)[ind]->value()); + break; + case cDelBkmk: +//// odebug << "Deleting:" << (*pBkmklist)[ind]->name() << "\n" << oendl; + pBkmklist->erase(ind); + m_fBkmksChanged = true; +// pBkmklist->sort(); + break; + case cRmBkmkFile: + { #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR); - d.remove(bkmkselector->text(ind)); + QDir d = QDir::home(); // "/" + d.cd(APPDIR); + d.remove(bkmkselector->text(ind)); #else /* USEQPE */ - unlink((const char *)Global::applicationFileName(APPDIR,bkmkselector->text(ind))); + unlink((const char *)Global::applicationFileName(APPDIR,bkmkselector->text(ind))); #endif /* USEQPE */ - } - break; - case cLdConfig: - readconfig(bkmkselector->text(ind), false); - break; - case cRmConfig: - { + } + break; + case cLdConfig: + readconfig(bkmkselector->text(ind), false); + break; + case cRmConfig: + { #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR "/configs"); - d.remove(bkmkselector->text(ind)); + QDir d = QDir::home(); // "/" + d.cd(APPDIR "/configs"); + d.remove(bkmkselector->text(ind)); #else /* USEQPE */ - unlink((const char *)Global::applicationFileName(APPDIR "/configs",bkmkselector->text(ind))); + unlink((const char *)Global::applicationFileName(APPDIR "/configs",bkmkselector->text(ind))); #endif /* USEQPE */ - } - break; - case cExportLinks: - { + } + break; + case cExportLinks: + { #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR "/urls"); - QFileInfo fi(d, bkmkselector->text(ind)); - if (fi.exists()) - { - QString outfile( QFileDialog::getSaveFileName( QString::null, QString::null, this ) ); - if (!outfile.isEmpty()) - { - FILE* fout = fopen((const char *)outfile, "w"); - if (fout != NULL) - { - FILE* fin = fopen((const char *)fi.absFilePath(), "r"); - if (fin != NULL) - { - fprintf(fout, "<html><body>\n"); - int ch = 0; - while ((ch = fgetc(fin)) != EOF) - { - fputc(ch, fout); - } - fclose(fin); - fprintf(fout, "</html></body>\n"); - d.remove(bkmkselector->text(ind)); - } - fclose(fout); - } - else - QMessageBox::information(this, PROGNAME, "Couldn't open output"); - } - } + QDir d = QDir::home(); // "/" + d.cd(APPDIR "/urls"); + QFileInfo fi(d, bkmkselector->text(ind)); + if (fi.exists()) + { + QString outfile( QFileDialog::getSaveFileName( QString::null, QString::null, this ) ); + if (!outfile.isEmpty()) + { + FILE* fout = fopen((const char *)outfile, "w"); + if (fout != NULL) + { + FILE* fin = fopen((const char *)fi.absFilePath(), "r"); + if (fin != NULL) + { + fprintf(fout, "<html><body>\n"); + int ch = 0; + while ((ch = fgetc(fin)) != EOF) + { + fputc(ch, fout); + } + fclose(fin); + fprintf(fout, "</html></body>\n"); + d.remove(bkmkselector->text(ind)); + } + fclose(fout); + } + else + QMessageBox::information(this, PROGNAME, "Couldn't open output"); + } + } #else /* USEQPE */ - FILE* fin = fopen((const char *)Global::applicationFileName(APPDIR "/urls",bkmkselector->text(ind)), "r"); - if (fin != NULL) - { - bool allok = false; - fileBrowser* fb = new fileBrowser(true, this,"OpieReader",!m_bFloatingDialog, 0, "*", QString::null); - if (fb->exec()) - { - QString outfile = fb->getCurrentFile(); - FILE* fout = fopen((const char *)outfile, "w"); - if (fout != NULL) - { - fprintf(fout, "<html><body>\n"); - int ch = 0; - while ((ch = fgetc(fin)) != EOF) - { - fputc(ch, fout); - } - fprintf(fout, "</html></body>\n"); - fclose(fout); - allok = true; - } - else - QMessageBox::information(this, PROGNAME, "Couldn't open output"); - } - delete fb; - fclose(fin); - if (allok) unlink((const char *)Global::applicationFileName(APPDIR "/urls",bkmkselector->text(ind))); - } - else - { - QMessageBox::information(this, PROGNAME, "Couldn't open input"); - } + FILE* fin = fopen((const char *)Global::applicationFileName(APPDIR "/urls",bkmkselector->text(ind)), "r"); + if (fin != NULL) + { + bool allok = false; + fileBrowser* fb = new fileBrowser(true, this,"OpieReader",!m_bFloatingDialog, 0, "*", QString::null); + if (fb->exec()) + { + QString outfile = fb->getCurrentFile(); + FILE* fout = fopen((const char *)outfile, "w"); + if (fout != NULL) + { + fprintf(fout, "<html><body>\n"); + int ch = 0; + while ((ch = fgetc(fin)) != EOF) + { + fputc(ch, fout); + } + fprintf(fout, "</html></body>\n"); + fclose(fout); + allok = true; + } + else + QMessageBox::information(this, PROGNAME, "Couldn't open output"); + } + delete fb; + fclose(fin); + if (allok) unlink((const char *)Global::applicationFileName(APPDIR "/urls",bkmkselector->text(ind))); + } + else + { + QMessageBox::information(this, PROGNAME, "Couldn't open input"); + } /* - CFileSelector *f = new CFileSelector("text/html", this, NULL, !m_bFloatingDialog, TRUE, TRUE ); - int ret = f->exec(); - qDebug("Return:%d", ret); - DocLnk* doc = f->getDoc(); - if (doc != NULL) - { - FILE* fin = fopen((const char *)Global::applicationFileName(APPDIR "/urls",bkmkselector->text(ind)), "r"); - QString rt; - rt = "<html><body>\n"; - int ch = 0; - while ((ch = fgetc(fin)) != EOF) - { - rt += (char)ch; - } - fclose(fin); - rt += "</html></body>\n"; - if ( doc->name().isEmpty() ) - { - doc->setName(bkmkselector->text(ind)); - } - FileManager fm; - fm.saveFile( *doc, rt ); - qDebug("YES"); - } - else - { - qDebug("NO"); - } - delete f; + CFileSelector *f = new CFileSelector("text/html", this, NULL, !m_bFloatingDialog, TRUE, TRUE ); + int ret = f->exec(); + odebug << "Return:" << ret << "" << oendl; + DocLnk* doc = f->getDoc(); + if (doc != NULL) + { + FILE* fin = fopen((const char *)Global::applicationFileName(APPDIR "/urls",bkmkselector->text(ind)), "r"); + QString rt; + rt = "<html><body>\n"; + int ch = 0; + while ((ch = fgetc(fin)) != EOF) + { + rt += (char)ch; + } + fclose(fin); + rt += "</html></body>\n"; + if ( doc->name().isEmpty() ) + { + doc->setName(bkmkselector->text(ind)); + } + FileManager fm; + fm.saveFile( *doc, rt ); + odebug << "YES" << oendl; + } + else + { + odebug << "NO" << oendl; + } + delete f; */ #endif /* USEQPE */ - } - break; + } + break; } } void QTReaderApp::cancelbkmk() { if (m_nBkmkAction == cOpenFile) { - QString fn = usefilebrowser(); - if (!fn.isEmpty() && QFileInfo(fn).isFile()) openFile(fn); + QString fn = usefilebrowser(); + if (!fn.isEmpty() && QFileInfo(fn).isFile()) openFile(fn); } showEditTools(); } void QTReaderApp::jump() { m_nRegAction = cJump; char lcn[20]; @@ -2966,179 +2967,179 @@ void QTReaderApp::jump() do_regedit(); } void QTReaderApp::do_jump(const QString& lcn) { bool ok; unsigned long ulcn = lcn.toULong(&ok); if (ok) - reader->locate(ulcn); + reader->locate(ulcn); else - QMessageBox::information(this, PROGNAME, "Must be a number"); + QMessageBox::information(this, PROGNAME, "Must be a number"); } void QTReaderApp::do_regaction() { reader->bDoUpdates = false; regBar->hide(); #ifdef USEQPE Global::hideInputMethod(); #endif regVisible = false; switch(m_nRegAction) { case cAutoGen: - do_autogen(regEdit->text()); - break; + do_autogen(regEdit->text()); + break; case cAddBkmk: - do_addbkmk(regEdit->text()); - break; + do_addbkmk(regEdit->text()); + break; case cJump: - do_jump(regEdit->text()); - break; + do_jump(regEdit->text()); + break; /* case cMonoSpace: - do_mono(regEdit->text()); - break; + do_mono(regEdit->text()); + break; */ case cSetTarget: - do_settarget(regEdit->text()); - break; + do_settarget(regEdit->text()); + break; #ifdef _SCROLLPIPE case cSetPipeTarget: - do_setpipetarget(regEdit->text()); - break; + do_setpipetarget(regEdit->text()); + break; #endif case cSetConfigName: -// qDebug("Saving config"); - do_saveconfig(regEdit->text(), false); - break; +// odebug << "Saving config" << oendl; + do_saveconfig(regEdit->text(), false); + break; } // reader->restore(); // fileBar->show(); reader->setFocus(); // qApp->processEvents(); reader->bDoUpdates = true; reader->update(); } void QTReaderApp::do_settarget(const QString& _txt) { int ind = _txt.find('/'); if (ind == -1) { - m_targetapp = ""; - m_targetmsg = ""; - QMessageBox::information(this, PROGNAME, "Format is\nappname/messagename"); + m_targetapp = ""; + m_targetmsg = ""; + QMessageBox::information(this, PROGNAME, "Format is\nappname/messagename"); } else { - m_targetapp = _txt.left(ind); - m_targetmsg = _txt.right(_txt.length()-ind-1); + m_targetapp = _txt.left(ind); + m_targetmsg = _txt.right(_txt.length()-ind-1); } } void QTReaderApp::chooseencoding() { m_fontSelector->clear(); m_fontSelector->insertItem("Ascii"); m_fontSelector->insertItem("UTF-8"); m_fontSelector->insertItem("UCS-2(BE)"); m_fontSelector->insertItem("USC-2(LE)"); m_fontSelector->insertItem("Palm"); for (unicodetable::iterator iter = unicodetable::begin(); iter != unicodetable::end(); iter++) { - m_fontSelector->insertItem(iter->mime); + m_fontSelector->insertItem(iter->mime); } // delete the FontDatabase!!! m_fontSelector->setCurrentItem (reader->m_encd); m_fontAction = cChooseEncoding; m_fontBar->show(); m_fontVisible = true; } void QTReaderApp::setfont() { m_fontSelector->clear(); { #ifdef USEQPE - FontDatabase f; + FontDatabase f; #else - QFontDatabase f; + QFontDatabase f; #endif - QStringList flist = f.families(); - m_fontSelector->insertStringList(flist); + QStringList flist = f.families(); + m_fontSelector->insertStringList(flist); } // delete the FontDatabase!!! for (int i = 1; i <= m_fontSelector->count(); i++) { - if (m_fontSelector->text(i) == reader->m_fontname) - { - m_fontSelector->setCurrentItem(i); - break; - } + if (m_fontSelector->text(i) == reader->m_fontname) + { + m_fontSelector->setCurrentItem(i); + break; + } } m_fontAction = cChooseFont; m_fontBar->show(); m_fontVisible = true; } void QTReaderApp::setfontHelper(const QString& lcn, int size) { if (size == 0) size = reader->m_fontControl.currentsize(); if (m_propogatefontchange) { - QFont f(lcn, 10); - bkmkselector->setFont( f ); - regEdit->setFont( f ); - searchEdit->setFont( f ); - m_annoWin->setFont( f ); + QFont f(lcn, 10); + bkmkselector->setFont( f ); + regEdit->setFont( f ); + searchEdit->setFont( f ); + m_annoWin->setFont( f ); } reader->m_fontname = lcn; if (!reader->ChangeFont(size)) { - reader->ChangeFont(size); + reader->ChangeFont(size); } } void QTReaderApp::do_setencoding(int i) { -// qDebug("setencoding:%d", i); +// odebug << "setencoding:" << i << "" << oendl; if (m_fontAction == cChooseEncoding) { - reader->setencoding(i); + reader->setencoding(i); } reader->refresh(); m_fontBar->hide(); m_fontVisible = false; -// qDebug("showedit"); +// odebug << "showedit" << oendl; if (reader->isVisible()) showEditTools(); -// qDebug("showeditdone"); +// odebug << "showeditdone" << oendl; } void QTReaderApp::do_setfont(const QString& lcn) { if (m_fontAction == cChooseFont) { - setfontHelper(lcn); + setfontHelper(lcn); } reader->refresh(); m_fontBar->hide(); m_fontVisible = false; -// qDebug("showedit"); +// odebug << "showedit" << oendl; //if (reader->isVisible()) showEditTools(); -// qDebug("showeditdone"); +// odebug << "showeditdone" << oendl; } void QTReaderApp::do_autogen(const QString& regText) { unsigned long fs, ts; reader->sizes(fs,ts); -// // qDebug("Reg:%s\n", (const tchar*)(regEdit->text())); +// // odebug << "Reg:" << (const tchar*)(regEdit->text()) << "\n" << oendl; m_autogenstr = regText; QRegExp re(regText); CBuffer buff; if (pBkmklist != NULL) delete pBkmklist; pBkmklist = new CList<Bkmk>; m_fBkmksChanged = true; pbar->setGeometry(regBar->x(),regBar->y(),regBar->width(), regBar->height()); @@ -3153,49 +3154,49 @@ void QTReaderApp::do_autogen(const QString& regText) int i = 0; while (i >= 0) { unsigned int lcn = reader->locate(); int pc = (100*lcn)/ts; if (pc != lastpc) { pbar->setProgress(pc); - qApp->processEvents(); - if (reader->locate() != lcn) reader->jumpto(lcn); - reader->setFocus(); + qApp->processEvents(); + if (reader->locate() != lcn) reader->jumpto(lcn); + reader->setFocus(); lastpc = pc; } i = reader->buffdoc.getpara(buff); #ifdef _UNICODE if (re.match(toQString(buff.data())) != -1) #else if (re.match(buff.data()) != -1) #endif - pBkmklist->push_back(Bkmk(buff.data(), NULL, lcn)); + pBkmklist->push_back(Bkmk(buff.data(), NULL, lcn)); } pBkmklist->sort(); pbar->setProgress(100); qApp->processEvents(); pbar->hide(); reader->refresh(); } void QTReaderApp::saveprefs() { -// qDebug("saveprefs"); +// odebug << "saveprefs" << oendl; // reader->saveprefs("uqtreader"); // if (!m_loadedconfig) - do_saveconfig( APPDIR, true ); + do_saveconfig( APPDIR, true ); -/* +/* Config config( APPDIR ); config.setGroup( "View" ); - + reader->m_lastposn = reader->pagelocate(); - + config.writeEntry("FloatDialogs", m_bFloatingDialog); config.writeEntry( "StripCr", reader->bstripcr ); config.writeEntry( "AutoFmt", reader->bautofmt ); config.writeEntry( "TextFmt", reader->btextfmt ); config.writeEntry( "StripHtml", reader->bstriphtml ); config.writeEntry( "Dehyphen", reader->bdehyphen ); config.writeEntry( "Depluck", reader->bdepluck ); config.writeEntry( "Dejpluck", reader->bdejpluck ); @@ -3256,207 +3257,207 @@ void QTReaderApp::saveprefs() config.writeEntry("Position", m_tbposition); */ savefilelist(); } /* void QTReaderApp::oldFile() { -// qDebug("oldFile called"); +// odebug << "oldFile called" << oendl; reader->setText(true); -// qDebug("settext called"); +// odebug << "settext called" << oendl; showEditTools(); -// qDebug("showedit called"); +// odebug << "showedit called" << oendl; } */ /* void info_cb(Fl_Widget* o, void* _data) { if (infowin == NULL) { - - infowin = new Fl_Window(160,240); - filename = new Fl_Output(45,5,110,14,"Filename"); - filesize = new Fl_Output(45,25,110,14,"Filesize"); - textsize = new Fl_Output(45,45,110,14,"Textsize"); - comprat = new CBar(45,65,110,14,"Ratio %"); - posn = new Fl_Output(45,85,110,14,"Location"); - frcn = new CBar(45,105,110,14,"% Read"); - about = new Fl_Multiline_Output(5,125,150,90); - about->value("TWReader - $Name$\n\nA file reader program for the Agenda\n\nReads text, PalmDoc and ppms format files"); - Fl_Button *jump_accept = new Fl_Button(62,220,35,14,"Okay"); - infowin->set_modal(); + + infowin = new Fl_Window(160,240); + filename = new Fl_Output(45,5,110,14,"Filename"); + filesize = new Fl_Output(45,25,110,14,"Filesize"); + textsize = new Fl_Output(45,45,110,14,"Textsize"); + comprat = new CBar(45,65,110,14,"Ratio %"); + posn = new Fl_Output(45,85,110,14,"Location"); + frcn = new CBar(45,105,110,14,"% Read"); + about = new Fl_Multiline_Output(5,125,150,90); + about->value("TWReader - $Name$\n\nA file reader program for the Agenda\n\nReads text, PalmDoc and ppms format files"); + Fl_Button *jump_accept = new Fl_Button(62,220,35,14,"Okay"); + infowin->set_modal(); } if (((reader_ui *)_data)->g_filename[0] != '\0') { - unsigned long fs,ts; - tchar sz[20]; - ((reader_ui *)_data)->input->sizes(fs,ts); - unsigned long pl = ((reader_ui *)_data)->input->locate(); + unsigned long fs,ts; + tchar sz[20]; + ((reader_ui *)_data)->input->sizes(fs,ts); + unsigned long pl = ((reader_ui *)_data)->input->locate(); - filename->value(((reader_ui *)_data)->g_filename); + filename->value(((reader_ui *)_data)->g_filename); - sprintf(sz,"%u",fs); - filesize->value(sz); + sprintf(sz,"%u",fs); + filesize->value(sz); - sprintf(sz,"%u",ts); - textsize->value(sz); + sprintf(sz,"%u",ts); + textsize->value(sz); - comprat->value(100-(100*fs + (ts >> 1))/ts); + comprat->value(100-(100*fs + (ts >> 1))/ts); - sprintf(sz,"%u",pl); - posn->value(sz); + sprintf(sz,"%u",pl); + posn->value(sz); - frcn->value((100*pl + (ts >> 1))/ts); + frcn->value((100*pl + (ts >> 1))/ts); } infowin->show(); } */ void QTReaderApp::savebkmks() { if (pBkmklist != NULL) { #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR); - QFileInfo fi(d, reader->m_string); - BkmkFile bf((const char *)fi.absFilePath(), true); + QDir d = QDir::home(); // "/" + d.cd(APPDIR); + QFileInfo fi(d, reader->m_string); + BkmkFile bf((const char *)fi.absFilePath(), true); #else /* USEQPE */ - BkmkFile bf((const char *)Global::applicationFileName(APPDIR,reader->m_string), true); + BkmkFile bf((const char *)Global::applicationFileName(APPDIR,reader->m_string), true); #endif /* USEQPE */ - bf.write(*pBkmklist); + bf.write(*pBkmklist); } - m_fBkmksChanged = false; + m_fBkmksChanged = false; } void QTReaderApp::readfilelist() { #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR); - QFileInfo fi(d, ".openfiles"); + QDir d = QDir::home(); // "/" + d.cd(APPDIR); + QFileInfo fi(d, ".openfiles"); BkmkFile bf((const char *)fi.absFilePath()); #else /* USEQPE */ BkmkFile bf((const char *)Global::applicationFileName(APPDIR,".openfiles")); #endif /* USEQPE */ -// qDebug("Reading open files"); +// odebug << "Reading open files" << oendl; pOpenlist = bf.readall(); -// if (pOpenlist != NULL) qDebug("...with success"); -// else qDebug("...without success!"); +// if (pOpenlist != NULL) odebug << "...with success" << oendl; +// else odebug << "...without success!" << oendl; } void QTReaderApp::savefilelist() { if (pOpenlist != NULL) { #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR); - QFileInfo fi(d, ".openfiles"); - BkmkFile bf((const char *)fi.absFilePath(), true); + QDir d = QDir::home(); // "/" + d.cd(APPDIR); + QFileInfo fi(d, ".openfiles"); + BkmkFile bf((const char *)fi.absFilePath(), true); #else /* USEQPE */ - BkmkFile bf((const char *)Global::applicationFileName(APPDIR,".openfiles"), true); + BkmkFile bf((const char *)Global::applicationFileName(APPDIR,".openfiles"), true); #endif /* USEQPE */ -// qDebug("Writing open files"); - bf.write(*pOpenlist); +// odebug << "Writing open files" << oendl; + bf.write(*pOpenlist); } } void QTReaderApp::readbkmks() { if (pBkmklist != NULL) { - delete pBkmklist; + delete pBkmklist; } struct stat fnstat; struct stat bkstat; #ifndef USEQPE - QDir d = QDir::home(); // "/" - d.cd(APPDIR); - QFileInfo fi(d, reader->m_string); + QDir d = QDir::home(); // "/" + d.cd(APPDIR); + QFileInfo fi(d, reader->m_string); #endif /* ! USEQPE */ if ( - stat((const char *)reader->m_lastfile, &fnstat) == 0 - && + stat((const char *)reader->m_lastfile, &fnstat) == 0 + && #ifndef USEQPE - stat((const char *)fi.absFilePath(), &bkstat) == 0 + stat((const char *)fi.absFilePath(), &bkstat) == 0 #else /* USEQPE */ - stat((const char *)Global::applicationFileName(APPDIR,reader->m_string), &bkstat) == 0 + stat((const char *)Global::applicationFileName(APPDIR,reader->m_string), &bkstat) == 0 #endif /* USEQPE */ - ) + ) + { + if (bkstat.st_mtime < fnstat.st_mtime) { - if (bkstat.st_mtime < fnstat.st_mtime) - { #ifndef USEQPE - unlink((const char *)fi.absFilePath()); + unlink((const char *)fi.absFilePath()); #else /* USEQPE */ - unlink((const char *)Global::applicationFileName(APPDIR,reader->m_string)); + unlink((const char *)Global::applicationFileName(APPDIR,reader->m_string)); #endif /* USEQPE */ - } + } } #ifndef USEQPE BkmkFile bf((const char *)fi.absFilePath()); #else /* USEQPE */ BkmkFile bf((const char *)Global::applicationFileName(APPDIR,reader->m_string)); #endif /* USEQPE */ pBkmklist = bf.readall(); m_fBkmksChanged = bf.upgraded(); if (pBkmklist == NULL) { - pBkmklist = reader->getbkmklist(); + pBkmklist = reader->getbkmklist(); } if (pBkmklist != NULL) - pBkmklist->sort(); + pBkmklist->sort(); } void QTReaderApp::addbkmk() { m_nRegAction = cAddBkmk; regEdit->setText(reader->firstword()); do_regedit(); } void QTReaderApp::do_addbkmk(const QString& text) { - if (text.isEmpty()) - { - QMessageBox::information(this, PROGNAME, "Need a name for the bookmark\nSelect add again", 1); - } - else - { - if (pBkmklist == NULL) pBkmklist = new CList<Bkmk>; + if (text.isEmpty()) + { + QMessageBox::information(this, PROGNAME, "Need a name for the bookmark\nSelect add again", 1); + } + else + { + if (pBkmklist == NULL) pBkmklist = new CList<Bkmk>; #ifdef _UNICODE - CBuffer buff; - int i = 0; - for (i = 0; i < text.length(); i++) - { - buff[i] = text[i].unicode(); - } - buff[i] = 0; - pBkmklist->push_front(Bkmk(buff.data(), NULL, reader->pagelocate())); + CBuffer buff; + int i = 0; + for (i = 0; i < text.length(); i++) + { + buff[i] = text[i].unicode(); + } + buff[i] = 0; + pBkmklist->push_front(Bkmk(buff.data(), NULL, reader->pagelocate())); #else - pBkmklist->push_front(Bkmk((const tchar*)text, reader->pagelocate())); + pBkmklist->push_front(Bkmk((const tchar*)text, reader->pagelocate())); #endif - m_fBkmksChanged = true; - pBkmklist->sort(); - } + m_fBkmksChanged = true; + pBkmklist->sort(); + } } void QTReaderApp::OnRedraw() { if ((pBkmklist != NULL) && (m_bkmkAvail != NULL)) { - bool found = findNextBookmark(reader->pagelocate()); - m_bkmkAvail->setEnabled(found); + bool found = findNextBookmark(reader->pagelocate()); + m_bkmkAvail->setEnabled(found); } } void QTReaderApp::showAnnotation() { m_annoWin->setName(toQString(m_anno->name())); m_annoWin->setAnno(toQString(m_anno->anno())); m_annoIsEditing = false; @@ -3464,203 +3465,203 @@ void QTReaderApp::showAnnotation() Global::showInputMethod(); #endif editorStack->raiseWidget( m_annoWin ); m_annoWin->setFocus(); } void QTReaderApp::OnWordSelected(const QString& wrd, size_t posn, const QString& line) { -//// qDebug("OnWordSelected(%u):%s", posn, (const char*)wrd); +//// odebug << "OnWordSelected(" << posn << "):" << wrd << "" << oendl; if (m_doClipboard) { - QClipboard* cb = QApplication::clipboard(); - cb->setText(wrd); + QClipboard* cb = QApplication::clipboard(); + cb->setText(wrd); #ifdef USEQPE - if (wrd.length() > 10) - { - Global::statusMessage(wrd.left(8) + ".."); - } - else - { - Global::statusMessage(wrd); - } + if (wrd.length() > 10) + { + Global::statusMessage(wrd.left(8) + ".."); + } + else + { + Global::statusMessage(wrd); + } #endif } if (m_doAnnotation) { -// addAnno(wrd, "Need to be able to edit this", posn); - m_annoWin->setName(line); - m_annoWin->setAnno(""); - m_annoWin->setPosn(posn); - m_annoIsEditing = true; +// addAnno(wrd, "Need to be able to edit this", posn); + m_annoWin->setName(line); + m_annoWin->setAnno(""); + m_annoWin->setPosn(posn); + m_annoIsEditing = true; #ifdef USEQPE - Global::showInputMethod(); + Global::showInputMethod(); #endif - editorStack->raiseWidget( m_annoWin ); + editorStack->raiseWidget( m_annoWin ); } #ifdef USEQPE if (m_doDictionary) { - if (!m_targetapp.isEmpty() && !m_targetmsg.isEmpty()) - { - QCopEnvelope e(("QPE/Application/"+m_targetapp).utf8(), (m_targetmsg+"(QString)").utf8()); - e << wrd; - } + if (!m_targetapp.isEmpty() && !m_targetmsg.isEmpty()) + { + QCopEnvelope e(("QPE/Application/"+m_targetapp).utf8(), (m_targetmsg+"(QString)").utf8()); + e << wrd; + } } #endif } void QTReaderApp::doAction(ActionTypes a, QKeyEvent* e) { if (a == 0) { - e->ignore(); + e->ignore(); } else { - e->accept(); -// qDebug("Accepted"); - switch (a) - { - case cesOpenFile: - { - fileOpen(); - } - break; - case cesAutoScroll: - { - reader->setautoscroll(!reader->m_autoScroll); - setScrollState(reader->m_autoScroll); - } - break; - case cesActionMark: - { - addbkmk(); - } - break; - case cesFullScreen: - { - m_actFullscreen->setOn(!m_fullscreen); - } - break; - case cesActionAnno: - { - addanno(); - } - break; - case cesZoomIn: - zoomin(); - break; - case cesZoomOut: - zoomout(); - break; - case cesBack: - reader->goBack(); - break; - case cesForward: - reader->goForward(); - break; - case cesHome: - reader->goHome(); - break; - case cesPageUp: - reader->dopageup(); - break; - case cesPageDown: - reader->dopagedn(); - break; - case cesLineUp: - reader->lineUp(); - break; - case cesLineDown: - reader->lineDown(); - break; - case cesStartDoc: - gotoStart(); - break; - case cesEndDoc: - gotoEnd(); - break; - default: - qDebug("Unknown ActionType:%u", a); - break; - } + e->accept(); +// odebug << "Accepted" << oendl; + switch (a) + { + case cesOpenFile: + { + fileOpen(); + } + break; + case cesAutoScroll: + { + reader->setautoscroll(!reader->m_autoScroll); + setScrollState(reader->m_autoScroll); + } + break; + case cesActionMark: + { + addbkmk(); + } + break; + case cesFullScreen: + { + m_actFullscreen->setOn(!m_fullscreen); + } + break; + case cesActionAnno: + { + addanno(); + } + break; + case cesZoomIn: + zoomin(); + break; + case cesZoomOut: + zoomout(); + break; + case cesBack: + reader->goBack(); + break; + case cesForward: + reader->goForward(); + break; + case cesHome: + reader->goHome(); + break; + case cesPageUp: + reader->dopageup(); + break; + case cesPageDown: + reader->dopagedn(); + break; + case cesLineUp: + reader->lineUp(); + break; + case cesLineDown: + reader->lineDown(); + break; + case cesStartDoc: + gotoStart(); + break; + case cesEndDoc: + gotoEnd(); + break; + default: + odebug << "Unknown ActionType:" << a << "" << oendl; + break; + } } } void QTReaderApp::setTwoTouch(bool _b) { reader->setTwoTouch(_b); } -void QTReaderApp::restoreFocus() { reader->setFocus(); } +void QTReaderApp::restoreFocus() { reader->setFocus(); } void QTReaderApp::SaveConfig() { m_nRegAction = cSetConfigName; regEdit->setText(reader->m_string); do_regedit(); } void QTReaderApp::do_saveconfig(const QString& _txt, bool full) { -// qDebug("do_saveconfig:%s", (const char*)_txt); +// odebug << "do_saveconfig:" << _txt << "" << oendl; #ifdef USEQPE QString configname; Config::Domain dom; if (full) { - configname = _txt; - dom = Config::User; + configname = _txt; + dom = Config::User; } else { - configname = Global::applicationFileName(APPDIR "/configs", _txt); - dom = Config::File; + configname = Global::applicationFileName(APPDIR "/configs", _txt); + dom = Config::File; } Config config(configname, dom); config.setGroup( "View" ); #else - QFileInfo fi; - if (full) - { -// qDebug("full:%s", (const char*)_txt); - QDir d = QDir::home(); // "/" - if ( !d.cd(_txt) ) - { // "/tmp" - qWarning( "Cannot find the \"~/%s\" directory", (const char*)_txt ); - d = QDir::home(); - d.mkdir(_txt); - d.cd(_txt); - } - fi.setFile(d, INIFILE); - } - else - { - QDir d = QDir::home(); // "/" - if ( !d.cd(APPDIR) ) - { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "\" directory" ); - d = QDir::home(); - d.mkdir(APPDIR); - d.cd(APPDIR); - } - if ( !d.cd("configs") ) - { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "/configs\" directory" ); - d = QDir::home(); - d.cd(APPDIR); - d.mkdir("configs"); - d.cd("configs"); - } - fi.setFile(d, _txt); - } -// qDebug("Path:%s", (const char*)fi.absFilePath()); - Config config(fi.absFilePath()); + QFileInfo fi; + if (full) + { +// odebug << "full:" << _txt << "" << oendl; + QDir d = QDir::home(); // "/" + if ( !d.cd(_txt) ) + { // "/tmp" + owarn << "Cannot find the \"~/" << _txt << "\" directory" << oendl; + d = QDir::home(); + d.mkdir(_txt); + d.cd(_txt); + } + fi.setFile(d, INIFILE); + } + else + { + QDir d = QDir::home(); // "/" + if ( !d.cd(APPDIR) ) + { // "/tmp" + owarn << "Cannot find the \"~/" APPDIR "\" directory" << oendl; + d = QDir::home(); + d.mkdir(APPDIR); + d.cd(APPDIR); + } + if ( !d.cd("configs") ) + { // "/tmp" + owarn << "Cannot find the \"~/" APPDIR "/configs\" directory" << oendl; + d = QDir::home(); + d.cd(APPDIR); + d.mkdir("configs"); + d.cd("configs"); + } + fi.setFile(d, _txt); + } +// odebug << "Path:" << fi.absFilePath() << "" << oendl; + Config config(fi.absFilePath()); #endif config.writeEntry( "StripCr", reader->bstripcr ); config.writeEntry( "AutoFmt", reader->bautofmt ); config.writeEntry( "TextFmt", reader->btextfmt ); config.writeEntry( "StripHtml", reader->bstriphtml ); config.writeEntry( "Dehyphen", reader->bdehyphen ); @@ -3670,21 +3671,21 @@ void QTReaderApp::do_saveconfig(const QString& _txt, bool full) config.writeEntry( "Unindent", reader->bunindent ); config.writeEntry( "Repara", reader->brepara ); config.writeEntry( "DoubleSpace", reader->bdblspce ); config.writeEntry( "Indent", reader->bindenter ); config.writeEntry( "FontSize", (int)(reader->m_fontControl.currentsize()) ); config.writeEntry( "ScrollDelay", reader->m_delay); if (full) { - config.writeEntry("Debounce", m_debounce); - config.writeEntry("FloatDialogs", m_bFloatingDialog); - reader->m_lastposn = reader->pagelocate(); - config.writeEntry( "LastFile", reader->m_lastfile ); - config.writeEntry( "LastPosn", (int)(reader->pagelocate()) ); + config.writeEntry("Debounce", m_debounce); + config.writeEntry("FloatDialogs", m_bFloatingDialog); + reader->m_lastposn = reader->pagelocate(); + config.writeEntry( "LastFile", reader->m_lastfile ); + config.writeEntry( "LastPosn", (int)(reader->pagelocate()) ); } config.writeEntry( "PageMode", reader->m_bpagemode ); config.writeEntry( "MonoSpaced", reader->m_bMonoSpaced ); config.writeEntry( "SwapMouse", reader->m_swapmouse); config.writeEntry( "Fontname", reader->m_fontname ); config.writeEntry( "Encoding", reader->m_encd ); config.writeEntry( "CharSpacing", reader->m_charpc ); config.writeEntry( "Overlap", (int)(reader->m_overlap) ); @@ -3719,42 +3720,42 @@ void QTReaderApp::do_saveconfig(const QString& _txt, bool full) config.writeEntry( "Continuous", reader->m_continuousDocument ); config.writeEntry( "FullJust", reader->bfulljust ); config.writeEntry( "ExtraSpace", reader->getextraspace() ); config.writeEntry( "ExtraLead", reader->getlead() ); config.writeEntry( "Basesize", (int)reader->getBaseSize()); config.writeEntry( "RequestorFontChange", m_propogatefontchange); if (full) { - config.setGroup( "Toolbar" ); - config.writeEntry("Movable", m_tbmovesave); - config.writeEntry("Policy", m_tbpolsave); - config.writeEntry("Position", m_tbposition); + config.setGroup( "Toolbar" ); + config.writeEntry("Movable", m_tbmovesave); + config.writeEntry("Policy", m_tbpolsave); + config.writeEntry("Position", m_tbposition); #ifndef USEQPE - config.setGroup( "Geometry" ); - config.writeEntry( "x", x() ); - config.writeEntry( "y", y() ); - config.writeEntry( "width", width() ); - config.writeEntry( "height", height() ); + config.setGroup( "Geometry" ); + config.writeEntry( "x", x() ); + config.writeEntry( "y", y() ); + config.writeEntry( "width", width() ); + config.writeEntry( "height", height() ); #endif } } /* void QTReaderApp::setstate(unsigned char* _sd, unsigned short _sdlen) { unsigned short sdlen; memcpy(&sdlen, _sd, sizeof(sdlen)); sdlen -= sizeof(sdlen); _sd += sizeof(sdlen); statedata* sd; char* data; if (sdlen < sizeof(statedata)+1) { - sdlen = sizeof(statedata)+1; + sdlen = sizeof(statedata)+1; } data = new char[sdlen]; sd = (statedata*)data; memcpy(sd, _sd, sdlen); data[sdlen] = 0; reader->setstate(*sd); delete [] data; } @@ -3796,79 +3797,79 @@ void QTReaderApp::getstate(unsigned char*& data, unsigned short& len) sd->m_charpc = reader->m_charpc; strcpy(sd->m_fontname, reader->m_fontname.latin1()); } */ #ifdef _SCRIPT void QTReaderApp::RunScript() { fileBrowser* fb = new fileBrowser(this,"OpieReader",!m_bFloatingDialog, - 0, -// WStyle_Customize | WStyle_NoBorderEx, - "*", Global::applicationFileName(APPDIR "/scripts", "")); + 0, +// WStyle_Customize | WStyle_NoBorderEx, + "*", Global::applicationFileName(APPDIR "/scripts", "")); QString fn; if (fb->exec()) { - fn = fb->fileList[0]; + fn = fb->fileList[0]; } delete fb; if ( !fn.isEmpty() && fork() == 0 ) { - execlp((const char *)fn,(const char *)fn,NULL); + execlp((const char *)fn,(const char *)fn,NULL); } } void QTReaderApp::SaveScript(const char* sname) { FILE* f = fopen(sname,"w"); if (f != NULL) { #ifdef OPIE - fprintf(f, "#!/bin/sh\nmsg() {\n\tqcop QPE/Application/reader \"$1\" \"$2\" \"$3\"\n}\n"); + fprintf(f, "#!/bin/sh\nmsg() {\n\tqcop QPE/Application/reader \"$1\" \"$2\" \"$3\"\n}\n"); #else - fprintf(f, "#!/bin/bash\nmsg() {\n\tqcop QPE/Application/uqtreader \"$1\" \"$2\" \"$3\"\n}\n"); + fprintf(f, "#!/bin/bash\nmsg() {\n\tqcop QPE/Application/uqtreader \"$1\" \"$2\" \"$3\"\n}\n"); #endif - fprintf(f, "msg \"Update(int)\" 0\n"); - fprintf(f, "msg \"Layout/StripCR(int)\" %d\n", (reader->bstripcr) ? 1:0); - if (reader->btextfmt) fprintf(f, "msg \"Markup(QString)\" \"Text\"\n"); - else if (reader->bautofmt) fprintf(f, "msg \"Markup(QString)\" \"Auto\"\n"); - else if (reader->bstriphtml) fprintf(f, "msg \"Markup(QString)\" \"HTML\"\n"); - else if (reader->bpeanut) fprintf(f, "msg \"Markup(QString)\" \"Peanut/PML\"\n"); - else fprintf(f, "msg \"Markup(QString)\" \"None\"\n"); - fprintf(f, "msg \"Layout/Dehyphen(int)\" %d\n", (reader->bdehyphen) ? 1:0); - fprintf(f, "msg \"Layout/Depluck(int)\" %d\n", (reader->bdepluck) ? 1:0); - fprintf(f, "msg \"Layout/Dejpluck(int)\" %d\n", (reader->bdejpluck) ? 1:0); - fprintf(f, "msg \"Layout/SingleSpace(int)\" %d\n", (reader->bonespace) ? 1:0); - fprintf(f, "msg \"Layout/Unindent(int)\" %d\n", (reader->bunindent) ? 1:0); - fprintf(f, "msg \"Layout/Re-paragraph(int)\" %d\n", (reader->brepara) ? 1:0); - fprintf(f, "msg \"Layout/DoubleSpace(int)\" %d\n", (reader->bdblspce) ? 1:0); - fprintf(f, "msg \"Layout/Indent(int)\" %d\n", reader->bindenter); - fprintf(f, "msg \"Format/SetFont(QString,int)\" \"%s\" %d\n", (const char*)reader->m_fontname, reader->m_textsize); - fprintf(f, "msg \"Navigation/Page/LineScroll(int)\" %d\n", (reader->m_bpagemode) ? 1:0); - fprintf(f, "msg \"Format/Ideogram/Word(int)\" %d\n", (reader->m_bMonoSpaced) ? 1:0); - fprintf(f, "msg \"Format/Encoding(QString)\" \"%s\"\n", (const char*)m_EncodingAction[reader->m_encd]->text()); - fprintf(f, "msg \"Format/SetWidth(int)\" %d\n", reader->m_charpc); - fprintf(f, "msg \"Navigation/SetOverlap(int)\" %d\n", reader->m_overlap); - fprintf(f, "msg \"Layout/Remap(int)\" %d\n", (reader->bremap) ? 1:0); - fprintf(f, "msg \"Layout/Embolden(int)\" %d\n", (reader->bmakebold) ? 1:0); - fprintf(f, "msg \"File/Continuous(int)\" %d\n", (reader->m_continuousDocument) ? 1:0); - fprintf(f, "msg \"File/SetDictionary(QString)\" \"%s/%s\"\n", (const char *)m_targetapp, (const char *)m_targetmsg); + fprintf(f, "msg \"Update(int)\" 0\n"); + fprintf(f, "msg \"Layout/StripCR(int)\" %d\n", (reader->bstripcr) ? 1:0); + if (reader->btextfmt) fprintf(f, "msg \"Markup(QString)\" \"Text\"\n"); + else if (reader->bautofmt) fprintf(f, "msg \"Markup(QString)\" \"Auto\"\n"); + else if (reader->bstriphtml) fprintf(f, "msg \"Markup(QString)\" \"HTML\"\n"); + else if (reader->bpeanut) fprintf(f, "msg \"Markup(QString)\" \"Peanut/PML\"\n"); + else fprintf(f, "msg \"Markup(QString)\" \"None\"\n"); + fprintf(f, "msg \"Layout/Dehyphen(int)\" %d\n", (reader->bdehyphen) ? 1:0); + fprintf(f, "msg \"Layout/Depluck(int)\" %d\n", (reader->bdepluck) ? 1:0); + fprintf(f, "msg \"Layout/Dejpluck(int)\" %d\n", (reader->bdejpluck) ? 1:0); + fprintf(f, "msg \"Layout/SingleSpace(int)\" %d\n", (reader->bonespace) ? 1:0); + fprintf(f, "msg \"Layout/Unindent(int)\" %d\n", (reader->bunindent) ? 1:0); + fprintf(f, "msg \"Layout/Re-paragraph(int)\" %d\n", (reader->brepara) ? 1:0); + fprintf(f, "msg \"Layout/DoubleSpace(int)\" %d\n", (reader->bdblspce) ? 1:0); + fprintf(f, "msg \"Layout/Indent(int)\" %d\n", reader->bindenter); + fprintf(f, "msg \"Format/SetFont(QString,int)\" \"%s\" %d\n", (const char*)reader->m_fontname, reader->m_textsize); + fprintf(f, "msg \"Navigation/Page/LineScroll(int)\" %d\n", (reader->m_bpagemode) ? 1:0); + fprintf(f, "msg \"Format/Ideogram/Word(int)\" %d\n", (reader->m_bMonoSpaced) ? 1:0); + fprintf(f, "msg \"Format/Encoding(QString)\" \"%s\"\n", (const char*)m_EncodingAction[reader->m_encd]->text()); + fprintf(f, "msg \"Format/SetWidth(int)\" %d\n", reader->m_charpc); + fprintf(f, "msg \"Navigation/SetOverlap(int)\" %d\n", reader->m_overlap); + fprintf(f, "msg \"Layout/Remap(int)\" %d\n", (reader->bremap) ? 1:0); + fprintf(f, "msg \"Layout/Embolden(int)\" %d\n", (reader->bmakebold) ? 1:0); + fprintf(f, "msg \"File/Continuous(int)\" %d\n", (reader->m_continuousDocument) ? 1:0); + fprintf(f, "msg \"File/SetDictionary(QString)\" \"%s/%s\"\n", (const char *)m_targetapp, (const char *)m_targetmsg); #ifdef _SCROLLPIPE - fprintf(f, "msg \"File/SetScrollTarget(QString)\" \"%s\"\n", (const char *)reader->m_pipetarget); + fprintf(f, "msg \"File/SetScrollTarget(QString)\" \"%s\"\n", (const char *)reader->m_pipetarget); #endif - fprintf(f, "msg \"File/Two/OneTouch(int)\" %d\n", (m_twoTouch) ? 1:0); - fprintf(f, "msg \"Target/Annotation(int)\" %d\n", (m_doAnnotation) ? 1:0); - fprintf(f, "msg \"Target/Dictionary(int)\" %d\n", (m_doDictionary) ? 1:0); - fprintf(f, "msg \"Target/Clipboard(int)\" %d\n", (m_doClipboard) ? 1:0); - fprintf(f, "msg \"File/Action(QString)\" \"%s\"\n", (const char *)m_buttonAction[m_spaceTarget]->text()); - fprintf(f, "msg \"Update(int)\" 1\n"); - fprintf(f, "msg \"info(QString)\" \"All Done\"\n"); - fclose(f); - chmod(sname, S_IXUSR | S_IXGRP | S_IXOTH); + fprintf(f, "msg \"File/Two/OneTouch(int)\" %d\n", (m_twoTouch) ? 1:0); + fprintf(f, "msg \"Target/Annotation(int)\" %d\n", (m_doAnnotation) ? 1:0); + fprintf(f, "msg \"Target/Dictionary(int)\" %d\n", (m_doDictionary) ? 1:0); + fprintf(f, "msg \"Target/Clipboard(int)\" %d\n", (m_doClipboard) ? 1:0); + fprintf(f, "msg \"File/Action(QString)\" \"%s\"\n", (const char *)m_buttonAction[m_spaceTarget]->text()); + fprintf(f, "msg \"Update(int)\" 1\n"); + fprintf(f, "msg \"info(QString)\" \"All Done\"\n"); + fclose(f); + chmod(sname, S_IXUSR | S_IXGRP | S_IXOTH); } } void QTReaderApp::SaveConfig() { m_nRegAction = cSetConfigName; regEdit->setText(""); do_regedit(); @@ -3908,77 +3909,77 @@ void QTReaderApp::monospace(bool _b) bool QTReaderApp::readconfig(const QString& _txt, bool full=false) { #ifdef USEQPE QString configname; Config::Domain dom; if (full) { - configname = _txt; - dom = Config::User; + configname = _txt; + dom = Config::User; } else { - configname = Global::applicationFileName(APPDIR "/configs", _txt); - QFileInfo fm(configname); - if ( !fm.exists() ) return false; - dom = Config::File; + configname = Global::applicationFileName(APPDIR "/configs", _txt); + QFileInfo fm(configname); + if ( !fm.exists() ) return false; + dom = Config::File; } Config config(configname, dom); config.setGroup( "View" ); #else - QFileInfo fi; - if (full) - { - QDir d = QDir::home(); // "/" - if ( !d.cd(_txt) ) - { // "/tmp" - qWarning( "Cannot find the \"~/%s\" directory", (const char*)_txt ); - d = QDir::home(); - d.mkdir(_txt); - d.cd(_txt); - } - fi.setFile(d, INIFILE); - } - else - { - QDir d = QDir::home(); // "/" - if ( !d.cd(APPDIR) ) - { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "\" directory" ); - d = QDir::home(); - d.mkdir(APPDIR); - d.cd(APPDIR); - } - if ( !d.cd("configs") ) - { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "/configs\" directory" ); - d = QDir::home(); - d.mkdir("configs"); - d.cd("configs"); - } - fi.setFile(d, _txt); - } + QFileInfo fi; + if (full) + { + QDir d = QDir::home(); // "/" + if ( !d.cd(_txt) ) + { // "/tmp" + owarn << "Cannot find the \"~/" << _txt << "\" directory" << oendl; + d = QDir::home(); + d.mkdir(_txt); + d.cd(_txt); + } + fi.setFile(d, INIFILE); + } + else + { + QDir d = QDir::home(); // "/" + if ( !d.cd(APPDIR) ) + { // "/tmp" + owarn << "Cannot find the \"~/" APPDIR "\" directory" << oendl; + d = QDir::home(); + d.mkdir(APPDIR); + d.cd(APPDIR); + } + if ( !d.cd("configs") ) + { // "/tmp" + owarn << "Cannot find the \"~/" APPDIR "/configs\" directory" << oendl; + d = QDir::home(); + d.mkdir("configs"); + d.cd("configs"); + } + fi.setFile(d, _txt); + } #ifdef _WINDOWS - struct stat fnstat; + struct stat fnstat; if (stat((const char *)reader->m_lastfile, &fnstat) == 0) return false; // get round fileinfo bug on windows #else - if (!fi.exists()) return false; + if (!fi.exists()) return false; #endif - Config config(fi.absFilePath()); + Config config(fi.absFilePath()); #endif if (full) { - config.setGroup("Toolbar"); - m_tbmovesave = m_tbmove = config.readBoolEntry("Movable", false); - m_tbpolsave = m_tbpol = (ToolbarPolicy)config.readNumEntry("Policy", 1); - m_tbposition = (ToolBarDock)config.readNumEntry("Position", 2); + config.setGroup("Toolbar"); + m_tbmovesave = m_tbmove = config.readBoolEntry("Movable", false); + m_tbpolsave = m_tbpol = (ToolbarPolicy)config.readNumEntry("Policy", 1); + m_tbposition = (ToolBarDock)config.readNumEntry("Position", 2); } config.setGroup( "View" ); m_bFloatingDialog = config.readBoolEntry("FloatDialogs", false); reader->bstripcr = config.readBoolEntry( "StripCr", true ); reader->bfulljust = config.readBoolEntry( "FullJust", false ); reader->setextraspace(config.readNumEntry( "ExtraSpace", 0 )); reader->setlead(config.readNumEntry( "ExtraLead", 0 )); reader->btextfmt = config.readBoolEntry( "TextFmt", false ); @@ -3992,18 +3993,18 @@ bool QTReaderApp::readconfig(const QString& _txt, bool full=false) reader->bunindent = config.readBoolEntry( "Unindent", false ); reader->brepara = config.readBoolEntry( "Repara", false ); reader->bdblspce = config.readBoolEntry( "DoubleSpace", false ); reader->bindenter = config.readNumEntry( "Indent", 0 ); reader->m_textsize = config.readNumEntry( "FontSize", 12 ); reader->m_delay = config.readNumEntry( "ScrollDelay", 5184); if (full) { - reader->m_lastfile = config.readEntry( "LastFile", QString::null ); - reader->m_lastposn = config.readNumEntry( "LastPosn", 0 ); + reader->m_lastfile = config.readEntry( "LastFile", QString::null ); + reader->m_lastposn = config.readNumEntry( "LastPosn", 0 ); } reader->m_bpagemode = config.readBoolEntry( "PageMode", true ); reader->m_bMonoSpaced = config.readBoolEntry( "MonoSpaced", false); reader->m_swapmouse = config.readBoolEntry( "SwapMouse", false); reader->m_fontname = config.readEntry( "Fontname", "helvetica" ); reader->m_encd = config.readNumEntry( "Encoding", 0 ); reader->m_charpc = config.readNumEntry( "CharSpacing", 100 ); reader->m_overlap = config.readNumEntry( "Overlap", 0 ); @@ -4040,182 +4041,182 @@ bool QTReaderApp::readconfig(const QString& _txt, bool full=false) reader->setBaseSize(config.readNumEntry( "Basesize", 10 )); reader->setTwoTouch(m_twoTouch); m_touch_action->setOn(m_twoTouch); m_setmono_action->setOn(reader->m_bMonoSpaced); setfontHelper(reader->m_fontname); if (full) { - addtoolbars(&config); + addtoolbars(&config); } reader->setfilter(reader->getfilter()); reader->refresh(); return true; } bool QTReaderApp::PopulateConfig(const char* tgtdir) { bkmkselector->clear(); bkmkselector->setText("Cancel"); #ifndef USEQPE int cnt = 0; QDir d = QDir::home(); // "/" if ( !d.cd(APPDIR) ) { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "\" directory" ); - d = QDir::home(); - d.mkdir(APPDIR); - d.cd(APPDIR); + owarn << "Cannot find the \"~/" APPDIR "\" directory" << oendl; + d = QDir::home(); + d.mkdir(APPDIR); + d.cd(APPDIR); } if ( !d.cd(tgtdir) ) { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "/%s\" directory", tgtdir ); - d = QDir::home(); - d.mkdir(tgtdir); - d.cd(tgtdir); + owarn << "Cannot find the \"~/" APPDIR "/" << tgtdir << "\" directory" << oendl; + d = QDir::home(); + d.mkdir(tgtdir); + d.cd(tgtdir); } d.setFilter( QDir::Files | QDir::NoSymLinks ); // d.setSorting( QDir::Size | QDir::Reversed ); const QFileInfoList *list = d.entryInfoList(); QFileInfoListIterator it( *list ); // create list iterator QFileInfo *fi; // pointer for traversing while ( (fi=it.current()) ) { // for each file... - - bkmkselector->insertItem(fi->fileName()); - cnt++; - - //qDebug( "%10li %s", fi->size(), fi->fileName().data() ); - ++it; // goto next list element - } - + + bkmkselector->insertItem(fi->fileName()); + cnt++; + + //odebug << "" << fi->size() << " " << fi->fileName().data() << "" << oendl; + ++it; // goto next list element + } + #else /* USEQPE */ int cnt = 0; DIR *d; char* finaldir; finaldir = new char[strlen(APPDIR)+1+strlen(tgtdir)+1]; strcpy(finaldir, APPDIR); strcat(finaldir, "/"); strcat(finaldir, tgtdir); d = opendir((const char *)Global::applicationFileName(finaldir,"")); while(1) { - struct dirent* de; - struct stat buf; - de = readdir(d); - if (de == NULL) break; + struct dirent* de; + struct stat buf; + de = readdir(d); + if (de == NULL) break; - if (lstat((const char *)Global::applicationFileName(finaldir,de->d_name),&buf) == 0 && S_ISREG(buf.st_mode)) - { - bkmkselector->insertItem(de->d_name); - cnt++; - } + if (lstat((const char *)Global::applicationFileName(finaldir,de->d_name),&buf) == 0 && S_ISREG(buf.st_mode)) + { + bkmkselector->insertItem(de->d_name); + cnt++; + } } delete [] finaldir; closedir(d); #endif return (cnt > 0); } void QTReaderApp::LoadConfig() { if (PopulateConfig("configs")) { editorStack->raiseWidget( bkmkselector ); hidetoolbars(); - m_nBkmkAction = cLdConfig; + m_nBkmkAction = cLdConfig; } else QMessageBox::information(this, PROGNAME, "No config files"); } void QTReaderApp::TidyConfig() { if (PopulateConfig("configs")) { editorStack->raiseWidget( bkmkselector ); hidetoolbars(); - m_nBkmkAction = cRmConfig; + m_nBkmkAction = cRmConfig; } else QMessageBox::information(this, PROGNAME, "No config files"); } void QTReaderApp::ExportLinks() { if (PopulateConfig("urls")) { editorStack->raiseWidget( bkmkselector ); hidetoolbars(); - m_nBkmkAction = cExportLinks; + m_nBkmkAction = cExportLinks; } else QMessageBox::information(this, PROGNAME, "No url files"); } void QTReaderApp::OnURLSelected(const QString& href) { CURLDialog* urld = new CURLDialog(href, false, this); urld->clipboard(m_url_clipboard); urld->localfile(m_url_localfile); urld->globalfile(m_url_globalfile); if (urld->exec()) { - m_url_clipboard = urld->clipboard(); - m_url_localfile = urld->localfile(); - m_url_globalfile = urld->globalfile(); - if (m_url_clipboard) - { - QClipboard* cb = QApplication::clipboard(); - cb->setText(href); - qDebug("<a href=\"%s\">%s</a>", (const char*)href, (const char*)href); - } - if (m_url_localfile) - { - writeUrl(reader->m_string, href); - } - if (m_url_globalfile) - { - writeUrl("GlobalURLFile", href); - } + m_url_clipboard = urld->clipboard(); + m_url_localfile = urld->localfile(); + m_url_globalfile = urld->globalfile(); + if (m_url_clipboard) + { + QClipboard* cb = QApplication::clipboard(); + cb->setText(href); + odebug << "<a href=\"" << href << "\">" << href << "</a>" << oendl; + } + if (m_url_localfile) + { + writeUrl(reader->m_string, href); + } + if (m_url_globalfile) + { + writeUrl("GlobalURLFile", href); + } } delete urld; } void QTReaderApp::writeUrl(const QString& file, const QString& href) { QString filename; #ifdef USEQPE filename = Global::applicationFileName(APPDIR "/urls", file); #else QFileInfo fi; QDir d = QDir::home(); // "/" if ( !d.cd(APPDIR) ) { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "\" directory" ); - d = QDir::home(); - d.mkdir(APPDIR); - d.cd(APPDIR); + owarn << "Cannot find the \"~/" APPDIR "\" directory" << oendl; + d = QDir::home(); + d.mkdir(APPDIR); + d.cd(APPDIR); } if ( !d.cd("urls") ) { // "/tmp" - qWarning( "Cannot find the \"~/" APPDIR "/urls\" directory" ); - d = QDir::home(); - d.cd(APPDIR); - d.mkdir("urls"); - d.cd("urls"); + owarn << "Cannot find the \"~/" APPDIR "/urls\" directory" << oendl; + d = QDir::home(); + d.cd(APPDIR); + d.mkdir("urls"); + d.cd("urls"); } fi.setFile(d, file); filename = fi.absFilePath(); #endif FILE* fout = fopen(filename, "a"); if (fout != NULL) { - fprintf(fout, "<p><a href=\"%s\">%s</a>\n", (const char*)href, (const char*)href); - fclose(fout); + fprintf(fout, "<p><a href=\"%s\">%s</a>\n", (const char*)href, (const char*)href); + fclose(fout); } else { - QMessageBox::warning(this, PROGNAME, "Problem with writing URL"); + QMessageBox::warning(this, PROGNAME, "Problem with writing URL"); } } diff --git a/noncore/apps/opie-reader/StyleConsts.cpp b/noncore/apps/opie-reader/StyleConsts.cpp index 9fb56b7..f47acee 100644 --- a/noncore/apps/opie-reader/StyleConsts.cpp +++ b/noncore/apps/opie-reader/StyleConsts.cpp @@ -1,17 +1,17 @@ #include <qimage.h> #include "StyleConsts.h" GraphicLink::~GraphicLink() { delete graphic; } pmstore::~pmstore() { -//// qDebug("Deleting image"); +//// odebug << "Deleting image" << oendl; delete graphic; } CStyle::~CStyle() { if (graphic != NULL) { if (--(graphic->count) == 0) diff --git a/noncore/apps/opie-reader/fileBrowser.cpp b/noncore/apps/opie-reader/fileBrowser.cpp index e1cde6c..72a1222 100644 --- a/noncore/apps/opie-reader/fileBrowser.cpp +++ b/noncore/apps/opie-reader/fileBrowser.cpp @@ -127,17 +127,17 @@ void fileBrowser::resizeEvent(QResizeEvent* e) fileBrowser::~fileBrowser() { } void fileBrowser::populateList() { ListView->clear(); -////qDebug(currentDir.canonicalPath()); +////odebug << currentDir.canonicalPath() << oendl; // currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::NoSymLinks ); currentDir.setFilter( filterspec ); currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst); currentDir.setMatchAllDirs(TRUE); currentDir.setNameFilter(filterStr); // currentDir.setNameFilter("*.txt;*.etx"); QString fileL, fileS; @@ -151,38 +151,38 @@ void fileBrowser::populateList() fileS.sprintf( "%10li", fi->size() ); fileL.sprintf( "%s",fi->fileName().data() ); if( fi->isDir() ) { fileL+="/"; } else { -//// qDebug("Not a dir: "+currentDir.canonicalPath()+fileL); +//// odebug << "Not a dir: "+currentDir.canonicalPath()+fileL << oendl; } new QListViewItem( ListView,fileL,fileS ); } ++it; } ListView->setSorting( 2, FALSE); dirLabel->setText("Current Directory:\n"+currentDir.canonicalPath()); ListView->setFocus(); } void fileBrowser::upDir() { -//// qDebug(currentDir.canonicalPath()); +//// odebug << currentDir.canonicalPath() << oendl; } void fileBrowser::listClicked(QListViewItem *selectedItem) { if (selectedItem == NULL) return; QString strItem=selectedItem->text(0); -//// qDebug("%s", (const char*)strItem); +//// odebug << "" << strItem << "" << oendl; QString strSize=selectedItem->text(1); strSize.stripWhiteSpace(); bool ok; diff --git a/noncore/apps/opie-reader/opie-reader.pro b/noncore/apps/opie-reader/opie-reader.pro index e42204a..dbf6964 100644 --- a/noncore/apps/opie-reader/opie-reader.pro +++ b/noncore/apps/opie-reader/opie-reader.pro @@ -1,10 +1,10 @@ -CONFIG = qt warn_on -HEADERS = Aportis.h \ +CONFIG = qt warn_on +HEADERS = Aportis.h \ Bkmks.h \ BuffDoc.h \ CAnnoEdit.h \ CBuffer.h \ CDrawBuffer.h \ CEncoding.h \ CEncoding_tables.h \ CExpander.h \ @@ -44,17 +44,17 @@ HEADERS = Aportis.h \ ppm_expander.h \ usenef.h \ useqpe.h \ ustring.h \ utypes.h \ version.h \ ztxt.h -SOURCES = Aportis.cpp \ +SOURCES = Aportis.cpp \ Bkmks.cpp \ BuffDoc.cpp \ CBuffer.cpp \ CDrawBuffer.cpp \ CEncoding.cpp \ CEncoding_tables.cpp \ CFilter.cpp \ CloseDialog.cpp \ @@ -78,15 +78,15 @@ SOURCES = Aportis.cpp \ ppm.cpp \ ppm_expander.cpp \ version.cpp \ ztxt.cpp DESTDIR = $(OPIEDIR)/bin TARGET = reader -INCLUDEPATH += $(OPIEDIR)/include -DEPENDPATH += $(OPIEDIR)/include -LIBS += -lqpe +INCLUDEPATH += $(OPIEDIR)/include +DEPENDPATH += $(OPIEDIR)/include +LIBS += -lqpe -lopiecore2 include ( $(OPIEDIR)/include.pro ) diff --git a/noncore/apps/opie-reader/plucker.cpp b/noncore/apps/opie-reader/plucker.cpp index e52fd6a..a8e688f 100644 --- a/noncore/apps/opie-reader/plucker.cpp +++ b/noncore/apps/opie-reader/plucker.cpp @@ -52,51 +52,51 @@ bool CPlucker::CorrectDecoder() int CPlucker::bgetch() { int ch = EOF; if (bufferpos >= buffercontent) { if (!m_continuous) return EOF; if (bufferrec >= ntohs(head.recordList.numRecords) - 1) return EOF; -//// qDebug("Passing through %u", currentpos); +//// odebug << "Passing through " << currentpos << "" << oendl; if (!expand(bufferrec+1)) return EOF; mystyle.unset(); if (m_ParaOffsets[m_nextParaIndex] == 0) { while (m_ParaOffsets[m_nextParaIndex+1] == 0) { -// qDebug("Skipping extraspace:%d", m_ParaAttrs[m_nextParaIndex]&7); +// odebug << "Skipping extraspace:" << m_ParaAttrs[m_nextParaIndex]&7 << "" << oendl; m_nextParaIndex++; } } mystyle.setExtraSpace((m_ParaAttrs[m_nextParaIndex]&7)*2); -// qDebug("Using extraspace:%d", m_ParaAttrs[m_nextParaIndex]&7); +// odebug << "Using extraspace:" << m_ParaAttrs[m_nextParaIndex]&7 << "" << oendl; ch = 10; EOPPhase = 4; } else if (bufferpos == m_nextPara) { while (bufferpos == m_nextPara) { UInt16 attr = m_ParaAttrs[m_nextParaIndex]; m_nextParaIndex++; -// qDebug("Skipping extraspace:%d", m_ParaAttrs[m_nextParaIndex]&7); +// odebug << "Skipping extraspace:" << m_ParaAttrs[m_nextParaIndex]&7 << "" << oendl; if (m_nextParaIndex == m_nParas) { m_nextPara = -1; } else { m_nextPara += m_ParaOffsets[m_nextParaIndex]; } } mystyle.unset(); mystyle.setExtraSpace((m_ParaAttrs[m_nextParaIndex]&7)*2); -// qDebug("Using extraspace:%d", m_ParaAttrs[m_nextParaIndex]&7); +// odebug << "Using extraspace:" << m_ParaAttrs[m_nextParaIndex]&7 << "" << oendl; if (m_lastBreak == locate()) { currentpos++; ch = expandedtextbuffer[bufferpos++]; } else { ch = 10; diff --git a/noncore/apps/opie-reader/plucker_base.cpp b/noncore/apps/opie-reader/plucker_base.cpp index caa945d..b523a54 100644 --- a/noncore/apps/opie-reader/plucker_base.cpp +++ b/noncore/apps/opie-reader/plucker_base.cpp @@ -1,182 +1,190 @@ + + #include "useqpe.h" -#include <stdio.h> -#include <string.h> +#include "plucker_base.h" +#include "Aportis.h" +#include "Palm2QImage.h" + +/* OPIE */ +#include <opie2/odebug.h> #ifdef USEQPE #include <qpe/qcopenvelope_qws.h> -#endif /* USEQPE */ -#ifdef LOCALPICTURES -#include <qscrollview.h> -#endif -#ifdef USEQPE #include <qpe/global.h> #endif /* USEQPE */ + #ifndef USEQPE #include <qapplication.h> #else /* USEQPE */ #include <qpe/qpeapplication.h> #endif /* USEQPE */ -#include "plucker_base.h" -#include "Aportis.h" -#include "Palm2QImage.h" +/* QT */ +#ifdef LOCALPICTURES +#include <qscrollview.h> +#endif + +/* STD */ +#include <stdio.h> +#include <string.h> + CPlucker_base::CPlucker_base() : #ifdef LOCALPICTURES m_viewer(NULL), m_picture(NULL), #endif expandedtextbuffer(NULL), compressedtextbuffer(NULL) //, urls(NULL) { /*printf("constructing:%x\n",fin);*/ } void CPlucker_base::Expand(UInt32 reclen, UInt8 type, UInt8* buffer, UInt32 buffersize) { if (type%2 == 0) { - fread(buffer, reclen, sizeof(char), fin); + fread(buffer, reclen, sizeof(char), fin); } else { - UInt8* readbuffer = NULL; - if (reclen > compressedbuffersize) - { - readbuffer = new UInt8[reclen]; - } - else - { - readbuffer = compressedtextbuffer; - } - if (readbuffer != NULL) - { - fread(readbuffer, reclen, sizeof(char), fin); - switch (ntohs(hdr0.version)) - { - case 2: - UnZip(readbuffer, reclen, buffer, buffersize); - break; - case 1: - UnDoc(readbuffer, reclen, buffer, buffersize); - break; - } - if (reclen > compressedbuffersize) - { - delete [] readbuffer; - } - } + UInt8* readbuffer = NULL; + if (reclen > compressedbuffersize) + { + readbuffer = new UInt8[reclen]; + } + else + { + readbuffer = compressedtextbuffer; + } + if (readbuffer != NULL) + { + fread(readbuffer, reclen, sizeof(char), fin); + switch (ntohs(hdr0.version)) + { + case 2: + UnZip(readbuffer, reclen, buffer, buffersize); + break; + case 1: + UnDoc(readbuffer, reclen, buffer, buffersize); + break; + } + if (reclen > compressedbuffersize) + { + delete [] readbuffer; + } + } } } void CPlucker_base::sizes(unsigned long& _file, unsigned long& _text) { _file = file_length; if (textlength == 0) { - for (int recptr = 1; recptr < ntohs(head.recordList.numRecords); recptr++) - { - gotorecordnumber(recptr); - UInt16 thishdr_uid, thishdr_nParagraphs; - UInt32 thishdr_size; - UInt8 thishdr_type, thishdr_reserved; - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (thishdr_type < 2) textlength += thishdr_size; - } + for (int recptr = 1; recptr < ntohs(head.recordList.numRecords); recptr++) + { + gotorecordnumber(recptr); + UInt16 thishdr_uid, thishdr_nParagraphs; + UInt32 thishdr_size; + UInt8 thishdr_type, thishdr_reserved; + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + if (thishdr_type < 2) textlength += thishdr_size; + } } _text = textlength; //ntohl(hdr0.size); } char* CPlucker_base::geturl(UInt16 tgt) { char * pRet = NULL; gotorecordnumber(0); fread(&hdr0, 1, 6, fin); unsigned int nrecs = ntohs(hdr0.nRecords); - //qDebug("Version %u, no. recs %u", ntohs(hdr0.version), nrecs); + //odebug << "Version " << ntohs(hdr0.version) << ", no. recs " << nrecs << "" << oendl; UInt16 urlid = 0; bool urlsfound = false; char* urls = NULL; size_t urlsize = 0; for (unsigned int i = 0; i < nrecs; i++) { - UInt16 id, name; - fread(&name, 1, sizeof(name), fin); - fread(&id, 1, sizeof(id), fin); - //qDebug("N:%d, I:%d", ntohs(name), ntohs(id)); - if (ntohs(name) == 2) - { - urlsfound = true; - urlid = id; - //qDebug("Found url index:%d", ntohs(urlid)); - } -// //qDebug("%x", id); + UInt16 id, name; + fread(&name, 1, sizeof(name), fin); + fread(&id, 1, sizeof(id), fin); + //odebug << "N:" << ntohs(name) << ", I:" << ntohs(id) << "" << oendl; + if (ntohs(name) == 2) + { + urlsfound = true; + urlid = id; + //odebug << "Found url index:" << ntohs(urlid) << "" << oendl; + } +// //odebug << "" << id << "" << oendl; } if (urlsfound) { - unsigned short recptr = finduid(ntohs(urlid)); - if (recptr != 0) - { - gotorecordnumber(recptr); - UInt16 thishdr_uid, thishdr_nParagraphs; - UInt32 thishdr_size; - UInt8 thishdr_type, thishdr_reserved; - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - UInt16 urlctr = 0; - while (1) - { - UInt16 tctr; - fread(&tctr, 1, sizeof(tctr), fin); - fread(&urlid, 1, sizeof(urlid), fin); - tctr = ntohs(tctr); - //qDebug("tgt:%u urlctr:%u tctr:%u", tgt, urlctr, tctr); - if (tctr >= tgt) - { - break; - } - urlctr = tctr; - } - //qDebug("urls are in %d", ntohs(urlid)); - recptr = finduid(ntohs(urlid)); - if (recptr != 0) - { - UInt32 reclen = recordlength(recptr) - HeaderSize(); - gotorecordnumber(recptr); - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - //qDebug("Found urls:%x",thishdr_type); - urlsize = thishdr_size; - urls = new char[urlsize]; - Expand(reclen, thishdr_type, (UInt8*)urls, urlsize); - char* ptr = urls; - int rn = urlctr+1; - while (ptr - urls < urlsize) - { - if (rn == tgt) - { - //qDebug("URL:%s", ptr); - int len = strlen(ptr)+1; - pRet = new char[len]; - memcpy(pRet, ptr, len); - break; - } - ptr += strlen(ptr)+1; - rn++; - } - delete [] urls; - } - } + unsigned short recptr = finduid(ntohs(urlid)); + if (recptr != 0) + { + gotorecordnumber(recptr); + UInt16 thishdr_uid, thishdr_nParagraphs; + UInt32 thishdr_size; + UInt8 thishdr_type, thishdr_reserved; + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + UInt16 urlctr = 0; + while (1) + { + UInt16 tctr; + fread(&tctr, 1, sizeof(tctr), fin); + fread(&urlid, 1, sizeof(urlid), fin); + tctr = ntohs(tctr); + //odebug << "tgt:" << tgt << " urlctr:" << urlctr << " tctr:" << tctr << "" << oendl; + if (tctr >= tgt) + { + break; + } + urlctr = tctr; + } + //odebug << "urls are in " << ntohs(urlid) << "" << oendl; + recptr = finduid(ntohs(urlid)); + if (recptr != 0) + { + UInt32 reclen = recordlength(recptr) - HeaderSize(); + gotorecordnumber(recptr); + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + //odebug << "Found urls:" << thishdr_type << "" << oendl; + urlsize = thishdr_size; + urls = new char[urlsize]; + Expand(reclen, thishdr_type, (UInt8*)urls, urlsize); + char* ptr = urls; + int rn = urlctr+1; + while (ptr - urls < urlsize) + { + if (rn == tgt) + { + //odebug << "URL:" << ptr << "" << oendl; + int len = strlen(ptr)+1; + pRet = new char[len]; + memcpy(pRet, ptr, len); + break; + } + ptr += strlen(ptr)+1; + rn++; + } + delete [] urls; + } + } } else { - QMessageBox::information(NULL, - QString(PROGNAME), - QString("No external links\nin this pluck") - ); + QMessageBox::information(NULL, + QString(PROGNAME), + QString("No external links\nin this pluck") + ); } return pRet; } CPlucker_base::~CPlucker_base() { if (expandedtextbuffer != NULL) delete [] expandedtextbuffer; if (compressedtextbuffer != NULL) delete [] compressedtextbuffer; @@ -201,229 +209,229 @@ unsigned int CPlucker_base::locate() unsigned long locpos = 0; gotorecordnumber(thisrec); UInt16 thishdr_uid, thishdr_nParagraphs; UInt32 thishdr_size; UInt8 thishdr_type, thishdr_reserved; while (thisrec < bufferrec) { GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (thishdr_type < 2) locpos += thishdr_size; - thisrec++; - gotorecordnumber(thisrec); + if (thishdr_type < 2) locpos += thishdr_size; + thisrec++; + gotorecordnumber(thisrec); } return locpos+bufferpos; */ } void CPlucker_base::locate(unsigned int n) { // clock_t start = clock(); UInt32 textlength = currentpos - bufferpos; UInt16 recptr = bufferrec; if (n < textlength/2) { - textlength = 0; - UInt16 thishdr_uid, thishdr_nParagraphs; - UInt32 thishdr_size = buffercontent; - UInt8 thishdr_type, thishdr_reserved; - for (recptr = 1; recptr < ntohs(head.recordList.numRecords); recptr++) - { - gotorecordnumber(recptr); - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (thishdr_type < 2) - { - textlength += thishdr_size; - if (textlength > n) - { - textlength -= thishdr_size; - break; - } - } - } + textlength = 0; + UInt16 thishdr_uid, thishdr_nParagraphs; + UInt32 thishdr_size = buffercontent; + UInt8 thishdr_type, thishdr_reserved; + for (recptr = 1; recptr < ntohs(head.recordList.numRecords); recptr++) + { + gotorecordnumber(recptr); + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + if (thishdr_type < 2) + { + textlength += thishdr_size; + if (textlength > n) + { + textlength -= thishdr_size; + break; + } + } + } } else if (n < textlength) { - UInt16 thishdr_uid, thishdr_nParagraphs; - UInt32 thishdr_size; - UInt8 thishdr_type, thishdr_reserved; - while (n < textlength && recptr > 1) - { - recptr--; - gotorecordnumber(recptr); - //qDebug("recptr:%u", recptr); - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (thishdr_type < 2) - { - textlength -= thishdr_size; - } - } + UInt16 thishdr_uid, thishdr_nParagraphs; + UInt32 thishdr_size; + UInt8 thishdr_type, thishdr_reserved; + while (n < textlength && recptr > 1) + { + recptr--; + gotorecordnumber(recptr); + //odebug << "recptr:" << recptr << "" << oendl; + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + if (thishdr_type < 2) + { + textlength -= thishdr_size; + } + } } else { - UInt16 thishdr_uid, thishdr_nParagraphs; - UInt32 thishdr_size = buffercontent; - UInt8 thishdr_type, thishdr_reserved; - while (n > textlength + thishdr_size && recptr < ntohs(head.recordList.numRecords)-1) - { - textlength += thishdr_size; - recptr++; - gotorecordnumber(recptr); - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (!(thishdr_type < 2)) - { - thishdr_size = 0; - } - } - } -// qDebug("Time(1): %u", clock()-start); + UInt16 thishdr_uid, thishdr_nParagraphs; + UInt32 thishdr_size = buffercontent; + UInt8 thishdr_type, thishdr_reserved; + while (n > textlength + thishdr_size && recptr < ntohs(head.recordList.numRecords)-1) + { + textlength += thishdr_size; + recptr++; + gotorecordnumber(recptr); + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + if (!(thishdr_type < 2)) + { + thishdr_size = 0; + } + } + } +// odebug << "Time(1): " << clock()-start << "" << oendl; /* expand(recptr); mystyle.unset(); bufferpos = n-textlength; currentpos = n; while (bufferpos >= m_nextPara && m_nextPara >= 0) { - UInt16 attr = m_ParaAttrs[m_nextParaIndex]; - m_nextParaIndex++; - if (m_nextParaIndex == m_nParas) - { - m_nextPara = -1; - } - else - { - m_nextPara += m_ParaOffsets[m_nextParaIndex]; - } + UInt16 attr = m_ParaAttrs[m_nextParaIndex]; + m_nextParaIndex++; + if (m_nextParaIndex == m_nParas) + { + m_nextPara = -1; + } + else + { + m_nextPara += m_ParaOffsets[m_nextParaIndex]; + } } return; */ // start = clock(); UInt16 thisrec = 0; unsigned long locpos = 0; unsigned long bs = 0; UInt16 thishdr_uid, thishdr_nParagraphs; UInt32 thishdr_size; UInt8 thishdr_type, thishdr_reserved; do { - thisrec++; - locpos += bs; - gotorecordnumber(thisrec); - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (thishdr_type < 2) - { - bs = thishdr_size; - } - else - { - bs = 0; - } + thisrec++; + locpos += bs; + gotorecordnumber(thisrec); + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + if (thishdr_type < 2) + { + bs = thishdr_size; + } + else + { + bs = 0; + } } while (locpos + bs <= n); -// qDebug("Time(2): %u", clock()-start); +// odebug << "Time(2): " << clock()-start << "" << oendl; if (recptr != thisrec) { - qDebug("Disaster:recptr:%u thisrec:%u", recptr, thisrec); - UInt16 thishdr_uid, thishdr_nParagraphs; - UInt32 thishdr_size = buffercontent; - UInt8 thishdr_type, thishdr_reserved; - for (recptr = 1; recptr < ntohs(head.recordList.numRecords); recptr++) - { - gotorecordnumber(recptr); - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); -// qDebug("UID:%u Paras:%u Size:%u Type:%u Reserved:%u", thishdr_uid, thishdr_nParagraphs, thishdr_size, (unsigned int)thishdr_type, (unsigned int)thishdr_reserved); - } -// QApplication::exit ( 100 ); + odebug << "Disaster:recptr:" << recptr << " thisrec:" << thisrec << "" << oendl; + UInt16 thishdr_uid, thishdr_nParagraphs; + UInt32 thishdr_size = buffercontent; + UInt8 thishdr_type, thishdr_reserved; + for (recptr = 1; recptr < ntohs(head.recordList.numRecords); recptr++) + { + gotorecordnumber(recptr); + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); +// odebug << "UID:" << thishdr_uid << " Paras:" << thishdr_nParagraphs << " Size:" << thishdr_size << " Type:" << (unsigned int)thishdr_type << " Reserved:" << (unsigned int)thishdr_reserved << "" << oendl; + } +// QApplication::exit ( 100 ); } currentpos = locpos; expand(thisrec); while (currentpos < n && bufferpos < buffercontent) getch_base(true); /* // This is faster but the alignment attribute doesn't get set 8^( bufferpos = n-locpos; currentpos = n; while (bufferpos >= m_nextPara && m_nextPara >= 0) { - UInt16 attr = m_ParaAttrs[m_nextParaIndex]; - m_nextParaIndex++; - if (m_nextParaIndex == m_nParas) - { - m_nextPara = -1; - } - else - { - m_nextPara += m_ParaOffsets[m_nextParaIndex]; - } + UInt16 attr = m_ParaAttrs[m_nextParaIndex]; + m_nextParaIndex++; + if (m_nextParaIndex == m_nParas) + { + m_nextPara = -1; + } + else + { + m_nextPara += m_ParaOffsets[m_nextParaIndex]; + } } */ } bool CPlucker_base::expand(int thisrec) { mystyle.unset(); size_t reclen = recordlength(thisrec); gotorecordnumber(thisrec); UInt16 thishdr_uid, thishdr_nParagraphs; UInt32 thishdr_size; UInt8 thishdr_type, thishdr_reserved; while (1) { - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - //qDebug("This (%d) type is %d, uid is %u", thisrec, thishdr_type, thishdr_uid); - if (thishdr_type < 2) break; - //qDebug("Skipping paragraph of type %d", thishdr_type); - if (++thisrec >= ntohs(head.recordList.numRecords) - 1) return false; - reclen = recordlength(thisrec); - gotorecordnumber(thisrec); + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + //odebug << "This (" << thisrec << ") type is " << thishdr_type << ", uid is " << thishdr_uid << "" << oendl; + if (thishdr_type < 2) break; + //odebug << "Skipping paragraph of type " << thishdr_type << "" << oendl; + if (++thisrec >= ntohs(head.recordList.numRecords) - 1) return false; + reclen = recordlength(thisrec); + gotorecordnumber(thisrec); } m_nParas = thishdr_nParagraphs; m_bufferisreserved = (thishdr_reserved != 0); - //qDebug("It has %u paragraphs and is %u bytes", thishdr_nParagraphs, thishdr_size); + //odebug << "It has " << thishdr_nParagraphs << " paragraphs and is " << thishdr_size << " bytes" << oendl; uid = thishdr_uid; // gotorecordnumber(thisrec); // fread(expandedtextbuffer,1,10,fin); for (int i = 0; i < m_nParas; i++) { - UInt16 ubytes, attrs; - fread(&ubytes, 1, sizeof(ubytes), fin); - fread(&attrs, 1, sizeof(attrs), fin); - m_ParaOffsets[i] = ntohs(ubytes); - m_ParaAttrs[i] = ntohs(attrs); -// //qDebug("Bytes %u, Attr %x", ntohs(ubytes), ntohs(attrs)); + UInt16 ubytes, attrs; + fread(&ubytes, 1, sizeof(ubytes), fin); + fread(&attrs, 1, sizeof(attrs), fin); + m_ParaOffsets[i] = ntohs(ubytes); + m_ParaAttrs[i] = ntohs(attrs); +// //odebug << "Bytes " << ntohs(ubytes) << ", Attr " << ntohs(attrs) << "" << oendl; } if (m_nParas > 0) { - m_nextPara = m_ParaOffsets[0]; - //qDebug("First offset = %u", m_nextPara); - m_nextParaIndex = 0; + m_nextPara = m_ParaOffsets[0]; + //odebug << "First offset = " << m_nextPara << "" << oendl; + m_nextParaIndex = 0; } else { - m_nextPara = -1; + m_nextPara = -1; } reclen -= HeaderSize()+4*m_nParas; buffercontent = thishdr_size; if (thishdr_size > buffersize) { - delete [] expandedtextbuffer; - buffersize = thishdr_size; - expandedtextbuffer = new UInt8[buffersize]; + delete [] expandedtextbuffer; + buffersize = thishdr_size; + expandedtextbuffer = new UInt8[buffersize]; } Expand(reclen, thishdr_type, expandedtextbuffer, buffercontent); bufferpos = 0; bufferrec = thisrec; - //qDebug("BC:%u, HS:%u", buffercontent, thishdr_size); + //odebug << "BC:" << buffercontent << ", HS:" << thishdr_size << "" << oendl; return true; } void CPlucker_base::UnZip(UInt8* compressedbuffer, size_t reclen, UInt8* tgtbuffer, size_t bsize) { z_stream zstream; memset(&zstream,sizeof(zstream),0); zstream.next_in = compressedbuffer; @@ -431,33 +439,33 @@ void CPlucker_base::UnZip(UInt8* compressedbuffer, size_t reclen, UInt8* tgtbuff zstream.avail_out = bsize; zstream.avail_in = reclen; int keylen = 0; zstream.zalloc = Z_NULL; zstream.zfree = Z_NULL; zstream.opaque = Z_NULL; - + // printf("Initialising\n"); - + inflateInit(&zstream); int err = 0; do { if ( zstream.avail_in == 0 && 0 < keylen ) { zstream.next_in = compressedbuffer + keylen; zstream.avail_in = reclen - keylen; keylen = 0; } zstream.next_out = tgtbuffer; zstream.avail_out = bsize; err = inflate( &zstream, Z_SYNC_FLUSH ); -// //qDebug("err:%d - %u", err, zstream.avail_in); +// //odebug << "err:" << err << " - " << zstream.avail_in << "" << oendl; } while ( err == Z_OK ); inflateEnd(&zstream); } void CPlucker_base::UnDoc(UInt8* compressedbuffer, size_t reclen, UInt8* tgtbuffer, size_t bsize) { @@ -522,277 +530,277 @@ CList<Bkmk>* CPlucker_base::getbkmklist() { /* UInt16 thishdr_uid, thishdr_nParagraphs; UInt32 thishdr_size; UInt8 thishdr_type, thishdr_reserved; for (int i = 1; i < ntohs(head.recordList.numRecords); i++) { - gotorecordnumber(i); - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (thishdr_type == 8) - { - UInt16 n; - fread(&n, 1, sizeof(n), fin); - n = ntohs(n); - //qDebug("Found %u bookmarks", n); - } - //qDebug("Found:%d, %u", i , thishdr_type); + gotorecordnumber(i); + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + if (thishdr_type == 8) + { + UInt16 n; + fread(&n, 1, sizeof(n), fin); + n = ntohs(n); + //odebug << "Found " << n << " bookmarks" << oendl; + } + //odebug << "Found:" << i << ", " << thishdr_type << "" << oendl; } */ return NULL; } QImage* CPlucker_base::expandimg(UInt16 tgt, bool border) { QImage* qimage = getimg(tgt); QImage* ret; if (qimage == NULL) return NULL; if (border) { - QPixmap* image = new QPixmap(0,0); - image->convertFromImage(*qimage); - delete qimage; - QPixmap* pret = new QPixmap(image->width()+4, image->height()+4); - pret->fill(Qt::red); - bitBlt(pret, 2, 2, image, 0, 0, -1, -1);//, Qt::RasterOp::CopyROP); - delete image; - ret = new QImage(pret->convertToImage()); + QPixmap* image = new QPixmap(0,0); + image->convertFromImage(*qimage); + delete qimage; + QPixmap* pret = new QPixmap(image->width()+4, image->height()+4); + pret->fill(Qt::red); + bitBlt(pret, 2, 2, image, 0, 0, -1, -1);//, Qt::RasterOp::CopyROP); + delete image; + ret = new QImage(pret->convertToImage()); } else { - ret = qimage; + ret = qimage; } return ret; } #ifdef _BUFFERPICS #include <qmap.h> #endif QImage* CPlucker_base::getPicture(unsigned long tgt) { #ifdef _BUFFERPICS static QMap<unsigned long, QPixmap> pix; QMap<unsigned long, QPixmap>::Iterator t = pix.find(tgt); if (t == pix.end()) { - pix[tgt] = *expandimg(tgt); - return &pix[tgt]; + pix[tgt] = *expandimg(tgt); + return &pix[tgt]; } else - return &(t.data()); + return &(t.data()); #else return expandimg(tgt >> 16); #endif } #ifdef LOCALPICTURES #include <unistd.h> #include <qpe/global.h> void CPlucker_base::showimg(UInt16 tgt) { - //qDebug("Crassssssh!"); + //odebug << "Crassssssh!" << oendl; QPixmap* qimage = expandimg(tgt); m_picture->setFixedSize(qimage->size()); m_picture->setBackgroundPixmap(*qimage); delete qimage; m_viewer->show(); /* char tmp[] = "uqtreader.XXXXXX"; QImage* qimage = getimg(tgt); QPixmap* image = new QPixmap(0,0); -// //qDebug("New image"); +// //odebug << "New image" << oendl; image->convertFromImage(*qimage); delete qimage; char tmpfile[sizeof(tmp)+1]; strcpy(tmpfile,tmp); int f = mkstemp(tmpfile); close(f); - //qDebug("TMPFILE:%s", tmpfile); + //odebug << "TMPFILE:" << tmpfile << "" << oendl; if (image->save(tmpfile,"PNG")) { - QCopEnvelope e("QPE/Application/showimg", "setDocument(QString)"); - e << QString(tmpfile); + QCopEnvelope e("QPE/Application/showimg", "setDocument(QString)"); + e << QString(tmpfile); } Global::statusMessage("Opening image"); sleep(5); delete image; unlink(tmpfile); */ } #endif unsigned short CPlucker_base::finduid(unsigned short urlid) { -// //qDebug("Finding %u", urlid); +// //odebug << "Finding " << urlid << "" << oendl; unsigned short jmin = 1, jmax = ntohs(head.recordList.numRecords); unsigned short jmid = (jmin+jmax) >> 1; while (jmax - jmin > 1) { - gotorecordnumber(jmid); - UInt16 thishdr_uid, thishdr_nParagraphs; - UInt32 thishdr_size; - UInt8 thishdr_type, thishdr_reserved; - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - unsigned short luid = thishdr_uid; -// //qDebug("%u %u %u : %u", jmin, jmid, jmax, urlid); - if (luid == urlid) - { - return jmid; - } - if (luid < urlid) - { - jmin = jmid; - } - else - { - jmax = jmid; - } - jmid = (jmin+jmax) >> 1; + gotorecordnumber(jmid); + UInt16 thishdr_uid, thishdr_nParagraphs; + UInt32 thishdr_size; + UInt8 thishdr_type, thishdr_reserved; + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + unsigned short luid = thishdr_uid; +// //odebug << "" << jmin << " " << jmid << " " << jmax << " : " << urlid << "" << oendl; + if (luid == urlid) + { + return jmid; + } + if (luid < urlid) + { + jmin = jmid; + } + else + { + jmax = jmid; + } + jmid = (jmin+jmax) >> 1; } gotorecordnumber(jmin); UInt16 thishdr_uid, thishdr_nParagraphs; UInt32 thishdr_size; UInt8 thishdr_type, thishdr_reserved; GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); unsigned short luid = thishdr_uid; - //qDebug("jmin at end:%u,%u", jmin, luid); + //odebug << "jmin at end:" << jmin << "," << luid << "" << oendl; if (luid == urlid) { - return jmin; + return jmin; } gotorecordnumber(jmax); GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); luid = thishdr_uid; - //qDebug("jmax at end:%u,%u", jmax, luid); + //odebug << "jmax at end:" << jmax << "," << luid << "" << oendl; if (luid == urlid) { - return jmax; + return jmax; } - //qDebug("Couldn't find %u", urlid); + //odebug << "Couldn't find " << urlid << "" << oendl; return 0; // Not found! } void CPlucker_base::setSaveData(unsigned char*& data, unsigned short& len, unsigned char* src, unsigned short srclen) { unsigned short sz = 0; for (CList<unsigned long>::iterator it = visited.begin(); it != visited.end(); it++) { - sz++; + sz++; } size_t newlen = srclen+sizeof(sz)+sz*sizeof(unsigned long); unsigned char* newdata = new unsigned char[newlen]; unsigned char* pdata = newdata; memcpy(newdata, src, srclen); newdata += srclen; memcpy(newdata, &sz, sizeof(sz)); newdata += sizeof(sz); #ifdef _WINDOWS for (it = visited.begin(); it != visited.end(); it++) #else for (CList<unsigned long>::iterator it = visited.begin(); it != visited.end(); it++) #endif { - unsigned long t = *it; -// qDebug("[%u]", t); - memcpy(newdata, &t, sizeof(t)); - newdata += sizeof(t); + unsigned long t = *it; +// odebug << "[" << t << "]" << oendl; + memcpy(newdata, &t, sizeof(t)); + newdata += sizeof(t); } m_nav.setSaveData(data, len, pdata, newlen); delete [] pdata; } void CPlucker_base::putSaveData(unsigned char*& src, unsigned short& srclen) { unsigned short sz; if (srclen >= sizeof(sz)) { - memcpy(&sz, src, sizeof(sz)); - src += sizeof(sz); - srclen -= sizeof(sz); + memcpy(&sz, src, sizeof(sz)); + src += sizeof(sz); + srclen -= sizeof(sz); } for (int i = 0; i < sz; i++) { - unsigned long t; - if (srclen >= sizeof(t)) - { - memcpy(&t, src, sizeof(t)); -// qDebug("[%u]", t); - visited.push_front(t); - src += sizeof(t); - srclen -= sizeof(t); - } - else - { - QMessageBox::warning(NULL, PROGNAME, "File data mismatch\nMight fix itself"); - break; - } + unsigned long t; + if (srclen >= sizeof(t)) + { + memcpy(&t, src, sizeof(t)); +// odebug << "[" << t << "]" << oendl; + visited.push_front(t); + src += sizeof(t); + srclen -= sizeof(t); + } + else + { + QMessageBox::warning(NULL, PROGNAME, "File data mismatch\nMight fix itself"); + break; + } } m_nav.putSaveData(src, srclen); } int CPlucker_base::OpenFile(const char *src) { m_lastBreak = 0; if (!Cpdb::openfile(src)) { - return -1; + return -1; } if (!CorrectDecoder()) return -1; gotorecordnumber(0); fread(&hdr0, 1, 6, fin); setbuffersize(); compressedtextbuffer = new UInt8[compressedbuffersize]; expandedtextbuffer = new UInt8[buffersize]; - //qDebug("Total number of records:%u", ntohs(head.recordList.numRecords)); - + //odebug << "Total number of records:" << ntohs(head.recordList.numRecords) << "" << oendl; + unsigned int nrecs = ntohs(hdr0.nRecords); - //qDebug("Version %u, no. recs %u", ntohs(hdr0.version), nrecs); + //odebug << "Version " << ntohs(hdr0.version) << ", no. recs " << nrecs << "" << oendl; UInt16 homerecid = 1; for (unsigned int i = 0; i < nrecs; i++) { - UInt16 id, name; - fread(&name, 1, sizeof(name), fin); - fread(&id, 1, sizeof(id), fin); - //qDebug("N:%d, I:%d", ntohs(name), ntohs(id)); - if (ntohs(name) == 0) homerecid = ntohs(id); + UInt16 id, name; + fread(&name, 1, sizeof(name), fin); + fread(&id, 1, sizeof(id), fin); + //odebug << "N:" << ntohs(name) << ", I:" << ntohs(id) << "" << oendl; + if (ntohs(name) == 0) homerecid = ntohs(id); } textlength = 0; for (int recptr = 1; recptr < ntohs(head.recordList.numRecords); recptr++) { - gotorecordnumber(recptr); - UInt16 thishdr_uid, thishdr_nParagraphs; - UInt32 thishdr_size; - UInt8 thishdr_type, thishdr_reserved; - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (thishdr_uid == homerecid) - { - m_homepos = textlength; - break; - } - if (thishdr_type < 2) textlength += thishdr_size; + gotorecordnumber(recptr); + UInt16 thishdr_uid, thishdr_nParagraphs; + UInt32 thishdr_size; + UInt8 thishdr_type, thishdr_reserved; + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + if (thishdr_uid == homerecid) + { + m_homepos = textlength; + break; + } + if (thishdr_type < 2) textlength += thishdr_size; } textlength = 0; home(); #ifdef LOCALPICTURES if (m_viewer == NULL) { - m_viewer = new QScrollView(NULL); - m_picture = new QWidget(m_viewer->viewport()); - m_viewer->addChild(m_picture); + m_viewer = new QScrollView(NULL); + m_picture = new QWidget(m_viewer->viewport()); + m_viewer->addChild(m_picture); } #endif return 0; } QImage* CPlucker_base::getimg(UInt16 tgt) { @@ -803,433 +811,433 @@ QImage* CPlucker_base::getimg(UInt16 tgt) UInt16 thishdr_uid, thishdr_nParagraphs; UInt32 thishdr_size; UInt8 thishdr_type, thishdr_reserved; GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); reclen -= HeaderSize(); UInt32 imgsize = thishdr_size; UInt8* imgbuffer = new UInt8[imgsize]; - + Expand(reclen, thishdr_type, imgbuffer, imgsize); return imagefromdata(imgbuffer, imgsize); } linkType CPlucker_base::hyperlink(unsigned int n, QString& wrd) { visited.push_front(n); UInt16 tuid = (n >> 16); n &= 0xffff; -// //qDebug("Hyper:<%u,%u>", tuid, n); +// //odebug << "Hyper:<" << tuid << "," << n << ">" << oendl; UInt16 thisrec = 1; currentpos = 0; gotorecordnumber(thisrec); UInt16 thishdr_uid, thishdr_nParagraphs; UInt32 thishdr_size; UInt8 thishdr_type, thishdr_reserved; while (1) { - GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); - if (tuid == thishdr_uid) break; - if (thishdr_type < 2) currentpos += thishdr_size; -// //qDebug("hyper-cp:%u", currentpos); - thisrec++; - if (thisrec >= ntohs(head.recordList.numRecords)) - { - char *turl = geturl(tuid); - if (turl == NULL) - { - QMessageBox::information(NULL, - QString(PROGNAME), - QString("Couldn't find link") - ); - } - else - { - wrd = turl; + GetHeader(thishdr_uid, thishdr_nParagraphs, thishdr_size, thishdr_type, thishdr_reserved); + if (tuid == thishdr_uid) break; + if (thishdr_type < 2) currentpos += thishdr_size; +// //odebug << "hyper-cp:" << currentpos << "" << oendl; + thisrec++; + if (thisrec >= ntohs(head.recordList.numRecords)) + { + char *turl = geturl(tuid); + if (turl == NULL) + { + QMessageBox::information(NULL, + QString(PROGNAME), + QString("Couldn't find link") + ); + } + else + { + wrd = turl; #ifdef USEQPE - if (wrd.length() > 10) - { - Global::statusMessage(wrd.left(8) + ".."); - } - else - { - Global::statusMessage(wrd); - } + if (wrd.length() > 10) + { + Global::statusMessage(wrd.left(8) + ".."); + } + else + { + Global::statusMessage(wrd); + } #else #endif /* USEQPE */ - //qDebug("Link:%s", (const char*)wrd); -// setlink(fn, wrd); - delete [] turl; - } - return eNone; - } - gotorecordnumber(thisrec); + //odebug << "Link:" << wrd << "" << oendl; +// setlink(fn, wrd); + delete [] turl; + } + return eNone; + } + gotorecordnumber(thisrec); } if (thishdr_type > 1) { - if (thishdr_type == 4) - { - QMessageBox::information(NULL, - QString(PROGNAME), - QString("Mailto links\nnot yet supported (2)")); - } - else - { - if (thishdr_type > 3) - { - QMessageBox::information(NULL, - QString(PROGNAME), - QString("External links\nnot yet supported (2)") - ); - return eNone; - } - else - { + if (thishdr_type == 4) + { + QMessageBox::information(NULL, + QString(PROGNAME), + QString("Mailto links\nnot yet supported (2)")); + } + else + { + if (thishdr_type > 3) + { + QMessageBox::information(NULL, + QString(PROGNAME), + QString("External links\nnot yet supported (2)") + ); + return eNone; + } + else + { #ifdef LOCALPICTURES - showimg(tuid); + showimg(tuid); #else - return ePicture; + return ePicture; #endif - } - } - return eNone; + } + } + return eNone; } /* if (thishdr_type == 2 || thishdr_type == 3) { - expandimg(thisrec); + expandimg(thisrec); } */ else { - expand(thisrec); - if (n != 0) - { - if (n >= m_nParas) - { - QMessageBox::information(NULL, - QString(PROGNAME), - QString("Error in link\nPara # too big") - ); - return eNone; - } - unsigned int noff = 0; - for (unsigned int i = 0; i < n; i++) noff += m_ParaOffsets[i]; - n = noff; - } - if (n > thishdr_size) - { - QMessageBox::information(NULL, - QString(PROGNAME), - QString("Error in link\nOffset too big") - ); - return eNone; - } - //qDebug("Hyper:<%u,%u>", tuid, n); - while (bufferpos < n && bufferpos < buffercontent) getch_base(true); + expand(thisrec); + if (n != 0) + { + if (n >= m_nParas) + { + QMessageBox::information(NULL, + QString(PROGNAME), + QString("Error in link\nPara # too big") + ); + return eNone; + } + unsigned int noff = 0; + for (unsigned int i = 0; i < n; i++) noff += m_ParaOffsets[i]; + n = noff; + } + if (n > thishdr_size) + { + QMessageBox::information(NULL, + QString(PROGNAME), + QString("Error in link\nOffset too big") + ); + return eNone; + } + //odebug << "Hyper:<" << tuid << "," << n << ">" << oendl; + while (bufferpos < n && bufferpos < buffercontent) getch_base(true); /* // This is faster but the alignment doesn't get set - mystyle.unset(); - bufferpos = n; - currentpos += n; - while (bufferpos >= m_nextPara && m_nextPara >= 0) - { - UInt16 attr = m_ParaAttrs[m_nextParaIndex]; - m_nextParaIndex++; - if (m_nextParaIndex == m_nParas) - { - m_nextPara = -1; - } - else - { - m_nextPara += m_ParaOffsets[m_nextParaIndex]; - } - } + mystyle.unset(); + bufferpos = n; + currentpos += n; + while (bufferpos >= m_nextPara && m_nextPara >= 0) + { + UInt16 attr = m_ParaAttrs[m_nextParaIndex]; + m_nextParaIndex++; + if (m_nextParaIndex == m_nParas) + { + m_nextPara = -1; + } + else + { + m_nextPara += m_ParaOffsets[m_nextParaIndex]; + } + } */ } return eLink; } tchar CPlucker_base::getch_base(bool fast) { int ch = bgetch(); while (ch == 0) { - ch = bgetch(); -// //qDebug("Function:%x", ch); - switch (ch) - { - case 0x38: -// //qDebug("Break:%u", locate()); - if (m_lastBreak == locate()) - { - ch = bgetch(); - } - else - { - ch = 10; - } - m_lastBreak = locate(); - break; - case 0x0a: - case 0x0c: - { - unsigned long ln = 0; - int skip = ch & 7; - for (int i = 0; i < 2; i++) - { - int ch = bgetch(); - ln = (ln << 8) + ch; -// //qDebug("ch:%d, ln:%u", ch, ln); - } - if (skip == 2) - { - ln <<= 16; - } - else - { - for (int i = 0; i < 2; i++) - { - int ch = bgetch(); - ln = (ln << 8) + ch; -// //qDebug("ch:%d, ln:%u", ch, ln); - } - } -// //qDebug("ln:%u", ln); - mystyle.setLink(true); - mystyle.setData(ln); -// mystyle.setColour(255, 0, 0); - bool hasseen = false; - for (CList<unsigned long>::iterator it = visited.begin(); it != visited.end(); it++) - { - if (*it == ln) - { - hasseen = true; - break; - } - } - if (hasseen) - { - mystyle.setStrikethru(); - } - else - { - mystyle.setUnderline(); - } - ch = bgetch(); - } - break; - case 0x08: - ch = bgetch(); -// mystyle.setColour(0, 0, 0); - mystyle.unsetUnderline(); - mystyle.unsetStrikethru(); - mystyle.setLink(false); - mystyle.setData(0); - break; - case 0x40: - mystyle.setItalic(); - ch = bgetch(); - break; - case 0x48: - mystyle.unsetItalic(); - ch = bgetch(); - break; - case 0x11: - { - ch = bgetch(); -// //qDebug("Font:%d",ch); - mystyle.setVOffset(0); - mystyle.unsetMono(); - mystyle.unsetBold(); - mystyle.setFontSize(0); - switch (ch) - { - case 0: - break; - case 1: - mystyle.setBold(); - mystyle.setFontSize(3); - break; - case 2: - mystyle.setBold(); - mystyle.setFontSize(2); - break; - case 3: - mystyle.setBold(); - mystyle.setFontSize(1); - break; - case 4: - mystyle.setBold(); - break; - case 5: - mystyle.setBold(); - break; - case 6: - mystyle.setBold(); - break; - case 7: - mystyle.setBold(); - break; - case 8: // should be fixed width - //qDebug("Trying fixed width"); - mystyle.setMono(); - break; - case 9: - mystyle.setFontSize(-1); - break; - case 10: - mystyle.setFontSize(-2); - mystyle.setVOffset(1); - break; - case 11: - mystyle.setFontSize(-2); - mystyle.setVOffset(-1); - break; - default: - qDebug("Unrecognised font"); - break; - } - ch = bgetch(); - } - break; - case 0x29: - ch = bgetch(); - switch (ch) - { - case 0: - mystyle.setLeftJustify(); -// //qDebug("left"); - break; - case 1: - mystyle.setRightJustify(); -// //qDebug("right"); - break; - case 2: - mystyle.setCentreJustify(); -// //qDebug("centre"); - break; - case 3: - mystyle.setFullJustify(); -// //qDebug("full"); - break; - - } - ch = bgetch(); - break; - case 0x53: - { - int r = bgetch(); - int g = bgetch(); - int b = bgetch(); - mystyle.setColour(r,g,b); - ch = bgetch(); - } - break; - case 0x1a: - case 0x5c: - { - bool hasalternate = (ch == 0x5c); - UInt16 ir = bgetch(); - ir = (ir << 8) + bgetch(); - if (hasalternate) - { - //qDebug("Alternate image:%x", ir); - UInt16 ir2 = bgetch(); - ir2 = (ir2 << 8) + bgetch(); - if (!fast) mystyle.setPicture(true, expandimg(ir2, true), true, ir << 16); + ch = bgetch(); +// //odebug << "Function:" << ch << "" << oendl; + switch (ch) + { + case 0x38: +// //odebug << "Break:" << locate() << "" << oendl; + if (m_lastBreak == locate()) + { + ch = bgetch(); + } + else + { + ch = 10; + } + m_lastBreak = locate(); + break; + case 0x0a: + case 0x0c: + { + unsigned long ln = 0; + int skip = ch & 7; + for (int i = 0; i < 2; i++) + { + int ch = bgetch(); + ln = (ln << 8) + ch; +// //odebug << "ch:" << ch << ", ln:" << ln << "" << oendl; + } + if (skip == 2) + { + ln <<= 16; + } + else + { + for (int i = 0; i < 2; i++) + { + int ch = bgetch(); + ln = (ln << 8) + ch; +// //odebug << "ch:" << ch << ", ln:" << ln << "" << oendl; + } + } +// //odebug << "ln:" << ln << "" << oendl; + mystyle.setLink(true); + mystyle.setData(ln); +// mystyle.setColour(255, 0, 0); + bool hasseen = false; + for (CList<unsigned long>::iterator it = visited.begin(); it != visited.end(); it++) + { + if (*it == ln) + { + hasseen = true; + break; + } + } + if (hasseen) + { + mystyle.setStrikethru(); + } + else + { + mystyle.setUnderline(); + } + ch = bgetch(); + } + break; + case 0x08: + ch = bgetch(); +// mystyle.setColour(0, 0, 0); + mystyle.unsetUnderline(); + mystyle.unsetStrikethru(); + mystyle.setLink(false); + mystyle.setData(0); + break; + case 0x40: + mystyle.setItalic(); + ch = bgetch(); + break; + case 0x48: + mystyle.unsetItalic(); + ch = bgetch(); + break; + case 0x11: + { + ch = bgetch(); +// //odebug << "Font:" << ch << "" << oendl; + mystyle.setVOffset(0); + mystyle.unsetMono(); + mystyle.unsetBold(); + mystyle.setFontSize(0); + switch (ch) + { + case 0: + break; + case 1: + mystyle.setBold(); + mystyle.setFontSize(3); + break; + case 2: + mystyle.setBold(); + mystyle.setFontSize(2); + break; + case 3: + mystyle.setBold(); + mystyle.setFontSize(1); + break; + case 4: + mystyle.setBold(); + break; + case 5: + mystyle.setBold(); + break; + case 6: + mystyle.setBold(); + break; + case 7: + mystyle.setBold(); + break; + case 8: // should be fixed width + //odebug << "Trying fixed width" << oendl; + mystyle.setMono(); + break; + case 9: + mystyle.setFontSize(-1); + break; + case 10: + mystyle.setFontSize(-2); + mystyle.setVOffset(1); + break; + case 11: + mystyle.setFontSize(-2); + mystyle.setVOffset(-1); + break; + default: + odebug << "Unrecognised font" << oendl; + break; + } + ch = bgetch(); + } + break; + case 0x29: + ch = bgetch(); + switch (ch) + { + case 0: + mystyle.setLeftJustify(); +// //odebug << "left" << oendl; + break; + case 1: + mystyle.setRightJustify(); +// //odebug << "right" << oendl; + break; + case 2: + mystyle.setCentreJustify(); +// //odebug << "centre" << oendl; + break; + case 3: + mystyle.setFullJustify(); +// //odebug << "full" << oendl; + break; + + } + ch = bgetch(); + break; + case 0x53: + { + int r = bgetch(); + int g = bgetch(); + int b = bgetch(); + mystyle.setColour(r,g,b); + ch = bgetch(); + } + break; + case 0x1a: + case 0x5c: + { + bool hasalternate = (ch == 0x5c); + UInt16 ir = bgetch(); + ir = (ir << 8) + bgetch(); + if (hasalternate) + { + //odebug << "Alternate image:" << ir << "" << oendl; + UInt16 ir2 = bgetch(); + ir2 = (ir2 << 8) + bgetch(); + if (!fast) mystyle.setPicture(true, expandimg(ir2, true), true, ir << 16); #ifdef LOCALPICTURES - UInt32 ln = ir; - ln <<= 16; - mystyle.setLink(true); - mystyle.setData(ln); + UInt32 ln = ir; + ln <<= 16; + mystyle.setLink(true); + mystyle.setData(ln); #endif - } - else - { - if (!fast) mystyle.setPicture(true, expandimg(ir)); - } -// if (mystyle.getLink()) qDebug("Picture link!"); - ch = '#'; - } -// ch = bgetch(); - break; - case 0x33: - { - UInt8 h = bgetch(); - UInt8 wc = bgetch(); - UInt8 pc = bgetch(); - UInt16 w = wc; -// //qDebug("h,w,pc [%u, %u, %u]", h, w, pc); - if (w == 0) - { - w = (m_scrWidth*(unsigned long)pc)/100; - } - if (w == 0) w = m_scrWidth; - mystyle.setPicture(false, hRule(w,h,mystyle.Red(),mystyle.Green(),mystyle.Blue())); -// if (mystyle.getLink()) //qDebug("hRule link!"); - ch = '#'; - } - break; - case 0x60: - mystyle.setUnderline(); - ch = bgetch(); - break; - case 0x68: - mystyle.unsetUnderline(); - ch = bgetch(); - break; - case 0x22: - ch = bgetch(); - mystyle.setLeftMargin(ch); -// //qDebug("Left margin:%d", ch); - ch = bgetch(); - mystyle.setRightMargin(ch); -// //qDebug("Right margin:%d", ch); - ch = bgetch(); - break; - case 0x70: - mystyle.setStrikethru(); - ch = bgetch(); - break; - case 0x78: - mystyle.unsetStrikethru(); - ch = bgetch(); - break; - case 0x83: - { - int tlen = bgetch(); - ch = bgetch(); - ch <<= 8; - ch |= (tchar)bgetch(); - for (int i = 0; i < tlen; i++) bgetch(); - //qDebug("Function 83"); - } - break; - case 0x85: - default: - qDebug("Function:%x NOT IMPLEMENTED", ch); - { - int skip = ch & 7; - for (int i = 0; i < skip; i++) - { - ch = bgetch(); - //qDebug("Arg %d, %d", i, ch); - } - ch = bgetch(); - } - } + } + else + { + if (!fast) mystyle.setPicture(true, expandimg(ir)); + } +// if (mystyle.getLink()) odebug << "Picture link!" << oendl; + ch = '#'; + } +// ch = bgetch(); + break; + case 0x33: + { + UInt8 h = bgetch(); + UInt8 wc = bgetch(); + UInt8 pc = bgetch(); + UInt16 w = wc; +// //odebug << "h,w,pc [" << h << ", " << w << ", " << pc << "]" << oendl; + if (w == 0) + { + w = (m_scrWidth*(unsigned long)pc)/100; + } + if (w == 0) w = m_scrWidth; + mystyle.setPicture(false, hRule(w,h,mystyle.Red(),mystyle.Green(),mystyle.Blue())); +// if (mystyle.getLink()) //odebug << "hRule link!" << oendl; + ch = '#'; + } + break; + case 0x60: + mystyle.setUnderline(); + ch = bgetch(); + break; + case 0x68: + mystyle.unsetUnderline(); + ch = bgetch(); + break; + case 0x22: + ch = bgetch(); + mystyle.setLeftMargin(ch); +// //odebug << "Left margin:" << ch << "" << oendl; + ch = bgetch(); + mystyle.setRightMargin(ch); +// //odebug << "Right margin:" << ch << "" << oendl; + ch = bgetch(); + break; + case 0x70: + mystyle.setStrikethru(); + ch = bgetch(); + break; + case 0x78: + mystyle.unsetStrikethru(); + ch = bgetch(); + break; + case 0x83: + { + int tlen = bgetch(); + ch = bgetch(); + ch <<= 8; + ch |= (tchar)bgetch(); + for (int i = 0; i < tlen; i++) bgetch(); + //odebug << "Function 83" << oendl; + } + break; + case 0x85: + default: + odebug << "Function:" << ch << " NOT IMPLEMENTED" << oendl; + { + int skip = ch & 7; + for (int i = 0; i < skip; i++) + { + ch = bgetch(); + //odebug << "Arg " << i << ", " << ch << "" << oendl; + } + ch = bgetch(); + } + } } if (m_lastIsBreak && !mystyle.isMono()) { - while (ch == ' ') - { - ch = getch(false); - } + while (ch == ' ') + { + ch = getch(false); + } } m_lastIsBreak = (ch == 10); return (ch == EOF) ? UEOF : ch; } diff --git a/noncore/apps/tinykate/libkate/document/katebuffer.cpp b/noncore/apps/tinykate/libkate/document/katebuffer.cpp index 22a4917..4c15fd0 100644 --- a/noncore/apps/tinykate/libkate/document/katebuffer.cpp +++ b/noncore/apps/tinykate/libkate/document/katebuffer.cpp @@ -17,34 +17,35 @@ You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "katebuffer.h" +#include "kdebug.h" -// Includes for reading file -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <errno.h> -#include <unistd.h> +/* OPIE */ +#include <opie2/odebug.h> +/* QT */ #include <qfile.h> #include <qtextstream.h> - #include <qtimer.h> #include <qtextcodec.h> -// - +/* STD */ +// Includes for reading file +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> +#include <errno.h> +#include <unistd.h> #include <assert.h> -#include <kdebug.h> /** * Create an empty buffer. */ KWBuffer::KWBuffer() { clear(); } @@ -60,45 +61,45 @@ KWBuffer::clear() } /** * Insert a file at line @p line in the buffer. */ void KWBuffer::insertFile(int line, const QString &file, QTextCodec *codec) { - if (line) { - qDebug("insert File only supports insertion at line 0 == file opening"); - return; - } - clear(); - QFile iofile(file); - iofile.open(IO_ReadOnly); - QTextStream stream(&iofile); - stream.setCodec(codec); - QString qsl; - int count=0; - for (count=0;((qsl=stream.readLine())!=QString::null); count++) - { - if (count==0) - { - (*m_stringListIt)->append(qsl.unicode(),qsl.length()); - } - else - { - TextLine::Ptr tl=new TextLine(); - tl ->append(qsl.unicode(),qsl.length()); - m_stringListIt=m_stringList.append(tl); - } - } - if (count!=0) - { - m_stringListCurrent=count-1; - m_lineCount=count; - } + if (line) { + odebug << "insert File only supports insertion at line 0 == file opening" << oendl; + return; + } + clear(); + QFile iofile(file); + iofile.open(IO_ReadOnly); + QTextStream stream(&iofile); + stream.setCodec(codec); + QString qsl; + int count=0; + for (count=0;((qsl=stream.readLine())!=QString::null); count++) + { + if (count==0) + { + (*m_stringListIt)->append(qsl.unicode(),qsl.length()); + } + else + { + TextLine::Ptr tl=new TextLine(); + tl ->append(qsl.unicode(),qsl.length()); + m_stringListIt=m_stringList.append(tl); + } + } + if (count!=0) + { + m_stringListCurrent=count-1; + m_lineCount=count; + } } void KWBuffer::loadFilePart() { } @@ -116,19 +117,19 @@ KWBuffer::slotLoadFile() } /** * Return the total number of lines in the buffer. */ int KWBuffer::count() { - qDebug("m_stringList.count %d",m_stringList.count()); + odebug << "m_stringList.count " << m_stringList.count() << "" << oendl; return m_lineCount; -// return m_stringList.count(); +// return m_stringList.count(); // return m_totalLines; } void KWBuffer::seek(int i) { if (m_stringListCurrent == i) return; @@ -143,19 +144,19 @@ void KWBuffer::seek(int i) --m_stringListIt; } } TextLine::Ptr KWBuffer::line(int i) { - if (i>=m_stringList.count()) return 0; - seek(i); - return *m_stringListIt; + if (i>=m_stringList.count()) return 0; + seek(i); + return *m_stringListIt; } void KWBuffer::insertLine(int i, TextLine::Ptr line) { seek(i); m_stringListIt = m_stringList.insert(m_stringListIt, line); m_stringListCurrent = i; diff --git a/noncore/apps/tinykate/libkate/document/katedocument.cpp b/noncore/apps/tinykate/libkate/document/katedocument.cpp index 0c742d7..6dc4fd2 100644 --- a/noncore/apps/tinykate/libkate/document/katedocument.cpp +++ b/noncore/apps/tinykate/libkate/document/katedocument.cpp @@ -1,17 +1,17 @@ /*************************************************************************** katedocument.cpp - description ------------------- begin : Mon Jan 15 2001 copyright : (C) 2001 by Christoph "Crossfire" Cullmann (C) 2002 by Joseph Wenninger email : crossfire@babylon2k.de jowenn@kde.org - + ***************************************************************************/ /*************************************************************************** * * * 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. * @@ -34,54 +34,55 @@ You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "katedocument.h" +#include "kmessagebox.h" +#include "kglobal.h" +//#include "kcharsets.h" +#include "kdebug.h" +//#include "kinstance.h" -#include <qfileinfo.h> -#include <qdatetime.h> +#include "kglobalsettings.h" +//#include "kaction.h" +//#include "kstdaction.h" -#include <kmessagebox.h> -#include <qpe/config.h> -#include <qstring.h> +#include "../view/kateview.h" +#include "katebuffer.h" +#include "katetextline.h" -#include <sys/time.h> -#include <unistd.h> +#include "katecmd.h" -#include <stdio.h> +/* OPIE */ +#include <opie2/odebug.h> +#include <qpe/config.h> +/* QT */ +#include <qfileinfo.h> +#include <qdatetime.h> +#include <qstring.h> #include <qtimer.h> #include <qobject.h> #include <qapplication.h> #include <qclipboard.h> #include <qfont.h> #include <qpainter.h> #include <qfile.h> #include <qtextstream.h> #include <qtextcodec.h> -#include <kglobal.h> -//#include <kcharsets.h> -#include <kdebug.h> -//#include <kinstance.h> - -#include <kglobalsettings.h> -//#include <kaction.h> -//#include <kstdaction.h> - -#include "../view/kateview.h" -#include "katebuffer.h" -#include "katetextline.h" - -#include "katecmd.h" +/* STD */ +#include <sys/time.h> +#include <unistd.h> +#include <stdio.h> KateAction::KateAction(Action a, PointStruc &cursor, int len, const QString &text) : action(a), cursor(cursor), len(len), text(text) { } KateActionGroup::KateActionGroup(PointStruc &aStart, int type) : start(aStart), action(0L), undoType(type) { } @@ -125,39 +126,39 @@ const char * KateActionGroup::typeName(int type) const int KateDocument::maxAttribs = 32; QStringList KateDocument::searchForList = QStringList(); QStringList KateDocument::replaceWithList = QStringList(); uint KateDocument::uniqueID = 0; -QPtrDict<KateDocument::KateDocPrivate>* KateDocument::d_ptr = 0; +QPtrDict<KateDocument::KateDocPrivate>* KateDocument::d_ptr = 0; KateDocument::KateDocument(bool bSingleViewMode, bool bBrowserView, QWidget *parentWidget, const char *widgetName, QObject *, const char *) : Kate::Document (), myFont(KGlobalSettings::generalFont()), myFontBold(KGlobalSettings::generalFont()), myFontItalic(KGlobalSettings::generalFont()), myFontBI(KGlobalSettings::generalFont()), myFontMetrics (myFont), myFontMetricsBold (myFontBold), myFontMetricsItalic (myFontItalic), myFontMetricsBI (myFontBI), hlManager(HlManager::self ()) { - - d(this)->hlSetByUser = false; + + d(this)->hlSetByUser = false; PreHighlightedTill=0; RequestPreHighlightTill=0; m_bSingleViewMode=bSingleViewMode; m_bBrowserView = bBrowserView; m_url = QString::null; // NOTE: QFont::CharSet doesn't provide all the charsets KDE supports - // (esp. it doesn't distinguish between UTF-8 and iso10646-1) + // (esp. it doesn't distinguish between UTF-8 and iso10646-1) myEncoding = QString::fromLatin1(QTextCodec::codecForLocale()->name()); maxLength = -1; setFont (KGlobalSettings::generalFont()); myDocID = uniqueID; @@ -287,52 +288,52 @@ KateDocument::~KateDocument() m_views.setAutoDelete( false ); } delete_d(this); } void KateDocument::openURL(const QString &filename) { - m_file=filename; + m_file=filename; fileInfo->setFile (m_file); setMTime(); if (!fileInfo->exists() || !fileInfo->isReadable()) { - qDebug("File doesn't exit or couldn't be read"); + odebug << "File doesn't exit or couldn't be read" << oendl; return ; } buffer->clear(); #warning fixme // buffer->insertFile(0, m_file, KGlobal::charsets()->codecForName(myEncoding)); - qDebug("Telling buffer to open file"); + odebug << "Telling buffer to open file" << oendl; buffer->insertFile(0, m_file, QTextCodec::codecForLocale()); setMTime(); if (myWordWrap) wrapText (myWordWrapAt); int hl = hlManager->wildcardFind( m_file ); setHighlight(hl); updateLines(); updateViews(); emit fileNameChanged(); - + return ; } bool KateDocument::saveFile() { - + QFile f( m_file ); if ( !f.open( IO_WriteOnly ) ) return false; // Error QTextStream stream(&f); stream.setEncoding(QTextStream::RawUnicode); // disable Unicode headers #warning fixme @@ -606,17 +607,17 @@ void KateDocument::readConfig() setTabWidth(config->readNumEntry("TabWidth", 8)); setUndoSteps(config->readNumEntry("UndoSteps", 50)); m_singleSelection = config->readBoolEntry("SingleSelection", false); myEncoding = config->readEntry("Encoding", QString::fromLatin1(QTextCodec::codecForLocale()->name())); setFont (config->readFontEntry("Font", myFont)); colors[0] = config->readColorEntry("Color Background", colors[0]); colors[1] = config->readColorEntry("Color Selected", colors[1]); - + // config->sync(); } void KateDocument::writeConfig() { KateConfig *config = KGlobal::config(); config->setGroup("Kate Document"); config->writeEntry("Word Wrap On", myWordWrap); @@ -678,17 +679,17 @@ void KateDocument::setHighlight(int n) { makeAttribs(); } PreHighlightedTill=0; RequestPreHighlightTill=0; emit(highlightChanged()); } void KateDocument::makeAttribs() { - qDebug("KateDocument::makeAttribs()"); + odebug << "KateDocument::makeAttribs()" << oendl; m_numAttribs = hlManager->makeAttribs(m_highlight, m_attribs, maxAttribs); updateFontData(); updateLines(); } void KateDocument::updateFontData() { int maxAscent, maxDescent; int tabWidth; @@ -1918,18 +1919,18 @@ void KateDocument::updateLines(int startLine, int endLine, int flags, int cursor // kdDebug(13020)<<QString("**************Working on line: %1").arg(line)<<endl; textLine = getTextLine(line); if (textLine==0) kdDebug(13020)<<"****updateLines()>> error textLine==0"<<endl; if (line <= endLine && line != cursorY) { if (flags & KateView::cfRemoveSpaces) textLine->removeSpaces(); updateMaxLength(textLine); } endCtx = textLine->getContext(); -// qDebug("DOHIGHLIGHT"); - +// odebug << "DOHIGHLIGHT" << oendl; + ctxNum = m_highlight->doHighlight(ctxNum,textLine); textLine->setContext(ctxNum); line++; } while ((buffer->line(line)!=0) && (line <= endLine || endCtx != ctxNum)); // kdDebug(13020)<<"updateLines :: while loop left"<<endl; tagLines(startLine, line - 1); } diff --git a/noncore/apps/tinykate/libkate/document/katehighlight.cpp b/noncore/apps/tinykate/libkate/document/katehighlight.cpp index 0d2c283..539d356 100644 --- a/noncore/apps/tinykate/libkate/document/katehighlight.cpp +++ b/noncore/apps/tinykate/libkate/document/katehighlight.cpp @@ -1,49 +1,53 @@ /* Copyright (C) 1998, 1999 Jochen Wilhelmy digisnap@cs.tu-berlin.de - (C) 2002, 2001 The Kate Team <kwrite-devel@kde.org> - (C) 2002 Joseph Wenninger <jowenn@kde.org> + (C) 2002, 2001 The Kate Team <kwrite-devel@kde.org> + (C) 2002 Joseph Wenninger <jowenn@kde.org> This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include <string.h> - -#include <qtextstream.h> -#include <qpe/config.h> -#include <kglobal.h> -//#include <kinstance.h> -//#include <kmimemagic.h> -#include <klocale.h> -//#include <kregexp.h> -#include <kglobalsettings.h> -#include <kdebug.h> -#include <kstddirs.h> - #include "katehighlight.h" - - #include "katetextline.h" #include "katedocument.h" #include "katesyntaxdocument.h" +#include "kglobal.h" +//#include "kinstance.h" +//#include "kmimemagic.h" +#include "klocale.h" +//#include "kregexp.h" +#include "kglobalsettings.h" +#include "kdebug.h" +#include "kstddirs.h" + +/* OPIE */ +#include <opie2/odebug.h> +#include <qpe/config.h> + +/* QT */ +#include <qtextstream.h> + +/* STD */ +#include <string.h> + HlManager *HlManager::s_pSelf = 0; enum Item_styles { dsNormal,dsKeyword,dsDataType,dsDecVal,dsBaseN,dsFloat,dsChar,dsString,dsComment,dsOthers}; static bool trueBool = true; static QString stdDeliminator = QString ("!%&()*+,-./:;<=>?[]^{|}~ \t\\"); @@ -115,18 +119,18 @@ HlStringDetect::HlStringDetect(int attribute, int context, const QString &s, boo HlStringDetect::~HlStringDetect() { } const QChar *HlStringDetect::checkHgl(const QChar *s, int len, bool) { if (!_inSensitive) {if (memcmp(s, str.unicode(), str.length()*sizeof(QChar)) == 0) return s + str.length();} else { - QString tmp=QString(s,str.length()).upper(); - if (tmp==str) return s+str.length(); + QString tmp=QString(s,str.length()).upper(); + if (tmp==str) return s+str.length(); } return 0L; } HlRangeDetect::HlRangeDetect(int attribute, int context, QChar ch1, QChar ch2) : HlItem(attribute,context) { sChar1 = ch1; @@ -208,20 +212,20 @@ const QChar *HlInt::checkHgl(const QChar *str, int len, bool) { const QChar *s,*s1; s = str; while (s->isDigit()) s++; if (s > str) { if (subItems) { - for (HlItem *it=subItems->first();it;it=subItems->next()) + for (HlItem *it=subItems->first();it;it=subItems->next()) { s1=it->checkHgl(s, len, false); - if (s1) return s1; + if (s1) return s1; } } return s; } return 0L; } HlFloat::HlFloat(int attribute, int context) @@ -243,24 +247,24 @@ const QChar *HlFloat::checkHgl(const QChar *s, int len, bool) { s++; b = true; } } if (!b) return 0L; if ((*s&0xdf) == 'E') s++; else if (!p) return 0L; - else - { + else + { if (subItems) { - for (HlItem *it=subItems->first();it;it=subItems->next()) + for (HlItem *it=subItems->first();it;it=subItems->next()) { s1=it->checkHgl(s, len, false); - if (s1) return s1; + if (s1) return s1; } } return s; } if ((*s == '-')||(*s =='+')) s++; b = false; while (s->isDigit()) { s++; @@ -340,17 +344,17 @@ const QChar *HlCHex::checkHgl(const QChar *str, int len, bool) { #if 0 int i; for (i=0;(*s)!='\0';s++,i++); QString line(str,i); QRegExp3 rx("0[xX][a-fA-F\\d]+[UuLl]?"); // this matches but is also matching parenthesis int pos=rx.search(line,0); if(pos > -1) return str+rx.matchedLength(); else - return 0L; + return 0L; #else if (str[0] == '0' && ((str[1]&0xdf) == 'X' )) { str += 2; s = str; while (s->isDigit() || ((*s&0xdf) >= 'A' && (*s&0xdf) <= 'F') /*|| (*s >= 'a' && *s <= 'f')*/) s++; if (s > str) { if ((*s&0xdf) == 'L' || (*s&0xdf) == 'U' ) s++; @@ -395,30 +399,30 @@ HlRegExpr::HlRegExpr(int attribute, int context,QString regexp) const QChar *HlRegExpr::checkHgl(const QChar *s, int len, bool lineStart) { if ((!lineStart) && handlesLinestart) return 0; QString line(s,len); int pos = Expr->search( line, 0 ); if (pos==-1) return 0L; else - return (s+Expr->matchedLength()); + return (s+Expr->matchedLength()); }; HlLineContinue::HlLineContinue(int attribute, int context) : HlItem(attribute,context) { } const QChar *HlLineContinue::checkHgl(const QChar *s, int len, bool) { if ((s[0].latin1() == '\\') && (len == 1)) - { + { return s + 1; - } + } return 0L; } HlCStringChar::HlCStringChar(int attribute, int context) : HlItem(attribute,context) { } @@ -616,17 +620,17 @@ int Highlight::doHighlight(int ctxNum, TextLine *textLine) for (item = context->items.first(); item != 0L; item = context->items.next()) { if (item->startEnable(lastChar)) { s2 = item->checkHgl(s1, len-z, z==0); if (s2 > s1) { - qDebug("An item has been detected"); + odebug << "An item has been detected" << oendl; textLine->setAttribs(item->attr,s1 - str,s2 - str); ctxNum = item->ctx; context = contextList[ctxNum]; z = z + s2 - s1 - 1; s1 = s2 - 1; found = true; break; } @@ -848,17 +852,17 @@ void Highlight::done() list containing the parsed default config ************* * return value: none *******************************************************************************************/ void Highlight::createItemData(ItemDataList &list) { - qDebug("Highlight::createItemData"); + odebug << "Highlight::createItemData" << oendl; // If no highlighting is selected we need only one default. if (noHl) { list.append(new ItemData(I18N_NOOP("Normal Text"), dsNormal)); return; } @@ -869,25 +873,25 @@ void Highlight::createItemData(ItemDataList &list) // If the internal list isn't already available read the config file if (internalIDList.count()==0) { //if all references to the list are destried the contents will also be deleted internalIDList.setAutoDelete(true); syntaxContextData *data; - qDebug("Trying to read itemData section"); + odebug << "Trying to read itemData section" << oendl; //Tell the syntax document class which file we want to parse and which data group HlManager::self()->syntax->setIdentifier(identifier); data=HlManager::self()->syntax->getGroupInfo("highlighting","itemData"); //begin with the real parsing while (HlManager::self()->syntax->nextGroup(data)) { - qDebug("Setting up one itemData element"); + odebug << "Setting up one itemData element" << oendl; // read all attributes color=HlManager::self()->syntax->groupData(data,QString("color")); selColor=HlManager::self()->syntax->groupData(data,QString("selColor")); bold=HlManager::self()->syntax->groupData(data,QString("bold")); italic=HlManager::self()->syntax->groupData(data,QString("italic")); //check if the user overrides something if ( (!color.isEmpty()) && (!selColor.isEmpty()) && (!bold.isEmpty()) && (!italic.isEmpty())) { @@ -928,22 +932,22 @@ void Highlight::createItemData(ItemDataList &list) * output: none ************* * return value: int :The index of the attribute * or 0 *******************************************************************************************/ int Highlight::lookupAttrName(const QString& name, ItemDataList &iDl) { - for (int i=0;i<iDl.count();i++) - { - if (iDl.at(i)->name==name) return i; - } - kdDebug(13010)<<"Couldn't resolve itemDataName"<<endl; - return 0; + for (int i=0;i<iDl.count();i++) + { + if (iDl.at(i)->name==name) return i; + } + kdDebug(13010)<<"Couldn't resolve itemDataName"<<endl; + return 0; } /******************************************************************************************* Highlight - createHlItem This function is a helper for makeContextList. It parses the xml file for information, how single or multi line comments are marked @@ -1072,21 +1076,21 @@ void Highlight::readCommentConfig() syntaxContextData *data=HlManager::self()->syntax->getGroupInfo("general","comment"); if (data) { // kdDebug(13010)<<"COMMENT DATA FOUND"<<endl; while (HlManager::self()->syntax->nextGroup(data)) { if (HlManager::self()->syntax->groupData(data,"name")=="singleLine") - cslStart=HlManager::self()->syntax->groupData(data,"start"); - if (HlManager::self()->syntax->groupData(data,"name")=="multiLine") + cslStart=HlManager::self()->syntax->groupData(data,"start"); + if (HlManager::self()->syntax->groupData(data,"name")=="multiLine") { - cmlStart=HlManager::self()->syntax->groupData(data,"start"); - cmlEnd=HlManager::self()->syntax->groupData(data,"end"); + cmlStart=HlManager::self()->syntax->groupData(data,"start"); + cmlEnd=HlManager::self()->syntax->groupData(data,"end"); } } HlManager::self()->syntax->freeGroupInfo(data); } } /******************************************************************************************* @@ -1107,20 +1111,20 @@ void Highlight::readGlobalKeywordConfig() { // Tell the syntax document class which file we want to parse HlManager::self()->syntax->setIdentifier(identifier); // Get the keywords config entry syntaxContextData * data=HlManager::self()->syntax->getConfig("general","keywords"); if (data) { - kdDebug(13010)<<"Found global keyword config"<<endl; + kdDebug(13010)<<"Found global keyword config"<<endl; if (HlManager::self()->syntax->groupItemData(data,QString("casesensitive"))!="0") - casesensitive=true; else {casesensitive=false; kdDebug(13010)<<"Turning on case insensitiveness"<<endl;} + casesensitive=true; else {casesensitive=false; kdDebug(13010)<<"Turning on case insensitiveness"<<endl;} //get the weak deliminators weakDeliminator=(!HlManager::self()->syntax->groupItemData(data,QString("weakDeliminator"))); // remove any weakDelimitars (if any) from the default list and store this list. int f; for (int s=0; s < weakDeliminator.length(); s++) { f = 0; @@ -1128,17 +1132,17 @@ void Highlight::readGlobalKeywordConfig() if (f > -1) deliminator.remove (f, 1); } deliminatorChars = deliminator.unicode(); deliminatorLen = deliminator.length(); - HlManager::self()->syntax->freeGroupInfo(data); + HlManager::self()->syntax->freeGroupInfo(data); } else { //Default values casesensitive=true; weakDeliminator=QString(""); } @@ -1199,35 +1203,35 @@ void Highlight::makeContextList() (HlManager::self()->syntax->groupData(data,QString("lineEndContext"))).toInt(), (HlManager::self()->syntax->groupData(data,QString("lineBeginContext"))).isEmpty()?-1: (HlManager::self()->syntax->groupData(data,QString("lineBeginContext"))).toInt()); //Let's create all items for the context while (HlManager::self()->syntax->nextItem(data)) { -// kdDebug(13010)<< "In make Contextlist: Item:"<<endl; - c=createHlItem(data,iDl); - if (c) - { +// kdDebug(13010)<< "In make Contextlist: Item:"<<endl; + c=createHlItem(data,iDl); + if (c) + { contextList[i]->items.append(c); // Not supported completely atm and only one level. Subitems.(all have to be matched to at once) - datasub=HlManager::self()->syntax->getSubItems(data); - bool tmpbool; - if (tmpbool=HlManager::self()->syntax->nextItem(datasub)) - { + datasub=HlManager::self()->syntax->getSubItems(data); + bool tmpbool; + if (tmpbool=HlManager::self()->syntax->nextItem(datasub)) + { c->subItems=new QList<HlItem>; - for (;tmpbool;tmpbool=HlManager::self()->syntax->nextItem(datasub)) + for (;tmpbool;tmpbool=HlManager::self()->syntax->nextItem(datasub)) c->subItems->append(createHlItem(datasub,iDl)); } - HlManager::self()->syntax->freeGroupInfo(datasub); + HlManager::self()->syntax->freeGroupInfo(datasub); // end of sublevel - } -// kdDebug(13010)<<"Last line in loop"<<endl; + } +// kdDebug(13010)<<"Last line in loop"<<endl; } i++; } } HlManager::self()->syntax->freeGroupInfo(data); @@ -1307,26 +1311,26 @@ int HlManager::wildcardFind(const QString &fileName) { int HlManager::makeAttribs(Highlight *highlight, Attribute *a, int maxAttribs) { ItemStyleList defaultStyleList; ItemStyle *defaultStyle; ItemDataList itemDataList; ItemData *itemData; int nAttribs, z; - qDebug("HlManager::makeAttribs"); + odebug << "HlManager::makeAttribs" << oendl; defaultStyleList.setAutoDelete(true); getDefaults(defaultStyleList); // itemDataList.setAutoDelete(true); highlight->getItemDataList(itemDataList); nAttribs = itemDataList.count(); for (z = 0; z < nAttribs; z++) { - qDebug("HlManager::makeAttribs: createing one attribute definition"); + odebug << "HlManager::makeAttribs: createing one attribute definition" << oendl; itemData = itemDataList.at(z); if (itemData->defStyle) { // default style defaultStyle = defaultStyleList.at(itemData->defStyleNum); a[z].col = defaultStyle->col; a[z].selCol = defaultStyle->selCol; a[z].bold = defaultStyle->bold; a[z].italic = defaultStyle->italic; @@ -1410,17 +1414,17 @@ void HlManager::getDefaults(ItemStyleList &list) { } void HlManager::setDefaults(ItemStyleList &list) { KateConfig *config; int z; ItemStyle *i; char s[64]; #warning fixme -/* +/* config = KateFactory::instance()->config(); config->setGroup("Default Item Styles"); for (z = 0; z < defaultStyles(); z++) { i = list.at(z); sprintf(s,"%X,%X,%d,%d",i->col.rgb(),i->selCol.rgb(),i->bold, i->italic); config->writeEntry(defaultStyleName(z),s); } */ diff --git a/noncore/apps/tinykate/libkate/document/katesyntaxdocument.cpp b/noncore/apps/tinykate/libkate/document/katesyntaxdocument.cpp index 6059e9b..9fa4452 100644 --- a/noncore/apps/tinykate/libkate/document/katesyntaxdocument.cpp +++ b/noncore/apps/tinykate/libkate/document/katesyntaxdocument.cpp @@ -11,40 +11,45 @@ * 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 "katesyntaxdocument.h" -#include <kateconfig.h> +#include "kateconfig.h" +#include "kdebug.h" +#include "kstddirs.h" +#include "klocale.h" +#include "kmessagebox.h" +#include "kglobal.h" + +/* OPIE */ +#include <opie2/odebug.h> +#include <qpe/qpeapplication.h> + +/* QT */ #include <qfile.h> -#include <kdebug.h> -#include <kstddirs.h> -#include <klocale.h> -#include <kmessagebox.h> #include <qstringlist.h> -#include <kglobal.h> -#include <qpe/qpeapplication.h> #include <qdir.h> SyntaxDocument::SyntaxDocument() { m_root=0; currentFile=""; setupModeList(); } void SyntaxDocument::setIdentifier(const QString& identifier) { #warning FIXME delete m_root; m_root=Opie::Core::XMLElement::load(identifier); if (!m_root) KMessageBox::error( 0L, i18n("Can't open %1").arg(identifier) ); - + } SyntaxDocument::~SyntaxDocument() { } void SyntaxDocument::setupModeList(bool force) { @@ -71,31 +76,31 @@ void SyntaxDocument::setupModeList(bool force) mli->section = config->readEntry("section",""); mli->mimetype = config->readEntry("mimetype",""); mli->extension = config->readEntry("extension",""); mli->identifier = path+*it; myModeList.append(mli); } else { - qDebug("Found a description file:"+path+(*it)); + odebug << "Found a description file:"+path+(*it) << oendl; setIdentifier(path+(*it)); Opie::Core::XMLElement *e=m_root; if (e) { - e=e->firstChild(); - qDebug(e->tagName()); + e=e->firstChild(); + odebug << e->tagName() << oendl; if (e->tagName()=="language") { syntaxModeListItem *mli=new syntaxModeListItem; mli->name = e->attribute("name"); mli->section = e->attribute("section"); mli->mimetype = e->attribute("mimetype"); mli->extension = e->attribute("extensions"); - qDebug(QString("valid description for: %1/%2").arg(mli->section).arg(mli->name)); + odebug << QString("valid description for: %1/%2").arg(mli->section).arg(mli->name) << oendl; if (mli->section.isEmpty()) mli->section=i18n("Other"); mli->identifier = path+(*it); config->setGroup(Group); config->writeEntry("name",mli->name); config->writeEntry("section",mli->section); config->writeEntry("mimetype",mli->mimetype); @@ -175,19 +180,19 @@ void SyntaxDocument::freeGroupInfo( syntaxContextData* data) { if (data) delete data; } syntaxContextData* SyntaxDocument::getSubItems(syntaxContextData* data) { syntaxContextData *retval=new syntaxContextData; - retval->parent=0; - retval->currentGroup=0; - retval->item=0; + retval->parent=0; + retval->currentGroup=0; + retval->item=0; if (data != 0) { retval->parent=data->currentGroup; retval->currentGroup=data->item; retval->item=0; } return retval; @@ -207,18 +212,18 @@ syntaxContextData* SyntaxDocument::getConfig(const QString& mainGroupName, const while (e1) { kdDebug(13010)<<"in SyntaxDocument::getGroupInfo (inner loop) " <<endl; if (e1->tagName()==Config) { syntaxContextData *data=new ( syntaxContextData); - data->currentGroup=0; - data->parent=0; + data->currentGroup=0; + data->parent=0; data->item=e1; return data; } e1=e1->nextChild(); } kdDebug(13010) << "WARNING :returning null 3"<< endl; @@ -249,18 +254,18 @@ syntaxContextData* SyntaxDocument::getGroupInfo(const QString& mainGroupName, co while (e1) { kdDebug(13010)<<"in SyntaxDocument::getGroupInfo (inner loop) " <<endl; if (e1->tagName()==group+"s") { syntaxContextData *data=new ( syntaxContextData); data->parent=e1; - data->currentGroup=0; - data->item=0; + data->currentGroup=0; + data->item=0; return data; } e1=e1->nextChild(); } kdDebug(13010) << "WARNING : getGroupInfo returning null :1 " << endl; return 0; @@ -279,28 +284,28 @@ QStringList& SyntaxDocument::finddata(const QString& mainGroup,const QString& ty Opie::Core::XMLElement *e = m_root->firstChild(); if (clearList) m_data.clear(); for(e=e->firstChild(); e; e=e->nextChild()) { if (e->tagName()==mainGroup) { - for (Opie::Core::XMLElement *e1=e->firstChild();e1;e1=e1->nextChild()) - { - if (e1->tagName()!="list") continue; - - if (e1->attribute("name")==type) - { - for (Opie::Core::XMLElement *e2=e1->firstChild();e2;e2=e2->nextChild()) - { - qDebug("FOUND A LIST ENTRY("+e2->tagName()+"):"+e2->firstChild()->value()); - m_data+=e2->firstChild()->value().stripWhiteSpace(); - } - break; - } + for (Opie::Core::XMLElement *e1=e->firstChild();e1;e1=e1->nextChild()) + { + if (e1->tagName()!="list") continue; + + if (e1->attribute("name")==type) + { + for (Opie::Core::XMLElement *e2=e1->firstChild();e2;e2=e2->nextChild()) + { + odebug << "FOUND A LIST ENTRY("+e2->tagName()+"):"+e2->firstChild()->value() << oendl; + m_data+=e2->firstChild()->value().stripWhiteSpace(); + } + break; + } } break; } } return m_data; } diff --git a/noncore/apps/tinykate/libkate/kateconfig.cpp b/noncore/apps/tinykate/libkate/kateconfig.cpp index 96f91fb..782b629 100644 --- a/noncore/apps/tinykate/libkate/kateconfig.cpp +++ b/noncore/apps/tinykate/libkate/kateconfig.cpp @@ -13,48 +13,53 @@ ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ +#define QTOPIA_INTERNAL_LANGLIST +#include "kateconfig.h" + +/* OPIE */ +#include <opie2/odebug.h> +#include <qpe/global.h> + +/* QT */ #include <qdir.h> #include <qmessagebox.h> #if QT_VERSION <= 230 && defined(QT_NO_CODECS) #include <qtextcodec.h> #endif #include <qtextstream.h> +/* STD */ #include <sys/stat.h> #include <sys/types.h> #include <fcntl.h> #include <stdlib.h> #include <unistd.h> -#define QTOPIA_INTERNAL_LANGLIST -#include "kateconfig.h" -#include <qpe/global.h> - /*! \internal */ QString KateConfig::configFilename(const QString& name, Domain d) { switch (d) { - case File: - return name; - case User: { - QDir dir = (QString(getenv("HOME")) + "/Settings"); - if ( !dir.exists() ) - mkdir(dir.path().local8Bit(),0700); - return dir.path() + "/" + name + ".conf"; - } + case File: + return name; + case User: { + QDir dir = (QString(getenv("HOME")) + "/Settings"); + if ( !dir.exists() ) + mkdir(dir.path().local8Bit(),0700); + return dir.path() + "/" + name + ".conf"; + } } return name; } /*! \class KateConfig config.h \brief The KateConfig class provides for saving application cofniguration state. @@ -88,53 +93,53 @@ QString KateConfig::configFilename(const QString& name, Domain d) this case, and in general should be the name of the C++ class that is primarily responsible for maintaining the configuration. In the File Domain, \a name is an absolute filename. */ KateConfig::KateConfig( const QString &name, Domain domain ) : filename( configFilename(name,domain) ) { - qWarning("KateConfig constructor\n"); + owarn << "KateConfig constructor\n" << oendl; git = groups.end(); read(); QStringList l = Global::languageList(); lang = l[0]; glang = l[1]; } // Sharp ROM compatibility KateConfig::KateConfig ( const QString &name, bool what ) - : filename( configFilename(name,what ? User : File) ) + : filename( configFilename(name,what ? User : File) ) { git = groups.end(); read(); QStringList l = Global::languageList(); lang = l[0]; glang = l[1]; } /*! Writes any changes to disk and destroys the in-memory object. */ KateConfig::~KateConfig() { - qWarning("KateConfig destructor\n"); + owarn << "KateConfig destructor\n" << oendl; if ( changed ) - write(); + write(); } /*! Returns whether the current group has an entry called \a key. */ bool KateConfig::hasKey( const QString &key ) const { if ( groups.end() == git ) - return FALSE; + return FALSE; KateConfigGroup::ConstIterator it = ( *git ).find( key ); return it != ( *git ).end(); } /*! Sets the current group for subsequent reading and writing of entries to \a gname. Grouping allows the application to partition the namespace. @@ -142,19 +147,19 @@ bool KateConfig::hasKey( const QString &key ) const of entries. The \a gname must not be empty. */ void KateConfig::setGroup( const QString &gname ) { QMap< QString, KateConfigGroup>::Iterator it = groups.find( gname ); if ( it == groups.end() ) { - git = groups.insert( gname, KateConfigGroup() ); - changed = TRUE; - return; + git = groups.insert( gname, KateConfigGroup() ); + changed = TRUE; + return; } git = it; } /*! Writes a (\a key, \a value) entry to the current group. \sa readEntry() @@ -167,22 +172,22 @@ void KateConfig::writeEntry( const QString &key, const char* value ) /*! Writes a (\a key, \a value) entry to the current group. \sa readEntry() */ void KateConfig::writeEntry( const QString &key, const QString &value ) { if ( git == groups.end() ) { - qWarning( "no group set" ); - return; + owarn << "no group set" << oendl; + return; } if ( (*git)[key] != value ) { - ( *git ).insert( key, value ); - changed = TRUE; + ( *git ).insert( key, value ); + changed = TRUE; } } /* Note that the degree of protection offered by the encryption here is only sufficient to avoid the most casual observation of the configuration files. People with access to the files can write down the contents and decrypt it using this source code. @@ -191,59 +196,59 @@ void KateConfig::writeEntry( const QString &key, const QString &value ) be improved. */ static QString encipher(const QString& plain) { // mainly, we make it long QString cipher; int mix=28730492; for (int i=0; i<(int)plain.length(); i++) { - int u = plain[i].unicode(); - int c = u ^ mix; - QString x = QString::number(c,36); - cipher.append(QChar('a'+x.length())); - cipher.append(x); - mix *= u; + int u = plain[i].unicode(); + int c = u ^ mix; + QString x = QString::number(c,36); + cipher.append(QChar('a'+x.length())); + cipher.append(x); + mix *= u; } return cipher; } static QString decipher(const QString& cipher) { QString plain; int mix=28730492; for (int i=0; i<(int)cipher.length();) { - int l = cipher[i].unicode()-'a'; - QString x = cipher.mid(i+1,l); i+=l+1; - int u = x.toInt(0,36) ^ mix; - plain.append(QChar(u)); - mix *= u; + int l = cipher[i].unicode()-'a'; + QString x = cipher.mid(i+1,l); i+=l+1; + int u = x.toInt(0,36) ^ mix; + plain.append(QChar(u)); + mix *= u; } return plain; } /*! Writes an encrypted (\a key, \a value) entry to the current group. Note that the degree of protection offered by the encryption is only sufficient to avoid the most casual observation of the configuration files. \sa readEntry() */ void KateConfig::writeEntryCrypt( const QString &key, const QString &value ) { if ( git == groups.end() ) { - qWarning( "no group set" ); - return; + owarn << "no group set" << oendl; + return; } QString evalue = encipher(value); if ( (*git)[key] != evalue ) { - ( *git ).insert( key, evalue ); - changed = TRUE; + ( *git ).insert( key, evalue ); + changed = TRUE; } } /*! Writes a (\a key, \a num) entry to the current group. \sa readNumEntry() */ @@ -282,52 +287,52 @@ void KateConfig::writeEntry( const QString &key, bool b ) \sa readListEntry() */ void KateConfig::writeEntry( const QString &key, const QStringList &lst, const QChar &sep ) { QString s; QStringList::ConstIterator it = lst.begin(); for ( ; it != lst.end(); ++it ) - s += *it + sep; + s += *it + sep; writeEntry( key, s ); } void KateConfig::writeEntry( const QString &key, const QColor &val ) { QStringList l; l.append( QString().setNum(val.red()) ); l.append( QString().setNum(val.green()) ); l.append( QString().setNum(val.blue()) ); - + writeEntry( key, l, QChar(',') ); } void KateConfig::writeEntry( const QString &key, const QFont &val ) { QStringList l; l.append( val.family() ); l.append( QString().setNum(val.pointSize()) ); l.append( QString().setNum(val.weight()) ); l.append( QString().setNum((int)val.italic()) ); l.append( QString().setNum((int)val.charSet()) ); - + writeEntry( key, l, QChar(',') ); } /*! Removes the \a key entry from the current group. Does nothing if there is no such entry. */ void KateConfig::removeEntry( const QString &key ) { if ( git == groups.end() ) { - qWarning( "no group set" ); - return; + owarn << "no group set" << oendl; + return; } ( *git ).remove( key ); changed = TRUE; } /*! \fn bool KateConfig::operator == ( const KateConfig & other ) const @@ -349,21 +354,21 @@ void KateConfig::removeEntry( const QString &key ) /*! \internal For compatibility, non-const version. */ QString KateConfig::readEntry( const QString &key, const QString &deflt ) { QString res = readEntryDirect( key+"["+lang+"]" ); if ( !res.isNull() ) - return res; + return res; if ( !glang.isEmpty() ) { - res = readEntryDirect( key+"["+glang+"]" ); - if ( !res.isNull() ) - return res; + res = readEntryDirect( key+"["+glang+"]" ); + if ( !res.isNull() ) + return res; } return readEntryDirect( key, deflt ); } /*! \fn QString KateConfig::readEntryCrypt( const QString &key, const QString &deflt ) const Reads an encrypted string entry stored with \a key, defaulting to \a deflt if there is no entry. @@ -372,98 +377,98 @@ QString KateConfig::readEntry( const QString &key, const QString &deflt ) /*! \internal For compatibility, non-const version. */ QString KateConfig::readEntryCrypt( const QString &key, const QString &deflt ) { QString res = readEntryDirect( key+"["+lang+"]" ); if ( res.isNull() && glang.isEmpty() ) - res = readEntryDirect( key+"["+glang+"]" ); + res = readEntryDirect( key+"["+glang+"]" ); if ( res.isNull() ) - res = readEntryDirect( key, QString::null ); + res = readEntryDirect( key, QString::null ); if ( res.isNull() ) - return deflt; + return deflt; return decipher(res); } /*! \fn QString KateConfig::readEntryDirect( const QString &key, const QString &deflt ) const \internal */ /*! \internal For compatibility, non-const version. */ QString KateConfig::readEntryDirect( const QString &key, const QString &deflt ) { if ( git == groups.end() ) { - //qWarning( "no group set" ); - return deflt; + //owarn << "no group set" << oendl; + return deflt; } KateConfigGroup::ConstIterator it = ( *git ).find( key ); if ( it != ( *git ).end() ) - return *it; + return *it; else - return deflt; + return deflt; } /*! \fn int KateConfig::readNumEntry( const QString &key, int deflt ) const Reads a numeric entry stored with \a key, defaulting to \a deflt if there is no entry. */ /*! \internal For compatibility, non-const version. */ int KateConfig::readNumEntry( const QString &key, int deflt ) { QString s = readEntry( key ); if ( s.isEmpty() ) - return deflt; + return deflt; else - return s.toInt(); + return s.toInt(); } /*! \fn bool KateConfig::readBoolEntry( const QString &key, bool deflt ) const Reads a bool entry stored with \a key, defaulting to \a deflt if there is no entry. */ /*! \internal For compatibility, non-const version. */ bool KateConfig::readBoolEntry( const QString &key, bool deflt ) { QString s = readEntry( key ); if ( s.isEmpty() ) - return deflt; + return deflt; else - return (bool)s.toInt(); + return (bool)s.toInt(); } /*! \fn QStringList KateConfig::readListEntry( const QString &key, const QChar &sep ) const Reads a string list entry stored with \a key, and with \a sep as the separator. */ /*! \internal For compatibility, non-const version. */ QStringList KateConfig::readListEntry( const QString &key, const QChar &sep ) { QString s = readEntry( key ); if ( s.isEmpty() ) - return QStringList(); + return QStringList(); else - return QStringList::split( sep, s ); + return QStringList::split( sep, s ); } QColor KateConfig::readColorEntry( const QString &key, const QColor &def ) const { QStringList list = readListEntry(key, QChar(',')); if( list.count() != 3 ) return def; @@ -479,87 +484,87 @@ QFont KateConfig::readFontEntry( const QString &key, const QFont &def ) const return QFont(list[0], list[1].toInt(), list[2].toInt(), (bool)list[3].toInt(), (QFont::CharSet)list[4].toInt()); } QValueList<int> KateConfig::readIntListEntry( const QString &key ) const { QString s = readEntry( key ); QValueList<int> il; if ( s.isEmpty() ) - return il; + return il; QStringList l = QStringList::split( QChar(','), s ); QStringList::Iterator l_it; for( l_it = l.begin(); l_it != l.end(); ++l_it ) il.append( (*l_it).toInt() ); return il; } /*! Removes all entries from the current group. */ void KateConfig::clearGroup() { if ( git == groups.end() ) { - qWarning( "no group set" ); - return; + owarn << "no group set" << oendl; + return; } if ( !(*git).isEmpty() ) { - ( *git ).clear(); - changed = TRUE; + ( *git ).clear(); + changed = TRUE; } } /*! \internal */ void KateConfig::write( const QString &fn ) { QString strNewFile; if ( !fn.isEmpty() ) - filename = fn; + filename = fn; strNewFile = filename + ".new"; QFile f( strNewFile ); if ( !f.open( IO_WriteOnly|IO_Raw ) ) { - qWarning( "could not open for writing `%s'", strNewFile.latin1() ); - git = groups.end(); - return; + owarn << "could not open for writing `" << strNewFile << "'" << oendl; + git = groups.end(); + return; } - + QString str; - QCString cstr; + QCString cstr; QMap< QString, KateConfigGroup >::Iterator g_it = groups.begin(); for ( ; g_it != groups.end(); ++g_it ) { - str += "[" + g_it.key() + "]\n"; - KateConfigGroup::Iterator e_it = ( *g_it ).begin(); - for ( ; e_it != ( *g_it ).end(); ++e_it ) - str += e_it.key() + " = " + *e_it + "\n"; + str += "[" + g_it.key() + "]\n"; + KateConfigGroup::Iterator e_it = ( *g_it ).begin(); + for ( ; e_it != ( *g_it ).end(); ++e_it ) + str += e_it.key() + " = " + *e_it + "\n"; } cstr = str.utf8(); - + int total_length; total_length = f.writeBlock( cstr.data(), cstr.length() ); if ( total_length != int(cstr.length()) ) { - QMessageBox::critical( 0, QObject::tr("Out of Space"), - QObject::tr("There was a problem creating\nKateConfiguration Information \nfor this program.\n\nPlease free up some space and\ntry again.") ); - f.close(); - QFile::remove( strNewFile ); - return; + QMessageBox::critical( 0, QObject::tr("Out of Space"), + QObject::tr("There was a problem creating\nKateConfiguration Information \nfor this program.\n\nPlease free up some space and\ntry again.") ); + f.close(); + QFile::remove( strNewFile ); + return; } - + f.close(); // now rename the file... if ( rename( strNewFile, filename ) < 0 ) { - qWarning( "problem renaming the file %s to %s", strNewFile.latin1(), - filename.latin1() ); - QFile::remove( strNewFile ); - } + qWarning( "problem renaming the file %s to %s", strNewFile.latin1(), + filename.latin1() ); + QFile::remove( strNewFile ); + } } /*! Returns whether the KateConfig is in a valid state. */ bool KateConfig::isValid() const { return groups.end() != git; @@ -568,24 +573,24 @@ bool KateConfig::isValid() const /*! \internal */ void KateConfig::read() { changed = FALSE; if ( !QFileInfo( filename ).exists() ) { - git = groups.end(); - return; + git = groups.end(); + return; } QFile f( filename ); if ( !f.open( IO_ReadOnly ) ) { - git = groups.end(); - return; + git = groups.end(); + return; } QTextStream s( &f ); #if QT_VERSION <= 230 && defined(QT_NO_CODECS) // The below should work, but doesn't in Qt 2.3.0 s.setCodec( QTextCodec::codecForMib( 106 ) ); #else s.setEncoding( QTextStream::UnicodeUTF8 ); @@ -603,30 +608,30 @@ void KateConfig::read() } /*! \internal */ bool KateConfig::parse( const QString &l ) { QString line = l.stripWhiteSpace(); - + if ( line [0] == QChar ( '#' )) - return true; // ignore comments - + return true; // ignore comments + if ( line[ 0 ] == QChar( '[' ) ) { - QString gname = line; - gname = gname.remove( 0, 1 ); - if ( gname[ (int)gname.length() - 1 ] == QChar( ']' ) ) - gname = gname.remove( gname.length() - 1, 1 ); - git = groups.insert( gname, KateConfigGroup() ); + QString gname = line; + gname = gname.remove( 0, 1 ); + if ( gname[ (int)gname.length() - 1 ] == QChar( ']' ) ) + gname = gname.remove( gname.length() - 1, 1 ); + git = groups.insert( gname, KateConfigGroup() ); } else if ( !line.isEmpty() ) { - if ( git == groups.end() ) - return FALSE; - int eq = line.find( '=' ); - if ( eq == -1 ) - return FALSE; - QString key = line.left(eq).stripWhiteSpace(); - QString value = line.mid(eq+1).stripWhiteSpace(); - ( *git ).insert( key, value ); + if ( git == groups.end() ) + return FALSE; + int eq = line.find( '=' ); + if ( eq == -1 ) + return FALSE; + QString key = line.left(eq).stripWhiteSpace(); + QString value = line.mid(eq+1).stripWhiteSpace(); + ( *git ).insert( key, value ); } return TRUE; } diff --git a/noncore/apps/tinykate/tinykate.cpp b/noncore/apps/tinykate/tinykate.cpp index 3c9a637..9865c35 100644 --- a/noncore/apps/tinykate/tinykate.cpp +++ b/noncore/apps/tinykate/tinykate.cpp @@ -9,28 +9,33 @@ /*************************************************************************** * * * This program is free softwaSre; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation. * * ONLY VERSION 2 OF THE LICENSE IS APPLICABLE * * * ***************************************************************************/ -#include <qaction.h> -#include <qtoolbutton.h> -#include <qmenubar.h> -#include <qpe/resource.h> -#include <qpe/qpeapplication.h> +#include "tinykate.h" + +#include "katedocument.h" +#include "kglobal.h" + +/* OPIE */ +#include <opie2/odebug.h> #include <opie2/ofiledialog.h> +#include <qpe/resource.h> +#include <qpe/qpeapplication.h> -#include "tinykate.h" +/* QT */ +#include <qaction.h> +#include <qtoolbutton.h> +#include <qmenubar.h> -#include <katedocument.h> -#include <kglobal.h> using namespace Opie::Ui; TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : QMainWindow( parent, name, f ) { shutDown=false; nextUnnamed=0; currentView=0; @@ -147,25 +152,25 @@ TinyKate::TinyKate( QWidget *parent, const char *name, WFlags f) : if( qApp->argc() > 1) open(qApp->argv()[1]); else slotNew(); } TinyKate::~TinyKate( ) { - qWarning("TinyKate destructor\n"); + owarn << "TinyKate destructor\n" << oendl; shutDown=true; while (currentView!=0) { slotClose(); } if( KGlobal::config() != 0 ) { - qWarning("deleting KateConfig object..\n"); + owarn << "deleting KateConfig object..\n" << oendl; delete KGlobal::config(); } } void TinyKate::slotOpen( ) { QString filename = OFileDialog::getOpenFileName( OFileSelector::EXTENDED_ALL, QString::null); @@ -176,17 +181,17 @@ void TinyKate::slotOpen( ) void TinyKate::open(const QString & filename) { KateDocument *kd= new KateDocument(false, false, this,0,this); KTextEditor::View *kv; QFileInfo fi(filename); QString filenamed = fi.fileName(); tabwidget->addTab(kv=kd->createView(tabwidget,"bLAH"),"tinykate/tinykate", filenamed ); - qDebug(filename); + odebug << filename << oendl; kd->setDocName( filenamed); kd->open( filename ); viewCount++; } void TinyKate::setDocument(const QString& fileref) { @@ -244,33 +249,33 @@ void TinyKate::slotClose( ) } void TinyKate::slotSave() { // feel free to make this how you want if (currentView==0) return; // KateView *kv = (KateView*) currentView; KateDocument *kd = (KateDocument*) currentView->document(); - // qDebug("saving file "+kd->docName()); + // odebug << "saving file "+kd->docName() << oendl; if( kd->docName().isEmpty()) slotSaveAs(); else kd->saveFile(); // kv->save(); // kd->saveFile(); } void TinyKate::slotSaveAs() { if (currentView==0) return; KateDocument *kd = (KateDocument*) currentView->document(); QString filename= OFileDialog::getSaveFileName(OFileSelector::EXTENDED_ALL, QString::null); if (!filename.isEmpty()) { - qDebug("saving file "+filename); + odebug << "saving file "+filename << oendl; QFileInfo fi(filename); QString filenamed = fi.fileName(); kd->setDocFile( filename); kd->setDocName( filenamed); kd->saveFile(); // KTextEditor::View *dv = currentView; // tabwidget->changeTab( dv, filenamed); // need to change tab label here |