mercurial/extensions.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 13 Feb 2014 11:46:01 +0000
changeset 370 d9ee34a72e4a
parent 367 af5fea76e6ed
child 371 f271ddd2b5e0
permissions -rw-r--r--
Fix in file browser menu - make 'Edit User Config' enabled even if no repository is selected.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     1
"{ Package: 'stx:libscm/mercurial' }"!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
     2
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
     3
!AbstractFileBrowser methodsFor:'aspects-hg'!
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
     4
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
     5
currentHgRepository
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
     6
    | root |
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
     7
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
     8
    root := HGRepository discover: self currentDirectoryDisplayed.
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
     9
    root isNil ifTrue:[ ^ self ].
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
    10
    ^HGRepository on: root cached: true
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    11
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    12
    "Created: / 14-12-2012 / 19:22:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
    13
    "Modified: / 15-01-2013 / 10:04:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    14
! !
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    15
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    16
!AbstractFileBrowser methodsFor:'menu-queries-hg'!
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    17
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    18
hasHGWorkingCopySelected
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    19
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    20
    ^ self hgMenusAreShown 
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    21
        and:[((Smalltalk at:#HGRepository) discover:self currentDirectoryDisplayed) notNil]
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    22
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    23
    "Created: / 14-12-2012 / 18:26:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    24
! !
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    25
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    26
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    27
205
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
    28
hgBranches  
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
    29
    self hgExecuteCommand: 'branches' objects: #()
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
    30
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
    31
    "Created: / 25-01-2013 / 20:14:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
    32
! !
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
    33
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
    34
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
    35
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    36
hgCommit
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    37
    | wc task |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    38
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    39
    wc := self currentHgRepository workingCopy.
282
fb71143ed353 Fixes for commiting from filebrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 267
diff changeset
    40
    task := wc commitTask.
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    41
    HGCommitDialog new
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    42
        task: task;
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    43
        open
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    44
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    45
    "Created: / 11-01-2013 / 19:27:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
282
fb71143ed353 Fixes for commiting from filebrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 267
diff changeset
    46
    "Modified: / 01-04-2013 / 12:56:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    47
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    48
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    49
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    50
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    51
hgEditConfig: file
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    52
    self 
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    53
        applicationNamed:#FileApplicationNoteBook
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    54
        ifPresentDo:[:appl |
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    55
            appl openTextEditorForFile: file pathName 
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    56
        ].
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    57
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    58
    "Created: / 04-04-2013 / 19:40:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    59
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    60
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    61
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    62
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    63
hgEditConfigRepository
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    64
    | repo |
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    65
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    66
    repo := self currentHgRepository.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    67
    self hgEditConfig: repo path / '.hg' / 'hgrc'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    68
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    69
    "Modified: / 04-04-2013 / 19:42:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    70
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    71
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    72
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    73
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    74
hgEditConfigUser
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    75
    self hgEditConfig: Filename homeDirectory / '.hgrc'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    76
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    77
    "Modified: / 04-04-2013 / 19:42:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    78
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    79
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    80
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
    81
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    82
hgExecuteCommand: command
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    83
    "Executes svn command on currently selected objects"
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    84
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    85
    self hgExecuteCommand: command objects: self currentSelectedObjects.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    86
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    87
    "Created: / 12-01-2013 / 12:08:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    88
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    89
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    90
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    91
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    92
hgExecuteCommand: command objects: givenObjects
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    93
    "Executes svn command on given objects (files/dirs)"
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    94
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    95
    | objects workdir objectsAsString executionBlock |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    96
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    97
    objects := givenObjects.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    98
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    99
    (self isKindOf: FileBrowserV2) ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   100
        workdir := self currentDirectoryDisplayed.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   101
        workdir isDirectory ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   102
            workdir := workdir directory
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   103
        ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   104
    ] ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   105
        (objects size == 1 and:[objects anElement isDirectory]) ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   106
            workdir := objects anElement
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   107
        ] ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   108
            workdir := Filename currentDirectory.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   109
        ]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   110
    ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   111
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   112
    objectsAsString := String streamContents:[:s|
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   113
        objects size == 1 ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   114
            workdir asString = objects anElement asString ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   115
                s nextPut:$.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   116
            ] ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   117
                s nextPutAll: objects anElement asString.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   118
            ]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   119
        ] ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   120
            objects do:[:each|s nextPut:$"; nextPutAll:each asString; nextPut:$"]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   121
                separatedBy:[s space]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   122
        ]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   123
    ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   124
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   125
    executionBlock := [:stream |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   126
        | cmd |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   127
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   128
        cmd := '%1 --noninteractive %2 %3' 
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   129
                bindWith: HGCommand hgCommand
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   130
                    with: command
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   131
                    with: objectsAsString.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   132
        stream nextPutAll: cmd; cr; cr.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   133
        (self getExecutionBlockForCommand:cmd inDirectory: workdir) value:stream.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   134
    ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   135
    self makeExecutionResultProcessFor:executionBlock withName:'Mercurial> hg ', command.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   136
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   137
    "Created: / 12-01-2013 / 12:09:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   138
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   139
205
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   140
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   141
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   142
hgHeads  
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   143
    self hgExecuteCommand: 'heads' objects: #()
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   144
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   145
    "Created: / 25-01-2013 / 20:14:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   146
! !
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   147
178
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   148
!AbstractFileBrowser methodsFor:'menu-dynamic-hg'!
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   149
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   150
hgMenuMerge
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   151
    | menu repo wc cs |
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   152
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   153
    menu := Menu new.
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   154
    repo := self currentHgRepository.
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   155
    wc := repo workingCopy.
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   156
    cs := wc changeset.
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   157
    repo branches do:[:branch|
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   158
        branch heads do:[:head|
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   159
            head ~~ cs ifTrue:[
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   160
                | item |
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   161
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   162
                item := MenuItem 
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   163
                            label: (head branch name , ' - ' , head id printString)
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   164
                            itemValue: [self hgMenuMerge: head ].
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   165
                menu addItem: item.
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   166
            ].
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   167
        ]
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   168
    ].
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   169
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   170
    ^menu.
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   171
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   172
    "Created: / 14-12-2012 / 19:14:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   173
! !
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   174
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   175
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   176
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   177
hgMenuMerge:anHGChangeset
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   178
    | repo wc appl stream|
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   179
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   180
    appl := self openCommandResultApplication.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   181
    stream := appl resultStream.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   182
    appl changeTabTo:((resources string: 'Merging with %1') bindWith: anHGChangeset id printString).
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   183
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   184
    [
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   185
        repo := self currentHgRepository.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   186
        wc := repo workingCopy.
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   187
        stream nextPutAll:(resources string: 'Mercurial > hg merge'); space; nextPutLine: anHGChangeset id printString.
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   188
        wc merge: anHGChangeset.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   189
        stream nextPutAll:(resources string: 'done'); cr.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   190
        (wc conflicts asSortedCollection:[:a :b|a pathName < b pathName]) do:[:each|
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   191
            each isUnresolved ifTrue:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   192
                | merger |
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   193
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   194
                stream nextPutAll: ((resources string: 'Resolving conflicts %1...') bindWith: each pathNameRelative).
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   195
                merger := HGMergeTool for: each.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   196
                merger premerge ifTrue:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   197
                    stream nextPutLine:(resources string: 'resolved').
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   198
                    each markResolved.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   199
                ] ifFalse:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   200
                    stream nextPutLine:(resources string: 'UNRESOLVED')
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   201
                ]
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   202
            ]
