Commit 9a38ea76 authored by Joachim Eibl's avatar Joachim Eibl

KDiff3-0.9.90-Qt4

git-svn-id: https://kdiff3.svn.sourceforge.net/svnroot/kdiff3/trunk@77 c8aa9fed-2811-0410-8543-893ada326672
parent 58e41995
Version 0.9.90 - 2006/05/14
===========================
- Fixed KIO-problems of type "File exists" with tempfiles (introduced in 0.9.89)
- Fix for manual alignment with 3 files which caused crash (new feature in 0.9.89)
- Fix for Alt-Left caused crash for leftmost window on windows (due to changed compiler)
- Use of WResizeNoErase|WRepaintNoErase instead of WNoAutoErase (fix for compiler error with Qt3.1)
- Removed #include <konq_popupmenu.h> which is (currently) unneeded and required extra dependencies.
- Removed "Save/Load Directory Merge State ..." in directory menu. (These aren't working yet.)
- Fixed crash when used as Diff-part with KDevelop.
- Preserve executable bit when overwriting an existing file.
Version 0.9.89 - 2006/04/09
===========================
New features:
......
This diff is collapsed.
......@@ -3,6 +3,8 @@ This file contains some feature-wishes for future KDiff3-versions.
TODO
====
- Only show different lines.
- ftp: Abbruch beim Einlesen von Verzeichnis stoppt nicht vollständig
- Projekt-Verwaltung: Die ganze Config-Datei (=Projektdatei) an einen benutzerdefinierten Ort zu legen. (Keine Angabe->Default)
......@@ -36,12 +38,13 @@ TODO
- Overview-option to show only remaining conflicts.
- Colors for disabled and enabled arrow are very similar
- Overview bar for merge-window and for directory-window.
- ??? The gutters (kdiff3 have 2 "gutters") fonts and background-foreground colors sholud be configured other
than the "general" foreground-background colors. Otherwise they are confused with the main dialog.
- Try to autodetect the line-end-style
- Ignore cvs-keywords like $Revision$
- Ignore cvs-keywords like $Revision: x.y$
- Undo function in the merge-editor.
- More viewing options for directory widget.
......@@ -58,8 +61,8 @@ TODO
- Optionally show size/date for A/B/C
- Choose what to see (all or only different items)
- If only different items are visible: copy the others nevertheless to destdir.
- Warnung wenn Datum in B oder C ter als A ist.
- Zielverzeichnis nachtr�lich �derbar
- Warnung wenn Datum in B oder C älter als A ist.
- Zielverzeichnis nachträglich änderbar
- Bei Kopie von Remote nach lokal: Auf jeden Fall das modification Datum setzen.
- Ctrl-Space doesn't work when a file comparison takes place.
- Option to allow case-insensitive filename-matching.
......
......@@ -64,7 +64,8 @@ for i in `ls ../en | grep png`; do ln -s ../en/$i $i; done
Command to retrieve other translations from cvs:
cvs co kde-i18n/subdirs
for i in `cat kde-i18n/subdirs`; do cvs co kde-i18n/$i/docs/kdeextragear-1/kdiff3/index.docbook; done
#for i in `cat kde-i18n/subdirs`; do cvs co kde-i18n/$i/docs/kdeextragear-1/kdiff3/index.docbook; done
for i in `cat subdirs`; do wget http://websvn.kde.org/*checkout*/trunk/l10n/$i/docs/extragear-utils/kdiff3/index.docbook -O $i.docbook; done
If a new translation is available,
- create a new directory,
......
This diff is collapsed.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -459,7 +459,7 @@ void SourceData::readAndPreprocess(QTextCodec* pEncoding)
}
if (fileNameInPP != fileNameIn1)
{
FileAccess::removeFile( fileNameInPP );
FileAccess::removeTempFile( fileNameInPP );
}
}
......@@ -491,10 +491,10 @@ void SourceData::readAndPreprocess(QTextCodec* pEncoding)
m_pOptionDialog->m_LineMatchingPreProcessorCmd = "";
m_lmppData.readFile( fileNameIn2 );
}
FileAccess::removeFile( fileNameOut2 );
FileAccess::removeTempFile( fileNameOut2 );
if (fileNameInPP != fileNameIn2)
{
FileAccess::removeFile( fileNameInPP );
FileAccess::removeTempFile( fileNameInPP );
}
}
else if ( m_pOptionDialog->m_bIgnoreComments || m_pOptionDialog->m_bIgnoreCase )
......@@ -549,13 +549,13 @@ void SourceData::readAndPreprocess(QTextCodec* pEncoding)
// Remove unneeded temporary files. (A temp file from clipboard must not be deleted.)
if ( !bTempFileFromClipboard && !m_tempInputFileName.isEmpty() )
{
FileAccess::removeFile( m_tempInputFileName );
FileAccess::removeTempFile( m_tempInputFileName );
m_tempInputFileName = "";
}
if ( !fileNameOut1.isEmpty() )
{
FileAccess::removeFile( fileNameOut1 );
FileAccess::removeTempFile( fileNameOut1 );
fileNameOut1="";
}
}
......@@ -1265,66 +1265,36 @@ void correctManualDiffAlignment( Diff3LineList& d3ll, ManualDiffHelpList* pManua
int wi3 = missingWinIdx;
if ( i3->getLineInFile(wi3) >= 0 )
{
if ( iMDHL->firstLine(wi3) == i3->getLineInFile(wi3) )
// not found, move the line before iDest
Diff3Line d3l;
if ( wi3==1 )
{
if (i3->bAEqB) // Stop moving lines up if one equal is found.
break;
d3l.lineA = i3->lineA;
i3->lineA = -1;
i3->bAEqB = false;
i3->bAEqC = false;
}
if ( wi3==2 )
{
// found, align the line with iDest
if ( wi3==1 )
{
iDest->lineA = i3->lineA;
i3->lineA = -1;
i3->bAEqB = false;
i3->bAEqC = false;
}
if ( wi3==2 )
{
iDest->lineB = i3->lineB;
i3->lineB = -1;
i3->bAEqB = false;
i3->bBEqC = false;
}
if ( wi3==3 )
{
iDest->lineC = i3->lineC;
i3->lineC = -1;
i3->bAEqC = false;
i3->bBEqC = false;
}
break;
if (i3->bAEqB)
break;
d3l.lineB = i3->lineB;
i3->lineB = -1;
i3->bAEqB = false;
i3->bBEqC = false;
}
else
if ( wi3==3 )
{
// not found, move the line before iDest
Diff3Line d3l;
if ( wi3==1 )
{
if (i3->bAEqB)
continue;
d3l.lineA = i3->lineA;
i3->lineA = -1;
i3->bAEqB = false;
i3->bAEqC = false;
}
if ( wi3==2 )
{
if (i3->bAEqB)
continue;
d3l.lineB = i3->lineB;
i3->lineB = -1;
i3->bAEqB = false;
i3->bBEqC = false;
}
if ( wi3==3 )
{
if (i3->bAEqC)
continue;
d3l.lineC = i3->lineC;
i3->lineC = -1;
i3->bAEqC = false;
i3->bBEqC = false;
}
d3ll.insert( iDest, d3l );
if (i3->bAEqC)
break;
d3l.lineC = i3->lineC;
i3->lineC = -1;
i3->bAEqC = false;
i3->bBEqC = false;
}
d3ll.insert( iDest, d3l );
}
} // for(), searching for wi3
}
......
......@@ -149,7 +149,7 @@ DiffTextWindow::DiffTextWindow(
OptionDialog* pOptionDialog,
int winIdx
)
: QWidget(pParent, 0, Qt::WNoAutoErase | Qt::WNoAutoErase)
: QWidget(pParent, 0, Qt::WNoAutoErase )
{
d = new DiffTextWindowData(this);
d->m_pDiffTextWindowFrame = pParent;
......
......@@ -51,7 +51,7 @@
#include <klocale.h>
#include <iostream>
#include <assert.h>
#include <konq_popupmenu.h>
//#include <konq_popupmenu.h>
static bool conflictingFileTypes(MergeFileInfos& mfi);
/*
......@@ -134,7 +134,7 @@ TempRemover::TempRemover(const QString& origName, FileAccess& fa)
TempRemover::~TempRemover()
{
if ( m_bTemp && ! m_name.isEmpty() )
FileAccess::removeFile(m_name);
FileAccess::removeTempFile(m_name);
}
void DirectoryMergeWindow::fastFileComparison(
......@@ -2873,8 +2873,8 @@ void DirectoryMergeWindow::initDirectoryMergeActions( QObject* pKDiff3App, KActi
m_pDirFoldAll = new KAction(i18n("Fold All Subdirs"), 0, p, SLOT(slotFoldAllSubdirs()), ac, "dir_fold_all");
m_pDirUnfoldAll = new KAction(i18n("Unfold All Subdirs"), 0, p, SLOT(slotUnfoldAllSubdirs()), ac, "dir_unfold_all");
m_pDirRescan = new KAction(i18n("Rescan"), Qt::SHIFT+Qt::Key_F5, p, SLOT(reload()), ac, "dir_rescan");
m_pDirSaveMergeState = 0;//new KAction(i18n("Save Directory Merge State ..."), 0, p, SLOT(slotSaveMergeState()), ac, "dir_save_merge_state");
m_pDirLoadMergeState = 0;//new KAction(i18n("Load Directory Merge State ..."), 0, p, SLOT(slotLoadMergeState()), ac, "dir_load_merge_state");
m_pDirSaveMergeState = 0; //new KAction(i18n("Save Directory Merge State ..."), 0, p, SLOT(slotSaveMergeState()), ac, "dir_save_merge_state");
m_pDirLoadMergeState = 0; //new KAction(i18n("Load Directory Merge State ..."), 0, p, SLOT(slotLoadMergeState()), ac, "dir_load_merge_state");
m_pDirChooseAEverywhere = new KAction(i18n("Choose A for All Items"), 0, p, SLOT(slotChooseAEverywhere()), ac, "dir_choose_a_everywhere");
m_pDirChooseBEverywhere = new KAction(i18n("Choose B for All Items"), 0, p, SLOT(slotChooseBEverywhere()), ac, "dir_choose_b_everywhere");
m_pDirChooseCEverywhere = new KAction(i18n("Choose C for All Items"), 0, p, SLOT(slotChooseCEverywhere()), ac, "dir_choose_c_everywhere");
......
......@@ -75,7 +75,7 @@ FileAccess::~FileAccess()
{
if( !m_localCopy.isEmpty() )
{
removeFile( m_localCopy );
removeTempFile( m_localCopy );
}
}
......@@ -149,12 +149,8 @@ void FileAccess::setFile( const QString& name, bool bWantToWrite )
{
// Try reading a clearcase file
m_localCopy = FileAccess::tempFileName();
QString ctName = m_localCopy + ".cleartool"; // Because cleartool can't overwrite existing file
QString cmd = "cleartool get -to \"" + ctName + "\" \"" + m_absFilePath + "\"";
QString cmd = "cleartool get -to \"" + m_localCopy + "\" \"" + m_absFilePath + "\"";
::system( cmd.local8Bit() );
FileAccess ctFile(ctName);
ctFile.copyFile(m_localCopy);
ctFile.removeFile();
QFileInfo fi( m_localCopy );
m_bReadable = fi.isReadable();
......@@ -394,6 +390,20 @@ bool FileAccess::writeFile( const void* pSrcBuffer, unsigned long length )
pp.setCurrent( double(i)/length );
if ( pp.wasCancelled() ) return false;
}
f.close();
#ifndef _WIN32
if ( isExecutable() ) // value is true if the old file was executable
{
// Preserve attributes
struct stat srcFileStatus;
int statResult = ::stat( filePath().ascii(), &srcFileStatus );
if (statResult==0)
{
::chmod ( filePath().ascii(), srcFileStatus.st_mode | S_IXUSR );
}
}
#endif
return true;
}
}
......@@ -465,22 +475,30 @@ QString FileAccess::tempFileName()
fileName = tmpDir + "/kdiff3_" + QString::number(i) +".tmp";
if ( ! FileAccess::exists(fileName) &&
QFile(fileName).open(QIODevice::WriteOnly) ) // open, truncate and close the file, true if successful
{
{
break;
}
}
}
return QDir::convertSeparators(fileName);
return QDir::convertSeparators(fileName+".2");
#else // using KDE
KTempFile tmpFile;
//tmpFile.setAutoDelete( true ); // We only want the name. Delete the precreated file immediately.
tmpFile.close();
return tmpFile.name();
return tmpFile.name()+".2";
#endif
}
bool FileAccess::removeTempFile( const QString& name ) // static
{
if (name.endsWith(".2"))
FileAccess(name.left(name.length()-2)).removeFile();
return FileAccess(name).removeFile();
}
bool FileAccess::makeDir( const QString& dirName )
{
FileAccessJobHandler fh(0);
......
......@@ -70,6 +70,7 @@ public:
bool createBackup( const QString& bakExtension );
static QString tempFileName();
static bool removeTempFile( const QString& );
bool removeFile();
static bool removeFile( const QString& );
static bool makeDir( const QString& );
......
......@@ -63,13 +63,14 @@ Comment[hu]=Segédprogram fájlok, könyvtárak összehasonlításához
Comment[is]=Skráa og möppu samanburðar og sameiningartól
Comment[it]=Uno strumento di confronto e unione di file e directory
Comment[ja]=ファイル/ディレクトリの比較/統合ツール
Comment[ka]=ფაილთა და საქაღალდეთა შედარების და შერწყმის ხელსაწყო
Comment[ms]=Perbandingan Fail Dan Direktori Dan Alatan Gabungan
Comment[nb]=Et verktøy for å sammenlikne og slå sammen filer og mapper
Comment[nl]=Hulpmiddel voor het vergelijken en samenvoegen van bestanden en mappen
Comment[pa]=ਇੱਕ ਫਾਇਲ ਅਤੇ ਡਾਇਰੈਕਟਰੀ ਤੁਲਨਾ ਅਤੇ ਮਿਲਾਨ ਸੰਦ ਹੈ
Comment[pl]=Narzędzie do porównywania oraz łączenia plików i katalogów
Comment[pt]=Uma Ferramenta de Comparação e Junção de Ficheiros e Pastas
Comment[pt_BR]=Uma Comparação de Arquivos e Pastas e uma Ferramenta para Mesclar Diferenças
Comment[pt_BR]=Uma Ferramenta de Comparação e Mesclagem de Arquivos e Diretórios
Comment[ru]=Утилита сравнения и объединения файлов и каталогов
Comment[sr]=Алат за поређење и стапање фајлова и директоријума
Comment[sr@Latn]=Alat za poređenje i stapanje fajlova i direktorijuma
......
......@@ -44,7 +44,7 @@ win32 {
QMAKE_CXXFLAGS_DEBUG += -DQT_NO_ASCII_CAST
QMAKE_CXXFLAGS_RELEASE += -DNDEBUG -DQT_NO_ASCII_CAST
RC_FILE = kdiff3.rc
RC_FILE = kdiff3win.rc
}
unix {
documentation.path = /usr/local/share/doc/kdiff3
......
......@@ -178,8 +178,8 @@ bool KDiff3Part::openFile()
m_widget->slotFileOpen2( fileName1, tempFileName, "", "",
"", version2.isEmpty() ? fileName2 : "REV:"+version2+":"+fileName2, "", 0 ); // alias names
std::cerr << "KDiff3: f1:" << fileName1.latin1() <<"<->"<<tempFileName.latin1()<< std::endl;
// FileAccess::removeFile( tempFileName );
// std::cerr << "KDiff3: f1:" << fileName1.latin1() <<"<->"<<tempFileName.latin1()<< std::endl;
FileAccess::removeTempFile( tempFileName );
}
else if ( version2.isEmpty() && f2.exists() )
{
......@@ -193,7 +193,8 @@ bool KDiff3Part::openFile()
m_widget->slotFileOpen2( tempFileName, fileName2, "", "",
version1.isEmpty() ? fileName1 : "REV:"+version1+":"+fileName1, "", "", 0 ); // alias name
std::cerr << "KDiff3: f2:" << fileName2.latin1() <<"<->"<<tempFileName.latin1()<< std::endl;
// std::cerr << "KDiff3: f2:" << fileName2.latin1() <<"<->"<<tempFileName.latin1()<< std::endl;
FileAccess::removeTempFile( tempFileName );
}
else if ( !version1.isEmpty() && !version2.isEmpty() )
{
......@@ -215,9 +216,9 @@ bool KDiff3Part::openFile()
"", 0
);
std::cerr << "KDiff3: f1/2:" << tempFileName1.latin1() <<"<->"<<tempFileName2.latin1()<< std::endl;
// FileAccess::removeFile( tempFileName1 );
// FileAccess::removeFile( tempFileName2 );
// std::cerr << "KDiff3: f1/2:" << tempFileName1.latin1() <<"<->"<<tempFileName2.latin1()<< std::endl;
FileAccess::removeTempFile( tempFileName1 );
FileAccess::removeTempFile( tempFileName2 );
return true;
}
else
......
......@@ -33,6 +33,7 @@
#include <qtextstream.h>
#include <qlayout.h>
#include <q3dockarea.h>
#include <QTabWidget>
//Added by qt3to4:
#include <QPaintEvent>
#include <Q3VBoxLayout>
......@@ -122,7 +123,7 @@ QString getTranslationDir()
QString exePath;
if (r!=0) { exePath = buf; }
else { exePath = "."; }
return exePath;
return exePath+"/translations";
#else
return ".";
#endif
......@@ -210,9 +211,9 @@ Q3VBox* KDialogBase::addVBoxPage( const QString& name, const QString& /*info*/,
return p;
}
Q3Frame* KDialogBase::addPage( const QString& name, const QString& /*info*/, int )
QFrame* KDialogBase::addPage( const QString& name, const QString& /*info*/, int )
{
Q3Frame* p = new Q3Frame(0);
QFrame* p = new QFrame();
p->setObjectName( name );
addTab( p, name );
return p;
......@@ -367,9 +368,17 @@ void KMainWindow::createGUI()
void KMainWindow::slotAbout()
{
Q3TabDialog d;
QDialog d;
QVBoxLayout* l = new QVBoxLayout( &d );
QTabWidget* pTabWidget = new QTabWidget;
l->addWidget( pTabWidget );
QPushButton* pOkButton = new QPushButton(i18n("Ok"));
connect( pOkButton, SIGNAL(clicked()), &d, SLOT(accept()));
l->addWidget( pOkButton );
d.setCaption("About " + s_appName);
Q3TextBrowser* tb1 = new Q3TextBrowser(&d);
Q3TextBrowser* tb1 = new Q3TextBrowser();
tb1->setWordWrap( Q3TextEdit::NoWrap );
tb1->setText(
s_appName + " Version " + s_version +
......@@ -378,7 +387,7 @@ void KMainWindow::slotAbout()
"\n\nHomepage: " + s_homepage +
"\n\nLicence: GNU GPL Version 2"
);
d.addTab(tb1,i18n("&About"));
pTabWidget->addTab(tb1,i18n("&About"));
std::list<KAboutData::AboutDataEntry>::iterator i;
......@@ -391,10 +400,10 @@ void KMainWindow::slotAbout()
if ( !i->m_weblink.isEmpty() ) s2 += " " + i->m_weblink + "\n";
s2 += "\n";
}
Q3TextBrowser* tb2 = new Q3TextBrowser(&d);
Q3TextBrowser* tb2 = new Q3TextBrowser();
tb2->setWordWrap( Q3TextEdit::NoWrap );
tb2->setText(s2);
d.addTab(tb2,i18n("A&uthor"));
pTabWidget->addTab(tb2,i18n("A&uthor"));
QString s3;
for( i=s_pAboutData->m_creditList.begin(); i!=s_pAboutData->m_creditList.end(); ++i )
......@@ -405,10 +414,10 @@ void KMainWindow::slotAbout()
if ( !i->m_weblink.isEmpty() ) s3 += " " + i->m_weblink + "\n";
s3 += "\n";
}
Q3TextBrowser* tb3 = new Q3TextBrowser(&d);
Q3TextBrowser* tb3 = new Q3TextBrowser();
tb3->setWordWrap( Q3TextEdit::NoWrap );
tb3->setText(s3);
d.addTab(tb3,i18n("&Thanks To"));
pTabWidget->addTab(tb3,i18n("&Thanks To"));
d.resize(400,300);
d.exec();
......
......@@ -107,7 +107,7 @@ public:
int BarIcon(const QString& iconName, int );
Q3VBox* addVBoxPage( const QString& name, const QString& info, int );
Q3Frame* addPage( const QString& name, const QString& info, int );
QFrame* addPage( const QString& name, const QString& info, int );
int spacingHint();
virtual void accept();
......
......@@ -138,7 +138,8 @@ void MergeResultWindow::init(
int wsc;
int nofUnsolved = getNrOfUnsolvedConflicts(&wsc);
m_pStatusBar->message( i18n("Number of remaining unsolved conflicts: %1 (of which %2 are whitespace)")
if (m_pStatusBar)
m_pStatusBar->message( i18n("Number of remaining unsolved conflicts: %1 (of which %2 are whitespace)")
.arg(nofUnsolved).arg(wsc) );
}
......
......@@ -21,7 +21,7 @@
#include <qcheckbox.h>
#include <qcombobox.h>
#include <qfont.h>
#include <q3frame.h>
#include <QFrame>
#include <qlayout.h>
#include <qlabel.h>
#include <qlineedit.h>
......@@ -507,7 +507,7 @@ void OptionDialog::setupOtherOptions()
void OptionDialog::setupFontPage( void )
{
Q3Frame *page = addPage( i18n("Font"), i18n("Editor & Diff Output Font" ),
QFrame *page = addPage( i18n("Font"), i18n("Editor & Diff Output Font" ),
BarIcon("fonts", KIcon::SizeMedium ) );
Q3VBoxLayout *topLayout = new Q3VBoxLayout( page, 5, spacingHint() );
......@@ -539,7 +539,7 @@ void OptionDialog::setupFontPage( void )
void OptionDialog::setupColorPage( void )
{
Q3Frame *page = addPage( i18n("Color"), i18n("Colors Settings"),
QFrame *page = addPage( i18n("Color"), i18n("Colors Settings"),
BarIcon("colorize", KIcon::SizeMedium ) );
Q3VBoxLayout *topLayout = new Q3VBoxLayout( page, 5, spacingHint() );
......@@ -667,7 +667,7 @@ void OptionDialog::setupColorPage( void )
void OptionDialog::setupEditPage( void )
{
Q3Frame *page = addPage( i18n("Editor"), i18n("Editor Behavior"),
QFrame *page = addPage( i18n("Editor"), i18n("Editor Behavior"),
BarIcon("edit", KIcon::SizeMedium ) );
Q3VBoxLayout *topLayout = new Q3VBoxLayout( page, 5, spacingHint() );
......@@ -729,7 +729,7 @@ void OptionDialog::setupEditPage( void )
void OptionDialog::setupDiffPage( void )
{
Q3Frame *page = addPage( i18n("Diff and Merge"), i18n("Diff and Merge Settings"),
QFrame *page = addPage( i18n("Diff and Merge"), i18n("Diff and Merge Settings"),
BarIcon("misc", KIcon::SizeMedium ) );
Q3VBoxLayout *topLayout = new Q3VBoxLayout( page, 5, spacingHint() );
......@@ -945,7 +945,7 @@ void OptionDialog::setupDiffPage( void )
void OptionDialog::setupDirectoryMergePage( void )
{
Q3Frame *page = addPage( i18n("Directory Merge"), i18n("Directory Merge"),
QFrame *page = addPage( i18n("Directory Merge"), i18n("Directory Merge"),
BarIcon("folder", KIcon::SizeMedium ) );
Q3VBoxLayout *topLayout = new Q3VBoxLayout( page, 5, spacingHint() );
......@@ -1118,7 +1118,7 @@ static void insertCodecs(OptionComboBox* p)
void OptionDialog::setupRegionalPage( void )
{
Q3Frame *page = addPage( i18n("Regional Settings"), i18n("Regional Settings"),
QFrame *page = addPage( i18n("Regional Settings"), i18n("Regional Settings"),
BarIcon("locale"/*"charset"*/, KIcon::SizeMedium ) );
Q3VBoxLayout *topLayout = new Q3VBoxLayout( page, 5, spacingHint() );
......@@ -1318,7 +1318,7 @@ static char* countryMap[]={
void OptionDialog::setupIntegrationPage( void )
{
Q3Frame *page = addPage( i18n("Integration"), i18n("Integration Settings"),
QFrame *page = addPage( i18n("Integration"), i18n("Integration Settings"),
BarIcon("launch"/*"charset"*/, KIcon::SizeMedium ) );
Q3VBoxLayout *topLayout = new Q3VBoxLayout( page, 5, spacingHint() );
......
......@@ -1998,8 +1998,9 @@ void KDiff3App::slotWinFocusPrev()
//if ( m_pDirectoryMergeInfo->isVisible() ) visibleWidgetList.push_back(m_pDirectoryMergeInfo->getInfoList());
std::list<QWidget*>::iterator i = std::find( visibleWidgetList.begin(), visibleWidgetList.end(), focus);
if ( i==visibleWidgetList.begin() )
i=visibleWidgetList.end();
--i;
if ( i==visibleWidgetList.end() ) --i;
if ( i!=visibleWidgetList.end() )
{
if ( *i == m_pDirectoryMergeWindow && ! dirShowBoth->isChecked() )
......
#undef VERSION
#define VERSION "0.9.89"
#define VERSION "0.9.90-Qt4"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment