1
1
using System ;
2
2
using System . Collections . Generic ;
3
3
using System . IO ;
4
- using System . Linq ;
5
4
using System . Text . RegularExpressions ;
6
5
using System . Threading . Tasks ;
7
6
@@ -251,8 +250,6 @@ public void ViewRevisionFile(Models.Object file)
251
250
252
251
public ContextMenu CreateChangeContextMenu ( Models . Change change )
253
252
{
254
- var menu = new ContextMenu ( ) ;
255
-
256
253
var diffWithMerger = new MenuItem ( ) ;
257
254
diffWithMerger . Header = App . Text ( "DiffWithMerger" ) ;
258
255
diffWithMerger . Icon = App . CreateMenuIcon ( "Icons.OpenWith" ) ;
@@ -265,25 +262,22 @@ public ContextMenu CreateChangeContextMenu(Models.Change change)
265
262
Task . Run ( ( ) => Commands . MergeTool . OpenForDiff ( _repo . FullPath , toolType , toolPath , opt ) ) ;
266
263
ev . Handled = true ;
267
264
} ;
268
- menu . Items . Add ( diffWithMerger ) ;
269
- menu . Items . Add ( new MenuItem { Header = "-" } ) ;
270
-
265
+
271
266
var fullPath = Path . Combine ( _repo . FullPath , change . Path ) ;
272
- if ( File . Exists ( fullPath ) )
267
+ var explore = new MenuItem ( ) ;
268
+ explore . Header = App . Text ( "RevealFile" ) ;
269
+ explore . Icon = App . CreateMenuIcon ( "Icons.Explore" ) ;
270
+ explore . IsVisible = File . Exists ( fullPath ) ;
271
+ explore . Click += ( _ , ev ) =>
273
272
{
274
- var explore = new MenuItem ( ) ;
275
- explore . Header = App . Text ( "RevealFile" ) ;
276
- explore . Icon = App . CreateMenuIcon ( "Icons.Explore" ) ;
277
- explore . Click += ( _ , ev ) =>
278
- {
279
- Native . OS . OpenInFileManager ( fullPath , true ) ;
280
- ev . Handled = true ;
281
- } ;
273
+ Native . OS . OpenInFileManager ( fullPath , true ) ;
274
+ ev . Handled = true ;
275
+ } ;
282
276
283
- menu . Items . Add ( new MenuItem { Header = "-" } ) ;
284
- menu . Items . Add ( explore ) ;
285
- menu . Items . Add ( new MenuItem { Header = "-" } ) ;
286
- }
277
+ var menu = new ContextMenu ( ) ;
278
+ menu . Items . Add ( diffWithMerger ) ;
279
+ menu . Items . Add ( explore ) ;
280
+ menu . Items . Add ( new MenuItem { Header = "-" } ) ;
287
281
288
282
if ( change . Index != Models . ChangeState . Deleted )
289
283
{
@@ -328,12 +322,15 @@ public ContextMenu CreateChangeContextMenu(Models.Change change)
328
322
resetToFirstParent . Click += ( _ , ev ) =>
329
323
{
330
324
if ( change . Index == Models . ChangeState . Renamed )
331
- {
332
325
new Commands . Checkout ( _repo . FullPath ) . FileWithRevision ( change . OriginalPath , $ "{ _commit . SHA } ~1") ;
333
- }
326
+
334
327
new Commands . Checkout ( _repo . FullPath ) . FileWithRevision ( change . Path , $ "{ _commit . SHA } ~1") ;
335
328
ev . Handled = true ;
336
329
} ;
330
+
331
+ menu . Items . Add ( resetToThisRevision ) ;
332
+ menu . Items . Add ( resetToFirstParent ) ;
333
+ menu . Items . Add ( new MenuItem { Header = "-" } ) ;
337
334
338
335
var copyPath = new MenuItem ( ) ;
339
336
copyPath . Header = App . Text ( "CopyPath" ) ;
@@ -353,41 +350,14 @@ public ContextMenu CreateChangeContextMenu(Models.Change change)
353
350
e . Handled = true ;
354
351
} ;
355
352
356
- menu . Items . Add ( resetToThisRevision ) ;
357
- menu . Items . Add ( resetToFirstParent ) ;
358
- menu . Items . Add ( new MenuItem { Header = "-" } ) ;
359
353
menu . Items . Add ( copyPath ) ;
360
354
menu . Items . Add ( copyFileName ) ;
361
-
362
355
return menu ;
363
356
}
364
357
365
358
public ContextMenu CreateRevisionFileContextMenu ( Models . Object file )
366
359
{
367
360
var fullPath = Path . Combine ( _repo . FullPath , file . Path ) ;
368
-
369
- var resetToThisRevision = new MenuItem ( ) ;
370
- resetToThisRevision . Header = App . Text ( "ChangeCM.CheckoutThisRevision" ) ;
371
- resetToThisRevision . Icon = App . CreateMenuIcon ( "Icons.File.Checkout" ) ;
372
- resetToThisRevision . IsEnabled = File . Exists ( fullPath ) ;
373
- resetToThisRevision . Click += ( _ , ev ) =>
374
- {
375
- new Commands . Checkout ( _repo . FullPath ) . FileWithRevision ( file . Path , $ "{ _commit . SHA } ") ;
376
- ev . Handled = true ;
377
- } ;
378
-
379
- var resetToFirstParent = new MenuItem ( ) ;
380
- resetToFirstParent . Header = App . Text ( "ChangeCM.CheckoutFirstParentRevision" ) ;
381
- resetToFirstParent . Icon = App . CreateMenuIcon ( "Icons.File.Checkout" ) ;
382
- var fileInChanges = _changes . Find ( x => x . Path == file . Path ) ;
383
- var fileIndex = fileInChanges ? . Index ;
384
- resetToFirstParent . IsEnabled = _commit . Parents . Count > 0 && fileIndex != Models . ChangeState . Renamed ;
385
- resetToFirstParent . Click += ( _ , ev ) =>
386
- {
387
- new Commands . Checkout ( _repo . FullPath ) . FileWithRevision ( file . Path , $ "{ _commit . SHA } ~1") ;
388
- ev . Handled = true ;
389
- } ;
390
-
391
361
var explore = new MenuItem ( ) ;
392
362
explore . Header = App . Text ( "RevealFile" ) ;
393
363
explore . Icon = App . CreateMenuIcon ( "Icons.Explore" ) ;
@@ -446,6 +416,28 @@ public ContextMenu CreateRevisionFileContextMenu(Models.Object file)
446
416
window . Show ( ) ;
447
417
ev . Handled = true ;
448
418
} ;
419
+
420
+ var resetToThisRevision = new MenuItem ( ) ;
421
+ resetToThisRevision . Header = App . Text ( "ChangeCM.CheckoutThisRevision" ) ;
422
+ resetToThisRevision . Icon = App . CreateMenuIcon ( "Icons.File.Checkout" ) ;
423
+ resetToThisRevision . IsEnabled = File . Exists ( fullPath ) ;
424
+ resetToThisRevision . Click += ( _ , ev ) =>
425
+ {
426
+ new Commands . Checkout ( _repo . FullPath ) . FileWithRevision ( file . Path , $ "{ _commit . SHA } ") ;
427
+ ev . Handled = true ;
428
+ } ;
429
+
430
+ var resetToFirstParent = new MenuItem ( ) ;
431
+ resetToFirstParent . Header = App . Text ( "ChangeCM.CheckoutFirstParentRevision" ) ;
432
+ resetToFirstParent . Icon = App . CreateMenuIcon ( "Icons.File.Checkout" ) ;
433
+ var fileInChanges = _changes . Find ( x => x . Path == file . Path ) ;
434
+ var fileIndex = fileInChanges ? . Index ;
435
+ resetToFirstParent . IsEnabled = _commit . Parents . Count > 0 && fileIndex != Models . ChangeState . Renamed ;
436
+ resetToFirstParent . Click += ( _ , ev ) =>
437
+ {
438
+ new Commands . Checkout ( _repo . FullPath ) . FileWithRevision ( file . Path , $ "{ _commit . SHA } ~1") ;
439
+ ev . Handled = true ;
440
+ } ;
449
441
450
442
var copyPath = new MenuItem ( ) ;
451
443
copyPath . Header = App . Text ( "CopyPath" ) ;
@@ -466,15 +458,15 @@ public ContextMenu CreateRevisionFileContextMenu(Models.Object file)
466
458
} ;
467
459
468
460
var menu = new ContextMenu ( ) ;
469
- menu . Items . Add ( resetToThisRevision ) ;
470
- menu . Items . Add ( resetToFirstParent ) ;
471
- menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
472
461
menu . Items . Add ( explore ) ;
473
462
menu . Items . Add ( saveAs ) ;
474
463
menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
475
464
menu . Items . Add ( history ) ;
476
465
menu . Items . Add ( blame ) ;
477
466
menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
467
+ menu . Items . Add ( resetToThisRevision ) ;
468
+ menu . Items . Add ( resetToFirstParent ) ;
469
+ menu . Items . Add ( new MenuItem ( ) { Header = "-" } ) ;
478
470
menu . Items . Add ( copyPath ) ;
479
471
menu . Items . Add ( copyFileName ) ;
480
472
return menu ;
0 commit comments