262
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   203
        ].
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   204
        stream nextPutAll:(resources string: 'Merge finisged.')
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   205
    ] forkAt: Processor userBackgroundPriority
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   206
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   207
    "Created: / 14-01-2013 / 21:59:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   208
    "Modified: / 04-04-2013 / 19:22:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   209
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   210
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   211
!AbstractFileBrowser methodsFor:'menu-dynamic-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   212
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   213
hgMenuPull
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   214
    | menu repo remotes |
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   215
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   216
    menu := Menu new.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   217
    repo := self currentHgRepository.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   218
    remotes := repo remotes.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   219
    remotes notEmptyOrNil ifTrue:[
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   220
        remotes do:[:remote|
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   221
                menu addItem: (MenuItem new
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   222
                                label: remote displayString;
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   223
                                value:[ self hgPullFrom: remote repository: repo];
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   224
                                yourself).
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   225
        ].
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   226
        menu addSeparator.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   227
    ].
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   228
    menu addItem:
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   229
        (MenuItem new
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   230
            label: (resources string: 'From...');
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   231
            value: [self hgPullFromURLRepository: repo];
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   232
            yourself).
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   233
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   234
    ^menu.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   235
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   236
    "Created: / 04-04-2013 / 19:16:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   237
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   238
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   239
!AbstractFileBrowser methodsFor:'menu-dynamic-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   240
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   241
hgMenuPush
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   242
    | menu repo remotes |
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   243
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   244
    menu := Menu new.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   245
    repo := self currentHgRepository.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   246
    remotes := repo remotes.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   247
    remotes notEmptyOrNil ifTrue:[
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   248
        remotes do:[:remote|
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   249
                menu addItem: (MenuItem new
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   250
                                label: remote displayString;
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   251
                                value:[ self hgPushTo: remote repository: repo];
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   252
                                yourself).
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   253
        ].
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   254
        menu addSeparator.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   255
    ].
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   256
    menu addItem:
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   257
        (MenuItem new
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   258
            label: (resources string: 'To...');
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   259
            value: [self hgPushToURLRepository: repo];
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   260
            yourself).
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   261
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   262
    ^menu.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   263
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   264
    "Created: / 04-04-2013 / 19:15:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   265
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   266
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   267
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   268
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   269
hgPullFrom: remote repository:repo
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   270
    | appl stream|
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   271
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   272
    appl := self openCommandResultApplication.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   273
    stream := appl resultStream.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   274
    appl changeTabTo:((resources string: 'Pulling from %1') bindWith: remote printString).
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   275
    [
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   276
        stream nextPutAll:(resources string: 'Mercurial > hg pull'); space; nextPutLine: remote name.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   277
        [
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   278
            | summary |                
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   279
            summary := repo pull: remote.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   280
            summary printOn: stream.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   281
            stream cr.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   282
        ] on: Notification do:[:ex|
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   283
            stream nextPutLine: ex messageText.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   284
            ex proceed.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   285
        ]
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   286
    ] forkAt: Processor userBackgroundPriority
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   287
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   288
    "Created: / 04-04-2013 / 19:27:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   289
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   290
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   291
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   292
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   293
hgPullFromURLRepository:repo
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   294
    | url options |
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   295
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   296
    options := repo remotes collect:[:r|r url asString].
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   297
    url :=  Dialog 
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   298
                request:'Enter an URL from which to pull:' 
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   299
                initialAnswer:'http://...'  
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   300
                list: options. 
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   301
    url notEmptyOrNil ifTrue:[
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   302
        self hgPullFrom: url repository: repo.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   303
    ]
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   304
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   305
    "Created: / 04-04-2013 / 19:16:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   306
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   307
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   308
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   309
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   310
hgPushTo: remote repository:repo
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   311
    | appl stream|
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   312
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   313
    appl := self openCommandResultApplication.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   314
    stream := appl resultStream.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   315
    appl changeTabTo:((resources string: 'Pushing to %1') bindWith: remote printString).
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   316
    [
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   317
        stream nextPutAll:(resources string: 'Mercurial > hg push'); space; nextPutLine: remote name.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   318
        [
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   319
            | summary |                
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   320
            summary := repo push: remote.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   321
            summary printOn: stream.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   322
            stream cr.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   323
        ] on: Notification do:[:ex|
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   324
            stream nextPutLine: ex messageText.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   325
            ex proceed.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   326
        ]
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   327
    ] forkAt: Processor userBackgroundPriority
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   328
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   329
    "Created: / 04-04-2013 / 19:23:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   330
