/* This file is part of libkdepim. Copyright (c) 2004 Tobias Koenig 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include #include "htmldiffalgodisplay.h" using namespace KSync; static QString textToHTML( const QString &text ) { return QStyleSheet::convertFromPlainText( text ); } HTMLDiffAlgoDisplay::HTMLDiffAlgoDisplay( QWidget *parent ) : KTextBrowser( parent ) { setWrapPolicy( QTextEdit::AtWordBoundary ); setVScrollBarMode( QScrollView::AlwaysOff ); setHScrollBarMode( QScrollView::AlwaysOff ); } void HTMLDiffAlgoDisplay::begin() { clear(); mText = ""; mText.append( "" ); mText.append( QString( "" ) .arg( KGlobalSettings::textColor().name() ) .arg( KGlobalSettings::baseColor().name() ) ); mText.append( "
" ); mText.append( QString( "" ) .arg( mLeftTitle ) .arg( mRightTitle ) ); } void HTMLDiffAlgoDisplay::end() { mText.append( "
%1 %2
" "" "" ); setText( mText ); } void HTMLDiffAlgoDisplay::setLeftSourceTitle( const QString &title ) { mLeftTitle = title; } void HTMLDiffAlgoDisplay::setRightSourceTitle( const QString &title ) { mRightTitle = title; } void HTMLDiffAlgoDisplay::additionalLeftField( const QString &id, const QString &value ) { mText.append( QString( "%1:%2" ) .arg( id ) .arg( textToHTML( value ) ) ); } void HTMLDiffAlgoDisplay::additionalRightField( const QString &id, const QString &value ) { mText.append( QString( "%1:%2" ) .arg( id ) .arg( textToHTML( value ) ) ); } void HTMLDiffAlgoDisplay::conflictField( const QString &id, const QString &leftValue, const QString &rightValue ) { mText.append( QString( "%1:%2%3" ) .arg( id ) .arg( textToHTML( leftValue ) ) .arg( textToHTML( rightValue ) ) ); }