mercurial/extensions.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Sun, 09 Feb 2014 19:36:58 +0000
changeset 372 5acd6d915c77
parent 367 af5fea76e6ed
child 395 fc0607653d8a
permissions -rw-r--r--
Added HGRevset to fetch revision log using hg revsets. Added HGRepository>>log:limit. It takes a string or HGRevset and returns a set of changesets matching given revset. Revset is a revset specification string as used by hg command (see `hg help revsets` for more)
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
            enabled: hasHGWorkingCopySelected
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   608
            label: 'Edit User Config  (~/.hgrc)'
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   609
            itemValue: hgEditConfigUser
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   610
          )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   611
         )
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   612
        nil
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   613
        nil
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   614
      )
284
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   615
0aa0e7137e65 Added push/pull menu to file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 282
diff changeset
   616
    "Modified: / 04-04-2013 / 19:43:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   617
! !
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   618
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   619
!Annotation class methodsFor:'instance creation'!
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
HGRevision: aString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   622
    "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
   623
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   624
    ^HGRevisionAnnotation revision: aString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   625
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   626
    "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
   627
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   628
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   629
!ByteArray methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   630
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   631
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   632
    ^ HGChangesetId fromBytes:self.
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   633
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   634
    "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
   635
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   636
372
5acd6d915c77 Added HGRevset to fetch revision log using hg revsets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   637
!CharacterArray methodsFor:'converting'!
5acd6d915c77 Added HGRevset to fetch revision log using hg revsets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   638
5acd6d915c77 Added HGRevset to fetch revision log using hg revsets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   639
asHGChangesetId
5acd6d915c77 Added HGRevset to fetch revision log using hg revsets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   640
    ^ HGChangesetId fromString:self.
5acd6d915c77 Added HGRevset to fetch revision log using hg revsets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   641
5acd6d915c77 Added HGRevset to fetch revision log using hg revsets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   642
    "Created: / 16-11-2012 / 21:24:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5acd6d915c77 Added HGRevset to fetch revision log using hg revsets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   643