! !
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   331
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   332
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   333
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   334
hgPushToURLRepository:repo
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   335
    | url options |
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   336
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   337
    options := repo remotes collect:[:r|r url asString].
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   338
    url :=  Dialog 
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   339
                request:'Enter an URL where to push:' 
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   340
                initialAnswer:'http://...'  
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   341
                list: options. 
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   342
    url notEmptyOrNil ifTrue:[
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   343
        self hgPushTo: url repository: repo.
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   344
    ]
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   345
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   346
    "Created: / 04-04-2013 / 19:15:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   347
! !
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   348
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   349
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   350
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   351
hgResolve
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   352
    | wc prefixsz files |
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   353
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   354
    wc := self currentHgRepository workingCopy.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   355
    prefixsz := wc pathName size + 1.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   356
    files := self currentSelectedObjects.
181
a31ede5ff957 Bugfix: resolve only one file when file is selected.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
   357
    (files size == 1 and:[files anElement isDirectory]) ifTrue:[
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   358
        files := wc conflicts asSortedCollection:[:a :b|a pathName < b pathName].
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   359
        files := files select:[:e|e isUnresolved].
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   360
    ] ifFalse:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   361
        files := files collect:[:file|
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   362
            | path |
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   363
            path := file pathName.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   364
            path := path copyFrom: prefixsz.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   365
            wc / path.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   366
        ].
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   367
    ].
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   368
    files do:[:entry|
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   369
        (HGMergeTool for: entry) merge ifTrue:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   370
            entry markResolved.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   371
        ].
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   372
    ]
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   373
181
a31ede5ff957 Bugfix: resolve only one file when file is selected.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 180
diff changeset
   374
    "Modified: / 16-01-2013 / 09:19:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   375
! !
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   376
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   377
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   378
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   379
hgResolveList
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   380
    self hgExecuteCommand: 'resolve --list' objects: #()
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   381
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   382
    "Modified: / 14-01-2013 / 21:55:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   383
! !
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   384
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   385
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   386
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   387
hgResolveListUnresolved
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   388
    | repo wc appl stream|
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   389
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   390
    appl := self openCommandResultApplication.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   391
    stream := appl resultStream.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   392
    appl changeTabTo:(resources string: 'Unresolved conflicts').
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   393
    repo := self currentHgRepository.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   394
    wc := repo workingCopy.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   395
    (wc conflicts asSortedCollection:[:a :b|a pathName < b pathName]) do:[:each|
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   396
        each isUnresolved ifTrue:[
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   397
            stream nextPutLine: each pathNameRelative
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   398
        ].
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   399
    ].
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   400
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   401
    "Modified: / 15-01-2013 / 10:47:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   402
! !
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   403
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   404
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   405
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   406
hgResolveMark
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   407
    self hgExecuteCommand: 'resolve --mark' objects: self currentSelectedObjects.
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   408
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   409
    "Created: / 14-01-2013 / 21:37:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   410
! !
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   411
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   412
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   413
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   414
hgRevert
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   415
    self hgExecuteCommand: 'revert'
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   416
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   417
    "Created: / 15-01-2013 / 09:23:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   418
! !
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   419
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   420
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   421
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   422
hgStatus
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   423
    self hgExecuteCommand: 'status'
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   424
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   425
    "Modified: / 12-01-2013 / 12:09:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   426
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   427
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   428
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   429
205
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   430
hgSummary       
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   431
    self hgExecuteCommand: 'summary' objects: #()
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   432
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   433
    "Created: / 25-01-2013 / 17:40:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   434
