Some work on the chm generator:

- correctly find the chm library
- make the chm generator and the kio-msits compile and link
- some qt3/kde3 support less

svn path=/branches/work/kde4/playground/graphics/cmake/; revision=523938
This commit is contained in:
Pino Toscano 2006-03-29 14:33:15 +00:00
parent c256664918
commit 0b29b076b8
7 changed files with 75 additions and 58 deletions

View file

@ -17,11 +17,16 @@ FIND_PATH(CHM_INCLUDE_DIR chm_lib.h
${GNUWIN32_DIR}/include ${GNUWIN32_DIR}/include
) )
#check_library_exists(chm ??? "" CHM_LIBRARY) find_library(CHM_LIBRARY NAMES chm
PATHS
/usr/lib
/usr/local/lib
${GNUWIN32_DIR}/lib
)
if(CHM_INCLUDE_DIR) if(CHM_INCLUDE_DIR AND CHM_LIBRARY)
set(CHM_FOUND TRUE) set(CHM_FOUND TRUE)
endif(CHM_INCLUDE_DIR) endif(CHM_INCLUDE_DIR AND CHM_LIBRARY)
if (CHM_FOUND) if (CHM_FOUND)
if (NOT CHM_FIND_QUIETLY) if (NOT CHM_FIND_QUIETLY)

View file

