by
Changes to 4 files · Browse files at 2c0e887d8052 Showing diff from parent b4e308ec289f 05bba35d2b7a Diff from another changeset...
@@ -159,12 +159,13 @@ subrepochange, sstatedesc = genSubrepoRevChangedDescription(sparent, srev)
out += subrepochange
else:
+ sstatedesc = 'dirty'
if srev != sactual:
subrepochange, sstatedesc = \
genSubrepoRevChangedDescription(srev, sactual)
out += subrepochange
- if data:
- sstatedesc += ' and dirty'
+ if data:
+ sstatedesc += ' and dirty'
self.contents = u''.join(out)
if not sactual:
sstatedesc = 'removed'
|
@@ -19,7 +19,7 @@ from tortoisehg.util import hglib
from tortoisehg.hgqt.i18n import _
from tortoisehg.hgqt import qtlib, visdiff, revert
-from tortoisehg.hgqt.filedialogs import FileLogDialog, FileDiffDialog
+from tortoisehg.hgqt.filedialogs import FileLogDialog, FileDiffDialog
from PyQt4.QtCore import *
from PyQt4.QtGui import *
@@ -31,7 +31,8 @@
fileSelected = pyqtSignal(QString, QString)
clearDisplay = pyqtSignal()
- contextmenu = None
+ filecontextmenu = None
+ subrepocontextmenu = None
def __init__(self, parent=None):
QTableView.__init__(self, parent)
@@ -237,15 +238,23 @@ self.addAction(act)
def contextMenuEvent(self, event):
- if not self.contextmenu:
- self.contextmenu = QMenu(self)
- for act in ['diff', 'ldiff', 'edit', 'ledit', 'revert',
- 'navigate', 'diffnavigate']:
+ itemissubrepo = self.currentFile() in self.model()._ctx.substate.keys()
+ # Subrepos and regular items have different context menus
+ if itemissubrepo:
+ contextmenu = self.subrepocontextmenu
+ actionlist = []
+ else:
+ contextmenu = self.filecontextmenu
+ actionlist = ['diff', 'ldiff', 'edit', 'ledit', 'revert',
+ 'navigate', 'diffnavigate']
+ if not contextmenu:
+ contextmenu = QMenu(self)
+ for act in actionlist:
if act:
- self.contextmenu.addAction(self._actions[act])
+ contextmenu.addAction(self._actions[act])
else:
- self.contextmenu.addSeparator()
- self.contextmenu.exec_(event.globalPos())
+ contextmenu.addSeparator()
+ contextmenu.exec_(event.globalPos())
def resizeEvent(self, event):
if self.model() is not None:
|
@@ -417,7 +417,7 @@ wctx.dirtySubrepos.append(s)
except EnvironmentError, e:
self.showMessage.emit(hglib.tounicode(str(e)))
- except (error.RepoLookupError, error.ConfigError), e:
+ except (error.LookupError, error.RepoError, error.ConfigError), e:
self.showMessage.emit(hglib.tounicode(str(e)))
except util.Abort, e:
if e.hint:
|
Loading...