! !
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   435
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   436
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   437
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   438
hgUpdate
262
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   439
    | executionBlock workdir |
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   440
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   441
    (self isKindOf: FileBrowserV2) ifTrue:[
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   442
        workdir := self currentDirectoryDisplayed.
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   443
        workdir isDirectory ifFalse:[
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   444
            workdir := workdir directory
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   445
        ].
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   446
    ] ifFalse:[
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   447
        (self currentSelectedObjects size == 1 and:[self currentSelectedObjects anElement isDirectory]) ifTrue:[
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   448
            workdir := self currentSelectedObjects anElement
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   449
        ] ifFalse:[
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   450
            workdir := Filename currentDirectory.
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   451
        ]
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   452
    ].
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   453
    
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   454
    executionBlock := [:stream |
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   455
        | cmd |
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   456
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   457
        cmd := '%1 --noninteractive %2 %3' 
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   458
                bindWith: HGCommand hgCommand
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   459
                    with: 'update'
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   460
                    with: ''.
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   461
        stream nextPutAll: cmd; cr; cr.
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   462
        (self getExecutionBlockForCommand:cmd inDirectory: workdir) value:stream.
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   463
    ].
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   464
    self makeExecutionResultProcessFor:executionBlock withName:'Mercurial> hg update'
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   465
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   466
    "Created: / 15-01-2013 / 09:23:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
262
46cbd12953cd Improvements in HG commands in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 212
diff changeset
   467
    "Modified: / 13-03-2013 / 00:22:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   468
! !
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   469
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   470
!AbstractFileBrowser methodsFor:'menu actions-scm-hg'!
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   471
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   472
hgUpdateClean
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   473
    self hgExecuteCommand: 'update -C' objects: #()
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   474
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   475
    "Created: / 15-01-2013 / 09:23:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   476
