mercurial/HGChangesetLabel.st
author Jan Vrany <jan.vrany@labware.com>
Fri, 19 Feb 2021 08:29:41 +0000
changeset 924 4d92f234f671
parent 662 3a9f314a45ae
permissions -rw-r--r--
Rework and fix HGSourceCodeManager >> #revisionLogOf:...directory:module:` This commit changes the logic in two ways: 1. #newestRevision is now the newest revision in the branch that *contains* given file (not necesarily modidfes it). If there are multiple heads in that branch, pretty much random one is returned. This changes old behavior and therefore this commit updates tests. 2. If a specific single revision is requested, i.e., both from and to revisions are the same, revision log with that single revision is returned no matter whether it modifies the file or even contains that file at all. This is essentially a workaround to fix issue #305. Moreover, this commit simplifies the code a lot by delegating all the changeset searching and filtering to mercurial using revset expressions. See https://swing.fit.cvut.cz/projects/stx-jv/ticket/305#comment:3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
403
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
stx:libscm - a new source code management library for Smalltalk/X
509
f92210d4585b Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 405
diff changeset
     3
Copyright (C) 2012-2015 Jan Vrany
403
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
This library is free software; you can redistribute it and/or
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
modify it under the terms of the GNU Lesser General Public
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
License as published by the Free Software Foundation; either
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
version 2.1 of the License. 
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
This library is distributed in the hope that it will be useful,
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
but WITHOUT ANY WARRANTY; without even the implied warranty of
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
Lesser General Public License for more details.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
You should have received a copy of the GNU Lesser General Public
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
License along with this library; if not, write to the Free Software
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
"{ Package: 'stx:libscm/mercurial' }"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
662
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
    21
"{ NameSpace: Smalltalk }"
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
    22
403
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
HGRepositoryObject subclass:#HGChangesetLabel
405
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
    24
	instanceVariableNames:'name color'
403
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
	classVariableNames:''
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
	poolDictionaries:''
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
	category:'SCM-Mercurial-Internal'
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
!HGChangesetLabel class methodsFor:'documentation'!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
copyright
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
stx:libscm - a new source code management library for Smalltalk/X
509
f92210d4585b Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 405
diff changeset
    35
Copyright (C) 2012-2015 Jan Vrany
403
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
This library is free software; you can redistribute it and/or
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
modify it under the terms of the GNU Lesser General Public
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
License as published by the Free Software Foundation; either
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
version 2.1 of the License. 
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
This library is distributed in the hope that it will be useful,
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
but WITHOUT ANY WARRANTY; without even the implied warranty of
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
Lesser General Public License for more details.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
You should have received a copy of the GNU Lesser General Public
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
License along with this library; if not, write to the Free Software
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
documentation
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
    documentation to be added.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
    [author:]
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
        Jan Vrany <jan.vrany@fit.cvut.cz>
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    [instance variables:]
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
    [class variables:]
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    [see also:]
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
! !
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
!HGChangesetLabel class methodsFor:'testing'!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
isAbstract
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
    ^ self == HGChangesetLabel
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
! !
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
!HGChangesetLabel methodsFor:'accessing'!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
name
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
    "Returns a branche's name"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
    ^ name
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
    "Modified (comment): / 22-10-2012 / 19:59:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
! !
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
!HGChangesetLabel methodsFor:'accessing-presentation'!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
color
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
    "Return a color that should be maybe when displaying branch
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
     visual guide."     
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
    ^ self subclassResponsibility
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
    "Modified (comment): / 20-03-2014 / 01:43:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
! !
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
!HGChangesetLabel methodsFor:'displaying'!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
displayOn: aGC x: x y: y
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
    | savedFG savedBG w h a |
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
    savedFG := aGC paint.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
    savedBG := aGC background.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
    w := aGC widthOfString: self name.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    h := aGC font height.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
    a := aGC font ascent.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
    aGC fillRectangleX: x y: y width: w + 3 + 3 height: h + 2 + 2 color: self color.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
    aGC paint: (self color contrastingBlackOrWhite).
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
    aGC displayString: self name x: x + 3 y: y + a + 2. 
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
    aGC paint: savedFG.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
    aGC background: savedBG
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
    "Created: / 16-03-2014 / 23:20:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
    "Modified: / 17-03-2014 / 23:33:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
heightOn: aGC
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
    | h |
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
    h := aGC font height.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
    ^ h + 2 + 2.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
    "Created: / 17-03-2014 / 09:05:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
widthOn: aGC 
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
    | w |
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
    w := aGC widthOfString: self name.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
    ^ w + 3 + 3
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
    "Created: / 17-03-2014 / 09:05:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
! !
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
!HGChangesetLabel methodsFor:'initialization'!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
setName: aString
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
    name := aString
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
    "Created: / 22-10-2012 / 20:00:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
! !
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
!HGChangesetLabel methodsFor:'printing & storing'!
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
printOn:aStream
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
    "append a printed representation if the receiver to the argument, aStream"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
    super printOn:aStream.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
    aStream nextPutAll:'('.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
    name printOn:aStream.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
    aStream nextPutAll:')'.
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
    "Modified: / 10-12-2012 / 03:17:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
! !
237ed0ed6c49 Initial support for Mercurial bookmarks.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
405
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   155
!HGChangesetLabel methodsFor:'testing'!
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   156
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   157
isBookmark
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   158
    ^ false
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   159
!
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   160
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   161
isBranch
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   162
    ^ false
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   163
!
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   164
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   165
isTag
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   166
    ^ false
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   167
! !
9906c030ae1d More work on Mercurial revision log browser and revision selection dialog.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 403
diff changeset
   168
662
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
   169
!HGChangesetLabel class methodsFor:'documentation'!
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
   170
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
   171
version_HG
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
   172
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
   173
    ^ '$Changeset: <not expanded> $'
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
   174
! !
3a9f314a45ae "Fixed" long-standing "bug" in `#revisionLogOf:fromRevision:...`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 509
diff changeset
   175