@ -3,12 +3,24 @@ kde4_header()
add_subdirectory( lib ) add_subdirectory( lib )
add_subdirectory( kio-msits ) add_subdirectory( kio-msits )
include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ) include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}/okular ${CMAKE_BINARY_DIR}/okular ${CHM_INCLUDE_DIR} ${CMAKE_SOURCE_DIR}/okular/generators/chm/lib )
########### next target ############### ########### next target ###############
set(okularGenerator_chmlib_PART_SRCS generator_t.cpp ) set(chmlib_SRCS
${CMAKE_SOURCE_DIR}/okular/generators/chm/lib/iconstorage.cpp
${CMAKE_SOURCE_DIR}/okular/generators/chm/lib/kchmtextencoding.cpp
${CMAKE_SOURCE_DIR}/okular/generators/chm/lib/kchmtreeviewitem.cpp
${CMAKE_SOURCE_DIR}/okular/generators/chm/lib/kchmurl.cpp
${CMAKE_SOURCE_DIR}/okular/generators/chm/lib/xchmfile.cpp
)
set(okularGenerator_chmlib_SRCS
${CMAKE_SOURCE_DIR}/okular/generators/chm/generator_t.cpp
)
set(okularGenerator_chmlib_PART_SRCS ${chmlib_SRCS} ${okularGenerator_chmlib_SRCS} )
kde4_automoc(${okularGenerator_chmlib_PART_SRCS}) kde4_automoc(${okularGenerator_chmlib_PART_SRCS})
@ -16,7 +28,7 @@ kde4_add_plugin(okularGenerator_chmlib WITH_PREFIX ${okularGenerator_chmlib_PART
kde4_install_libtool_file( ${PLUGIN_INSTALL_DIR} okularGenerator_chmlib ) kde4_install_libtool_file( ${PLUGIN_INSTALL_DIR} okularGenerator_chmlib )
target_link_libraries(okularGenerator_chmlib ${KDE4_KDECORE_LIBS} oKularcore oKularconf chmfile ${KDE4_KDEPRINT_LIBS} ${KDE4_KDEUI_LIBS} ${KDE4_KHTML_LIBS} chm ) target_link_libraries(okularGenerator_chmlib ${KDE4_KDECORE_LIBS} oKularcore ${CHM_LIBRARY} ${KDE4_KDEPRINT_LIBS} ${KDE4_KDEUI_LIBS} ${KDE4_KHTML_LIBS} )
install_targets(${LIB_INSTALL_DIR}/kde4 okularGenerator_chmlib ) install_targets(${LIB_INSTALL_DIR}/kde4 okularGenerator_chmlib )

View file

@ -9,7 +9,7 @@
#include "generator_t.h" #include "generator_t.h"
#include "lib/xchmfile.h" #include "lib/xchmfile.h"
#include "conf/settings.h" #include "settings.h"
#include "core/page.h" #include "core/page.h"
#include "core/link.h" #include "core/link.h"
#include "core/observer.h" //for PAGEVIEW_ID #include "core/observer.h" //for PAGEVIEW_ID
@ -47,7 +47,7 @@ bool TGenerator::loadDocument( const QString & fileName, QVector< KPDFPage * > &
p.setPageSize(static_cast< QPrinter::PageSize >( KGlobal::locale()->pageSize() )); p.setPageSize(static_cast< QPrinter::PageSize >( KGlobal::locale()->pageSize() ));
p.setFullPage(true); p.setFullPage(true);
kdDebug () << "UrlPage count " << m_file->m_UrlPage.count() << endl; kDebug () << "UrlPage count " << m_file->m_UrlPage.count() << endl;
pagesVector.resize(m_file->m_UrlPage.count()); pagesVector.resize(m_file->m_UrlPage.count());
if (!m_syncGen) if (!m_syncGen)
@ -63,7 +63,7 @@ bool TGenerator::loadDocument( const QString & fileName, QVector< KPDFPage * > &
int i= it.data() - 1; int i= it.data() - 1;
pagesVector[ i ] = new KPDFPage (i, m_syncGen->view()->contentsWidth(), pagesVector[ i ] = new KPDFPage (i, m_syncGen->view()->contentsWidth(),
m_syncGen->view()->contentsHeight(),0); m_syncGen->view()->contentsHeight(),0);
kdDebug() << "W/H: " << m_syncGen->view()->contentsWidth() << "/" << m_syncGen->view()->contentsHeight() << endl; kDebug() << "W/H: " << m_syncGen->view()->contentsWidth() << "/" << m_syncGen->view()->contentsHeight() << endl;
} }
return true; return true;
} }
@ -72,7 +72,7 @@ void TGenerator::preparePageForSyncOperation( int zoom , const QString & url)
{ {
KUrl pAddress= "ms-its:" + m_fileName + "::" + url; KUrl pAddress= "ms-its:" + m_fileName + "::" + url;
m_state=0; m_state=0;
kdDebug() << "Url: " << pAddress << endl; kDebug() << "Url: " << pAddress << endl;
m_syncGen->setZoomFactor(zoom); m_syncGen->setZoomFactor(zoom);
m_doneFlagSet=false; m_doneFlagSet=false;
m_syncGen->openURL(pAddress); m_syncGen->openURL(pAddress);
@ -82,14 +82,14 @@ void TGenerator::preparePageForSyncOperation( int zoom , const QString & url)
void TGenerator::slotCompleted() void TGenerator::slotCompleted()
{ {
kdDebug() << "completed() " << m_state << endl; kDebug() << "completed() " << m_state << endl;
if (m_state==0) if (m_state==0)
{ {
m_doneFlagSet=true; m_doneFlagSet=true;
} }
else if (m_state==1) else if (m_state==1)
{ {
// kdDebug() << "completed(1) " << m_request->id << endl; // kDebug() << "completed(1) " << m_request->id << endl;
QPixmap* pix=new QPixmap (m_request->width,m_request->height); QPixmap* pix=new QPixmap (m_request->width,m_request->height);
pix->fill(); pix->fill();
QPainter p (pix); QPainter p (pix);
@ -128,7 +128,7 @@ bool TGenerator::canGeneratePixmap ( bool /*async*/ )
{ {
/* if (async) /* if (async)
{ {
kdDebug() << "async is locked " << asyncLock.locked() << endl; kDebug() << "async is locked " << asyncLock.locked() << endl;
return !asyncLock.locked(); return !asyncLock.locked();
}*/ }*/
return !syncLock.locked(); return !syncLock.locked();
@ -139,7 +139,7 @@ void TGenerator::generatePixmap( PixmapRequest * request )
QString a="S"; QString a="S";
if (request->async) a="As"; if (request->async) a="As";
kdDebug() << a << "ync PixmapRequest of " << request->width << "x" kDebug() << a << "ync PixmapRequest of " << request->width << "x"
<< request->height << " size, pageNo " << request->pageNumber << request->height << " size, pageNo " << request->pageNumber
<< ", priority: " << request->priority << " id: " << request->id << ", priority: " << request->priority << " id: " << request->id
<< endl; << endl;
@ -151,7 +151,7 @@ void TGenerator::generatePixmap( PixmapRequest * request )
) * 100; ) * 100;
KUrl pAddress= "ms-its:" + m_fileName + "::" + url; KUrl pAddress= "ms-its:" + m_fileName + "::" + url;
kdDebug() << "Page asked is: " << pAddress << " zoom is " << zoom << endl; kDebug() << "Page asked is: " << pAddress << " zoom is " << zoom << endl;
m_syncGen->setZoomFactor(zoom); m_syncGen->setZoomFactor(zoom);
m_syncGen->view()->resize(request->width,request->height); m_syncGen->view()->resize(request->width,request->height);
m_request=request; m_request=request;
@ -179,9 +179,9 @@ void TGenerator::recursiveExploreNodes(DOM::Node node,KPDFTextPage *tp)
{ {
nodeNormRect=new NormalizedRect (r,vWidth,vHeight); nodeNormRect=new NormalizedRect (r,vWidth,vHeight);
tp->append(nodeText,nodeNormRect,nodeNormRect->bottom,0,(nodeText=="\n")); tp->append(nodeText,nodeNormRect,nodeNormRect->bottom,0,(nodeText=="\n"));
kdDebug() << "Norm Rect is [" << nodeNormRect->left << "x" << nodeNormRect->top kDebug() << "Norm Rect is [" << nodeNormRect->left << "x" << nodeNormRect->top
<< "] [" << nodeNormRect->right << "x" << nodeNormRect->bottom << "]" << endl; << "] [" << nodeNormRect->right << "x" << nodeNormRect->bottom << "]" << endl;
kdDebug() << "Node Dom text(" << nodeText.length() << "): " << nodeText << endl; kDebug() << "Node Dom text(" << nodeText.length() << "): " << nodeText << endl;
} }
else else
{ {
@ -193,28 +193,28 @@ void TGenerator::recursiveExploreNodes(DOM::Node node,KPDFTextPage *tp)
{ {
// if (nodeType[i+1] // if (nodeType[i+1]
node.getCursor(i+1,x_next,y_next,height_next); node.getCursor(i+1,x_next,y_next,height_next);
kdDebug() << "DL/L/R " << r.left() << "/" << x << "/" << x_next << endl; kDebug() << "DL/L/R " << r.left() << "/" << x << "/" << x_next << endl;
nodeNormRect=new NormalizedRect (QRect(x,y,x_next-x-1,height),vWidth,vHeight); nodeNormRect=new NormalizedRect (QRect(x,y,x_next-x-1,height),vWidth,vHeight);
} }
else if ( i <nodeTextLength -1 ) else if ( i <nodeTextLength -1 )
// i is between zero and the last element // i is between zero and the last element
{ {
node.getCursor(i+1,x_next,y_next,height_next); node.getCursor(i+1,x_next,y_next,height_next);
kdDebug() << "L/R" << x << "/" << x_next << endl; kDebug() << "L/R" << x << "/" << x_next << endl;
nodeNormRect=new NormalizedRect (QRect(x,y,x_next-x-1,height),vWidth,vHeight); nodeNormRect=new NormalizedRect (QRect(x,y,x_next-x-1,height),vWidth,vHeight);
} }
else else
// the last element use right rect boundary // the last element use right rect boundary
{ {
node.getCursor(i-1,x_next,y_next,height_next); node.getCursor(i-1,x_next,y_next,height_next);
kdDebug() << "L/R" << x_next << "/" << r.right() << endl; kDebug() << "L/R" << x_next << "/" << r.right() << endl;
nodeNormRect=new NormalizedRect (QRect(x,y,r.right()-x-1,height),vWidth,vHeight); nodeNormRect=new NormalizedRect (QRect(x,y,r.right()-x-1,height),vWidth,vHeight);
} }
tp->append(QString(nodeText[i]),nodeNormRect,nodeNormRect->bottom,0,(nodeText[i]=='\n')); tp->append(QString(nodeText[i]),nodeNormRect,nodeNormRect->bottom,0,(nodeText[i]=='\n'));
kdDebug () << "Working with offset : " << i << endl; kDebug () << "Working with offset : " << i << endl;
kdDebug() << "Norm Rect is [" << nodeNormRect->left << "x" << nodeNormRect->top kDebug() << "Norm Rect is [" << nodeNormRect->left << "x" << nodeNormRect->top
<< "] [" << nodeNormRect->right << "x" << nodeNormRect->bottom << "]" << endl; << "] [" << nodeNormRect->right << "x" << nodeNormRect->bottom << "]" << endl;
kdDebug() << "Node Dom text(1): " << nodeText[i] << endl; kDebug() << "Node Dom text(1): " << nodeText[i] << endl;
} }
} }
#else #else
@ -243,7 +243,7 @@ void TGenerator::additionalRequestData()
// only generate object info when generating a full page not a thumbnail // only generate object info when generating a full page not a thumbnail
if ( genObjectRects ) if ( genObjectRects )
{ {
kdDebug() << "Generating ObjRects - start" << endl; kDebug() << "Generating ObjRects - start" << endl;
QLinkedList< ObjectRect * > objRects; QLinkedList< ObjectRect * > objRects;
int xScale=m_request->width; int xScale=m_request->width;
int yScale=m_request->height; int yScale=m_request->height;
@ -262,7 +262,7 @@ void TGenerator::additionalRequestData()
QString url = n.attributes().getNamedItem("href").nodeValue().string(); QString url = n.attributes().getNamedItem("href").nodeValue().string();
DocumentViewport viewport(getMetaData( url, QString::number(page->number() - 1) )); DocumentViewport viewport(getMetaData( url, QString::number(page->number() - 1) ));
r=n.getRect(); r=n.getRect();
kdDebug() << "Adding rect: " << url << " " << r << endl; kDebug() << "Adding rect: " << url << " " << r << endl;
// there is no way for us to support javascript properly // there is no way for us to support javascript properly
if (url.startsWith("JavaScript:")) if (url.startsWith("JavaScript:"))
continue; continue;
@ -306,7 +306,7 @@ void TGenerator::additionalRequestData()
if ( genTextPage ) if ( genTextPage )
{ {
kdDebug() << "Generating text page - start" << endl; kDebug() << "Generating text page - start" << endl;
KPDFTextPage *tp=new KPDFTextPage(); KPDFTextPage *tp=new KPDFTextPage();
recursiveExploreNodes(domDoc,tp); recursiveExploreNodes(domDoc,tp);
page->setSearchPage (tp); page->setSearchPage (tp);
@ -406,7 +406,7 @@ bool TGenerator::handleEvent (QEvent * /*event*/ )
/* /*
void PixmapThreader::run() void PixmapThreader::run()
{ {
kdDebug() << "starting thread\n"; kDebug() << "starting thread\n";
m_pix = m_gen->renderPixmap(m_req); m_pix = m_gen->renderPixmap(m_req);
QCustomEvent * readyEvent = new QCustomEvent( CHM_DATAREADY_ID ); QCustomEvent * readyEvent = new QCustomEvent( CHM_DATAREADY_ID );
readyEvent->setData(m_req); readyEvent->setData(m_req);
@ -419,7 +419,7 @@ void TGenerator::customEvent( QCustomEvent * e )
{ {
PixmapRequest* request=(PixmapRequest*) e->data(); PixmapRequest* request=(PixmapRequest*) e->data();
asyncLock.unlock(); asyncLock.unlock();
kdDebug() << "got pixmap\n"; kDebug() << "got pixmap\n";
request->page->setPixmap( request->id, px->takePixmap() ); request->page->setPixmap( request->id, px->takePixmap() );
signalRequestDone( request ); signalRequestDone( request );
} }

View file

@ -1,6 +1,6 @@
kde4_header() kde4_header()
include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ) include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}/okular ${CHM_INCLUDE_DIR} )
########### next target ############### ########### next target ###############
@ -13,7 +13,7 @@ kde4_add_plugin(kio_msits ${kio_msits_PART_SRCS})
kde4_install_libtool_file( ${PLUGIN_INSTALL_DIR} kio_msits ) kde4_install_libtool_file( ${PLUGIN_INSTALL_DIR} kio_msits )
target_link_libraries(kio_msits ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} chm ) target_link_libraries(kio_msits ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} ${CHM_LIBRARY} )
install_targets(${LIB_INSTALL_DIR}/kde4 kio_msits ) install_targets(${LIB_INSTALL_DIR}/kde4 kio_msits )

View file

@ -37,20 +37,20 @@ extern "C"
{ {
int kdemain( int argc, char **argv ) int kdemain( int argc, char **argv )
{ {
kdDebug() << "*** kio_msits Init" << endl; kDebug() << "*** kio_msits Init" << endl;
KInstance instance( "kio_msits" ); KInstance instance( "kio_msits" );
if ( argc != 4 ) if ( argc != 4 )
{ {
kdDebug() << "Usage: kio_msits protocol domain-socket1 domain-socket2" << endl; kDebug() << "Usage: kio_msits protocol domain-socket1 domain-socket2" << endl;
exit (-1); exit (-1);
} }
ProtocolMSITS slave ( argv[2], argv[3] ); ProtocolMSITS slave ( argv[2], argv[3] );
slave.dispatchLoop(); slave.dispatchLoop();
kdDebug() << "*** kio_msits Done" << endl; kDebug() << "*** kio_msits Done" << endl;
return 0; return 0;
} }
} }
@ -82,12 +82,12 @@ void ProtocolMSITS::get( const KUrl& url )
QString fileName; QString fileName;
chmUnitInfo ui; chmUnitInfo ui;
kdDebug() << "kio_msits::get() " << url.path() << endl; kDebug() << "kio_msits::get() " << url.path() << endl;
if ( !parseLoadAndLookup ( url, fileName ) ) if ( !parseLoadAndLookup ( url, fileName ) )
return; // error() has been called by parseLoadAndLookup return; // error() has been called by parseLoadAndLookup
kdDebug() << "kio_msits::get: parseLoadAndLookup returned " << fileName << endl; kDebug() << "kio_msits::get: parseLoadAndLookup returned " << fileName << endl;
if ( isDirectory (fileName) ) if ( isDirectory (fileName) )
{ {
@ -97,7 +97,7 @@ void ProtocolMSITS::get( const KUrl& url )
if ( !ResolveObject ( fileName, &ui) ) if ( !ResolveObject ( fileName, &ui) )
{ {
kdDebug() << "kio_msits::get: could not resolve filename " << fileName << endl; kDebug() << "kio_msits::get: could not resolve filename " << fileName << endl;
error( KIO::ERR_DOES_NOT_EXIST, url.prettyURL() ); error( KIO::ERR_DOES_NOT_EXIST, url.prettyURL() );
return; return;
} }
@ -106,14 +106,14 @@ void ProtocolMSITS::get( const KUrl& url )
if ( RetrieveObject (&ui, (unsigned char*) buf.data(), 0, ui.length) == 0 ) if ( RetrieveObject (&ui, (unsigned char*) buf.data(), 0, ui.length) == 0 )
{ {
kdDebug() << "kio_msits::get: could not retrieve filename " << fileName << endl; kDebug() << "kio_msits::get: could not retrieve filename " << fileName << endl;
error( KIO::ERR_NO_CONTENT, url.prettyURL() ); error( KIO::ERR_NO_CONTENT, url.prettyURL() );
return; return;
} }
totalSize( ui.length ); totalSize( ui.length );
KMimeMagicResult * result = KMimeMagic::self()->findBufferFileType( buf, fileName ); KMimeMagicResult * result = KMimeMagic::self()->findBufferFileType( buf, fileName );
kdDebug() << "Emitting mimetype " << result->mimeType() << endl; kDebug() << "Emitting mimetype " << result->mimeType() << endl;
mimeType( result->mimeType() ); mimeType( result->mimeType() );
data( buf ); data( buf );
@ -125,7 +125,7 @@ void ProtocolMSITS::get( const KUrl& url )
bool ProtocolMSITS::parseLoadAndLookup ( const KUrl& url, QString& abspath ) bool ProtocolMSITS::parseLoadAndLookup ( const KUrl& url, QString& abspath )
{ {
kdDebug() << "ProtocolMSITS::parseLoadAndLookup (const KUrl&) " << url.path() << endl; kDebug() << "ProtocolMSITS::parseLoadAndLookup (const KUrl&) " << url.path() << endl;
int pos = url.path().find ("::"); int pos = url.path().find ("::");
@ -138,7 +138,7 @@ bool ProtocolMSITS::parseLoadAndLookup ( const KUrl& url, QString& abspath )
QString filename = url.path().left (pos); QString filename = url.path().left (pos);
abspath = url.path().mid (pos + 2); // skip :: abspath = url.path().mid (pos + 2); // skip ::
kdDebug() << "ProtocolMSITS::parseLoadAndLookup: filename " << filename << ", path " << abspath << endl; kDebug() << "ProtocolMSITS::parseLoadAndLookup: filename " << filename << ", path " << abspath << endl;
if ( filename.isEmpty() ) if ( filename.isEmpty() )
{ {
@ -150,7 +150,7 @@ bool ProtocolMSITS::parseLoadAndLookup ( const KUrl& url, QString& abspath )
if ( m_chmFile && filename == m_openedFile ) if ( m_chmFile && filename == m_openedFile )
return true; return true;
kdDebug() << "Opening a new CHM file " << filename << endl; kDebug() << "Opening a new CHM file " << filename << endl;
// First try to open a temporary file // First try to open a temporary file
chmFile * tmpchm; chmFile * tmpchm;
@ -168,7 +168,7 @@ bool ProtocolMSITS::parseLoadAndLookup ( const KUrl& url, QString& abspath )
m_chmFile = tmpchm; m_chmFile = tmpchm;
m_openedFile = filename; m_openedFile = filename;
kdDebug() << "A CHM file " << filename << " has beed opened successfully" << endl; kDebug() << "A CHM file " << filename << " has beed opened successfully" << endl;
return true; return true;
} }
@ -211,7 +211,7 @@ void ProtocolMSITS::stat (const KUrl & url)
QString fileName; QString fileName;
chmUnitInfo ui; chmUnitInfo ui;
kdDebug() << "kio_msits::stat (const KUrl& url) " << url.path() << endl; kDebug() << "kio_msits::stat (const KUrl& url) " << url.path() << endl;
if ( !parseLoadAndLookup ( url, fileName ) ) if ( !parseLoadAndLookup ( url, fileName ) )
return; // error() has been called by parseLoadAndLookup return; // error() has been called by parseLoadAndLookup
@ -222,7 +222,7 @@ void ProtocolMSITS::stat (const KUrl & url)
return; return;
} }
kdDebug() << "kio_msits::stat: adding an entry for " << fileName << endl; kDebug() << "kio_msits::stat: adding an entry for " << fileName << endl;
UDSEntry entry; UDSEntry entry;
if ( isDirectory ( fileName ) ) if ( isDirectory ( fileName ) )
@ -248,7 +248,7 @@ void ProtocolMSITS::listDir (const KUrl & url)
{ {
QString filepath; QString filepath;
kdDebug() << "kio_msits::listDir (const KUrl& url) " << url.path() << endl; kDebug() << "kio_msits::listDir (const KUrl& url) " << url.path() << endl;
if ( !parseLoadAndLookup ( url, filepath ) ) if ( !parseLoadAndLookup ( url, filepath ) )
return; // error() has been called by parseLoadAndLookup return; // error() has been called by parseLoadAndLookup
@ -261,7 +261,7 @@ void ProtocolMSITS::listDir (const KUrl & url)
return; return;
} }
kdDebug() << "kio_msits::listDir: enumerating directory " << filepath << endl; kDebug() << "kio_msits::listDir: enumerating directory " << filepath << endl;
QVector<QString> listing; QVector<QString> listing;

View file

@ -11,7 +11,7 @@ namespace KCHMUrl
if ( uriregex.search ( url ) != -1 ) if ( uriregex.search ( url ) != -1 )
{ {
QString proto = uriregex.cap ( 1 ).lower(); QString proto = uriregex.cap ( 1 ).toLower();
// Filter the URLs which need to be opened by a browser // Filter the URLs which need to be opened by a browser
if ( proto == "http" if ( proto == "http"

View file

@ -378,9 +378,9 @@ bool CHMFile::ParseHhcAndFillTree (const QString& file, QDomDocument *tree, bool
QString tagword, tag = src.mid (pos, i - pos); QString tagword, tag = src.mid (pos, i - pos);
if ( word_end ) if ( word_end )
tagword = src.mid (pos, word_end - pos).lower(); tagword = src.mid (pos, word_end - pos).toLower();
else else
tagword = tag.lower(); tagword = tag.toLower();
// qDebug ("tag: '%s', tagword: '%s'\n", tag.ascii(), tagword.ascii()); // qDebug ("tag: '%s', tagword: '%s'\n", tag.ascii(), tagword.ascii());
@ -459,7 +459,7 @@ bool CHMFile::ParseHhcAndFillTree (const QString& file, QDomDocument *tree, bool
// offset+5 skips 'name=' // offset+5 skips 'name='
offset = findStringInQuotes (tag, offset + name_pattern.length(), pname, TRUE, FALSE); offset = findStringInQuotes (tag, offset + name_pattern.length(), pname, TRUE, FALSE);
pname = pname.lower(); pname = pname.toLower();
if ( (offset = tag.find (value_pattern, offset, FALSE)) == -1 ) if ( (offset = tag.find (value_pattern, offset, FALSE)) == -1 )
qFatal ("CHMFile::ParseAndFillTopicsTree: bad <param> tag '%s': no value=\n", tag.ascii()); qFatal ("CHMFile::ParseAndFillTopicsTree: bad <param> tag '%s': no value=\n", tag.ascii());
@ -565,9 +565,9 @@ bool CHMFile::ParseHhcAndFillTree (const QString& file, K3ListView *tree, bool a
QString tagword, tag = src.mid (pos, i - pos); QString tagword, tag = src.mid (pos, i - pos);
if ( word_end ) if ( word_end )
tagword = src.mid (pos, word_end - pos).lower(); tagword = src.mid (pos, word_end - pos).toLower();
else else
tagword = tag.lower(); tagword = tag.toLower();
//qDebug ("tag: '%s', tagword: '%s'\n", tag.ascii(), tagword.ascii()); //qDebug ("tag: '%s', tagword: '%s'\n", tag.ascii(), tagword.ascii());
@ -635,7 +635,7 @@ bool CHMFile::ParseHhcAndFillTree (const QString& file, K3ListView *tree, bool a
// offset+5 skips 'name=' // offset+5 skips 'name='
offset = findStringInQuotes (tag, offset + name_pattern.length(), pname, TRUE, FALSE); offset = findStringInQuotes (tag, offset + name_pattern.length(), pname, TRUE, FALSE);
pname = pname.lower(); pname = pname.toLower();
if ( (offset = tag.find (value_pattern, offset, FALSE)) == -1 ) if ( (offset = tag.find (value_pattern, offset, FALSE)) == -1 )
qFatal ("CHMFile::ParseAndFillTopicsTree: bad <param> tag '%s': no value=\n", tag.ascii()); qFatal ("CHMFile::ParseAndFillTopicsTree: bad <param> tag '%s': no value=\n", tag.ascii());
@ -1327,7 +1327,7 @@ Q3CString CHMFile::convertSearchWord( const QString & src )
}; };
if ( !m_textCodec ) if ( !m_textCodec )
return (Q3CString) src.lower().toLocal8Bit(); return (Q3CString) src.toLower().toLocal8Bit();
Q3CString dest = m_textCodec->fromUnicode (src); Q3CString dest = m_textCodec->fromUnicode (src);
@ -1343,7 +1343,7 @@ Q3CString CHMFile::convertSearchWord( const QString & src )
} }
} }
return dest.lower(); return dest.toLower();
} }
@ -1484,9 +1484,9 @@ bool CHMFile::ParseChmIndexFile ( const QString& file, bool asIndex, KCHMParsedI
QString tagword, tag = src.mid (pos, i - pos); QString tagword, tag = src.mid (pos, i - pos);
if ( word_end ) if ( word_end )
tagword = src.mid (pos, word_end - pos).lower(); tagword = src.mid (pos, word_end - pos).toLower();
else else
tagword = tag.lower(); tagword = tag.toLower();
//qDebug ("tag: '%s', tagword: '%s'\n", tag.ascii(), tagword.ascii()); //qDebug ("tag: '%s', tagword: '%s'\n", tag.ascii(), tagword.ascii());
@ -1549,7 +1549,7 @@ bool CHMFile::ParseChmIndexFile ( const QString& file, bool asIndex, KCHMParsedI
// offset+5 skips 'name=' // offset+5 skips 'name='
offset = findStringInQuotes (tag, offset + name_pattern.length(), pname, TRUE, FALSE); offset = findStringInQuotes (tag, offset + name_pattern.length(), pname, TRUE, FALSE);
pname = pname.lower(); pname = pname.toLower();
if ( (offset = tag.find (value_pattern, offset, FALSE)) == -1 ) if ( (offset = tag.find (value_pattern, offset, FALSE)) == -1 )
qFatal ("CHMFile::ParseAndFillTopicsTree: bad <param> tag '%s': no value=\n", tag.ascii()); qFatal ("CHMFile::ParseAndFillTopicsTree: bad <param> tag '%s': no value=\n", tag.ascii());