! !
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   477
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   478
!AbstractFileBrowser class methodsFor:'menu specs-scm'!
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   479
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   480
hgMenu
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   481
    "This resource specification was automatically generated
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   482
     by the MenuEditor of ST/X."
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   483
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   484
    "Do not manually edit this!! If it is corrupted,
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   485
     the MenuEditor may not be able to read the specification."
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   486
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   487
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   488
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   489
     MenuEditor new openOnClass:AbstractFileBrowser andSelector:#hgMenu
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   490
     (Menu new fromLiteralArrayEncoding:(AbstractFileBrowser hgMenu)) startUp
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   491
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   492
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   493
    <resource: #menu>
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   494
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   495
    ^ 
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   496
     #(Menu
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   497
        (
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   498
         (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   499
            enabled: hasHGWorkingCopySelected
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   500
            label: 'Commit'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   501
            itemValue: hgCommit
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   502
            labelImage: (ResourceRetriever HGIconLibrary commit 'Commit')
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   503
          )
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   504
         (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   505
            label: '-'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   506
          )
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   507
         (MenuItem
178
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   508
            enabled: hasHGWorkingCopySelected
205
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   509
            label: 'Summary'
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   510
            itemValue: hgSummary
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   511
          )
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   512
         (MenuItem
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   513
            enabled: hasHGWorkingCopySelected
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   514
            label: 'Status'
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   515
            itemValue: hgStatus
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   516
          )
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   517
         (MenuItem
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   518
            label: '-'
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   519
          )
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   520
         (MenuItem
205
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   521
            enabled: hasHGWorkingCopySelected
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   522
            label: 'Branches'
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   523
            itemValue: hgBranches
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   524
          )
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   525
         (MenuItem
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   526
            enabled: hasHGWorkingCopySelected
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   527
            label: 'Heads'
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   528
            itemValue: hgHeads
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   529
          )
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   530
         (MenuItem
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   531
            label: '-'
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   532
          )
e8dbcfa7eb62 More menu items in FileBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 181
diff changeset
   533
         (MenuItem
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   534
            enabled: hasHGWorkingCopySelected
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   535
            label: 'Update'
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   536
            itemValue: hgUpdate
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   537
          )
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   538
         (MenuItem
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   539
            enabled: hasHGWorkingCopySelected
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   540
            label: 'Revert'
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   541
            itemValue: hgRevert
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   542
          )
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   543
         (MenuItem
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   544
            enabled: hasHGWorkingCopySelected
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   545
            label: 'Revert all Changes'
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   546
            itemValue: hgUpdateClean
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   547
          )
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   548
         (MenuItem
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   549
            label: '-'
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   550
          )
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   551
         (MenuItem
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   552
            enabled: hasHGWorkingCopySelected
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   553
            label: 'Push'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   554
            submenuChannel: hgMenuPush
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   555
          )
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   556
         (MenuItem
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   557
            enabled: hasHGWorkingCopySelected
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   558
            label: 'Pull'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   559
            submenuChannel: hgMenuPull
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   560
          )
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   561
         (MenuItem
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   562
            label: '-'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   563
          )
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   564
         (MenuItem
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   565
            enabled: hasHGWorkingCopySelected
178
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   566
            label: 'Merge...'
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   567
            submenuChannel: hgMenuMerge
178
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   568
            labelImage: (ResourceRetriever HGIconLibrary merge 'Merge...')
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   569
          )
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   570
         (MenuItem
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   571
            enabled: hasHGWorkingCopySelected
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   572
            label: 'Resolve'
178
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   573
            itemValue: hgResolve
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   574
          )
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   575
         (MenuItem
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   576
            enabled: hasHGWorkingCopySelected
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   577
            label: 'Mark as Resolved'
178
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   578
            itemValue: hgResolveMark
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   579
          )
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   580
         (MenuItem
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   581
            enabled: hasHGWorkingCopySelected
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   582
            label: 'Mark as Unresolved'
178
1ed827252fee More work on merging. Not yet finished.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   583
            itemValue: hgResolveUnmark
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   584
          )
180
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   585
         (MenuItem
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   586
            label: '-'
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   587
          )
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   588
         (MenuItem
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   589
            enabled: hasHGWorkingCopySelected
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   590
            label: 'Show Conflicts'
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   591
            itemValue: hgResolveList
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   592
          )
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   593
         (MenuItem
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   594
            enabled: hasHGWorkingCopySelected
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   595
            label: 'Show Unresolved'
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   596
            itemValue: hgResolveListUnresolved
7b70d26f28da More work on merging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 178
diff changeset
   597
          )
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   598
         (MenuItem
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   599
            label: '-'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   600
          )
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   601
         (MenuItem
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   602
            enabled: hasHGWorkingCopySelected
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   603
            label: 'Edit Repository Config (.hg/hgrc)'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   604
            itemValue: hgEditConfigRepository
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   605
          )
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   606
         (MenuItem
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   607
            label: 'Edit User Config  (~/.hgrc)'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   608
            itemValue: hgEditConfigUser
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   609
          )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   610
         )
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   611
        nil
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   612
        nil
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   613
      )
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   614
! !
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   615
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   616
!Annotation class methodsFor:'instance creation'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   617
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   618
HGRevision: aString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   619
    "Used by Mercurial to internally store revision info. Should never appear in source code!!"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   620
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   621
    ^HGRevisionAnnotation revision: aString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   622
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   623
    "Created: / 20-11-2012 / 23:34:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   624
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   625
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   626
!ByteArray methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   627
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   628
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   629
    ^ HGChangesetId fromBytes:self.
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   630
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   631
    "Created: / 16-11-2012 / 21:33:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   632
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   633
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   634
!ConfigurableFeatures class methodsFor:'queries-features'!
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   635
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   636
hasHGSupport
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   637
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   638
    ^ (Smalltalk at: #'HGSourceCodeManager' ifAbsent:nil) notNil
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   639
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   640
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   641
     ConfigurableFeatures hasGitSupport
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   642
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   643
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   644
    "Created: / 14-12-2012 / 15:38:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   645
! !
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   646
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   647
!ConfigurableFeatures class methodsFor:'queries-features'!
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   648
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   649
hasHGSupportEnabled
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   650
    ^ self hasSCMSupportEnabledFor:#'HGSourceCodeManager'
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   651
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   652
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   653
     self hasGitSupportEnabled
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   654
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   655
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   656
    "Created: / 14-12-2012 / 15:38:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   657
! !
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   658
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   659
!Integer methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   660
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   661
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   662
    ^ (HGChangesetId new:0) revno:self.
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   663
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   664
    "Created: / 16-11-2012 / 21:23:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   665
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   666
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   667
!Object methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   668
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   669
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   670
    HGError 
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   671
        raiseErrorString:'Cannot convert arbitrary object to Mercurial nodeid'
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   672
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   673
    "Created: / 16-11-2012 / 21:23:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   674
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   675
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   676
!Object methodsFor:'converting'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   677
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   678
asHGRevision
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   679
    ^self asHGChangesetId
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   680
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   681
    "Created: / 20-11-2012 / 23:32:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   682
    "Modified: / 27-11-2012 / 17:56:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   683
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   684
212
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   685
!Object methodsFor:'testing'!
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   686
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   687
isHGChangeset
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   688
    "Return true, if receiver is sort an Mercurial changeset."
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   689
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   690
    ^false
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   691
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   692
    "Created: / 01-02-2013 / 13:42:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   693
! !
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   694
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   695
!ProjectDefinition class methodsFor:'accessing - hg'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   696
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   697
hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   698
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   699
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   700
    Answers Mercurial revision from which the package was compiled.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   701
    If no binary revision is available, returns nil."
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   702
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   703
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   704
    | revInfo |
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   705
91
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   706
    self binaryRevisionString notNil ifTrue:[
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   707
        revInfo := HGRevisionInfo readFrom: self binaryRevisionString onError:[nil].
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   708
        revInfo notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   709
            ^revInfo changesetId
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   710
        ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   711
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   712
    ^nil
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   713
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   714
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   715
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   716
        stx_libbasic hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   717
        stx_libsvn hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   718
        stx_libscm_mercurial hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   719
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   720
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   721
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   722
    "Created: / 20-11-2012 / 23:58:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   723
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   724
353
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   725
!ProjectDefinition class methodsFor:'accessing - hg - settings'!
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   726
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   727
hgEnsureCopyrightMethod
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   728
    "If true, then #copyright method is automatically compiled in each class
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   729
     (but iff project definition defines it)
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   730
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   731
     Default is true (compile such method) but if the repository is mirror of CVS and
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   732
     you want to merge back to CVS at some point, you may want to not compile them
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   733
     to keep changes against CVS minimal"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   734
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   735
    ^true "default"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   736
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   737
    "Created: / 09-10-2013 / 11:48:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   738
! !
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   739
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   740
!ProjectDefinition class methodsFor:'accessing - hg - settings'!
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   741
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   742
hgEnsureVersion_HGMethod
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   743
    "If true, then #version_HG method is automatically compiled in each class.
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   744
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   745
     Default is true (compile such method) but if the repository is mirror of CVS and
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   746
     you want to merge back to CVS at some point, you may want to not compile them
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   747
     to keep changes against CVS minimal. 
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   748
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   749
     If false, version_HG is compiled only in classes that has been modified
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   750
     and commited.
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   751
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   752
     Note that Mercurial can live without them
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   753
     just fine"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   754
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   755
    ^true "default"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   756
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   757
    "Created: / 09-10-2013 / 11:50:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   758
! !
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   759
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   760
!ProjectDefinition class methodsFor:'accessing - hg'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   761
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   762
hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   763
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   764
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   765
    Answers Mercurial revision on which is this package based on logically.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   766
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   767
    Revision is computed as follows:
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   768
        1) Look, if receiver's version_HG method has a (hidden) annotation HGRevision:, 
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   769
           if so, return its value.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   770
        2) If receiver's binary revision is not nil, return it.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   771
        3) Look into a package directory and if there is a Mercurial repository,
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   772
           return working copy's revision"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   773
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   774
    | versionMethod versionAnnotation revInfo pkgDir repoDir repo |
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   775
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   776
    "1 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   777
