by
Changes to 4 files · Browse files at 46563a100cbc Showing diff from parent 9b7d5ec6dbf0 f4b1111dd067 Diff from another changeset...
|
|
@@ -226,44 +226,47 @@ revision context menu.
:guilabel:`Visualize Change`
- open this change in your visual diff tool
+ Open this change in your visual diff tool
:guilabel:`Display Change`
- open this changeset in the changeset browser (more below)
+ Open this changeset in the changeset browser (more below)
:guilabel:`Diff to Local`
- display changes (visual diff) between this revision and your
+ Display changes (visual diff) between this revision and your
current working directory
:guilabel:`Copy Hash`
- copy current revision's full hash to the clipboard
+ Copy current revision's full hash to the clipboard
:guilabel:`Push to Here`
- performs the equivalent of 'push -r <rev>'. This option is only
+ Performs the equivalent of 'push -r <rev>'. This option is only
available on changesets marked as outgoing.
:guilabel:`Update...`
- update your working directory to this revision [#rcm1]_
+ Update your working directory to this revision. Opens the
+ TortoiseHg update dialog with this revision selected.
:guilabel:`Merge With...`
- merge with this revision [#rcm2]_
+ Merge with this revision. Opens the TortoiseHg merge dialog with
+ this revision selected.
:guilabel:`Backout...`
- create a backout changeset for selected revision
+ Create a backout changeset for selected revision
:guilabel:`Revert`
- revert working copy to this revision's contents, without
+ Revert working copy to this revision's contents, without
updating working directory parent revision. Use with care.
:guilabel:`Export`
:guilabel:`Export Patch`
- generate a patch file containing this revision's changes
+ Generate a patch file containing this revision's changes
:guilabel:`Email Patch`
- send this revision's changes to email recipient [#rcm3]_
+ Send this revision's changes to email recipient. Opens the
+ TortoiseHg email dialog with this revision selected.
:guilabel:`Bundle rev:tip`
- create a bundle with all revs from selected to tip
+ Create a bundle with all revs from selected to tip
:guilabel:`Archive...`
- open the archive dialog for this revision, allowing user to
+ Open the archive dialog for this revision, allowing user to
generate a backup copy of the repository at that revision.
:guilabel:`Tag`
:guilabel:`Add/Remove Tag`
- opens the TortoiseHg tag dialog with this revision selected
+ Open the TortoiseHg tag dialog with this revision selected
:guilabel:`Add/Move/Remove Bookmark`
- opens the TortoiseHg bookmark dialog with this revision selected
+ Open the TortoiseHg bookmark dialog with this revision selected
*This option requires the boomarks extension to be enabled*
:guilabel:`Rename Bookmark`
- opens the TortoiseHg bookmark rename dialog
+ Open the TortoiseHg bookmark rename dialog
*This option requires the boomarks extension to be enabled*
:guilabel:`Mercurial Queues`
:guilabel:`Import revision to MQ`
@@ -272,7 +275,7 @@ when MQ is enabled*
:guilabel:`Strip Revision...`
Remove the selected revision and all of it's descendants from the
- repository [#rcm4]_ *Only visible when MQ is enabled*
+ repository [#rcm1]_ *Only visible when MQ is enabled*
:guilabel:`Transplant to local`
Transplant selected revision onto the current working parent.
*Only visible when the transplant extension is enabled*
@@ -294,16 +297,17 @@ Opens status viewer with cumulative changes of the range of
changesets. The status viewer allows cherry picked changes to
be saved to a file.
- :guilabel:`Visual Diff with selected` [#rcm5]_
+ :guilabel:`Visual Diff with selected`
Opens visual diff window with cumulative changes of the range
- of changesets.
+ of changesets. See also menuselection:`Global Settings -->
+ TortoiseHg --> Visual Diff Tool`
:guilabel:`Email from here to selected`
Opens email dialog with range of changesets.
:guilabel:`Bundle from here to selected`
Creates a bundle file with range of changesets.
:guilabel:`Export patches from here to selected`
Creates a patch file for each changeset in selected range.
- :guilabel:`Merge with selected` [#rcm6]_
+ :guilabel:`Merge with selected`
Merges this revision with the other selected revision. If
neither revision is currently checked out, the merge dialog will
be forced to update to the first selected revision before
@@ -321,15 +325,9 @@ Import selected revision range into the current patch queue.
*Only visible when MQ is enabled*
-.. [#rcm1] Opens the TortoiseHg update dialog with this revision selected.
-.. [#rcm2] Opens the TortoiseHg merge dialog with this revision selected.
-.. [#rcm3] Opens the TortoiseHg email dialog with this revision selected.
-.. [#rcm4] The strip command will store the stripped revisions in a bundle file
+.. [#rcm1] The strip command will store the stripped revisions in a bundle file
that can later be reapplied.
- See `also <http://mercurial.selenic.com/wiki/EditingHistory>`_.
-.. [#rcm5] :menuselection:`Global Settings --> TortoiseHg --> Visual Diff Tool`
-.. [#rcm6] Only sensitive if the selected revision is your current working
- directory parent
+ See also `EditingHistory <http://mercurial.selenic.com/wiki/EditingHistory>`_.
File Context Menus
------------------
|
@@ -186,7 +186,8 @@ self.add_src_to_recent(src)
self.add_dest_to_recent(dest)
if returncode == 0:
- shlib.shell_notify([dest])
+ if dest:
+ shlib.shell_notify([dest])
self.cmd.set_result(_('Cloned successfully'), style='ok')
elif useraborted:
self.cmd.set_result(_('Canceled updating'), style='error')
|
|
@@ -85,7 +85,6 @@ gdialog.GWindow.init(self)
self.mode = 'status'
self.ready = False
- self.filerowstart = {}
self.filechunks = {}
self.status = (None,) * 7
self.status_error = None
@@ -829,15 +828,11 @@ chunks = self.filechunks[wfile]
for chunk in chunks:
chunk.active = selected
- # this file's chunks may not be in diffmodel
- if wfile not in self.filerowstart:
- return
- rowstart = self.filerowstart[wfile]
for n, chunk in enumerate(chunks):
if n == 0:
continue
- self.diffmodel[rowstart+n][DM_REJECTED] = not selected
- self.update_diff_hunk(self.diffmodel[rowstart+n])
+ self.diffmodel[n][DM_REJECTED] = not selected
+ self.update_diff_hunk(self.diffmodel[n])
self.update_diff_header(self.diffmodel, wfile, selected)
def update_diff_hunk(self, row):
@@ -859,17 +854,16 @@
def update_diff_header(self, dmodel, wfile, selected):
try:
- hc = self.filerowstart[wfile]
chunks = self.filechunks[wfile]
except IndexError:
return
lasthunk = len(chunks)-1
- sel = lambda x: x >= lasthunk or not dmodel[hc+x+1][DM_REJECTED]
+ sel = lambda x: x >= lasthunk or not dmodel[x+1][DM_REJECTED]
newtext = chunks[0].selpretty(sel)
if not selected:
newtext = "<span foreground='" + gtklib.STATUS_REJECT_FOREGROUND + \
"'>" + newtext + "</span>"
- dmodel[hc][DM_DISP_TEXT] = newtext
+ dmodel[0][DM_DISP_TEXT] = newtext
def updated_codes(self):
types = [('modified', 'M'),
@@ -1148,7 +1142,6 @@ def update_hunk_model(self, path, tree):
# Read this file's diffs into hunk selection model
wfile = self.filemodel[path][FM_PATH]
- self.filerowstart = {}
self.diffmodel.clear()
if not self.is_merge():
self.append_diff_hunks(wfile)
@@ -1232,7 +1225,6 @@ elif nc.fromline > oc.fromline:
break
- self.filerowstart[wfile] = len(self.diffmodel)
self.filechunks[wfile] = chunks
# Set row status based on chunk state
@@ -1266,18 +1258,17 @@ row = dmodel[path]
wfile = row[DM_PATH]
try:
- startrow = self.filerowstart[wfile]
chunks = self.filechunks[wfile]
except IndexError:
pass
- chunkrows = xrange(startrow+1, startrow+len(chunks))
+ chunkrows = xrange(1, len(chunks))
for fr in self.filemodel:
if fr[FM_PATH] == wfile:
break
if row[DM_IS_HEADER]:
for n, chunk in enumerate(chunks[1:]):
chunk.active = not fr[FM_CHECKED]
- self.update_diff_hunk(dmodel[startrow+n+1])
+ self.update_diff_hunk(dmodel[n+1])
newvalue = not fr[FM_CHECKED]
partial = False
else:
|
@@ -40,6 +40,8 @@ return
dirs = set()
for path in paths:
+ if path is None:
+ continue
abspath = os.path.abspath(path)
if not os.path.isdir(abspath):
abspath = os.path.dirname(abspath)
@@ -143,7 +145,8 @@ return
f_notify = open(notify, 'w')
try:
- f_notify.write('\n'.join([os.path.abspath(path) for path in paths]))
+ abspaths = [os.path.abspath(path) for path in paths if path]
+ f_notify.write('\n'.join(abspaths))
finally:
f_notify.close()
|
Loading...