mercurial/extensions.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 14 Jan 2013 13:56:09 +0000
changeset 174 0d293012a897
parent 173 c72794df7ae3
child 178 1ed827252fee
permissions -rw-r--r--
Fixed commit to freshly created repository.
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 ].
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    10
    ^HGRepository on: root.
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>"
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    13
! !
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
!AbstractFileBrowser methodsFor:'menu-queries-hg'!
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    16
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    17
hasHGWorkingCopySelected
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    18
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    19
    ^ self hgMenusAreShown 
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    20
        and:[((Smalltalk at:#HGRepository) discover:self currentDirectoryDisplayed) notNil]
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    21
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    22
    "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
    23
! !
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
    24
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    25
!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
    26
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    27
hgCommit
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    28
    | wc task |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    29
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    30
    wc := self currentHgRepository workingCopy.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    31
    task := HGCommitTask new temporaryWorkingCopy: wc.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    32
    HGCommitDialog new
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    33
        task: task;
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    34
        open
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    35
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    36
    "Created: / 11-01-2013 / 19:27:43 / 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
    37
    "Modified: / 12-01-2013 / 13:57:07 / 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
    38
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    39
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    40
!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
    41
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    42
hgExecuteCommand: command
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    43
    "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
    44
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    45
    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
    46
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    47
    "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
    48
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    49
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    50
!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
    51
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    52
hgExecuteCommand: command objects: givenObjects
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    53
    "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
    54
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    55
    | objects workdir objectsAsString executionBlock |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    56
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    57
    objects := givenObjects.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    58
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    59
    (self isKindOf: FileBrowserV2) ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    60
        workdir := self currentDirectoryDisplayed.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    61
        workdir isDirectory ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    62
            workdir := workdir directory
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    63
        ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    64
    ] ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    65
        (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
    66
            workdir := objects anElement
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    67
        ] ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    68
            workdir := Filename currentDirectory.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    69
        ]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    70
    ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    71
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    72
    objectsAsString := String streamContents:[:s|
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    73
        objects size == 1 ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    74
            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
    75
                s nextPut:$.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    76
            ] ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    77
                s nextPutAll: objects anElement asString.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    78
            ]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    79
        ] ifFalse:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    80
            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
    81
                separatedBy:[s space]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    82
        ]
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    83
    ].
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
    executionBlock := [:stream |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    86
        | cmd |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    87
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    88
        cmd := '%1 --noninteractive %2 %3' 
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    89
                bindWith: HGCommand hgCommand
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    90
                    with: command
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    91
                    with: objectsAsString.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    92
        stream nextPutAll: cmd; cr; cr.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    93
        (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
    94
    ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    95
    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
    96
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    97
    "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
    98
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
    99
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   100
!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
   101
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   102
hgStatus
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   103
    self hgExecuteCommand: 'status'
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   104
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   105
    "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
   106
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   107
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   108
!AbstractFileBrowser class methodsFor:'menu specs-scm'!
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   109
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   110
hgMenu
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   111
    "This resource specification was automatically generated
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   112
     by the MenuEditor of ST/X."
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   113
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   114
    "Do not manually edit this!! If it is corrupted,
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   115
     the MenuEditor may not be able to read the specification."
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   116
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   117
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   118
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   119
     MenuEditor new openOnClass:AbstractFileBrowser andSelector:#hgMenu
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   120
     (Menu new fromLiteralArrayEncoding:(AbstractFileBrowser hgMenu)) startUp
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   121
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   122
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   123
    <resource: #menu>
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   124
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   125
    ^ 
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   126
     #(Menu
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   127
        (
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   128
         (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   129
            enabled: hasHGWorkingCopySelected
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   130
            label: 'Commit'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   131
            itemValue: hgCommit
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   132
            labelImage: (ResourceRetriever HGIconLibrary commit 'Commit')
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   133
          )
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   134
         (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   135
            label: '-'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   136
          )
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   137
         (MenuItem
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   138
            label: 'Status'
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   139
            itemValue: hgStatus
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   140
          )
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   141
         (MenuItem
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   142
            label: '-'
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   143
          )
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   144
         (MenuItem
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   145
            enabled: hasHGWorkingCopySelected
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   146
            label: 'Merge'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   147
            submenuChannel: hgMenuMerge
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   148
            labelImage: (ResourceRetriever HGIconLibrary merge 'Merge')
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   149
          )
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   150
         )
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   151
        nil
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   152
        nil
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   153
      )
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   154
! !
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   155
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   156
!Annotation class methodsFor:'instance creation'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   157
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   158
HGRevision: aString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   159
    "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
   160
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   161
    ^HGRevisionAnnotation revision: aString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   162
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   163
    "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
   164
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   165
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   166
!ByteArray methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   167
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   168
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   169
    ^ HGChangesetId fromBytes:self.
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   170
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   171
    "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
   172
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   173
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   174
!ConfigurableFeatures class methodsFor:'queries-features'!
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   175
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   176
hasHGSupport
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   177
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   178
    ^ (Smalltalk at: #'HGSourceCodeManager' ifAbsent:nil) notNil
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   179
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   180
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   181
     ConfigurableFeatures hasGitSupport
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   182
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   183
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   184
    "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
   185
! !
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   186
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   187
!ConfigurableFeatures class methodsFor:'queries-features'!
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   188
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   189
hasHGSupportEnabled
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   190
    ^ self hasSCMSupportEnabledFor:#'HGSourceCodeManager'
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   191
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   192
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   193
     self hasGitSupportEnabled
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   194
    "
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   195
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   196
    "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
   197
! !
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   198
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   199
!Integer methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   200
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   201
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   202
    ^ (HGChangesetId new:0) revno:self.
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   203
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   204
    "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
   205
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   206
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   207
!Object methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   208
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   209
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   210
    HGError 
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   211
        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
   212
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   213
    "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
   214
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   215
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   216
!Object methodsFor:'converting'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   217
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   218
asHGRevision
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   219
    ^self asHGChangesetId
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   220
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   221
    "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
   222
    "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
   223
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   224
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   225
!ProjectDefinition class methodsFor:'accessing - hg'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   226
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   227
hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   228
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   229
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   230
    Answers Mercurial revision from which the package was compiled.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   231
    If no binary revision is available, returns nil."
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   232
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   233
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   234
    | revInfo |
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   235
91
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   236
    self binaryRevisionString notNil ifTrue:[
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   237
        revInfo := HGRevisionInfo readFrom: self binaryRevisionString onError:[nil].
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   238
        revInfo notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   239
            ^revInfo changesetId
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   240
        ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   241
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   242
    ^nil
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   243
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   244
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   245
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   246
        stx_libbasic hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   247
        stx_libsvn hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   248
        stx_libscm_mercurial hgBinaryRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   249
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   250
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   251
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   252
    "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
   253
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   254
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   255
!ProjectDefinition class methodsFor:'accessing - hg'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   256
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   257
hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   258
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   259
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   260
    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
   261
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   262
    Revision is computed as follows:
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   263
        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
   264
           if so, return its value.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   265
        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
   266
        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
   267
           return working copy's revision"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   268
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   269
    | versionMethod versionAnnotation revInfo pkgDir repoDir repo |
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   270
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   271
    "1 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   272
102
16bc16d9e6d5 Update logical revision on commit,
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 93
diff changeset
   273
    versionMethod := self class compiledMethodAt: HGSourceCodeManager nameOfVersionMethodInClasses.
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   274
    versionMethod notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   275
        versionAnnotation := versionMethod annotationAt: #HGRevision:.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   276
        versionAnnotation notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   277
            ^versionAnnotation revision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   278
        ].
174
0d293012a897 Fixed commit to freshly created repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 173
diff changeset
   279
    ] ifFalse:[
0d293012a897 Fixed commit to freshly created repository.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 173
diff changeset
   280
        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
   281
        versionMethod := self class compiledMethodAt: HGSourceCodeManager nameOfVersionMethodInClasses.
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   282
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   283
    
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   284
    "2 --- "
91
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   285
    self binaryRevisionString notNil ifTrue:[
f07d8ef6c01a stx compilation fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 88
diff changeset
   286
        revInfo := HGRevisionInfo readFrom: self binaryRevisionString onError:[nil].
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   287
        revInfo notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   288
            ^revInfo changesetId
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   289
        ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   290
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   291
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   292
    "3 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   293
    pkgDir := Smalltalk getPackageDirectoryForPackage: self package.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   294
    pkgDir notNil ifTrue:[
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   295
        repoDir := HGRepository discover: pkgDir.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   296
        repoDir notNil ifTrue:[
170
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   297
            | id |
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   298
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   299
            repo := HGRepository on: repoDir.
170
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   300
            id := repo workingCopy changeset id.
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   301
            versionMethod annotateWith: (HGRevisionAnnotation revision: id).
e0bdc6f35bf9 Bugfix in ProjectDefinition>>hgLogicalRevision.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 163
diff changeset
   302
            ^id
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   303
        ]
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   304
    ].
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   305
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   306
    "4 --- "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   307
    self breakPoint: #jv.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   308
    ^nil
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   309
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   310
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   311
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   312
        stx_libbasic hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   313
        stx_libsvn hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   314
        stx_libscm_mercurial hgLogicalRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   315
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   316
    "
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   317
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   318
    "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
   319
    "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
   320
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 80
diff changeset
   321
107
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   322
!ProjectDefinition class methodsFor:'description - actions - hg'!
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   323
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   324
hgPostLoad
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   325
    <postLoad>
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   326
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   327
    | dir repo versionMethod |
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   328
    "Eventually update an version_HG"
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   329
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   330
    self binaryRevisionString isNil ifTrue:[
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   331
        dir := Smalltalk getPackageDirectoryForPackage: self package.
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   332
        dir := HGRepository discover: dir.
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   333
        dir notNil ifTrue:[
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   334
            repo := HGRepository on: dir.
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   335
            versionMethod := HGSourceCodeManager ensureVersionMethodInClass: self package: self package.
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   336
            versionMethod annotateWith: 
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   337
                (HGRevisionAnnotation revision: repo workingCopy changeset id)
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   338
        ].
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   339
    ].
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   340
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   341
    "Created: / 26-11-2012 / 13:06:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   342
    "Modified: / 27-11-2012 / 22:14:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   343
! !
c92f7674485e Fixed test StXTests>>test_commit_03c
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 103
diff changeset
   344
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   345
!String methodsFor:'converting'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   346
103
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   347
asHGChangesetId
04731ef44417 HGNodeId renamed to HGChangesetId
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 102
diff changeset
   348
    ^ HGChangesetId fromString:self.
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   349
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   350
    "Created: / 16-11-2012 / 21:24:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   351
! !
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   352
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   353
!Tools::NewSystemBrowser methodsFor:'menu actions-hg'!
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   354
173
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   355
commonMenuHGBrowseTemporaryWorkingCopy
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   356
    self selectedProjectsForHG value do:[:package|
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   357
        | pkg  |
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   358
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   359
        pkg := HGPackageModel named: package.
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   360
        pkg notNil ifTrue:[
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   361
            pkg temporaryWorkingCopy browse 
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   362
        ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   363
    ].
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   364
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   365
    "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
   366
! !
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   367
c72794df7ae3 Implemented commit menu item in file browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 170
diff changeset
   368
!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
   369
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   370
commonMenuHGBrowseWorkingCopy
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   371
    self selectedProjectsForHG value do:[:package|
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   372
        | pkg  |
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   373
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   374
        pkg := HGPackageModel named: package.
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   375
        pkg notNil ifTrue:[
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   376
            pkg repository workingCopy browse 
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   377
        ].
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   378
    ].
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   379
162
108fc9ee061e Added HGWorkingCopyBrowser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 161
diff changeset
   380
    "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
   381
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   382
161
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   383
!Tools::NewSystemBrowser methodsFor:'menus-dynamic-hg'!
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   384
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   385
commonMenuHGPushSlice
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   386
    | menu push submenu packages package remotes default |
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   387
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   388
    menu := Menu new.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   389
    push := MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   390
                label: (resources string: 'Push...');
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   391
                yourself.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   392
    menu addItem: push.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   393
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   394
    packages := self selectedProjectsForHG value collect:[:id|HGPackageModel named:id].
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   395
    ((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
   396
        push enabled: false.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   397
        ^menu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   398
    ].
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   399
161
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   400
    package := packages anElement.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   401
    remotes := package repository remotes.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   402
    remotes isEmpty ifTrue:[
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   403
        push enabled: false.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   404
        ^menu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   405
    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   406
"/    default := package repository remoteDefault.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   407
"/    default notNil ifTrue:[
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   408
"/        menu addItem: (MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   409
"/                            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
   410
"/                            value:[package repository push: default];
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   411
"/                            yourself).
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   412
"/    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   413
    (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
   414
        submenu := Menu new.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   415
        push submenu: submenu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   416
        remotes do:[:remote|
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   417
            submenu addItem: (MenuItem new
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   418
                            label: remote displayString;
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   419
                            value:[package repository push: remote];
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   420
                            yourself).
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   421
        ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   422
    ].
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   423
    ^menu.
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   424
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   425
    "Created: / 10-12-2012 / 03:56:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   426
    "Modified: / 14-12-2012 / 18:09:07 / 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
   427
! !
ed22df640210 Bugfix: added lost NewSystemBrowser>>commonMenuHGPushSlice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 154
diff changeset
   428
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   429
!Tools::NewSystemBrowser methodsFor:'aspects-navigation-hg'!
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   430
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   431
selectedProjectsForHG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   432
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   433
    self selectedProjects value notNil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   434
        ifTrue:[^self selectedProjects value].
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   435
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   436
    self selectedClasses value notNil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   437
        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
   438
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   439
    ^nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   440
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   441
    "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
   442
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   443
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   444
!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
   445
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   446
classMenuSCMExtra_HG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   447
    "This resource specification was automatically generated
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   448
     by the MenuEditor of ST/X."
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   449
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   450
    "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
   451
     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
   452
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   453
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   454
    "
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   455
     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
   456
     (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
   457
    "
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   458
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   459
    <resource: #menu>
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   460
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   461
    ^ 
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   462
     #(Menu
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   463
        (
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   464
         (MenuItem
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   465
            label: 'Push Slice'
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   466
            submenuChannel: commonMenuHGPushSlice
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   467
            isMenuSlice: true
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   468
          )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   469
          (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   470
            label: 'Browse package working copy'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   471
            itemValue: commonMenuHGBrowseWorkingCopy
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   472
          )
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   473
         (MenuItem
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   474
            label: 'Browse temporary working copy (for commits & merges)'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   475
            itemValue: commonMenuHGBrowseTemporaryWorkingCopy
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   476
          )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   477
         )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   478
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   479
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   480
      )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   481
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   482
    "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
   483
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   484
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   485
!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
   486
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   487
projectMenuSCMExtra_HG
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   488
    "This resource specification was automatically generated
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   489
     by the MenuEditor of ST/X."
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   490
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   491
    "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
   492
     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
   493
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   494
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   495
    "
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   496
     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
   497
     (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
   498
    "
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   499
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   500
    <resource: #menu>
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   501
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   502
    ^ 
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   503
     #(Menu
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   504
        (
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   505
         (MenuItem
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   506
            label: 'Push Slice'
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   507
            submenuChannel: commonMenuHGPushSlice
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   508
            isMenuSlice: true
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   509
          )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   510
         (MenuItem
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   511
            label: 'Browse package working copy'
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   512
            itemValue: commonMenuHGBrowseWorkingCopy
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   513
          )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   514
         (MenuItem
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   515
            label: 'Browse temporary working copy (for commits & merges)'
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   516
            itemValue: commonMenuHGBrowseTemporaryWorkingCopy
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   517
          )
154
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   518
         )
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   519
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   520
        nil
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   521
      )
163
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   522
21bc6994087d Experimental HGWorkingCopyBrowser - unfinished!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 162
diff changeset
   523
    "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
   524
! !
c1221bf5f357 Added 'Push' menu to system browser.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 151
diff changeset
   525
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   526
!UserPreferences methodsFor:'accessing-scm-mercurial'!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   527
151
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   528
hgAutopush
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   529
    "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
   530
     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
   531
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   532
    ^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
   533
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   534
    "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
   535
! !
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   536
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   537
!UserPreferences methodsFor:'accessing-scm-mercurial'!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   538
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   539
hgAutopush: aBoolean
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   540
    "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
   541
     to an upstream repository (autopush)"
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   542
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   543
    ^self at: #hgAutopush put: aBoolean.
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   544
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   545
    "
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   546
    UserPreferences current hgAutopush
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   547
    UserPreferences current hgAutopush: true
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   548
    UserPreferences current hgAutopush: false
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   549
    "
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   550
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   551
    "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
   552
! !
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   553
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   554
!UserPreferences methodsFor:'accessing-scm-mercurial'!
527a1e85aef8 Support for 'autopush' in commit dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 115
diff changeset
   555
80
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   556
hgCommand
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   557
    "Returns path svn executable"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   558
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   559
    | cmd |
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   560
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   561
    cmd := self at:#hgCommand ifAbsent:[ nil ].
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   562
    ^cmd isEmptyOrNil ifTrue:[ nil ] ifFalse:[ cmd ]
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   563
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   564
    "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
   565
! !
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   566
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   567
!UserPreferences methodsFor:'accessing-scm-mercurial'!
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   568
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   569
hgCommand: aString
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   570
    "Set the command to 'hg' executable"
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   571
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   572
    self at:#hgCommand put: aString.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   573
    HGCommand hgCommand: aString.
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   574
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   575
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   576
        UserPreferences current hgCommand
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   577
        UserPreferences current hgCommand:'hg'
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   578
        UserPreferences current hgCommand:nil
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   579
    "
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   580
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   581
    "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
   582
! !
8f300696b26b Added configurable path to 'hg' command.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 69
diff changeset
   583
69
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   584
!stx_libscm_mercurial class methodsFor:'documentation'!
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   585
17045d49309f Refactoring: preparation for accessing changeset contents.
vranyj1@bd9d3459-6c23-4dd9-91de-98eeebb81177
parents:
diff changeset
   586
extensionsVersion_HG
115
b1ed2d29054b version_HG changed to return string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 107
diff changeset
   587
b1ed2d29054b version_HG changed to return string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 107
diff changeset
   588
    ^ '$Changeset: <not expanded> $'
93
2579830f6b61 Tests fixed. Not-yet-supported tests marked as skipped.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 91
diff changeset
   589
! !