102
16bc16d9e6d5 Update logical revision on commit,
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 93
diff changeset
   778
    versionMethod := self class compiledMethodAt: HGSourceCodeManager nameOfVersionMethodInClasses.
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   779
    versionMethod notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   780
        versionAnnotation := versionMethod annotationAt: #HGRevision:.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   781
        versionAnnotation notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   782
            ^versionAnnotation revision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   783
        ].
174
0d293012a897 Fixed commit to freshly created repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 173
diff changeset
   784
    ] ifFalse:[
0d293012a897 Fixed commit to freshly created repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 173
diff changeset
   785
        HGSourceCodeManager compileVersionMethod:HGSourceCodeManager nameOfVersionMethodInClasses of:self for:'$Changeset: <not expanded> $'.
0d293012a897 Fixed commit to freshly created repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 173
diff changeset
   786
        versionMethod := self class compiledMethodAt: HGSourceCodeManager nameOfVersionMethodInClasses.
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   787
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   788
    
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   789
    "2 --- "
91
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   790
    self binaryRevisionString notNil ifTrue:[
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   791
        revInfo := HGRevisionInfo readFrom: self binaryRevisionString onError:[nil].
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   792
        revInfo notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   793
            ^revInfo changesetId
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   794
        ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   795
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   796
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   797
    "3 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   798
    pkgDir := Smalltalk getPackageDirectoryForPackage: self package.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   799
    pkgDir notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   800
        repoDir := HGRepository discover: pkgDir.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   801
        repoDir notNil ifTrue:[
170
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   802
            | id |
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   803
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   804
            repo := HGRepository on: repoDir.
170
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   805
            id := repo workingCopy changeset id.
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   806
            versionMethod annotateWith: (HGRevisionAnnotation revision: id).
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   807
            ^id
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   808
        ]
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   809
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   810
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   811
    "4 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   812
    self breakPoint: #jv.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   813
    ^nil
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   814
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   815
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   816
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   817
        stx_libbasic hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   818
        stx_libsvn hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   819
        stx_libscm_mercurial hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   820
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   821
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   822
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   823
    "Created: / 20-11-2012 / 23:54:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
174
0d293012a897 Fixed commit to freshly created repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 173
diff changeset
   824
    "Modified: / 14-01-2013 / 13:42:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   825
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   826
107
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   827
!ProjectDefinition class methodsFor:'description - actions - hg'!
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   828
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   829
hgPostLoad
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   830
    <postLoad>
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   831
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   832
    | dir repo versionMethod |
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   833
    "Eventually update an version_HG"
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   834
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   835
    self binaryRevisionString isNil ifTrue:[
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   836
        dir := Smalltalk getPackageDirectoryForPackage: self package.
367
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   837
        dir notNil ifTrue:[  
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   838
            dir := HGRepository discover: dir.
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   839
            dir notNil ifTrue:[
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   840
                repo := HGRepository on: dir.
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   841
                versionMethod := HGSourceCodeManager ensureVersionMethodInClass: self package: self package.
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   842
                versionMethod annotateWith: 
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   843
                    (HGRevisionAnnotation revision: repo workingCopy changesetId)
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   844
            ].
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   845
        ]
107
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   846
    ].
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   847
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   848
    "Created: / 26-11-2012 / 13:06:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
367
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   849
    "Modified: / 07-02-2014 / 10:59:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
107
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   850
! !
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   851
353
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   852
!ProjectDefinition class methodsFor:'accessing - hg - settings'!
288
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   853
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   854
hgRemoveContainesForDeletedClasses
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   855
    "If true, then containers for removed classes are __AUTOMATICALLY__ removed from the
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   856
     repositoru. If false, obsolete containes are kept.
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   857
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   858
     Default is true (remove obsolete containers) but if the repository is mirror of CVS and
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   859
     you want to merge back to CVS at some point, you may want to return false to avoid deletions
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   860
     of obsolete files. Usefull when branching off an old CVS repo with loads of mess."
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   861
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   862
    ^true "default"
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   863
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   864
    "Created: / 21-05-2013 / 16:44:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   865
! !
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   866
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   867
!String methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   868
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   869
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   870
    ^ HGChangesetId fromString:self.
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   871
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   872
    "Created: / 16-11-2012 / 21:24:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   873
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   874
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   875
!Tools::NewSystemBrowser methodsFor:'menu actions-hg'!
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   876
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   877
commonMenuHGBrowseTemporaryWorkingCopy
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   878
    self selectedProjectsForHG value do:[:package|
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   879
        | pkg  |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   880
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   881
        pkg := HGPackageModel named: package.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   882
        pkg notNil ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   883
            pkg temporaryWorkingCopy browse 
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   884
        ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   885
    ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   886
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   887
    "Created: / 11-01-2013 / 18:47:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   888
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   889
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   890
!Tools::NewSystemBrowser methodsFor:'menu actions-hg'!
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   891
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   892
commonMenuHGBrowseWorkingCopy
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   893
    self selectedProjectsForHG value do:[:package|
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   894
        | pkg  |
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   895
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   896
        pkg := HGPackageModel named: package.
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   897
        pkg notNil ifTrue:[
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   898
            pkg repository workingCopy browse 
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   899
        ].
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   900
    ].
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   901
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   902
    "Modified: / 14-12-2012 / 17:51:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   903
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   904
161
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   905
!Tools::NewSystemBrowser methodsFor:'menus-dynamic-hg'!
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   906
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   907
commonMenuHGPushSlice
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   908
    | menu push submenu packages package remotes default |
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   909
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   910
    menu := Menu new.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   911
    push := MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   912
                label: (resources string: 'Push...');
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   913
                yourself.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   914
    menu addItem: push.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   915
285
be9c850c73d5 Bogfix for HG menus in NewSystemBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 284
diff changeset
   916
    packages := self selectedProjectsForHG value collect:[:id|HGPackageModel named:id string].
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   917
    ((packages size ~~ 1) or:[packages anElement isNil]) ifTrue:[
161
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   918
        push enabled: false.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   919
        ^menu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   920
    ].
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   921
161
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   922
    package := packages anElement.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   923
    remotes := package repository remotes.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   924
    remotes isEmpty ifTrue:[
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   925
        push enabled: false.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   926
        ^menu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   927
    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   928
"/    default := package repository remoteDefault.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   929
"/    default notNil ifTrue:[
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   930
"/        menu addItem: (MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   931
"/                            label:((resources string: 'Push to ') , 'default' asText allBold);
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   932
"/                            value:[package repository push: default];
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   933
"/                            yourself).
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   934
"/    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   935
    (remotes size ~~ 1 or:[remotes anElement ~~ default]) ifTrue:[
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   936
        submenu := Menu new.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   937
        push submenu: submenu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   938
        remotes do:[:remote|
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   939
            submenu addItem: (MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   940
                            label: remote displayString;
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   941
                            value:[package repository push: remote];
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   942
                            yourself).
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   943
        ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   944
    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   945
    ^menu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   946
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   947
    "Created: / 10-12-2012 / 03:56:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
285
be9c850c73d5 Bogfix for HG menus in NewSystemBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 284
diff changeset
   948
    "Modified: / 11-04-2013 / 13:40:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
161
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   949
! !
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   950
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   951
!Tools::NewSystemBrowser methodsFor:'aspects-navigation-hg'!
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   952
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   953
selectedProjectsForHG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   954
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   955
    self selectedProjects value notNil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   956
        ifTrue:[^self selectedProjects value].
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   957
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   958
    self selectedClasses value notNil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   959
        ifTrue:[^(self selectedClasses value collect:[:cls|cls package]) asSet].
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   960
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   961
    ^nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   962
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   963
    "Created: / 10-12-2012 / 03:58:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   964
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   965
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   966
!Tools::NewSystemBrowser class methodsFor:'menu specs-SCM-class'!
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   967
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   968
classMenuSCMExtra_HG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   969
    "This resource specification was automatically generated
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   970
     by the MenuEditor of ST/X."
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   971
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   972
    "Do not manually edit this!! If it is corrupted,
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   973
     the MenuEditor may not be able to read the specification."
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   974
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   975
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   976
    "
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   977
     MenuEditor new openOnClass:Tools::NewSystemBrowser andSelector:#classMenuSCMExtra_HG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   978
     (Menu new fromLiteralArrayEncoding:(Tools::NewSystemBrowser classMenuSCMExtra_HG)) startUp
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   979
    "
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   980
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   981
    <resource: #menu>
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   982
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   983
    ^ 
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   984
     #(Menu
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   985
        (
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   986
         (MenuItem
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   987
            label: 'Push Slice'
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   988
            submenuChannel: commonMenuHGPushSlice
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   989
            isMenuSlice: true
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   990
          )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   991
          (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   992
            label: 'Browse package working copy'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   993
            itemValue: commonMenuHGBrowseWorkingCopy
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   994
          )
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   995
         (MenuItem
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   996
            label: 'Browse temporary working copy (for commits & merges)'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   997
            itemValue: commonMenuHGBrowseTemporaryWorkingCopy
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   998
          )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   999
         )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1000
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1001
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1002
      )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1003
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1004
    "Modified: / 14-12-2012 / 18:05:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1005
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1006
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1007
!Tools::NewSystemBrowser class methodsFor:'menu specs-SCM-project'!
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1008
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1009
projectMenuSCMExtra_HG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1010
    "This resource specification was automatically generated
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1011
     by the MenuEditor of ST/X."
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1012
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1013
    "Do not manually edit this!! If it is corrupted,
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1014
     the MenuEditor may not be able to read the specification."
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1015
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1016
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1017
    "
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1018
     MenuEditor new openOnClass:Tools::NewSystemBrowser andSelector:#projectMenuSCMExtra_HG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1019
     (Menu new fromLiteralArrayEncoding:(Tools::NewSystemBrowser projectMenuSCMExtra_HG)) startUp
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1020
    "
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1021
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1022
    <resource: #menu>
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1023
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1024
    ^ 
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1025
     #(Menu
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1026
        (
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1027
         (MenuItem
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1028
            label: 'Push Slice'
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1029
            submenuChannel: commonMenuHGPushSlice
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1030
            isMenuSlice: true
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1031
          )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1032
         (MenuItem
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1033
            label: 'Browse package working copy'
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1034
            itemValue: commonMenuHGBrowseWorkingCopy
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1035
          )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1036
         (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1037
            label: 'Browse temporary working copy (for commits & merges)'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1038
            itemValue: commonMenuHGBrowseTemporaryWorkingCopy
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1039
          )
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1040
         )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1041
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1042
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1043
      )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1044
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1045
    "Modified: / 14-12-2012 / 18:05:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1046
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1047
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1048
!UserPreferences methodsFor:'accessing-scm-mercurial'!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1049
151
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1050
hgAutopush
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1051
    "Return true, if changes should be automatically pushed
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1052
     to an upstream repository (autopush),  false otherwise"
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1053
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1054
    ^self at: #hgAutopush ifAbsent:[ false "or true?" ].
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1055
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1056
    "Created: / 10-12-2012 / 01:23:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1057
! !
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1058
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1059
!UserPreferences methodsFor:'accessing-scm-mercurial'!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1060
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1061
hgAutopush: aBoolean
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1062
    "Set whether changes should be automatically pushed
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1063
     to an upstream repository (autopush)"
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1064
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1065
    ^self at: #hgAutopush put: aBoolean.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1066
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1067
    "
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1068
    UserPreferences current hgAutopush
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1069
    UserPreferences current hgAutopush: true
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1070
    UserPreferences current hgAutopush: false
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1071
    "
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1072
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1073
    "Created: / 10-12-2012 / 01:24:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1074
! !
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1075
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1076
!UserPreferences methodsFor:'accessing-scm-mercurial'!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1077
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1078
hgCommand
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1079
    "Returns path svn executable"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1080
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1081
    | cmd |
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1082
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1083
    cmd := self at:#hgCommand ifAbsent:[ nil ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1084
    ^cmd isEmptyOrNil ifTrue:[ nil ] ifFalse:[ cmd ]
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1085
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1086
    "Created: / 19-11-2012 / 21:39:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1087
! !
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1088
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1089
!UserPreferences methodsFor:'accessing-scm-mercurial'!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1090
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1091
hgCommand: aString
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1092
    "Set the command to 'hg' executable"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1093
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1094
    self at:#hgCommand put: aString.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1095
    HGCommand hgCommand: aString.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1096
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1097
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1098
        UserPreferences current hgCommand
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1099
        UserPreferences current hgCommand:'hg'
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1100
        UserPreferences current hgCommand:nil
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1101
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1102
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1103
    "Created: / 19-11-2012 / 21:39:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1104
! !
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1105
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
  1106
!stx_libscm_mercurial class methodsFor:'documentation'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
  1107
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
  1108
extensionsVersion_HG
115
b1ed2d29054b version_HG changed to return string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 107
diff changeset
  1109
b1ed2d29054b version_HG changed to return string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 107
diff changeset
  1110
    ^ '$Changeset: <not expanded> $'
303
aee999e9dc25 Bugfixes in push parsing.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 302
diff changeset
  1111
! !