[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdevplatform/vcs/widgets
From: Andreas Pakulat <apaku () gmx ! de>
Date: 2008-03-15 0:37:24
Message-ID: 1205541444.849461.9752.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 785807 by apaku:
Wasn't there a reason I pushed for a setAutoDelete( false ) member on KJob? Right, \
make it possible to view diffs between revisions directly from KDevelop's History \
view!
M +21 -8 vcseventwidget.cpp
--- trunk/KDE/kdevplatform/vcs/widgets/vcseventwidget.cpp #785806:785807
@@ -29,8 +29,9 @@
#include "ui_vcseventwidget.h"
+#include <interfaces/iplugin.h>
+
#include "../vcsjob.h"
-#include <interfaces/iplugin.h>
#include "../interfaces/ibasicversioncontrol.h"
#include "../vcsrevision.h"
#include "../vcsevent.h"
@@ -39,6 +40,7 @@
#include "../models/vcsitemeventmodel.h"
#include "../models/vcseventmodel.h"
+#include "vcsdiffwidget.h"
namespace KDevelop
{
@@ -132,10 +134,13 @@
KDevelop::VcsJob* job = iface->diff( loc, loc, prev, ev.revision() );
-
-// SvnDiffDialog* dlg = new SvnDiffDialog( job );
-// connect( dlg, SIGNAL( destroyed( QObject* ) ), job, SLOT( \
deleteLater() ) );
-// dlg->show();
+ VcsDiffWidget* widget = new VcsDiffWidget( job );
+ widget->setRevisions( prev, ev.revision() );
+ KDialog* dlg = new KDialog( q );
+ dlg->setCaption( i18n("Difference To Previous") );
+ dlg->setButtons( KDialog::Ok );
+ dlg->setMainWidget( widget );
+ dlg->show();
}
}
}
@@ -154,9 +159,13 @@
KDevelop::VcsLocation loc( m_url );
KDevelop::VcsJob* job = iface->diff( loc, loc, ev1.revision(), \
ev2.revision() );
-// SvnDiffDialog* dlg = new SvnDiffDialog( job );
-// connect( dlg, SIGNAL( destroyed( QObject* ) ), job, SLOT( \
deleteLater() ) );
-// dlg->show();
+ VcsDiffWidget* widget = new VcsDiffWidget( job );
+ widget->setRevisions( ev1.revision(), ev2.revision() );
+ KDialog* dlg = new KDialog( q );
+ dlg->setCaption( i18n("Difference between Revisions") );
+ dlg->setButtons( KDialog::Ok );
+ dlg->setMainWidget( widget );
+ dlg->show();
}
}
}
@@ -166,6 +175,9 @@
{
d->m_job = job;
+ //Don't autodelete this job, its metadata will be used later on
+ d->m_job->setAutoDelete( false );
+
d->m_url = url;
d->m_ui = new Ui::VcsEventWidget();
d->m_ui->setupUi(this);
@@ -203,6 +215,7 @@
delete d->m_logModel;
delete d->m_detailModel;
delete d->m_ui;
+ d->m_job->deleteLater();
delete d;
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic