diff -r a61ee61b1c2c -r 7e55c6268c35 Plugins/VcsPlugins/vcsPySvn/ProjectBrowserHelper.py --- a/Plugins/VcsPlugins/vcsPySvn/ProjectBrowserHelper.py Mon Aug 05 13:17:51 2013 +0200 +++ b/Plugins/VcsPlugins/vcsPySvn/ProjectBrowserHelper.py Mon Aug 05 15:58:30 2013 +0200 @@ -257,10 +257,17 @@ act = menu.addAction(UI.PixmapCache.getIcon("vcsDiff.png"), self.trUtf8('Show difference'), self._VCSDiff) self.vcsMenuActions.append(act) + act = menu.addAction(UI.PixmapCache.getIcon("vcsSbsDiff.png"), + self.trUtf8('Show difference side-by-side'), self.__SVNSbsDiff) + self.vcsMenuActions.append(act) act = menu.addAction(UI.PixmapCache.getIcon("vcsDiff.png"), self.trUtf8('Show difference (extended)'), self.__SVNExtendedDiff) self.vcsMenuActions.append(act) + act = menu.addAction(UI.PixmapCache.getIcon("vcsSbsDiff.png"), + self.trUtf8('Show difference side-by-side (extended)'), + self.__SVNSbsExtendedDiff) + self.vcsMenuActions.append(act) act = menu.addAction(UI.PixmapCache.getIcon("vcsDiff.png"), self.trUtf8('Show difference (URLs)'), self.__SVNUrlDiff) @@ -767,6 +774,24 @@ names.append(itm.dirName()) self.vcs.svnUrlDiff(names) + def __SVNSbsDiff(self): + """ + Private slot called by the context menu to show the difference of a file to + the repository side-by-side. + """ + itm = self.browser.currentItem() + fn = itm.fileName() + self.vcs.svnSbsDiff(fn) + + def __SVNSbsExtendedDiff(self): + """ + Private slot called by the context menu to show the difference of a file to + the repository side-by-side allowing the selection of revisions to compare. + """ + itm = self.browser.currentItem() + fn = itm.fileName() + self.vcs.svnSbsDiff(fn, extended=True) + def __SVNLogBrowser(self): """ Private slot called by the context menu to show the log browser for a file. @@ -774,9 +799,11 @@ itm = self.browser.currentItem() try: fn = itm.fileName() + isFile = True except AttributeError: fn = itm.dirName() - self.vcs.svnLogBrowser(fn) + isFile = False + self.vcs.svnLogBrowser(fn, isFile=isFile) def __SVNBlame(self): """