! !
5acd6d915c77 Added HGRevset to fetch revision log using hg revsets.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 367
diff changeset
   644
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   645
!ConfigurableFeatures class methodsFor:'queries-features'!
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
hasHGSupport
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   648
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   649
    ^ (Smalltalk at: #'HGSourceCodeManager' ifAbsent:nil) notNil
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   650
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
     ConfigurableFeatures hasGitSupport
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   653
    "
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
    "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
   656
! !
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
!ConfigurableFeatures class methodsFor:'queries-features'!
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   659
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   660
hasHGSupportEnabled
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   661
    ^ self hasSCMSupportEnabledFor:#'HGSourceCodeManager'
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   662
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   663
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   664
     self hasGitSupportEnabled
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   665
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   666
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   667
    "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
   668
! !
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   669
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   670
!Integer methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   671
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   672
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   673
    ^ (HGChangesetId new:0) revno:self.
69
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
    "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
   676
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   677
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   678
!Object methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   679
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   680
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   681
    HGError 
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   682
        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
   683
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   684
    "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
   685
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   686
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   687
!Object methodsFor:'converting'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   688
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   689
asHGRevision
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   690
    ^self asHGChangesetId
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   691
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   692
    "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
   693
    "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
   694
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   695
212
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   696
!Object methodsFor:'testing'!
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   697
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   698
isHGChangeset
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   699
    "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
   700
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   701
    ^false
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   702
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   703
    "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
   704
! !
8ec5884fba41 Fixed bugs introduced on 2013-01-22.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 205
diff changeset
   705
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   706
!ProjectDefinition class methodsFor:'accessing - hg'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   707
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   708
hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   709
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
    Answers Mercurial revision from which the package was compiled.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   712
    If no binary revision is available, returns 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
    | revInfo |
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   716
91
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   717
    self binaryRevisionString notNil ifTrue:[
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   718
        revInfo := HGRevisionInfo readFrom: self binaryRevisionString onError:[nil].
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   719
        revInfo notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   720
            ^revInfo changesetId
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
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   723
    ^nil
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   724
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   725
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   726
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   727
        stx_libbasic hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   728
        stx_libsvn hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   729
        stx_libscm_mercurial hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   730
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   731
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   732
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   733
    "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
   734
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   735
353
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   736
!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
   737
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   738
hgEnsureCopyrightMethod
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   739
    "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
   740
     (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
   741
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   742
     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
   743
     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
   744
     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
   745
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   746
    ^true "default"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   747
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   748
    "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
   749
! !
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   750
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   751
!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
   752
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   753
hgEnsureVersion_HGMethod
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   754
    "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
   755
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   756
     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
   757
     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
   758
     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
   759
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   760
     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
   761
     and commited.
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   762
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   763
     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
   764
     just fine"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   765
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   766
    ^true "default"
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   767
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   768
    "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
   769
! !
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   770
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   771
!ProjectDefinition class methodsFor:'accessing - hg'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   772
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   773
hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   774
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
    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
   777
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   778
    Revision is computed as follows:
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   779
        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
   780
           if so, return its value.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   781
        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
   782
        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
   783
           return working copy's revision"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   784
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   785
    | versionMethod versionAnnotation revInfo pkgDir repoDir repo |
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   786
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   787
    "1 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   788
102
16bc16d9e6d5 Update logical revision on commit,
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 93
diff changeset
   789
    versionMethod := self class compiledMethodAt: HGSourceCodeManager nameOfVersionMethodInClasses.
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   790
    versionMethod notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   791
        versionAnnotation := versionMethod annotationAt: #HGRevision:.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   792
        versionAnnotation notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   793
            ^versionAnnotation revision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   794
        ].
174
0d293012a897 Fixed commit to freshly created repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 173
diff changeset
   795
    ] ifFalse:[
0d293012a897 Fixed commit to freshly created repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 173
diff changeset
   796
        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
   797
        versionMethod := self class compiledMethodAt: HGSourceCodeManager nameOfVersionMethodInClasses.
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   798
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   799
    
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   800
    "2 --- "
91
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   801
    self binaryRevisionString notNil ifTrue:[
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   802
        revInfo := HGRevisionInfo readFrom: self binaryRevisionString onError:[nil].
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   803
        revInfo notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   804
            ^revInfo changesetId
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   805
        ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   806
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   807
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   808
    "3 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   809
    pkgDir := Smalltalk getPackageDirectoryForPackage: self package.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   810
    pkgDir notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   811
        repoDir := HGRepository discover: pkgDir.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   812
        repoDir notNil ifTrue:[
170
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   813
            | id |
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   814
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   815
            repo := HGRepository on: repoDir.
170
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   816
            id := repo workingCopy changeset id.
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   817
            versionMethod annotateWith: (HGRevisionAnnotation revision: id).
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   818
            ^id
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   819
        ]
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
    "4 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   823
    self breakPoint: #jv.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   824
    ^nil
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
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   827
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   828
        stx_libbasic hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   829
        stx_libsvn hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   830
        stx_libscm_mercurial hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   831
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   832
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   833
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   834
    "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
   835
    "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
   836
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   837
107
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   838
!ProjectDefinition class methodsFor:'description - actions - hg'!
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   839
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   840
hgPostLoad
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   841
    <postLoad>
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   842
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   843
    | dir repo versionMethod |
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   844
    "Eventually update an version_HG"
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   845
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   846
    self binaryRevisionString isNil ifTrue:[
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   847
        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
   848
        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
   849
            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
   850
            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
   851
                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
   852
                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
   853
                versionMethod annotateWith: 
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   854
                    (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
   855
            ].
af5fea76e6ed Fix in ProjectDefinition>>hgPostLoad - check for non-existing package directory.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 353
diff changeset
   856
        ]
107
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   857
    ].
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   858
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   859
    "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
   860
    "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
   861
! !
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   862
353
456532e0478c Added more support for HG mirrors of CVS repos.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 303
diff changeset
   863
!ProjectDefinition class methodsFor:'accessing - hg - settings'!
288
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   864
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   865
hgRemoveContainesForDeletedClasses
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   866
    "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
   867
     repositoru. If false, obsolete containes are kept.
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   868
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   869
     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
   870
     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
   871
     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
   872
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   873
    ^true "default"
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   874
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   875
    "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
   876
! !
577f8935661d Added ProjectDefinition>>hgRemoveContainesForDeletedClasses config methd.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 286
diff changeset
   877
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   878
!Tools::NewSystemBrowser methodsFor:'menu actions-hg'!
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   879
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   880
commonMenuHGBrowseTemporaryWorkingCopy
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   881
    self selectedProjectsForHG value do:[:package|
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   882
        | pkg  |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   883
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   884
        pkg := HGPackageModel named: package.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   885
        pkg notNil ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   886
            pkg temporaryWorkingCopy browse 
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   887
        ].
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
    "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
   891
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   892
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   893
!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
   894
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   895
commonMenuHGBrowseWorkingCopy
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   896
    self selectedProjectsForHG value do:[:package|
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   897
        | pkg  |
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   898
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   899
        pkg := HGPackageModel named: package.
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   900
        pkg notNil ifTrue:[
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   901
            pkg repository workingCopy browse 
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   902
        ].
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
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   905
    "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
   906
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   907
161
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   908
!Tools::NewSystemBrowser methodsFor:'menus-dynamic-hg'!
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
commonMenuHGPushSlice
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   911
    | menu push submenu packages package remotes default |
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   912
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   913
    menu := Menu new.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   914
    push := MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   915
                label: (resources string: 'Push...');
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   916
                yourself.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   917
    menu addItem: push.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   918
285
be9c850c73d5 Bogfix for HG menus in NewSystemBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 284
diff changeset
   919
    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
   920
    ((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
   921
        push enabled: false.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   922
        ^menu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   923
    ].
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   924
161
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   925
    package := packages anElement.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   926
    remotes := package repository remotes.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   927
    remotes isEmpty ifTrue:[
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   928
        push enabled: false.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   929
        ^menu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   930
    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   931
"/    default := package repository remoteDefault.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   932
"/    default notNil ifTrue:[
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   933
"/        menu addItem: (MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   934
"/                            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
   935
"/                            value:[package repository push: default];
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   936
"/                            yourself).
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   937
"/    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   938
    (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
   939
        submenu := Menu new.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   940
        push submenu: submenu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   941
        remotes do:[:remote|
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   942
            submenu addItem: (MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   943
                            label: remote displayString;
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   944
                            value:[package repository push: remote];
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   945
                            yourself).
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
    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   948
    ^menu.
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
    "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
   951
    "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
   952
! !
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   953
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   954
!Tools::NewSystemBrowser methodsFor:'aspects-navigation-hg'!
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   955
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   956
selectedProjectsForHG
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 selectedProjects value notNil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   959
        ifTrue:[^self selectedProjects value].
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
    self selectedClasses value notNil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   962
        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
   963
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   964
    ^nil
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
    "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
   967
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   968
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   969
!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
   970
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   971
classMenuSCMExtra_HG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   972
    "This resource specification was automatically generated
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   973
     by the MenuEditor of ST/X."
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
    "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
   976
     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
   977
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   978
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
     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
   981
     (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
   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
    <resource: #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
    ^ 
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   987
     #(Menu
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   988
        (
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   989
         (MenuItem
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   990
            label: 'Push Slice'
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   991
            submenuChannel: commonMenuHGPushSlice
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   992
            isMenuSlice: true
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   993
          )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   994
          (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   995
            label: 'Browse package working copy'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   996
            itemValue: commonMenuHGBrowseWorkingCopy
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   997
          )
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   998
         (MenuItem
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   999
            label: 'Browse temporary working copy (for commits & merges)'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1000
            itemValue: commonMenuHGBrowseTemporaryWorkingCopy
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1001
          )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1002
         )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1003
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1004
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1005
      )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1006
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1007
    "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
  1008
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1009
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1010
!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
  1011
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1012
projectMenuSCMExtra_HG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1013
    "This resource specification was automatically generated
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1014
     by the MenuEditor of ST/X."
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
    "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
  1017
     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
  1018
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1019
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
     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
  1022
     (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
  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
    <resource: #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
    ^ 
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1028
     #(Menu
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1029
        (
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1030
         (MenuItem
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1031
            label: 'Push Slice'
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1032
            submenuChannel: commonMenuHGPushSlice
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1033
            isMenuSlice: true
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1034
          )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1035
         (MenuItem
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1036
            label: 'Browse package working copy'
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1037
            itemValue: commonMenuHGBrowseWorkingCopy
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1038
          )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1039
         (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1040
            label: 'Browse temporary working copy (for commits & merges)'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1041
            itemValue: commonMenuHGBrowseTemporaryWorkingCopy
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1042
          )
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1043
         )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1044
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1045
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1046
      )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1047
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
  1048
    "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
  1049
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
  1050
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1051
!UserPreferences methodsFor:'accessing-scm-mercurial'!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1052
151
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1053
hgAutopush
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1054
    "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
  1055
     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
  1056
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1057
    ^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
  1058
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1059
    "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
  1060
! !
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1061
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1062
!UserPreferences methodsFor:'accessing-scm-mercurial'!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1063
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1064
hgAutopush: aBoolean
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1065
    "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
  1066
     to an upstream repository (autopush)"
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
    ^self at: #hgAutopush put: aBoolean.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1069
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1070
    "
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1071
    UserPreferences current hgAutopush
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1072
    UserPreferences current hgAutopush: true
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1073
    UserPreferences current hgAutopush: false
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
    "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
  1077
! !
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1078
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1079
!UserPreferences methodsFor:'accessing-scm-mercurial'!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
  1080
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1081
hgCommand
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1082
    "Returns path svn executable"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1083
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1084
    | 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
    cmd := self at:#hgCommand ifAbsent:[ nil ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1087
    ^cmd isEmptyOrNil ifTrue:[ nil ] ifFalse:[ cmd ]
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
    "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
  1090
! !
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1091
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1092
!UserPreferences methodsFor:'accessing-scm-mercurial'!
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
hgCommand: aString
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1095
    "Set the command to 'hg' executable"
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
    self at:#hgCommand put: aString.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1098
    HGCommand hgCommand: aString.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1099
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1100
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1101
        UserPreferences current hgCommand
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1102
        UserPreferences current hgCommand:'hg'
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1103
        UserPreferences current hgCommand:nil
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
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1106
    "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
  1107
! !
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
  1108
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
  1109
!stx_libscm_mercurial class methodsFor:'documentation'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
  1110
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
  1111
extensionsVersion_HG
115
b1ed2d29054b version_HG changed to return string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 107
diff changeset
  1112
b1ed2d29054b version_HG changed to return string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 107
diff changeset
  1113
    ^ '$Changeset: <not expanded> $'
303
aee999e9dc25 Bugfixes in push parsing.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 302
diff changeset
  1114
! !