NewChangesBrowser.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 19 Jul 2017 09:42:32 +0200
branchjv
changeset 17619 edb119820fcb
parent 17136 cb908d2ba02e
permissions -rw-r--r--
Issue #154: Set window style using `#beToolWindow` to indicate that the minirunner window is kind of support tool rather than some X11 specific code (which does not work on Windows of course) See https://swing.fit.cvut.cz/projects/stx-jv/ticket/154
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13846
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     1
"
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     3
              All Rights Reserved
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     4
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     5
 This software is furnished under a license and may be used
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     6
 only in accordance with the terms of that license and with the
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     8
 be provided or otherwise made available to, or used by, any
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
     9
 other person.  No title to or ownership of the software is
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    10
 hereby transferred.
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    11
"
2740
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
    12
"{ Package: 'stx:libtool' }"
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
    13
16087
mawalch
parents: 13846
diff changeset
    14
"{ NameSpace: Smalltalk }"
mawalch
parents: 13846
diff changeset
    15
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    16
ToolApplicationModel subclass:#NewChangesBrowser
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
    17
	instanceVariableNames:'changes changeFileName skipSignal changeFileTimestamp
ffea21e237ed revised
tz
parents: 1545
diff changeset
    18
		autoUpdateBlock filterCompletionBlock editingClassSource modified'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    19
	classVariableNames:'AutoUpdate CompressSnapshotInfo CategoryColumn DeltaInfoColumn
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
    20
		TypeColumn TimeStampColumn PositionsColumn PrivateAsSeparate
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
    21
		ClassNameColumn ClassAndSelectorColumn SelectorColumn'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    22
	poolDictionaries:''
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    23
	category:'Interface-Browsers'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    24
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    25
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    26
Object subclass:#Change
1568
b37202441764 revised
tz
parents: 1556
diff changeset
    27
	instanceVariableNames:'delta string type timeStamp category chunk lastPosition position
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
    28
		className selector followUp'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    29
	classVariableNames:''
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    30
	poolDictionaries:''
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    31
	privateIn:NewChangesBrowser
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    32
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    33
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    34
!NewChangesBrowser class methodsFor:'documentation'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    35
13846
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    36
copyright
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    37
"
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    38
 COPYRIGHT (c) 2006 by eXept Software AG
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    39
              All Rights Reserved
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    40
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    41
 This software is furnished under a license and may be used
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    42
 only in accordance with the terms of that license and with the
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    43
 inclusion of the above copyright notice.   This software may not
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    44
 be provided or otherwise made available to, or used by, any
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    45
 other person.  No title to or ownership of the software is
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    46
 hereby transferred.
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    47
"
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    48
!
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
    49
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    50
documentation
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    51
"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    52
    The future Changes Browser.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    53
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    54
    [start with:]
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
    55
        NewChangesBrowser open
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
    56
        NewChangesBrowser openOnFile:aFileName
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    57
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    58
    [author:]
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
    59
        Thomas Zwick, eXept Software AG
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
    60
        enhanced by Felix Madrid, eXept Software AG
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    61
"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    62
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    63
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    64
!NewChangesBrowser class methodsFor:'instance creation'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    65
1938
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
    66
openOn:aFileName
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
    67
    "opens a Changes Browser with the changes of the aFileName"
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
    68
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
    69
    ^self openOnFile:aFileName
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
    70
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
    71
    "Created: / 17.10.1998 / 14:41:28 / cg"
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
    72
!
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
    73
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    74
openOnFile:aFileName
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
    75
    "opens a Changes Browser with the changes of the aFileName"
ffea21e237ed revised
tz
parents: 1545
diff changeset
    76
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
    77
    ^self new
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
    78
	changeFileName:aFileName;
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
    79
	open
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    80
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    81
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    82
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    83
!NewChangesBrowser class methodsFor:'accessing'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    84
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    85
autoSelectNext
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
    86
    "returns true here, makes a Delete operation automatically
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    87
     select the next change"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    88
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    89
    ^ true
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    90
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    91
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    92
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    93
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    94
label
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
    95
    "returns my label"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    96
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    97
    ^'Changes Browser'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    98
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
    99
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   100
!NewChangesBrowser class methodsFor:'help specs'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   101
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   102
flyByHelpSpec
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   103
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   104
     by the UIHelpTool of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   105
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   106
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   107
     the UIHelpTool may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   108
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   109
    "
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   110
     UIHelpTool openOnClass:NewChangesBrowser
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   111
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   112
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   113
    <resource: #help>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   114
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   115
    ^super flyByHelpSpec addPairsFrom:#(
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   116
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   117
#applyAll
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   118
'Apply all changes.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   119
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   120
#applyForClassToEnd
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   121
'Apply changes which affect this class to the end.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   122
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   123
#applyFromLastSnapshot
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   124
'Apply changes from the last snapshot to the end.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   125
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   126
#applyLine
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   127
'Apply the selected change.'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   128
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   129
#applyToEnd
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   130
'Apply all changes from the selected one to the end.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   131
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
   132
#deleteAll
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   133
'Deletes all changes.'
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
   134
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   135
#deleteCompress
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   136
'Deletes all obsolete changes.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   137
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   138
#deleteCompressForClass
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   139
'Deletes obsolete changes for this class, leaving the last one.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   140
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   141
#deleteForClassToEnd
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   142
'Deletes changes for this class from the selection to the end.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   143
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   144
#deleteLine
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   145
'Deletes the selected change.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   146
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   147
#deleteToEnd
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   148
'Deletes changes from the selected one to the end.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   149
1556
tz
parents: 1554
diff changeset
   150
#fileLoad
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   151
'Opens a dialog for selecting and loading another changes file.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   152
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   153
#fileReload
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   154
'Reloads the changes file (undo your modifications).'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   155
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   156
#fileSave
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   157
'Saves the list of changes into the current changes file.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   158
1556
tz
parents: 1554
diff changeset
   159
#filterField
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   160
'Matching patterns filtering the changes (separate patterns by blanks).'
1556
tz
parents: 1554
diff changeset
   161
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   162
#settingsAutoUpdate
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   163
'Toggle automatic update.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   164
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   165
#settingsColumns
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   166
'Configure which columns are shown in the list.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   167
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   168
#settingsColumnsCategory
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   169
'Toggle display of the changes category in the list.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   170
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   171
#settingsColumnsDeltaInfo
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   172
'Toggle display of the delta-info in the list.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   173
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   174
#settingsColumnsPosition
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   175
'Togle display of the changes file-position in the list.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   176
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   177
#settingsColumnsTimeStamp
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   178
'Toggle display of the changes time stamp in the list.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   179
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   180
#settingsColumnsType
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   181
'Toggle display of the change-type in the list.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   182
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
   183
#settingsPrivateAsSeparate
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   184
'Toggle if changes for private private are included when applying, deleting, or compressing for a class.'
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
   185
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   186
#testCompareWithCurrentVersion
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   187
'Opens a info dialog showing the difference between the changes code and the method current code.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   188
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   189
#testFindLastSnapshot
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   190
'Searches backward for the previous snapshot entry.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   191
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   192
#testFindNextSnapshot
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   193
'Searches forward for the next snapshot entry.'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   194
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   195
)
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   196
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
   197
    "Modified: / 19.5.1998 / 17:59:39 / cg"
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   198
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   199
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   200
helpSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   201
    "This resource specification was automatically generated
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   202
     by the UIHelpTool of ST/X."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   203
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   204
    "Do not manually edit this!! If it is corrupted,
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   205
     the UIHelpTool may not be able to read the specification."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   206
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   207
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   208
     UIHelpTool openOnClass:NewChangesBrowser    
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   209
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   210
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   211
    <resource: #help>
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   212
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   213
    ^ super helpSpec addPairsFrom:#(
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   214
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   215
#applyAll
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   216
'Apply all changes.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   217
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   218
#applyForClassToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   219
'Apply changes to the end which affect this class.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   220
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   221
#applyFromLastSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   222
'Apply changes from the last snapshot to the end.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   223
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   224
#applyLine
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   225
'Apply the selected change.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   226
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   227
#applyToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   228
'Apply all changes from the selected one to the end.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   229
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   230
#deleteAll
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   231
'Deletes all changes.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   232
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   233
#deleteCompress
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   234
'Deletes all obsolete changes.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   235
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   236
#deleteCompressForClass
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   237
'Deletes obsolete changes for this class, leaving the last one.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   238
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   239
#deleteForClassToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   240
'Deletes changes for this class from the selection to the end.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   241
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   242
#deleteLine
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   243
'Deletes the selected change.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   244
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   245
#deleteToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   246
'Deletes changes from the selected one to the end.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   247
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   248
#fileLoad
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   249
'Opens a dialog for selecting and loading another changes file.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   250
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   251
#fileReload
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   252
'Reloads the changes file (undo your modifications).'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   253
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   254
#fileSave
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   255
'Saves the list of changes into the current changes file.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   256
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   257
#filterField
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   258
'Matching patterns filtering the changes (separate patterns by blanks).'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   259
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   260
#settingsAutoUpdate
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   261
'Toggle automatic update.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   262
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   263
#settingsColumns
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   264
'Configure which columns are shown in the list.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   265
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   266
#settingsColumnsCategory
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   267
'Toggle display of the changes category in the list.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   268
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   269
#settingsColumnsClassName
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   270
'Toggle display of the className in the list.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   271
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   272
#settingsColumnsDeltaInfo
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   273
'Toggle display of the delta-info in the list.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   274
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   275
#settingsColumnsPosition
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   276
'Togle display of the changes file-position in the list.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   277
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   278
#settingsColumnsTimeStamp
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   279
'Toggle display of the changes time stamp in the list.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   280
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   281
#settingsColumnsType
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   282
'Toggle display of the change-type in the list.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   283
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   284
#settingsPrivateAsSeparate
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   285
'Toggle if changes for private private are included when applying, deleting, or compressing for a class.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   286
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   287
#testCompareWithCurrentVersion
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   288
'Opens a info dialog showing the difference between the changes code and the method current code.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   289
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   290
#testFindLastSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   291
'Searches backward for the previous snapshot entry.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   292
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   293
#testFindNextSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   294
'Searches forward for the next snapshot entry.'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   295
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   296
)
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   297
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   298
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   299
!NewChangesBrowser class methodsFor:'image specs'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   300
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   301
applyFromLastSnapshotIcon
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   302
    ^ self applyFromLastSnapshotIcon2
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   303
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   304
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   305
applyFromLastSnapshotIcon1
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   306
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   307
     by the ImageEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   308
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   309
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   310
     the ImageEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   311
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   312
    "
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   313
     self applyFromLastSnapshotIcon inspect
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   314
     ImageEditor openOnClass:self andSelector:#applyFromLastSnapshotIcon
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   315
     Icon flushCachedIcons
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   316
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   317
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   318
    <resource: #image>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   319
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   320
    ^Icon
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   321
        constantNamed:#'NewChangesBrowser class applyFromLastSnapshotIcon'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   322
        ifAbsentPut:[(Depth4Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(4)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   323
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@BH"H"H@@@@@@@@@H"H"H @@@@@@@@@@@@@B@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   324
@@;.;.; H@@@@@@@C.;.;.@@@@@@@@@@@@@@8@@N@@@@C?????C @@@N@@@O????<@@@8@@@@@@@@@C0@@@@8@@O????<O@@C @@@@?????0@@@@C @@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   325
@O@@@N@@@@DQDQDP<@C @@@@@_??DQ@@@@@@@@@A????D@@@@@@@@@DQDQDP@@@@C @@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 255 0 0 0 255 0 0 0 255 0 255 255 255 255 0 255 0 255 127 0 0 0 127 0 0 0 127 0 127 127 127 127 0 127 0 127 127 127 127 170 170 170]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@C?0@B@P@B@P@O?P@O?P@O?0@??@@??@@??LC?<\C?<\C?<8O?08O?10O?10??C ??[@??_@?<^@?<_@?<_@') ; yourself); yourself]
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   326
!
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   327
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   328
applyFromLastSnapshotIcon2
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   329
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   330
     by the ImageEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   331
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   332
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   333
     the ImageEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   334
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   335
    "
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   336
     self applyFromLastSnapshotIcon1 inspect
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   337
     ImageEditor openOnClass:self andSelector:#applyFromLastSnapshotIcon1
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   338
     Icon flushCachedIcons
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   339
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   340
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   341
    <resource: #image>
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   342
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   343
    ^Icon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   344
        constantNamed:#'NewChangesBrowser class applyFromLastSnapshotIcon1'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   345
        ifAbsentPut:[(Depth4Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(4)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   346
@@@BH@@@@@@QDQ<@@BH @@@@@AH"H@@@H"@@@@@@D"H H H"@@@@@@@RH"@"H"@@@@@@@AH"H@H"H@@@@@@@<@@@@BH@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   347
@@;.;.; @@@@@@@@C.;.;.@@@@@@@@@@@@@@8@@N@@@@C?????C @@@N@@@O????<@@@8@@@@@@@@@C0@@@@8@@O????<O@@C @@@@?????0@@@@C @@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   348
@O@@@N@@@@DQDQDP<@C @@@@@_??DQ@@@@@@@@@A????D@@@@@@@@@DQDQDP@@@@C @@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 255 0 0 0 255 0 0 0 255 0 255 255 255 255 0 255 0 255 127 0 0 0 127 0 0 0 127 0 127 127 127 127 0 127 0 127 127 127 127 170 170 170]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'A@C<C@C<C@C<&@C<<@C<\@C<H@@@@?<@@?<@@?<LC?<\C?<\C?<8O?08O?10O?10??C ??[@??_@?<^@?<_@?<_@') ; yourself); yourself]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   349
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   350
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   351
applyIcon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   352
    ^ self applyIcon2
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   353
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   354
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   355
applyIcon1
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   356
    "This resource specification was automatically generated
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   357
     by the ImageEditor of ST/X."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   358
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   359
    "Do not manually edit this!! If it is corrupted,
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   360
     the ImageEditor may not be able to read the specification."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   361
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   362
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   363
     self applyIcon inspect
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   364
     ImageEditor openOnClass:self andSelector:#applyIcon
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   365
     Icon flushCachedIcons
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   366
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   367
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   368
    <resource: #image>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   369
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   370
    ^Icon
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   371
        constantNamed:#'NewChangesBrowser class applyIcon'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   372
        ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   373
UUUUUUUPUUUUUU?PUUUUUU?[UUUUUW=PP@@@@C<QQUUU=_4PQUUU?_4VQ**U_?TPQUUUW?TPQUUUW=TXQ***U=TPQ**UUUTPQ*****TPQ***%UTPQ****)TP
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   374
QUUUUUTPQUUUUUTUP@@@@@@PUUUUUUUPUUUUUUUPUUUUUUUPUUUUUUUP') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 255 0 0]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   375
@@@@@@@8@@@8@@A0_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   376
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   377
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   378
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   379
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   380
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; yourself); yourself]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   381
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   382
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   383
applyIcon2
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   384
    "This resource specification was automatically generated
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   385
     by the ImageEditor of ST/X."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   386
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   387
    "Do not manually edit this!! If it is corrupted,
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   388
     the ImageEditor may not be able to read the specification."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   389
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   390
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   391
     self applyIcon2 inspect
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   392
     ImageEditor openOnClass:self andSelector:#applyIcon2
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   393
     Icon flushCachedIcons
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   394
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   395
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   396
    <resource: #image>
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   397
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   398
    ^Icon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   399
        constantNamed:#'NewChangesBrowser class applyIcon2'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   400
        ifAbsentPut:[(Depth4Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   401
DQDQDQDQDQDQP3PQDQDQDQDQDQECMADQDQDQDQDQECMADQDQDQEDPQDTL4DP@@@@@DL4@DL4@Q@QDQDQP3MAP3PADADQDQDTL3P3PPDPD"H"HQECL3MA@Q@Q
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   402
DQDQDQP3MADADADQDQDQDTL4DPDPD"H"H"HQEDDQ@Q@RH"H!!DQDQDQDADAH"H"H"H"H"DPDPD"H"H"H!!DQDQ@Q@RH"H"H"H"HQDADADQDQDQDQDQDPDPDQDQ
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   403
DQDQDQDQ@Q@@@@@@@@@@@@@ADQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDQDb') ; colorMapFromArray:#[0 0 0 255 255 255 170 170 170 255 0 0 85 85 85]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   404
@@@<@@@<@@A8@C!!8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8_??8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   405
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   406
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   407
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   408
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   409
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; yourself); yourself]
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   410
!
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   411
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   412
applyToEndIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   413
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   414
     by the ImageEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   415
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   416
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   417
     the ImageEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   418
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   419
    "
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   420
     self applyToEndIcon inspect
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   421
     ImageEditor openOnClass:self andSelector:#applyToEndIcon
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   422
     Icon flushCachedIcons
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   423
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   424
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   425
    <resource: #image>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   426
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   427
    ^Icon
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   428
        constantNamed:#'NewChangesBrowser class applyToEndIcon'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   429
        ifAbsentPut:[(Depth4Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   430
@@@DP@@@@@@@@@@@@DQ@@@@@@@@@@@@@QD@@@"H"H"@@Q@QD@@@BH"H"H@ADQD@@@@@@@@@ @@QDP@@BH"H"HB@@@DP@@@H"H"H @@@@@@@@@@@@@B@@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   431
@@L3L3L0H@@@@@@@@3L3L3@@@@@@@@@@@@@@L@@B@@@@@3L3L3@0@@@B@@@CL3L3L@@@H@@@@@@@@@@0@@@@H@@ADQDQDC@@@ @@@@DQDQDP@@@@@ @@@@@@
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   432
@A@@@B@@@@DQDQDPD@@ @@@@@SL3DQ@@@@@@@@@AL3L3D@@@@@@@@@DQDQDP@@@@@ @@@@@@@@@@@@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255 127 127 127 170 170 170 255 0 0]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'A@@@CC?0CC?0&C?0<O?0\O?0HO?0@??@@??@@??LC?<\C?<\C?<8O?08O?10O?10??C ??[@??_@?<^@?<_@?<_@') ; yourself); yourself]
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   433
!
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   434
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   435
compressIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   436
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   437
     by the ImageEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   438
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   439
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   440
     the ImageEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   441
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   442
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   443
     ImageEditor openOnClass:self andSelector:#compressIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   444
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   445
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   446
    <resource: #image>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   447
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   448
    ^Icon
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   449
	constantNamed:#'NewChangesBrowser compressIcon'
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   450
	ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@????<@@@:***(@@@8@@@8@@@8@@@8@@@@@@@8@@@@@@@8A@@@@@@8@@:**0@8HC**+@@8@@@@@@@8H@@@@@@8@@@@@@@8@@@@@@@8@@@@@@@8@@C????8@@C****(@@@@@@@@H@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@') ; colorMapFromArray:#[0 0 0 124 124 124 170 170 170 255 255 255]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@??0A??8A??8A??8A8A8G>A8@@A8G?98O?18_?!!8??A8@@A8G>A8@0A8C??8C??8C??8C??0@0@@D2@@G>@@D2@@') ; yourself); yourself]
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   451
!
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   452
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   453
deleteIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   454
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   455
     by the ImageEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   456
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   457
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   458
     the ImageEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   459
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   460
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   461
     ImageEditor openOnClass:self andSelector:#deleteIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   462
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   463
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   464
    <resource: #image>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   465
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   466
    ^Icon
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   467
	constantNamed:#'NewChangesBrowser deleteIcon'
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   468
	ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@AUUUU@@OA??UU@@@AUUUU@@@AUUUU@B@A???U@H@A??5U@@@A???0@@@AUUUB@B@@@@@@@@@@@@@A@BK@@@@A_:@@@@@AO2G@@@@AL2@@@@@AL2C@@@@AL2@@@@@AL2@@@@@AL2H@@@@AL2@@@@@A\:@@@@@H_8 @@@@@@@H') ; colorMapFromArray:#[0 0 0 255 255 255 127 127 127 170 170 170]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'_?<@_?<@_?<P_?<P_?<X_?<X_?<H_? H_?O<_?XL@@_<@@_<@@_<@@_<@@_<@@_<@@_<@@_<@@_<@@_<@@_<@@G0') ; yourself); yourself]
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   469
!
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   470
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   471
deleteToEndIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   472
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   473
     by the ImageEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   474
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   475
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   476
     the ImageEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   477
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   478
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   479
     ImageEditor openOnClass:self andSelector:#deleteToEndIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   480
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   481
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   482
    <resource: #image>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   483
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   484
    ^Icon
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   485
	constantNamed:#'NewChangesBrowser deleteToEndIcon'
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   486
	ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@B** @@O@B** @@@@@@@ @@@@??< @B@@??<@@H@@@@L@@@@EUUL@@@@G?U@B@B@G?=@@@@@EUU@A@BK@@@@A_:@@@@@AO2G@@@@AL2@@@@@AL2C@@@@AL2@@@@@AL2@@@@@AL2H@@@@AL2@@@@@A\:@@@@@H_8 @@@@@@@H') ; colorMapFromArray:#[0 0 0 255 255 255 127 127 127 170 170 170]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'C?0@C?0@C?0PO?0PO?0XO?0X??@H??@H??O<?<XL?<_<?<_<@@_<@@_<@@_<@@_<@@_<@@_<@@_<@@_<@@_<@@G0') ; yourself); yourself]
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   487
!
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   488
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   489
findLastSnapshotIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   490
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   491
     by the ImageEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   492
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   493
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   494
     the ImageEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   495
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   496
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   497
     ImageEditor openOnClass:self andSelector:#findLastSnapshotIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   498
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   499
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   500
    <resource: #image>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   501
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   502
    ^Icon
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   503
	constantNamed:#'NewChangesBrowser findLastSnapshotIcon'
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   504
	ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@EUUUW@A@F***(@@@F***(@@@F***(@@@F***(@@@F***(@@@F***(@@@F***(@A@F***(@M@F***(@H@F***(@@@F***(@@@F***(@I@L@@@@@@@@@@@@@A@P@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@') ; colorMapFromArray:#[0 0 0 255 255 255 255 0 0 170 170 170]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??B@@@B@C@B@G B@O0@@_8@@G @@G @@G @') ; yourself); yourself]
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   505
!
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   506
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   507
findNextSnapshotIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   508
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   509
     by the ImageEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   510
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   511
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   512
     the ImageEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   513
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   514
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   515
     ImageEditor openOnClass:self andSelector:#findNextSnapshotIcon
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   516
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   517
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   518
    <resource: #image>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   519
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   520
    ^Icon
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   521
	constantNamed:#'NewChangesBrowser findNextSnapshotIcon'
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   522
	ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@DA@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@D@B@@@@@@@@@@@@@@@E@@@@@@@@@EUUUW@N@F***(@@@F***(@@@F***(@@@F***(@@@F***(@@@F***(@@@V***(@H@F***(@@@F***(@@@F***(@@@F***(@@@F***(@@@L@@@@@@') ; colorMapFromArray:#[0 0 0 255 255 255 255 0 0 170 170 170]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@G @@G @@G @@_8@@O0@@G @@C@@@@@@C??@C??@C??@C??@C??@C??BC??BC??BC??BC??@C??@C??@C??@C??@') ; yourself); yourself]
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   523
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   524
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   525
findPreviousForClassIcon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   526
    "This resource specification was automatically generated
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   527
     by the ImageEditor of ST/X."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   528
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   529
    "Do not manually edit this!! If it is corrupted,
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   530
     the ImageEditor may not be able to read the specification."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   531
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   532
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   533
     self findPreviousForClassIcon inspect
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   534
     ImageEditor openOnClass:self andSelector:#findPreviousForClassIcon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   535
     Icon flushCachedIcons
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   536
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   537
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   538
    <resource: #image>
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   539
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   540
    ^Icon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   541
        constantNamed:#'NewChangesBrowser class findPreviousForClassIcon'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   542
        ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   543
@EUUUW@A@G???<@@@G???<@@@G???<@@@G???<@@@G???<@@@G???<@@@G???<@A@G???<@M@G???<@H@G???<@@@G???<@@@G???<@I@L@@@@@@@@@@@@@A
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   544
@P@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@') ; colorMapFromArray:#[0 0 0 255 255 255 255 0 0 170 170 170]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??B@@@B@C@B@G B@O0@@_8@@G @@G @@G @') ; yourself); yourself]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   545
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   546
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   547
findPreviousSnapshotIcon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   548
    "This resource specification was automatically generated
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   549
     by the ImageEditor of ST/X."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   550
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   551
    "Do not manually edit this!! If it is corrupted,
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   552
     the ImageEditor may not be able to read the specification."
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   553
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   554
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   555
     self findPreviousSnapshotIcon inspect
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   556
     ImageEditor openOnClass:self andSelector:#findPreviousSnapshotIcon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   557
     Icon flushCachedIcons
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   558
    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   559
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   560
    <resource: #image>
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   561
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   562
    ^Icon
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   563
        constantNamed:#'NewChangesBrowser class findPreviousSnapshotIcon'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   564
        ifAbsentPut:[(Depth2Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#(2)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   565
@EUUUW@A@F***(@@@F***(@@@F***(@@@F***(@@@F***(@@@F***(@@@F***(@A@F***(@M@F***(@H@F***(@@@F***(@@@F***(@I@L@@@@@@@@@@@@@A
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   566
@P@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@') ; colorMapFromArray:#[0 0 0 255 255 255 255 0 0 170 170 170]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#(1)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??@C??B@@@B@C@B@G B@O0@@_8@@G @@G @@G @') ; yourself); yourself]
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
   567
! !
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   568
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   569
!NewChangesBrowser class methodsFor:'interface specs'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   570
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   571
windowSpec
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   572
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   573
     by the UIPainter of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   574
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   575
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   576
     the UIPainter may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   577
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   578
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   579
     UIPainter new openOnClass:NewChangesBrowser andSelector:#windowSpec
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   580
     NewChangesBrowser new openInterface:#windowSpec
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   581
     NewChangesBrowser open
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   582
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   583
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   584
    <resource: #canvas>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   585
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   586
    ^
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   587
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   588
       #(#FullSpec
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   589
	  #window:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   590
	   #(#WindowSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   591
	      #name: 'Changes Browser'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   592
	      #layout: #(#LayoutFrame 53 0 92 0 687 0 583 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   593
	      #label: 'Changes Browser'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   594
	      #min: #(#Point 10 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   595
	      #max: #(#Point 1152 900)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   596
	      #bounds: #(#Rectangle 53 92 688 584)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   597
	      #menu: #menu
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   598
	      #usePreferredExtent: false
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   599
	  )
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   600
	  #component:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   601
	   #(#SpecCollection
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   602
	      #collection:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   603
	       #(
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   604
		 #(#MenuPanelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   605
		    #name: 'menuToolbarView'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   606
		    #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 32 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   607
		    #menu: #menuToolbar
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   608
		    #style: #(#FontDescription #helvetica #medium #roman 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   609
		    #showSeparatingLines: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   610
		)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   611
		 #(#VariableVerticalPanelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   612
		    #name: 'variableVerticalPanel1'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   613
		    #layout: #(#LayoutFrame 0 0.0 34 0 0 1.0 -26 1.0)
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   614
		    #component:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   615
		     #(#SpecCollection
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   616
			#collection:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   617
			 #(
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   618
			   #(#ViewSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   619
			      #name: 'Box1'
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   620
			      #component:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   621
			       #(#SpecCollection
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   622
				  #collection:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   623
				   #(
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   624
				     #(#DataSetSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   625
					#name: 'changesDataSetView'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   626
					#layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 -28 1.0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   627
					#model: #selectionOfChange
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   628
					#menu: #menuTable
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   629
					#hasHorizontalScrollBar: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   630
					#hasVerticalScrollBar: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   631
					#miniScrollerHorizontal: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   632
					#dataList: #listOfChanges
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   633
					#useIndex: false
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   634
					#has3Dsepartors: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   635
					#doubleClickSelector: #doBrowseClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   636
					#columnHolder: #listOfChangeColumns
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   637
					#valueChangeSelector: #changeSelected:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   638
				    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   639
				     #(#ViewSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   640
					#name: 'Box2'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   641
					#layout: #(#LayoutFrame 0 0.0 -28 1 0 1.0 0 1.0)
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   642
					#component:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   643
					 #(#SpecCollection
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
   644
					    #collection:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   645
					     #(
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   646
					       #(#LabelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   647
						  #name: 'filterLabel'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   648
						  #layout: #(#AlignmentOrigin 37 0 13 0.0 1 0.5)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   649
						  #label: 'Filter:'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   650
						  #style: #(#FontDescription #helvetica #medium #roman 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   651
						  #adjust: #left
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   652
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   653
					       #(#InputFieldSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   654
						  #name: 'filterField'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   655
						  #layout: #(#LayoutFrame 41 0.0 3 0 250 0 25 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   656
						  #activeHelpKey: #filterField
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   657
						  #model: #valueOfFilter
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   658
						  #immediateAccept: false
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   659
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   660
					       #(#ProgressIndicatorSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   661
						  #name: 'readProgressIndicator'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   662
						  #layout: #(#LayoutFrame 41 0 3 0 250 0 25 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   663
						  #model: #valueOfReadProgress
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   664
						  #foregroundColor: #(#Color 0.0 60.0 60.0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   665
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   666
					       #(#ActionButtonSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   667
						  #name: 'allButton'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   668
						  #layout: #(#LayoutFrame 258 0.0 2 0.0 268 0 13 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   669
						  #label: ' '
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   670
						  #model: #doFilter:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   671
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   672
					       #(#LabelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   673
						  #name: 'allLabel'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   674
						  #layout: #(#LayoutFrame 273 0 0 0.0 310 0 14 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   675
						  #label: '= all'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   676
						  #translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   677
						  #style: #(#FontDescription #helvetica #medium #roman 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   678
						  #adjust: #left
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   679
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   680
					       #(#ActionButtonSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   681
						  #name: 'methodChangesButton'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   682
						  #layout: #(#LayoutFrame 359 0.0 2 0.0 369 0 13 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   683
						  #label: ' '
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   684
						  #backgroundColor: #(#Color 100.0 100.0 100.0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   685
						  #model: #doFilterType:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   686
						  #actionValue: 'method'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   687
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   688
					       #(#LabelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   689
						  #name: 'methodChangesLabel'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   690
						  #layout: #(#LayoutFrame 373 0 0 0.0 458 0 14 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   691
						  #label: '= method'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   692
						  #translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   693
						  #style: #(#FontDescription #helvetica #medium #roman 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   694
						  #adjust: #left
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   695
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   696
					       #(#ActionButtonSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   697
						  #name: 'classChangesButton'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   698
						  #layout: #(#LayoutFrame 455 0.0 2 0.0 465 0 13 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   699
						  #label: ' '
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   700
						  #backgroundColor: #(#Color 50.0008 50.0008 50.0008)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   701
						  #model: #doFilterType:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   702
						  #actionValue: 'class'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   703
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   704
					       #(#LabelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   705
						  #name: 'classChangesLabel'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   706
						  #layout: #(#LayoutFrame 470 0 0 0.0 580 0 14 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   707
						  #label: '= class change'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   708
						  #translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   709
						  #style: #(#FontDescription #helvetica #medium #roman 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   710
						  #adjust: #left
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   711
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   712
					       #(#ActionButtonSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   713
						  #name: 'snapshotButton'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   714
						  #layout: #(#LayoutFrame 258 0.0 16 0.0 268 0 27 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   715
						  #label: ' '
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   716
						  #backgroundColor: #(#Color 100.0 0.0 0.0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   717
						  #model: #doFilterType:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   718
						  #actionValue: 'image'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   719
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   720
					       #(#LabelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   721
						  #name: 'snapshotLabel'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   722
						  #layout: #(#LayoutFrame 273 0 14 0.0 355 0 28 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   723
						  #label: '= snapshot'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   724
						  #translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   725
						  #style: #(#FontDescription #helvetica #medium #roman 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   726
						  #adjust: #left
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   727
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   728
					       #(#ActionButtonSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   729
						  #name: 'fileInButton'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   730
						  #layout: #(#LayoutFrame 359 0.0 16 0.0 369 0 27 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   731
						  #label: ' '
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   732
						  #backgroundColor: #(#Color 0.0 80.0 80.0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   733
						  #model: #doFilterSourceType:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   734
						  #actionValue: '* file*'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   735
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   736
					       #(#LabelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   737
						  #name: 'fileInLabel'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   738
						  #layout: #(#LayoutFrame 374 0 14 0.0 440 0 28 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   739
						  #label: '= fileIn'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   740
						  #translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   741
						  #style: #(#FontDescription #helvetica #medium #roman 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   742
						  #adjust: #left
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   743
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   744
					       #(#ActionButtonSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   745
						  #name: 'checkInButton'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   746
						  #layout: #(#LayoutFrame 455 0.0 16 0.0 465 0 27 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   747
						  #label: ' '
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   748
						  #backgroundColor: #(#Color 0.0 0.0 100.0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   749
						  #model: #doFilterSourceType:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   750
						  #actionValue: '* checkin*'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   751
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   752
					       #(#LabelSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   753
						  #name: 'checkInLabel'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   754
						  #layout: #(#LayoutFrame 470 0 14 0.0 550 0 28 0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   755
						  #label: '= checkIn'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   756
						  #translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   757
						  #style: #(#FontDescription #helvetica #medium #roman 10)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   758
						  #adjust: #left
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   759
					      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   760
					    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   761
					)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   762
				    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   763
				  )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   764
			      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   765
			  )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   766
			   #(#WorkspaceSpec
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   767
			      #name: 'changeTextEditor'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   768
			      #model: #valueOfChangeText
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   769
			      #hasHorizontalScrollBar: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   770
			      #hasVerticalScrollBar: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   771
			      #miniScrollerHorizontal: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   772
			      #isReadOnly: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   773
			  )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   774
			)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   775
		    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   776
		    #handles: #(#Any 0.5 1.0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   777
		)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   778
		 #(#UISubSpecification
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   779
		    #name: 'windowSpecForInfoBar'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   780
		    #layout: #(#LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   781
		    #majorKey: #ToolApplicationModel
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   782
		    #minorKey: #windowSpecForInfoBar
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   783
		)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   784
	      )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
   785
	  )
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   786
      )
1647
44936f6d17ed geometry
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
   787
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
   788
    "Modified: / 19.5.1998 / 18:58:47 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   789
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   790
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   791
!NewChangesBrowser class methodsFor:'list specs'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   792
1641
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   793
tableColumnsForChangeAttributes
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   794
    "This resource specification was automatically generated
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   795
     by the DataSetBuilder of ST/X."
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   796
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   797
    "Do not manually edit this!! If it is corrupted,
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   798
     the DataSetBuilder may not be able to read the specification."
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   799
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   800
    "
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   801
     DataSetBuilder new openOnClass:NewChangesBrowser andSelector:#tableColumnsForChangeAttributes
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   802
    "
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   803
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   804
    <resource: #tableColumns>
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   805
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   806
    ^#(
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   807
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   808
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   809
         rendererType: rowSelector
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   810
         backgroundSelector: listColor
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   811
         showSelectionHighLighted: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   812
       )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   813
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   814
         label: 'Change'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   815
         id: change
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   816
         labelAlignment: left
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   817
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   818
         model: string
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   819
         canSelect: false
1641
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   820
       )
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   821
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   822
         label: 'Class'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   823
         id: 'className'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   824
         labelAlignment: left
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   825
         activeHelpKey: ''
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   826
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   827
         model: className
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   828
         canSelect: false
1641
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   829
       )
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   830
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   831
         label: 'Selector'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   832
         id: 'selector'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   833
         labelAlignment: left
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   834
         activeHelpKey: ''
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   835
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   836
         model: selector
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   837
         canSelect: false
1641
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   838
       )
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   839
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   840
         label: 'Category'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   841
         id: category
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   842
         labelAlignment: left
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   843
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   844
         model: category
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   845
         canSelect: false
1641
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   846
       )
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   847
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   848
         label: 'Delta Info'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   849
         id: deltaInfo
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   850
         labelAlignment: left
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   851
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   852
         model: delta
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   853
         canSelect: false
1641
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   854
       )
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   855
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   856
         label: 'Time Stamp'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   857
         id: timeStamp
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   858
         labelAlignment: left
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   859
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   860
         model: timeStamp
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   861
         canSelect: false
1641
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   862
       )
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   863
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   864
         label: 'Type'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   865
         id: type
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   866
         labelAlignment: left
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   867
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   868
         model: type
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   869
         canSelect: false
1641
4c430e7eb617 table columns formatted
tz
parents: 1636
diff changeset
   870
       )
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   871
      (DataSetColumnSpec
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   872
         label: 'Position'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   873
         id: position
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   874
         labelAlignment: left
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   875
         labelButtonType: Button
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   876
         model: positions
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   877
         canSelect: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   878
       )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   879
      )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   880
    
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   881
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   882
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   883
!NewChangesBrowser class methodsFor:'menu specs'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   884
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   885
menu
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   886
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   887
     by the MenuEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   888
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   889
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   890
     the MenuEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   891
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   892
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   893
     MenuEditor new openOnClass:NewChangesBrowser andSelector:#menu
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   894
     (Menu new fromLiteralArrayEncoding:(NewChangesBrowser menu)) startUp
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   895
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   896
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   897
    <resource: #menu>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
   898
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   899
    ^ 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   900
     #(Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   901
        (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   902
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   903
            label: 'File'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   904
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   905
            submenu: 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   906
           (Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   907
              (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   908
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   909
                  activeHelpKey: fileReload
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   910
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   911
                  label: 'Reload'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   912
                  itemValue: doReload
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   913
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   914
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   915
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   916
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   917
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   918
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   919
                  activeHelpKey: fileLoad
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   920
                  enabled: valueOfNotSaving
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   921
                  label: 'Load...'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   922
                  itemValue: doLoad
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   923
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   924
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   925
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   926
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   927
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   928
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   929
                  activeHelpKey: fileSave
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   930
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   931
                  label: 'Save'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   932
                  itemValue: doSave
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   933
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   934
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   935
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   936
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   937
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   938
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   939
                  activeHelpKey: fileBrowseClass
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   940
                  enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   941
                  label: 'Browse Class'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   942
                  itemValue: doBrowseClass
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   943
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   944
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   945
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   946
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   947
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   948
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   949
                  activeHelpKey: fileExit
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   950
                  enabled: valueOfNotSaving
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   951
                  label: 'Exit'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   952
                  itemValue: closeRequest
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   953
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   954
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   955
               )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   956
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   957
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   958
            )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   959
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   960
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   961
            label: 'Apply'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   962
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   963
            submenu: 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   964
           (Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   965
              (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   966
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   967
                  activeHelpKey: applyLine
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   968
                  enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   969
                  label: 'Change'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   970
                  itemValue: doApply
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   971
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   972
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   973
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   974
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   975
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   976
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   977
                  activeHelpKey: applyAll
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   978
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   979
                  label: 'All'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   980
                  itemValue: doApplyAll
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   981
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   982
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   983
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   984
                  activeHelpKey: applyToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   985
                  enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   986
                  label: 'To End'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   987
                  itemValue: doApplyToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   988
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   989
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   990
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   991
                  activeHelpKey: applyForClassToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   992
                  enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   993
                  label: 'All for Class'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   994
                  itemValue: doApplyAllForClass
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   995
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   996
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   997
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   998
                  activeHelpKey: applyForClassToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
   999
                  enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1000
                  label: 'For Class to End'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1001
                  itemValue: doApplyForClassToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1002
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1003
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1004
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1005
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1006
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1007
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1008
                  activeHelpKey: applyFromLastSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1009
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1010
                  label: 'From Last Snapshot'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1011
                  itemValue: doApplyFromLastSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1012
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1013
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1014
               )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1015
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1016
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1017
            )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1018
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1019
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1020
            label: 'Delete'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1021
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1022
            submenu: 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1023
           (Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1024
              (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1025
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1026
                  activeHelpKey: deleteLine
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1027
                  enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1028
                  label: 'Change'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1029
                  itemValue: doDelete
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1030
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1031
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1032
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1033
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1034
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1035
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1036
                  activeHelpKey: deleteAll
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1037
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1038
                  label: 'All'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1039
                  itemValue: doDeleteAll
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1040
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1041
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1042
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1043
                  activeHelpKey: deleteToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1044
                  enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1045
                  label: 'To End'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1046
                  itemValue: doDeleteToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1047
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1048
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1049
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1050
                  activeHelpKey: applyForClassToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1051
                  enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1052
                  label: 'All for Class'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1053
                  itemValue: doDeleteAllForClass
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1054
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1055
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1056
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1057
                  activeHelpKey: deleteForClassToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1058
                  enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1059
                  label: 'For Class to End'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1060
                  itemValue: doDeleteForClassToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1061
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1062
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1063
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1064
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1065
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1066
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1067
                  activeHelpKey: deleteCompress
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1068
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1069
                  label: 'Compress'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1070
                  itemValue: doCompress
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1071
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1072
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1073
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1074
                  activeHelpKey: deleteCompressForClass
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1075
                  enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1076
                  label: 'Compress for Class'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1077
                  itemValue: doCompressForClass
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1078
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1079
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1080
               )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1081
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1082
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1083
            )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1084
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1085
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1086
            label: 'Search'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1087
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1088
            submenu: 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1089
           (Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1090
              (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1091
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1092
                  activeHelpKey: testFindPreviousSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1093
                  enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1094
                  label: 'Find Previous Snapshot'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1095
                  itemValue: doFindSnapshot:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1096
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1097
                  argument: 'previous'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1098
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1099
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1100
                  activeHelpKey: testFindNextSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1101
                  enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1102
                  label: 'Find Next Snapshot'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1103
                  itemValue: doFindSnapshot:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1104
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1105
                  argument: 'next'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1106
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1107
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1108
                  activeHelpKey: testFindLastSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1109
                  enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1110
                  label: 'Find Last Snapshot'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1111
                  itemValue: doFindSnapshot:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1112
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1113
                  argument: 'last'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1114
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1115
               )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1116
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1117
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1118
            )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1119
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1120
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1121
            label: 'Test'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1122
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1123
            submenu: 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1124
           (Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1125
              (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1126
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1127
                  activeHelpKey: testCompareWithCurrentVersion
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1128
                  enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1129
                  label: 'Compare with Current Version'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1130
                  itemValue: doCompare
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1131
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1132
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1133
               )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1134
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1135
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1136
            )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1137
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1138
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1139
            label: 'Settings'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1140
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1141
            submenu: 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1142
           (Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1143
              (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1144
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1145
                  activeHelpKey: settingsAutoUpdate
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1146
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1147
                  label: 'Auto Update'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1148
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1149
                  indication: autoUpdateMode:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1150
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1151
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1152
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1153
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1154
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1155
                  activeHelpKey: settingsPrivateAsSeparate
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1156
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1157
                  label: 'Private Classes as Separate'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1158
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1159
                  indication: privateAsSeparate:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1160
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1161
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1162
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1163
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1164
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1165
                  activeHelpKey: settingsColumns
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1166
                  label: 'Columns'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1167
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1168
                  submenu: 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1169
                 (Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1170
                    (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1171
                     (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1172
                        activeHelpKey: settingsColumnsClassName
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1173
                        label: 'Class'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1174
                        translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1175
                        isVisible: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1176
                        hideMenuOnActivated: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1177
                        indication: classNameColumn:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1178
                      )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1179
                     (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1180
                        activeHelpKey: settingsColumnsCategory
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1181
                        label: 'Selector'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1182
                        translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1183
                        isVisible: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1184
                        hideMenuOnActivated: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1185
                        indication: selectorColumn:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1186
                      )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1187
                     (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1188
                        activeHelpKey: settingsColumnsCategory
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1189
                        label: 'Category'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1190
                        translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1191
                        hideMenuOnActivated: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1192
                        indication: categoryColumn:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1193
                      )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1194
                     (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1195
                        activeHelpKey: settingsColumnsDeltaInfo
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1196
                        label: 'Delta Info'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1197
                        translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1198
                        hideMenuOnActivated: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1199
                        indication: deltaInfoColumn:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1200
                      )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1201
                     (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1202
                        activeHelpKey: settingsColumnsType
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1203
                        label: 'Type'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1204
                        translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1205
                        hideMenuOnActivated: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1206
                        indication: typeColumn:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1207
                      )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1208
                     (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1209
                        activeHelpKey: settingsColumnsTimeStamp
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1210
                        label: 'Time Stamp'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1211
                        translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1212
                        hideMenuOnActivated: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1213
                        indication: timeStampColumn:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1214
                      )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1215
                     (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1216
                        activeHelpKey: settingsColumnsPosition
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1217
                        label: 'Positions'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1218
                        translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1219
                        hideMenuOnActivated: false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1220
                        indication: positionsColumn:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1221
                      )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1222
                     )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1223
                    nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1224
                    nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1225
                  )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1226
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1227
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1228
                  label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1229
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1230
               (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1231
                  enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1232
                  label: 'Fonts'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1233
                  translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1234
                  submenuChannel: menuFont
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1235
                )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1236
               )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1237
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1238
              nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1239
            )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1240
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1241
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1242
            label: 'MENU_Help'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1243
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1244
            startGroup: conditionalRight
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1245
            submenuChannel: menuHelp
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1246
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1247
         )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1248
        nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1249
        nil
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1250
      )
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1251
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1252
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1253
menuTable
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1254
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1255
     by the MenuEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1256
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1257
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1258
     the MenuEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1259
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1260
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1261
     MenuEditor new openOnClass:NewChangesBrowser andSelector:#menuTable
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1262
     (Menu new fromLiteralArrayEncoding:(NewChangesBrowser menuTable)) startUp
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1263
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1264
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1265
    <resource: #menu>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1266
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1267
    ^
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1268
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1269
       #(#Menu
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1270
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1271
	   #(
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1272
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1273
		#label: 'Apply'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1274
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1275
		#value: #doApply
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1276
		#activeHelpKey: #applyLine
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1277
		#enabled: #valueOfHavingChangeSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1278
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1279
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1280
		#label: 'Apply To End'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1281
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1282
		#value: #doApplyToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1283
		#activeHelpKey: #applyToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1284
		#enabled: #valueOfHavingSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1285
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1286
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1287
		#label: 'Apply All For Class'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1288
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1289
		#value: #doApplyAllForClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1290
		#activeHelpKey: #applyForClassToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1291
		#enabled: #valueOfHavingChangeSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1292
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1293
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1294
		#label: 'Apply For Class To End'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1295
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1296
		#value: #doApplyForClassToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1297
		#activeHelpKey: #applyForClassToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1298
		#enabled: #valueOfHavingChangeSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1299
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1300
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1301
		#label: '-'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1302
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1303
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1304
		#label: 'Delete'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1305
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1306
		#value: #doDelete
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1307
		#activeHelpKey: #deleteLine
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1308
		#enabled: #valueOfHavingSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1309
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1310
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1311
		#label: 'Delete To End'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1312
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1313
		#value: #doDeleteToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1314
		#activeHelpKey: #deleteToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1315
		#enabled: #valueOfHavingSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1316
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1317
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1318
		#label: 'Delete All For Class'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1319
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1320
		#value: #doDeleteAllForClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1321
		#activeHelpKey: #applyForClassToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1322
		#enabled: #valueOfHavingChangeSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1323
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1324
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1325
		#label: 'Delete For Class To End'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1326
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1327
		#value: #doDeleteForClassToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1328
		#activeHelpKey: #deleteForClassToEnd
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1329
		#enabled: #valueOfHavingChangeSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1330
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1331
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1332
		#label: '-'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1333
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1334
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1335
		#label: 'Browse Class'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1336
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1337
		#value: #doBrowseClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1338
		#activeHelpKey: #fileBrowseClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1339
		#enabled: #valueOfHavingChangeSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1340
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1341
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1342
		#label: '-'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1343
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1344
	     #(#MenuItem
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1345
		#label: 'Compress For Class'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1346
		#translateLabel: true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1347
		#value: #doCompressForClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1348
		#activeHelpKey: #deleteCompressForClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1349
		#enabled: #valueOfHavingChangeSelection
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1350
	    )
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1351
	  ) nil
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1352
	  nil
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1353
      )
1650
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
  1354
c0c3fb153fc7 help texts;
Claus Gittinger <cg@exept.de>
parents: 1647
diff changeset
  1355
    "Modified: / 19.5.1998 / 18:03:59 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1356
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1357
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1358
menuToolbar
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1359
    "This resource specification was automatically generated
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1360
     by the MenuEditor of ST/X."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1361
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1362
    "Do not manually edit this!! If it is corrupted,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1363
     the MenuEditor may not be able to read the specification."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1364
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1365
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1366
     MenuEditor new openOnClass:NewChangesBrowser andSelector:#menuToolbar
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1367
     (Menu new fromLiteralArrayEncoding:(NewChangesBrowser menuToolbar)) startUp
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1368
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1369
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1370
    <resource: #menu>
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1371
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1372
    ^ 
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1373
     #(Menu
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1374
        (
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1375
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1376
            activeHelpKey: fileLoad
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1377
            enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1378
            label: 'Load'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1379
            itemValue: doLoad
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1380
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1381
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1382
            labelImage: (ResourceRetriever XPToolbarIconLibrary loadFromFileIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1383
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1384
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1385
            activeHelpKey: fileSave
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1386
            enabled: valueOfNotSaving
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1387
            label: 'Save'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1388
            itemValue: doSave
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1389
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1390
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1391
            labelImage: (ResourceRetriever XPToolbarIconLibrary saveToFileIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1392
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1393
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1394
            label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1395
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1396
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1397
            activeHelpKey: applyLine
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1398
            enabled: valueOfHavingChangeSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1399
            label: 'Apply'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1400
            itemValue: doApply
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1401
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1402
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1403
            labelImage: (ResourceRetriever nil applyIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1404
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1405
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1406
            activeHelpKey: applyToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1407
            enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1408
            label: 'Apply To End'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1409
            itemValue: doApplyToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1410
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1411
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1412
            labelImage: (ResourceRetriever nil applyToEndIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1413
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1414
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1415
            activeHelpKey: applyFromLastSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1416
            enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1417
            label: 'Apply From Last Snapshot'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1418
            itemValue: doApplyFromLastSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1419
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1420
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1421
            labelImage: (ResourceRetriever nil applyFromLastSnapshotIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1422
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1423
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1424
            label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1425
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1426
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1427
            activeHelpKey: deleteLine
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1428
            enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1429
            label: 'Delete'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1430
            itemValue: doDelete
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1431
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1432
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1433
            labelImage: (ResourceRetriever nil deleteIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1434
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1435
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1436
            activeHelpKey: deleteToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1437
            enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1438
            label: 'Delete To End'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1439
            itemValue: doDeleteToEnd
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1440
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1441
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1442
            labelImage: (ResourceRetriever nil deleteToEndIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1443
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1444
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1445
            activeHelpKey: deleteCompress
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1446
            enabled: valueOfNotReading
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1447
            label: 'Compress'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1448
            itemValue: doCompress
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1449
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1450
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1451
            labelImage: (ResourceRetriever nil compressIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1452
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1453
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1454
            label: '-'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1455
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1456
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1457
            activeHelpKey: testFindPreviousSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1458
            enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1459
            label: 'Find Previous Snapshot'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1460
            itemValue: doFindSnapshot:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1461
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1462
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1463
            labelImage: (ResourceRetriever nil findPreviousSnapshotIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1464
            argument: 'previous'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1465
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1466
         (MenuItem
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1467
            activeHelpKey: testFindNextSnapshot
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1468
            enabled: valueOfHavingSelection
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1469
            label: 'Find Next Snapshot'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1470
            itemValue: doFindSnapshot:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1471
            translateLabel: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1472
            isButton: true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1473
            labelImage: (ResourceRetriever nil findNextSnapshotIcon)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1474
            argument: 'next'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1475
          )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1476
         )
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1477
        nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1478
        nil
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1479
      )
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1480
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1481
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1482
!NewChangesBrowser methodsFor:'accesssing - columns'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1483
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1484
categoryColumn
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1485
    "returns whether the column for the category attribute of the changes is shown"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1486
1553
eaeafd6f8cbe checkin from browser
tz
parents: 1546
diff changeset
  1487
    ^CategoryColumn ? (CategoryColumn := false)
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1488
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1489
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1490
categoryColumn: aBoolean
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1491
    "sets whether the column for the category attribute of the changes is shown"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1492
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1493
    self changeColumn: #category add: (CategoryColumn := aBoolean)
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1494
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1495
    "Modified: / 19.5.1998 / 20:30:13 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1496
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1497
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1498
classAndSelectorColumn
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1499
    "returns whether the column for the category attribute of the changes is shown"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1500
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1501
    ^ClassAndSelectorColumn ? (ClassAndSelectorColumn := false)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1502
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1503
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1504
classAndSelectorColumn: aBoolean
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1505
    "sets whether the column for the category attribute of the changes is shown"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1506
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1507
    self changeColumn: #classAndSelector add: (ClassAndSelectorColumn := aBoolean)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1508
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1509
    "Modified: / 19.5.1998 / 20:30:13 / cg"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1510
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1511
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1512
classNameColumn
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1513
    "returns whether the column for the category attribute of the changes is shown"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1514
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1515
    ^ClassNameColumn ? (ClassNameColumn := false)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1516
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1517
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1518
classNameColumn: aBoolean
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1519
    "sets whether the column for the className attribute of the changes is shown"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1520
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1521
    self changeColumn: #className add: (ClassNameColumn := aBoolean)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1522
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1523
    "Modified: / 19.5.1998 / 20:30:13 / cg"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1524
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1525
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1526
deltaInfoColumn
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1527
    "returns whether the column for the delta info attribute of the changes is shown"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1528
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1529
    ^DeltaInfoColumn ? (DeltaInfoColumn := false)
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1530
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1531
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1532
deltaInfoColumn: aBoolean
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1533
    "sets whether the column for the delta info attribute of the changes is shown; and updates"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1534
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1535
    self changeColumn: #deltaInfo add: (DeltaInfoColumn := aBoolean).
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1536
    (self window notNil and: [DeltaInfoColumn]) ifTrue: [self doReload]
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1537
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1538
    "Modified: / 19.5.1998 / 20:30:21 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1539
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1540
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1541
positionsColumn
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1542
    "returns whether the column for the position attribute of the changes is shown"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1543
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1544
    ^PositionsColumn ? (PositionsColumn := false)
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1545
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1546
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1547
positionsColumn: aBoolean
b37202441764 revised
tz
parents: 1556
diff changeset
  1548
    "sets whether the column for the positions attribute of the changes is shown"
b37202441764 revised
tz
parents: 1556
diff changeset
  1549
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1550
    self changeColumn: #position add: (PositionsColumn := aBoolean)
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1551
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1552
    "Modified: / 19.5.1998 / 20:30:37 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1553
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1554
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1555
selectorColumn
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1556
    "returns whether the column for the category attribute of the changes is shown"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1557
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1558
    ^SelectorColumn ? (SelectorColumn := false)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1559
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1560
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1561
selectorColumn: aBoolean
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1562
    "sets whether the column for the category attribute of the changes is shown"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1563
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1564
    self changeColumn: #selector add: (SelectorColumn := aBoolean)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1565
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1566
    "Modified: / 19.5.1998 / 20:30:13 / cg"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1567
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1568
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1569
timeStampColumn
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1570
    "returns whether the column for the time stamp attribute of the changes is shown"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1571
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1572
    ^TimeStampColumn ? (TimeStampColumn := false)
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1573
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1574
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1575
timeStampColumn: aBoolean
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1576
    "sets whether the column for the time stamp attribute of the changes is shown"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1577
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1578
    self changeColumn: #timeStamp add: (TimeStampColumn := aBoolean)
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1579
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1580
    "Modified: / 19.5.1998 / 20:30:42 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1581
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1582
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1583
typeColumn
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1584
    "returns whether the column for the type attribute of the changes is shown"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1585
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1586
    ^TypeColumn ? (TypeColumn := false)
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1587
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1588
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1589
typeColumn: aBoolean
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1590
    "sets whether the column for the type attribute of the changes is shown"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1591
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1592
    self changeColumn: #type add: (TypeColumn := aBoolean)
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1593
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1594
    "Modified: / 19.5.1998 / 20:30:46 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1595
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1596
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1597
!NewChangesBrowser methodsFor:'accesssing - views'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1598
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1599
changeTextEditor
b37202441764 revised
tz
parents: 1556
diff changeset
  1600
    "returns the view of the changeTextEditor"
b37202441764 revised
tz
parents: 1556
diff changeset
  1601
b37202441764 revised
tz
parents: 1556
diff changeset
  1602
    ^builder componentAt: #changeTextEditor
b37202441764 revised
tz
parents: 1556
diff changeset
  1603
b37202441764 revised
tz
parents: 1556
diff changeset
  1604
b37202441764 revised
tz
parents: 1556
diff changeset
  1605
b37202441764 revised
tz
parents: 1556
diff changeset
  1606
!
b37202441764 revised
tz
parents: 1556
diff changeset
  1607
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1608
filterField
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1609
    "returns the view of the filterField"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1610
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1611
    ^builder componentAt: #filterField
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1612
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1613
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1614
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1615
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1616
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1617
filterLabel
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1618
    "returns the view of the filterLabel"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1619
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1620
    ^builder componentAt: #filterLabel
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1621
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1622
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1623
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1624
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1625
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1626
readProgressIndicator
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1627
    "returns the view of the readProgressIndicator"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1628
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1629
    ^builder componentAt: #readProgressIndicator
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1630
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1631
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1632
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1633
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1634
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1635
!NewChangesBrowser methodsFor:'aspects'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1636
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1637
listOfChangeColumns
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1638
    "initializes (during the startup) and returns the value holder for the columns"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1639
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1640
    |holder|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1641
    (holder := builder bindingAt:#listOfChangeColumns) isNil ifTrue:[
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1642
        builder aspectAt:#listOfChangeColumns put:(holder := List new).
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1643
        self changeColumn: nil add: true.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1644
        self changeColumn: #change add: true.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1645
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1646
        self classNameColumn: self classNameColumn.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1647
        self classAndSelectorColumn: self classAndSelectorColumn.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1648
        self selectorColumn: self selectorColumn.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1649
        self categoryColumn: self categoryColumn.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1650
        self timeStampColumn: self timeStampColumn.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1651
        self typeColumn: self typeColumn.
2740
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  1652
"/        self deltaInfoColumn: self deltaInfoColumn.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1653
        self positionsColumn: self positionsColumn.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1654
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1655
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1656
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  1657
    "Modified: / 19.5.1998 / 20:30:31 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1658
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1659
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1660
listOfChanges
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1661
    "returns the value holder for the changes"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1662
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1663
    |holder|
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1664
    (holder := builder bindingAt:#listOfChanges) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1665
	builder aspectAt:#listOfChanges put:(holder := List new)
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1666
    ].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1667
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1668
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1669
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1670
selectionOfChange
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1671
    "returns the value holder for the selected change"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1672
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1673
    |holder|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1674
    (holder := builder bindingAt:#selectionOfChange) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1675
	builder aspectAt:#selectionOfChange put:(holder :=  ValueHolder new).
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1676
    ].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1677
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1678
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1679
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1680
valueOfChangeText
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1681
    "returns the value holder for the source code of the selected change"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1682
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1683
    |holder|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1684
    (holder := builder bindingAt:#valueOfChangeText) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1685
	builder aspectAt:#valueOfChangeText put:(holder :=  ValueHolder new).
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1686
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1687
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1688
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1689
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1690
valueOfFilter
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1691
    "returns the value holder for the string of the filter"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1692
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1693
    |holder|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1694
    (holder := builder bindingAt:#valueOfFilter) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1695
	builder aspectAt:#valueOfFilter put:(holder :=  ValueHolder new).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1696
	holder addDependent: self
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1697
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1698
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1699
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1700
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1701
valueOfHavingChangeSelection
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1702
    "returns whether the selected change can be applied as value holder"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1703
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1704
    |holder|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1705
    (holder := builder bindingAt:#valueOfHavingChangeSelection) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1706
	builder aspectAt:#valueOfHavingChangeSelection put:(holder :=  false asValue).
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1707
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1708
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1709
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1710
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1711
valueOfHavingSelection
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1712
    "returns whether a change is selected as value holder"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1713
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1714
    |holder|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1715
    (holder := builder bindingAt:#valueOfHavingSelection) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1716
	builder aspectAt:#valueOfHavingSelection put:(holder :=  false asValue).
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1717
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1718
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1719
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1720
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1721
valueOfNotReading
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1722
    "returns whether it is not reading or compressing as value holder"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1723
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1724
    |holder|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1725
    (holder := builder bindingAt:#valueOfReading) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1726
	builder aspectAt:#valueOfReading put:(holder :=  true asValue).
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1727
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1728
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1729
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1730
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1731
valueOfNotSaving
b37202441764 revised
tz
parents: 1556
diff changeset
  1732
    "returns whether it is not saving as value holder"
b37202441764 revised
tz
parents: 1556
diff changeset
  1733
b37202441764 revised
tz
parents: 1556
diff changeset
  1734
    |holder|
b37202441764 revised
tz
parents: 1556
diff changeset
  1735
    (holder := builder bindingAt:#valueOfNotSaving) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1736
	builder aspectAt:#valueOfNotSaving put:(holder :=  true asValue).
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1737
    ].
b37202441764 revised
tz
parents: 1556
diff changeset
  1738
    ^ holder
b37202441764 revised
tz
parents: 1556
diff changeset
  1739
!
b37202441764 revised
tz
parents: 1556
diff changeset
  1740
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1741
valueOfReadProgress
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1742
    "returns the stage of reading or compressing as value holder"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1743
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1744
    |holder|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1745
    (holder := builder bindingAt:#valueOfReadProgress) isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1746
	builder aspectAt:#valueOfReadProgress put:(holder :=  ValueHolder with: 0).
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1747
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1748
    ^ holder
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1749
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1750
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1751
!NewChangesBrowser methodsFor:'callbacks'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1752
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1753
changeSelected: lineNr
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1754
    "fetches the source code of the change and shows it in the codeView"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1755
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1756
    |aStream sawExcla chunk selectedRow changeNr|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1757
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1758
    lineNr == 0 ifTrue: [^nil].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1759
    changeNr := changes indexOf: (self listOfChanges at: lineNr).
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1760
    aStream := self streamForChange: (changes at: changeNr).
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1761
    aStream isNil ifTrue:[^ self].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1762
    sawExcla := aStream peekFor:(aStream class chunkSeparator).
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1763
    chunk := aStream nextChunk.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1764
    sawExcla ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1765
	chunk := aStream nextChunk
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1766
    ].
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1767
    aStream close.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1768
    self valueOfChangeText value:chunk.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1769
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1770
    self updateChannels
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1771
! !
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1772
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1773
!NewChangesBrowser methodsFor:'change & update'!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1774
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1775
update:something with:aParameter from:changedObject
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1776
    "evaluates the filterCompletionBlock after returning the filter string"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1777
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1778
    super update:something with:aParameter from:changedObject.
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1779
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1780
    changedObject == self valueOfFilter ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1781
        filterCompletionBlock value: changedObject value.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1782
        self listOfChanges size > 0 ifTrue: [self addToHistory: changedObject value -> #doFilter:]
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1783
    ]
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1784
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1785
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1786
updateChannels
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1787
    "updates my channels"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1788
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1789
    |change|
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1790
    (change := self selectionOfChange value) notNil
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1791
    ifTrue:
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1792
    [
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1793
	self valueOfHavingSelection value: true.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1794
	self valueOfHavingChangeSelection value:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1795
	    ((change type = 'method') or: [(change type = 'class')])
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1796
    ]
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1797
    ifFalse:
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1798
    [
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1799
	self valueOfHavingSelection value: false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  1800
	self valueOfHavingChangeSelection value: false
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1801
    ]
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1802
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1803
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1804
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1805
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1806
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1807
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1808
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1809
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1810
!NewChangesBrowser methodsFor:'compiler interface'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1811
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1812
correctableSelectorWarning:aText position:smallInteger1 to:smallInteger2 from:aByteCodeCompiler
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1813
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1814
    ^false
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1815
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1816
    "Created: / 16-11-2010 / 16:04:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1817
!
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1818
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1819
correctableWarning:aText position:smallInteger1 to:smallInteger2 from:aByteCodeCompiler
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1820
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1821
    ^false
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1822
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1823
    "Created: / 16-11-2010 / 16:03:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1824
!
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1825
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1826
wantChangeLog
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1827
    "sent by the compiler to ask if a changeLog entry should
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1828
     be written. Return false here."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1829
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1830
    ^ false
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1831
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1832
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1833
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1834
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1835
!NewChangesBrowser methodsFor:'error handling'!
b37202441764 revised
tz
parents: 1556
diff changeset
  1836
b37202441764 revised
tz
parents: 1556
diff changeset
  1837
correctableError:aString position:relPos to:relEndPos from:aCompiler
b37202441764 revised
tz
parents: 1556
diff changeset
  1838
    "compiler notifys us of an error - this should really not happen since
b37202441764 revised
tz
parents: 1556
diff changeset
  1839
     changes ought to be correct (did someone edit the changes file ??).
b37202441764 revised
tz
parents: 1556
diff changeset
  1840
     Show the bad change in the codeView and let codeView hilight the error;
b37202441764 revised
tz
parents: 1556
diff changeset
  1841
     no corrections allowed here therefore return false"
b37202441764 revised
tz
parents: 1556
diff changeset
  1842
b37202441764 revised
tz
parents: 1556
diff changeset
  1843
    self error:aString position:relPos to:relEndPos from:aCompiler.
b37202441764 revised
tz
parents: 1556
diff changeset
  1844
    ^ false
b37202441764 revised
tz
parents: 1556
diff changeset
  1845
!
b37202441764 revised
tz
parents: 1556
diff changeset
  1846
b37202441764 revised
tz
parents: 1556
diff changeset
  1847
error:aString position:relPos to:relEndPos from:aCompiler
b37202441764 revised
tz
parents: 1556
diff changeset
  1848
    "compiler notifys us of an error - this should really not happen since
b37202441764 revised
tz
parents: 1556
diff changeset
  1849
     changes ought to be correct (did someone edit the changes file ??).
b37202441764 revised
tz
parents: 1556
diff changeset
  1850
     Show the bad change in the codeView and let codeView hilight the error"
b37202441764 revised
tz
parents: 1556
diff changeset
  1851
b37202441764 revised
tz
parents: 1556
diff changeset
  1852
    |action|
b37202441764 revised
tz
parents: 1556
diff changeset
  1853
b37202441764 revised
tz
parents: 1556
diff changeset
  1854
    (skipSignal notNil) ifTrue:[
b37202441764 revised
tz
parents: 1556
diff changeset
  1855
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1856
        self changeTextEditor highlightingErrorPosition:relPos to:relEndPos do:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1857
            |box|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1858
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1859
            "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1860
             start dialog - make certain cleanup is done
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1861
            "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1862
            action := OptionBox
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1863
                          request:aString
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1864
                          label:'Error'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1865
                          image:(WarningBox iconBitmap)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1866
                          buttonLabels:#('cancel' 'skip' 'continue')
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1867
                          values:#(#abort #skip #continue)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1868
                          default:#continue.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1869
        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1870
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1871
        action == #abort ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1872
            Object abortSignal raise.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1873
            ^ false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1874
        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1875
        action == #skip ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1876
            skipSignal raise.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1877
            ^ false
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1878
        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1879
        ^  false
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1880
    ].
b37202441764 revised
tz
parents: 1556
diff changeset
  1881
    ^self changeTextEditor error:aString position:relPos to:relEndPos from:aCompiler
b37202441764 revised
tz
parents: 1556
diff changeset
  1882
!
b37202441764 revised
tz
parents: 1556
diff changeset
  1883
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1884
unusedVariableWarning:aText position:smallInteger1 to:smallInteger2 from:aByteCodeCompiler
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1885
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1886
    ^false
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1887
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1888
    "Created: / 24-02-2011 / 22:00:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1889
!
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  1890
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  1891
warning:aString position:relPos to:relEndPos from:aCompiler
b37202441764 revised
tz
parents: 1556
diff changeset
  1892
    "compiler notifys us of a warning - ignore it"
b37202441764 revised
tz
parents: 1556
diff changeset
  1893
b37202441764 revised
tz
parents: 1556
diff changeset
  1894
    ^ self
b37202441764 revised
tz
parents: 1556
diff changeset
  1895
b37202441764 revised
tz
parents: 1556
diff changeset
  1896
! !
b37202441764 revised
tz
parents: 1556
diff changeset
  1897
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1898
!NewChangesBrowser methodsFor:'help'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1899
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1900
defaultInfoLabel
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1901
    "returns the default label for the info bar"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1902
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1903
    changeFileName asFilename exists ifTrue: [^changeFileName].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1904
    ^'No change file name defined.'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1905
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1906
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1907
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1908
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1909
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1910
openDocumentation
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  1911
   self openHTMLDocument:'tools/cbrowser/TOP.html'.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1912
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1913
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1914
!NewChangesBrowser methodsFor:'initialization'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1915
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1916
initialize
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1917
    "initializes the instance variables"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1918
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1919
    super initialize.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1920
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1921
    changes           := List new.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1922
    self changeFileName: ObjectMemory nameForChanges.
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  1923
    AutoUpdate        := AutoUpdate ? false.
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1924
    PrivateAsSeparate := PrivateAsSeparate ? false.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1925
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1926
    ObjectMemory addDependent:self.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1927
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1928
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1929
!NewChangesBrowser methodsFor:'menu modes'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1930
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1931
autoUpdateMode
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1932
    "returns whether autoUpdate is on/off"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1933
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1934
    ^AutoUpdate
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1935
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1936
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1937
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1938
autoUpdateMode: aMode
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1939
    "sets the autoUpdate to aMode"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1940
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1941
    AutoUpdate := aMode
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1942
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1943
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1944
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1945
privateAsSeparate
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1946
    "returns whether private classes are handled as separate changes"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1947
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1948
    ^PrivateAsSeparate
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1949
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1950
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1951
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1952
privateAsSeparate: aMode
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1953
    "sets the PrivateAsSeparate to aMode"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1954
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1955
    PrivateAsSeparate := aMode
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1956
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1957
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1958
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1959
!NewChangesBrowser methodsFor:'private'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1960
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1961
applyChange:aChange
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1962
    "applies aChange"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1963
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1964
    |aStream nm applyAction changeNr|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1965
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1966
    aStream := self streamForChange:aChange.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1967
    aStream isNil ifTrue:[^ self].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1968
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  1969
    nm := self classNameOfChange:aChange.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1970
    nm notNil ifTrue:[
17034
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1971
        |cls|
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1972
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1973
        cls := Smalltalk at:(nm asSymbol) ifAbsent:[].
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1974
        cls notNil ifTrue:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1975
            cls isLoaded ifFalse:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1976
                cls autoload
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1977
            ]
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1978
        ]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1979
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1980
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  1981
    applyAction := [
17034
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1982
        |sig|
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1983
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1984
        (skipSignal notNil) ifTrue:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1985
            sig := skipSignal
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1986
        ] ifFalse:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1987
            sig := Object abortSignal
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1988
        ].
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1989
        sig catch:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1990
            |reader doItChunk methodsForChunk|
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1991
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1992
            "/ a followup methodsFor: chunk...
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1993
            aChange followUp ifTrue:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1994
                methodsForChunk := aChange chunk.
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1995
            ] ifFalse:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1996
                doItChunk := aStream nextChunk.   "/ an empty chunk sometimes...
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1997
                doItChunk notEmpty ifTrue:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1998
                    Compiler evaluate:doItChunk notifying:self.
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  1999
                ] ifFalse:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2000
                    methodsForChunk := aStream nextChunk.   "/ the real one
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2001
                ]
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2002
            ].
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2003
            methodsForChunk notNil ifTrue:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2004
                Class methodRedefinitionSignal handle:[:ex |
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2005
                    ex proceedWith:#keep
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2006
                ] do:[
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2007
                    reader := Compiler evaluate:methodsForChunk notifying:self.
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2008
                    reader fileInFrom:aStream notifying:self passChunk:false single:true.
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2009
                ]
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2010
            ]
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2011
        ].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2012
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2013
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2014
    "/
17034
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2015
    "/ if I am showing the changes file, don't update it
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2016
    "/
1877
f0dbf0801e4d care for pathName being the same, where the change-fileName is not
Claus Gittinger <cg@exept.de>
parents: 1798
diff changeset
  2017
    changeFileName asFilename pathName = ObjectMemory nameForChanges asFilename pathName ifTrue:[
17034
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2018
        Class withoutUpdatingChangesDo:applyAction
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2019
    ] ifFalse:[
17034
96c54689f887 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16666
diff changeset
  2020
        applyAction value
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2021
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2022
    aStream close
1877
f0dbf0801e4d care for pathName being the same, where the change-fileName is not
Claus Gittinger <cg@exept.de>
parents: 1798
diff changeset
  2023
f0dbf0801e4d care for pathName being the same, where the change-fileName is not
Claus Gittinger <cg@exept.de>
parents: 1798
diff changeset
  2024
    "Modified: / 8.9.1998 / 12:48:01 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2025
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2026
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2027
autoSelectChange:aChange
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2028
    "selects aChange"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2029
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2030
    self class autoSelectNext ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2031
	((self listOfChanges indexOf: aChange) <= self listOfChanges size) ifTrue:[
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2032
	    self selectionOfChange value: aChange.
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2033
	    self changeSelected:(self listOfChanges indexOf: aChange).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2034
	    self updateChannels.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2035
	    ^ self
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2036
	]
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2037
    ].
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2038
    self updateChannels.
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2039
    self unselectChange
1569
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  2040
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2041
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2042
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2043
autoSelectLast
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2044
    "selects the last change"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2045
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2046
    self autoSelectChange: (self listOfChanges at: self listOfChanges size ifAbsent: nil).
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2047
    self updateChannels.
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2048
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2049
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2050
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2051
autoSelectOrEnd:aChange
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2052
    "selects aChange or the last"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2053
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2054
    |last|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2055
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2056
    last := self listOfChanges size.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2057
    aChange notNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2058
	self autoSelectChange:aChange
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2059
    ] ifFalse:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2060
	self selectionOfChange value: (self listOfChanges at: last ifAbsent: nil).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2061
	self changeSelected: last
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2062
    ].
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2063
    self updateChannels
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2064
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2065
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  2066
changeColumn: aColumnId add: addOrRemove
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2067
    "adds or removes a attribute column to the table"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2068
1569
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  2069
    |newListOfChangeColumns|
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  2070
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  2071
    newListOfChangeColumns := self listOfChangeColumns asOrderedCollection.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2072
    addOrRemove ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2073
        newListOfChangeColumns add:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2074
            ((self class tableColumnsForChangeAttributes
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2075
                collect: [:i| i decodeAsLiteralArray])
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2076
                    detect: [:column| column id = aColumnId])
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2077
    ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2078
        newListOfChangeColumns remove:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2079
            (self listOfChangeColumns detect: [:column| column id = aColumnId] ifNone: nil) ifAbsent: nil
1553
eaeafd6f8cbe checkin from browser
tz
parents: 1546
diff changeset
  2080
    ].
1569
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  2081
    self listOfChangeColumns contents: newListOfChangeColumns.
1553
eaeafd6f8cbe checkin from browser
tz
parents: 1546
diff changeset
  2082
    self autoSelectLast
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2083
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  2084
    "Modified: / 19.5.1998 / 20:32:53 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2085
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2086
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2087
changeFileName:aFileName
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2088
    "sets the name of the file with the changes"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2089
1938
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
  2090
    changeFileName := aFileName asFilename name.
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
  2091
"/ (Filename currentDirectory asAbsoluteFilename construct: aFileName) name.
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
  2092
ce74385df068 added #openOn:;
Claus Gittinger <cg@exept.de>
parents: 1888
diff changeset
  2093
    "Modified: / 17.10.1998 / 14:43:01 / cg"
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2094
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2095
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2096
checkClassIsLoaded:aClass
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2097
    "returns true if aClass is loaded"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2098
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2099
    |cls|
10584
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  2100
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  2101
    cls := aClass theNonMetaclass.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2102
    cls isLoaded ifFalse:[
10584
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  2103
        (self confirm:(cls name , ' is an autoloaded class.\I can only compare the methods texts if its loaded first.\\Load the class first ?') withCRs)
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  2104
        ifTrue:[
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  2105
            cls autoload
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  2106
        ]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2107
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2108
    ^ cls isLoaded
10584
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  2109
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  2110
    "Modified: / 18-08-2011 / 09:51:39 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2111
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2112
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2113
checkIfFileHasChanged
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2114
    "checks if changes file has changed"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2115
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2116
    |f info|
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2117
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2118
    Processor removeTimedBlock:autoUpdateBlock.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2119
    f := changeFileName asFilename.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2120
    (info := f info) isNil ifTrue:[
16087
mawalch
parents: 13846
diff changeset
  2121
        self newLabel:'unaccessible'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2122
    ] ifFalse:[
16087
mawalch
parents: 13846
diff changeset
  2123
        (info modificationTime) > changeFileTimestamp ifTrue:[
mawalch
parents: 13846
diff changeset
  2124
            self newLabel:'outdated'.
mawalch
parents: 13846
diff changeset
  2125
            AutoUpdate ifTrue:[
mawalch
parents: 13846
diff changeset
  2126
                self doReload
mawalch
parents: 13846
diff changeset
  2127
            ]
mawalch
parents: 13846
diff changeset
  2128
        ] ifFalse:[
mawalch
parents: 13846
diff changeset
  2129
            self newLabel:''
mawalch
parents: 13846
diff changeset
  2130
        ]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2131
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2132
    Processor addTimedBlock:autoUpdateBlock afterSeconds:5.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2133
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2134
10583
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2135
classNameAndClassFromNode:aTreeNode
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2136
    |rcvr className changeClass|
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2137
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2138
    rcvr := aTreeNode receiver.
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2139
    rcvr isUnaryMessage ifTrue:[
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2140
        self assert:(rcvr selector = 'class').
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2141
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2142
        className := rcvr receiver name.
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2143
        SourceCodeManagerError 
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2144
            handle:[:ex | ]
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2145
            do:[ changeClass := (Smalltalk classNamed:className) class ].
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2146
        className := className , ' class'.
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2147
        ^ className -> changeClass
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2148
    ].
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2149
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2150
    (rcvr type == #Nil) ifTrue:[
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2151
        ^ 'nil' -> nil
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2152
    ].
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2153
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2154
    className := rcvr name.
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2155
    SourceCodeManagerError 
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2156
        handle:[:ex | ]
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2157
        do:[ changeClass := Smalltalk classNamed:className ].
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2158
    ^ className -> changeClass
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2159
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2160
    "Created: / 18-08-2011 / 09:38:37 / cg"
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2161
!
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2162
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2163
classNameOfChange:aChange
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2164
    "returns the classname of aChange
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2165
     (for classChanges (i.e. xxx class), the non-metaClassName (i.e. xxx) is returned)"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2166
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2167
    |name|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2168
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2169
    name := self fullClassNameOfChange:aChange.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2170
    name isNil ifTrue:[^ nil].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2171
    (name endsWith:' class') ifTrue:[
13706
88e9ac79bb2f class: NewChangesBrowser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10584
diff changeset
  2172
        ^ name copyButLast:6
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2173
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2174
    ^ name
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2175
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2176
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2177
compareChange:aChange
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2178
    "compares aChange with the current version"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2179
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2180
    |aStream chunk sawExcla parseTree thisClass cat oldSource newSource
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2181
     parser sel oldMethod outcome showDiff d t1 t2 selector isLoaded
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2182
     method beep|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2183
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2184
    aStream := self streamForChange:aChange.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2185
    aStream isNil ifTrue:[^ self].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2186
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2187
    showDiff := false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2188
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2189
    aChange followUp ifFalse:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2190
	sawExcla := aStream peekFor:(aStream class chunkSeparator).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2191
	chunk := aStream nextChunk.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2192
    ] ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2193
	chunk := aChange chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2194
	sawExcla := true.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2195
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2196
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2197
    beep := false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2198
    sawExcla ifFalse:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2199
	outcome := 'Cannot compare this change\(i.e. this is not a method change)!!'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2200
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2201
	parseTree := Parser parseExpression:chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2202
	(parseTree notNil and:[parseTree isMessage]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2203
	    ((selector := parseTree selector) == #removeSelector:) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2204
		thisClass := (parseTree receiver evaluate).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2205
		thisClass isBehavior ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2206
		    (self checkClassIsLoaded:thisClass) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2207
			selector := (parseTree arg1 evaluate).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2208
			(thisClass includesSelector:selector) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2209
			    outcome := 'Change removes the #' , selector , ' method from ' , thisClass name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2210
			] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2211
			    outcome := 'Change has no effect\(there is no method for #' , selector , ' in ' , thisClass name , ')'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2212
			]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2213
		    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2214
			beep := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2215
			outcome := 'Cannot compare this change (compare requires class to be loaded)!!'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2216
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2217
		]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2218
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2219
	    selector == #category: ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2220
		parseTree receiver isMessage ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2221
		    parseTree receiver selector == #compiledMethodAt: ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2222
			(method := parseTree receiver evaluate) isMethod ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2223
			    method category = parseTree arg1 evaluate ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2224
				outcome := 'Change has no effect\(same category)'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2225
			    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2226
				outcome := 'Category is different (''' , method category , ''' vs. ''' , parseTree arg1 evaluate , ''')'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2227
			    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2228
			] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2229
			    beep := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2230
			    outcome := 'There is no such method!!'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2231
			]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2232
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2233
		]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2234
	    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2235
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2236
    ] ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2237
	parseTree := Parser parseExpression:chunk.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2238
	(parseTree notNil
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2239
	 and:[parseTree ~~ #Error
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2240
	 and:[parseTree isMessage]]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2241
	    (parseTree selector == #methodsFor:) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2242
		thisClass := (parseTree receiver evaluate).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2243
		thisClass isBehavior ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2244
		    (isLoaded := self checkClassIsLoaded:thisClass) ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2245
			outcome := 'Cannot compare this change\(compare requires class to be loaded)!!'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2246
		    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2247
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2248
		    cat := parseTree arg1 evaluate.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2249
		    newSource := aStream nextChunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2251
		    parser := Parser parseMethod:newSource in:thisClass.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2252
		    (parser notNil and:[parser ~~ #Error]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2253
			sel := parser selector.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2254
			oldMethod := thisClass compiledMethodAt:sel.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2255
			oldMethod notNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2256
			    (oldMethod category = cat) ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2257
				Transcript showCR:'Category changed.'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2258
			    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2259
			    oldSource := oldMethod source.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2260
			    (oldSource = newSource) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2261
				outcome := 'Same source.'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2262
			    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2263
				oldSource isNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2264
				    beep := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2265
				    outcome := 'No source for compare.'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2266
				] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2267
				    "/
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2268
				    "/ compare for tabulator <-> space changes
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2269
				    "/ before showing diff...
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2270
				    "/
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2271
				    t1 := oldSource asCollectionOfLines collect:[:s | s withTabsExpanded].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2272
				    t2 := newSource asCollectionOfLines collect:[:s | s withTabsExpanded].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2273
				    t1 = t2 ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2274
					outcome := 'Same source.'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2275
				    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2276
					outcome := 'Source changed!!'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2277
					showDiff := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2278
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2279
					"/
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2280
					"/ check if only historyLine diffs
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2281
					"/
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2282
					(HistoryManager notNil
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2283
					and:[HistoryManager isActive]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2284
					    (HistoryManager withoutHistoryLines:newSource)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2285
					    =
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2286
					    (HistoryManager withoutHistoryLines:oldSource)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2287
					    ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2288
						outcome := 'Same source (history only).'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2289
						showDiff := false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2290
					    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2291
					].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2292
				    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2293
				]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2294
			    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2295
			] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2296
			    isLoaded ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2297
				beep := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2298
				outcome := 'Method does not exist!!'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2299
			    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2300
			]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2301
		    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2302
			outcome := 'Change unparsable!!'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2303
		    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2304
		    (showDiff and:[oldSource notNil and:[newSource notNil]]) ifTrue:[
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2305
			d := DiffTextView
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2306
				openOn:oldSource label:'Current version (in image)'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2307
				and:newSource label:'Change version'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2308
			d label:'method differences'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2309
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2310
		] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2311
		    beep := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2312
		    outcome := 'Class does not exist!!'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2313
		]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2314
	    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2315
		beep := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2316
		outcome := 'Not comparable!!'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2317
	    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2318
	] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2319
	    beep := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2320
	    outcome := 'Not comparable!!'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2321
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2322
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2323
    aStream close.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2324
    showDiff ifFalse:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2325
	beep ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2326
	    self warn:outcome withCRs.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2327
	] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2328
	    self information:outcome withCRs.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2329
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2330
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2331
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2332
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2333
compressForClass:aClassNameOrNil
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2334
    "compresses the list of changes;
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2335
     this replaces multiple method-changes by the last (i.e. the most recent) change.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2336
     If the class argument is nil, compress for all classes.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2337
     otherwise, only changes for that class are compressed."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2338
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2339
    |aStream searchIndex anyMore deleteSet index
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2340
     str snapshotProto snapshotPrefix snapshotNameIndex fileName|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2341
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2342
    aStream := FileStream readonlyFileNamed:changeFileName.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2343
    aStream isNil ifTrue:[^ self].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2344
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2345
    aClassNameOrNil isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2346
	self newLabel:'compressing...'.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2347
    ] ifFalse:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2348
	self newLabel:'compressing for ' , aClassNameOrNil.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2349
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2350
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2351
    CompressSnapshotInfo == true ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2352
	"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2353
	 get a prototype snapshot record (to be independent of
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2354
	 the actual format ..
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2355
	"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2356
	str := WriteStream on:String new.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2357
	Class addChangeRecordForSnapshot:'foo' to:str.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2358
	snapshotProto := str contents.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2359
	snapshotPrefix := snapshotProto copyTo:10.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2360
	snapshotNameIndex := snapshotProto findString:'foo'.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2361
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2362
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2363
    self valueOfNotReading value: false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2364
    self valueOfHavingSelection value: false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2365
    self valueOfHavingChangeSelection value: false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2366
    self valueOfReadProgress value: 0.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2367
    self readProgressIndicator raise.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2368
    self filterLabel label: 'Comp:'; redraw.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2369
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2370
    self withExecuteCursorDo:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2371
	|numChanges classes selectors types excla sawExcla
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2372
	 changeNr chunk aParseTree parseTreeChunk
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2373
	 thisClass thisSelector codeChunk codeParser
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2374
	 compressThis oldValue|
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2375
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2376
	numChanges := changes size.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2377
	classes := Array new:numChanges.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2378
	selectors := Array new:numChanges.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2379
	types := Array new:numChanges.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2380
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2381
	"starting at the end, get the change class and change selector;
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2382
	 collect all in classes / selectors"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2383
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2384
	changeNr := numChanges.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2385
	excla := aStream class chunkSeparator.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2386
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2387
	[changeNr >= 1] whileTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2388
	    oldValue := self valueOfReadProgress value.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2389
		self valueOfReadProgress value: (100 - ((aStream position/aStream size) * 100) rounded).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2390
		oldValue ~~ self valueOfReadProgress value
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2391
		    ifTrue: [self readProgressIndicator redrawEdges;redraw].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2392
	    aStream position:(changes at: changeNr) position.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2393
	    sawExcla := aStream peekFor:excla.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2394
	    chunk := aStream nextChunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2395
	    sawExcla ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2396
		"optimize a bit if multiple methods for same category arrive"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2397
		(chunk = parseTreeChunk) ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2398
		    aParseTree := Parser parseExpression:chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2399
		    parseTreeChunk := chunk
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2400
		].
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2401
		(aParseTree notNil
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2402
		and:[(aParseTree ~~ #Error)
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2403
		and:[aParseTree isMessage]]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2404
		    (aParseTree selector == #methodsFor:) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2405
			thisClass := (aParseTree receiver evaluate).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2406
			codeChunk := aStream nextChunk.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2407
			codeParser := Parser
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2408
					  parseMethodSpecification:codeChunk
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2409
					  in:thisClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2410
					  ignoreErrors:true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2411
					  ignoreWarnings:true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2412
			(codeParser notNil and:[codeParser ~~ #Error]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2413
			    selectors at:changeNr put:(codeParser selector).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2414
			    classes at:changeNr put:thisClass.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2415
			    types at:changeNr put:#methodsFor
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2416
			]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2417
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2418
		]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2419
	    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2420
		aParseTree := Parser parseExpression:chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2421
		parseTreeChunk := chunk.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2422
		(aParseTree notNil
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2423
		and:[(aParseTree ~~ #Error)
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2424
		and:[aParseTree isMessage]]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2425
		    (aParseTree selector == #removeSelector:) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2426
			selectors at:changeNr put:(aParseTree arg1 value ).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2427
			classes at:changeNr put:(aParseTree receiver evaluate).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2428
			types at:changeNr put:#removeSelector
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2429
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2430
		] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2431
		    CompressSnapshotInfo == true ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2432
			(chunk startsWith:snapshotPrefix) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2433
			    str := chunk readStream position:snapshotNameIndex.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2434
			    fileName := str upTo:(Character space).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2435
			    "
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2436
			     kludge to allow use of match-check below
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2437
			    "
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2438
			    selectors at:changeNr put:snapshotPrefix.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2439
			    classes at:changeNr put:fileName.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2440
			]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2441
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2442
		]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2443
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2444
	    changeNr := changeNr - 1
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2445
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2446
	aStream close.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2447
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2448
	"for all changes, look for another class/selector occurrence later
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2449
	 in the list and, if there is one, add change number to the delete set"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2450
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2451
	deleteSet := OrderedCollection new.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2452
	changeNr := 1.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2453
	[changeNr < changes size] whileTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2454
	    thisClass := classes at:changeNr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2455
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2456
	    compressThis := false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2457
	    aClassNameOrNil isNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2458
		compressThis := true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2459
	    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2460
		"/ skipping unloaded/unknown classes
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2461
		thisClass isBehavior ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2462
		    thisClass isMeta ifTrue:[
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2463
			compressThis := aClassNameOrNil = thisClass soleInstance name.
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2464
		    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2465
			compressThis := aClassNameOrNil = thisClass name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2466
			(PrivateAsSeparate not and: [thisClass isPrivate])
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2467
			    ifTrue:[compressThis := aClassNameOrNil = thisClass owningClass name]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2468
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2469
		 ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2470
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2471
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2472
	    compressThis ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2473
		thisSelector := selectors at:changeNr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2474
		searchIndex := changeNr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2475
		anyMore := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2476
		[anyMore] whileTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2477
		    searchIndex := classes indexOf:thisClass
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2478
					startingAt:(searchIndex + 1).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2479
		    (searchIndex ~~ 0) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2480
			((selectors at:searchIndex) == thisSelector) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2481
			    thisClass notNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2482
				deleteSet add:changeNr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2483
				anyMore := false
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2484
			    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2485
			]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2486
		    ] ifFalse:[
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2487
			anyMore := false
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2488
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2489
		].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2490
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2491
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2492
	    changeNr := changeNr + 1
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2493
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2494
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2495
	"finally delete what has been found"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2496
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2497
	(deleteSet size > 0) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2498
	    index := deleteSet size.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2499
	    [index > 0] whileTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2500
		self silentDeleteChange: (changes at: (deleteSet at:index)).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2501
		index := index - 1
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2502
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2503
	    self setChangeList
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2504
	].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2505
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2506
    self valueOfNotReading value: true.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2507
    self filterField raise.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2508
    self filterLabel label: 'Filter:'.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2509
    self newLabel: ''
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2510
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2511
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2512
contractClass:className selector:selector to:maxLen
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2513
    |s l|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2514
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2515
    s := className , ' ', selector.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2516
    s size > maxLen ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2517
	l := maxLen - 1 - selector size max:20.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2518
	s := (className contractTo:l) , ' ' , selector.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2519
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2520
	s size > maxLen ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2521
	    l := maxLen - 1 - className size max:20.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2522
	    s := className , ' ', (selector contractTo:l).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2523
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2524
	    s size > maxLen ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2525
		s := (className contractTo:(maxLen // 2 - 1)) , ' ' , (selector contractTo:maxLen // 2)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2526
	    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2527
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2528
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2529
    ^ s
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2530
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2531
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2532
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2533
deleteChangesFrom:start to:stop
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2534
    "deletes a range of changes"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2535
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2536
    self unselectChange.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2537
    stop to:start by:-1 do:[:changeNr|
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2538
	self silentDeleteChange:(self listOfChanges at: changeNr)
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2539
    ].
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2540
    self setChangeList
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2541
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2542
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2543
fullClassNameOfChange:aChange
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2544
    "returns the full classname of aChange
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2545
     (for classChanges (i.e. xxx class), a string ending in ' class' is returned.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2546
     - since parsing ascii methods is slow, keep result cached in
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2547
       changeClassNames for the next query"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2548
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2549
    |chunk aParseTree recTree sel name arg1Tree isMeta prevMethodDefNr
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2550
     words changeStream fullParseTree ownerTree ownerName oldDollarSetting|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2551
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2552
    aChange isNil ifTrue:[^ nil].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2553
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2554
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2555
     first look, if not already known
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2556
    "
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2557
    name := aChange className.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2558
    name notNil ifTrue:[^ name].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2559
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2560
    prevMethodDefNr := changes indexOf: aChange.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2561
    [(changes at:prevMethodDefNr) followUp] whileTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2562
	prevMethodDefNr := prevMethodDefNr - 1.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2563
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2564
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2565
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2566
     get the chunk
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2567
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2568
    chunk := (changes at:prevMethodDefNr) chunk.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2569
    chunk isNil ifTrue:[^ nil].       "mhmh - empty"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2570
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2571
    (chunk startsWith:'''---') ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2572
	words := chunk asCollectionOfWords.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2573
	words size > 2 ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2574
	    (words at:2) = 'checkin' ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2575
		name := words at:3.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2576
		aChange className: name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2577
		^ name
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2578
	    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2579
	].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2580
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2581
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2582
    "/ fix it - otherwise, it cannot be parsed
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2583
    (chunk endsWith:'primitiveDefinitions:') ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2584
	chunk := chunk , ''''''
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2585
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2586
    (chunk endsWith:'primitiveFunctions:') ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2587
	chunk := chunk , ''''''
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2588
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2589
    (chunk endsWith:'primitiveVariables:') ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2590
	chunk := chunk , ''''''
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2591
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2592
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2593
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2594
     use parser to construct a parseTree
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2595
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2596
    oldDollarSetting := Parser allowDollarInIdentifier.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2597
    [
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2598
	Parser allowDollarInIdentifier:true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2599
	aParseTree := Parser parseExpression:chunk.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2600
    ] valueNowOrOnUnwindDo:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2601
	Parser allowDollarInIdentifier:oldDollarSetting
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2602
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2603
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2604
    (aParseTree isNil or:[aParseTree == #Error]) ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2605
	^ nil        "seems strange... (could be a comment)"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2606
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2607
    aParseTree isMessage ifFalse:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2608
	^ nil        "very strange... (whats that ?)"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2609
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2610
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2611
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2612
     ask parser for selector
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2613
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2614
    sel := aParseTree selector.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2615
    recTree := aParseTree receiver.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2616
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2617
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2618
     is it a method-change, methodRemove or comment-change ?
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2619
    "
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2620
    (#(#'methodsFor:'
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2621
       #'privateMethodsFor:'
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2622
       #'protectedMethodsFor:'
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2623
       #'publicMethodsFor:'
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2624
       #'removeSelector:'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2625
       #'comment:'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2626
       #'primitiveDefinitions:'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2627
       #'primitiveFunctions:'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2628
       #'primitiveVariables:'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2629
       #'renameCategory:to:'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2630
       #'instanceVariableNames:'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2631
    ) includes:sel) ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2632
	"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2633
	 yes, the className is the receiver
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2634
	"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2635
	(recTree notNil and:[recTree ~~ #Error]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2636
	    isMeta := false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2637
	    recTree isUnaryMessage ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2638
		(recTree selector ~~ #class) ifTrue:[^ nil].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2639
		"id class methodsFor:..."
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2640
		recTree := recTree receiver.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2641
		isMeta := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2642
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2643
	    recTree isPrimary ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2644
		name := recTree name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2645
		isMeta ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2646
		    name := name , ' class'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2647
		].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2648
		aChange className: name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2649
		^ name
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2650
	    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2651
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2652
	"more strange things"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2653
	^ nil
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2654
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2655
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2656
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2657
     is it a change in a class-description ?
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2658
    "
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2659
    (('subclass:*' match:sel)
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2660
    or:[('variable*subclass:*' match:sel)]) ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2661
	"/ must parse the full changes text, to get
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2662
	"/ privacy information.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2663
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2664
	changeStream := self streamForChange:aChange.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2665
	changeStream notNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2666
	    chunk := changeStream nextChunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2667
	    changeStream close.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2668
	    fullParseTree := Parser parseExpression:chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2669
	    (fullParseTree isNil or:[fullParseTree == #Error]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2670
		fullParseTree := nil
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2671
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2672
	    fullParseTree isMessage ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2673
		fullParseTree := nil
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2674
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2675
	    "/ actually, the nil case cannot happen
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2676
	    fullParseTree notNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2677
		aParseTree := fullParseTree.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2678
		sel := aParseTree selector.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2679
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2680
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2681
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2682
	arg1Tree := aParseTree arg1.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2683
	(arg1Tree notNil and:[arg1Tree isConstant]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2684
	    name := arg1Tree value asString.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2685
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2686
	    "/ is it a private-class ?
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2687
	    ('*privateIn:' match:sel) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2688
		ownerTree := aParseTree args last.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2689
		ownerName := ownerTree name asString.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2690
		name := ownerName , '::' , name
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2691
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2692
	    aChange className: name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2693
	    ^ name
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2694
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2695
	"very strange"
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2696
	^ nil
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2697
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2698
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2699
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2700
     is it a class remove ?
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2701
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2702
    (sel == #removeClass:) ifTrue:[
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2703
	(recTree notNil
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2704
	and:[recTree ~~ #Error
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2705
	and:[recTree isPrimary
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2706
	and:[recTree name = 'Smalltalk']]]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2707
	    arg1Tree := aParseTree arg1.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2708
	    (arg1Tree notNil and:[arg1Tree isPrimary]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2709
		name := arg1Tree name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2710
		aChange className: name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2711
		^ name
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2712
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2713
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2714
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2715
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2716
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2717
     is it a method category change ?
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2718
    "
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2719
    ((sel == #category:)
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2720
    or:[sel == #privacy:]) ifTrue:[
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  2721
	(recTree notNil
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2722
	and:[recTree ~~ #Error
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2723
	and:[recTree isMessage
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2724
	and:[recTree selector == #compiledMethodAt:]]]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2725
	    isMeta := false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2726
	    recTree := recTree receiver.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2727
	    recTree isUnaryMessage ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2728
		(recTree selector ~~ #class) ifTrue:[^ nil].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2729
		"id class "
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2730
		recTree := recTree receiver
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2731
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2732
	    recTree isPrimary ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2733
		isMeta ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2734
		    name := name , ' class'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2735
		].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2736
		name := recTree name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2737
		aChange className: name.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2738
		^ name
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2739
	    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  2740
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2741
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2742
    ^ nil
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2743
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2744
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2745
newLabel:how
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2746
    "sets the label"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2747
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2748
    how size = 0 ifTrue: [^self window label:self class label].
1556
tz
parents: 1554
diff changeset
  2749
    self window label:self class label, ' (', how, ')'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2750
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2751
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2752
readChangesFileInBackground:inBackground
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  2753
    "reads the changes file, creates a list of header-lines (changeChunks)
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2754
     and a list of chunk-positions (changePositions).
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2755
     Starting with 2.10.3, the entries are multi-col entries;
10583
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2756
     the cols are:                                                    
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2757
        1   delta (only if comparing)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2758
                '+' -> new method (w.r.t. current state)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2759
                '-' -> removed method (w.r.t. current state)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2760
                '?' -> class does not exist currently
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2761
                '=' -> change is same as current methods source
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2762
        2   class/selector
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2763
        3   type of change
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2764
                doit
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2765
                method
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2766
                category change
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2767
        4   timestamp
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2768
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2769
     since comparing slows down startup time, it is now disabled by
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2770
     default and can be enabled via a toggle."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2771
2740
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  2772
    |aStream maxLen i f v|
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2773
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2774
    self valueOfNotReading value: false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2775
    self valueOfHavingSelection value: false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2776
    self valueOfHavingChangeSelection value: false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2777
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2778
    editingClassSource := false.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2779
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2780
    maxLen := 60.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2781
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2782
    f := changeFileName asFilename.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2783
    aStream :=  f readStream.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2784
    aStream isNil ifTrue:[^ nil].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2785
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  2786
    self newLabel:(resources string:'updating...').
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2787
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2788
    i := f info.
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  2789
    changeFileTimestamp := i modificationTime.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2790
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2791
    self valueOfReadProgress value: 0.
2740
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  2792
    v := self readProgressIndicator.
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  2793
    v notNil ifTrue:[v raise].
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  2794
    v := self filterLabel.
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  2795
    v notNil ifTrue:[v label: 'Read:'; redraw].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2796
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  2797
    self withReadCursorDo:[
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2798
        |myProcess myPriority|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2799
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2800
        "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2801
         this is a time consuming operation (especially, if reading an
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2802
         NFS-mounted directory; therefore lower my priority...
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2803
        "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2804
        inBackground ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2805
            myProcess := Processor activeProcess.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2806
            myPriority := myProcess priority.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2807
            myProcess priority:(Processor userBackgroundPriority).
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2808
        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2809
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2810
        [
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2811
            |excla timeStampInfo lastChange|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2812
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2813
            excla := aStream class chunkSeparator.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2814
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2815
            [aStream atEnd] whileFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2816
                |change changeDelta changeString changeType changeCategory
10583
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2817
                 line s l classAndName changeClass sawExcla category className selector
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2818
                 chunkText chunkPos sel oldValue|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2819
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2820
                change := Change new.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2821
                "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2822
                 get a chunk (separated by excla)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2823
                "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2824
                oldValue := self valueOfReadProgress value.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2825
                self valueOfReadProgress value: (((aStream position/aStream size) * 100) rounded).
2740
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  2826
"/                oldValue ~~ self valueOfReadProgress value
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  2827
"/                    ifTrue: [self readProgressIndicator redrawEdges;redraw].
6b8666356abb oops - dont try to redraw components which are not there
Claus Gittinger <cg@exept.de>
parents: 2250
diff changeset
  2828
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2829
                aStream skipSeparators.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2830
                chunkPos := aStream position.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2831
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2832
                sawExcla := aStream peekFor:excla.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2833
                chunkText := aStream nextChunk.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2834
                chunkText notNil ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2835
                    |index headerLine cls|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2836
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2837
                    (chunkText startsWith:'''---- timestamp ') ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2838
                        timeStampInfo := (chunkText copyFrom:16 to:(chunkText size - 6)) withoutSpaces.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2839
                    ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2840
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2841
                        "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2842
                         only first line is saved in changeChunks...
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2843
                        "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2844
                        index := chunkText indexOf:(Character cr).
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2845
                        (index ~~ 0) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2846
                            chunkText := chunkText copyTo:(index - 1).
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2847
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2848
                            "take care for comment changes - must still be a
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2849
                             valid expression for classNameOfChange: to work"
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2850
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2851
                            (chunkText endsWith:'comment:''') ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2852
                                chunkText := chunkText , '...'''
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2853
                            ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2854
                            (chunkText endsWith:'primitiveDefinitions:''') ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2855
                                sel := 'primitiveDefinitions:'.
13846
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
  2856
                                chunkText := chunkText copyButLast:1
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2857
                            ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2858
                            (chunkText endsWith:'primitiveVariables:''') ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2859
                                sel := 'primitiveVariables:'.
13846
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
  2860
                                chunkText := chunkText copyButLast:1
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2861
                            ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2862
                            (chunkText endsWith:'primitiveFunctions:''') ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2863
                                sel := 'primitiveFunctions:'.
13846
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
  2864
                                chunkText := chunkText copyButLast:1
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2865
                            ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2866
                        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2867
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2868
                        change chunk: chunkText.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2869
                        change position: chunkPos.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2870
                        lastChange notNil ifTrue: [lastChange lastPosition: chunkPos - 1].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2871
                        lastChange := change.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2872
                        change timeStamp: timeStampInfo.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2873
                        change followUp: false.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2874
                        headerLine := nil.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2875
                        changeDelta := ' '.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2876
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2877
                        sawExcla ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2878
                            (chunkText startsWith:'''---- snap') ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2879
                                changeType := ''.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2880
                                headerLine := chunkText.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2881
                                changeString := (chunkText contractTo:maxLen).
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2882
                                timeStampInfo := nil.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2883
                            ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2884
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2885
                                |p cls|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2886
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2887
                                headerLine := chunkText , ' (doIt)'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2888
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2889
                                "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2890
                                 first, assume doIt - then lets have a more detailed look...
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2891
                                "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2892
                                ((chunkText startsWith:'''---- file')
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2893
                                or:[(chunkText startsWith:'''---- check')]) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2894
                                    changeType := ''.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2895
                                    timeStampInfo := nil.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2896
                                ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2897
                                    changeType := 'doIt'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2898
                                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2899
                                changeString := (chunkText contractTo:maxLen).
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2900
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2901
                                p := Parser parseExpression:chunkText inNameSpace:Smalltalk.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2902
                                (p notNil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2903
                                 and:[p ~~ #Error
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2904
                                 and:[p isMessage]]) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2905
                                    sel := p selector.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2906
                                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2907
                                (sel == #removeSelector:) ifTrue:[
10583
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2908
                                    classAndName := self classNameAndClassFromNode:p.
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2909
                                    cls := classAndName key. changeClass := classAndName value.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2910
                                    sel := (p args at:1) evaluate.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2911
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2912
                                    DeltaInfoColumn ifTrue:[
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  2913
                                        (changeClass isNil or:[changeClass isLoaded not]) ifTrue:[
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2914
                                            changeDelta := '?'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2915
                                        ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2916
                                            (changeClass implements:sel asSymbol) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2917
                                                changeDelta := '-'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2918
                                            ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2919
                                        ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2920
                                    ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2921
                                    changeType := 'remove'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2922
                                    changeString := self contractClass:cls selector:sel to:maxLen.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2923
                                    className := cls.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2924
                                    selector := sel.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2925
                                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2926
                                (p notNil and:[p ~~ #Error
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2927
                                and:[p isMessage
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2928
                                and:[p receiver isMessage
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2929
                                and:[p receiver selector == #compiledMethodAt:]]]]) ifTrue:[
10583
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2930
                                    classAndName := self classNameAndClassFromNode:p receiver.
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2931
                                    cls := classAndName key. changeClass := classAndName value.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2932
                                    (sel == #category:) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2933
                                        sel := (p receiver args at:1) evaluate.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2934
                                        changeType := '(category change)'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2935
                                        changeString := self contractClass:cls selector:sel to:maxLen.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2936
                                    ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2937
                                    (sel == #privacy:) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2938
                                        sel := (p receiver args at:1) evaluate.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2939
                                        changeType := 'privacy change'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2940
                                        changeString := self contractClass:cls selector:sel to:maxLen.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2941
                                    ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2942
                                    className := cls.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2943
                                    selector := sel.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2944
                                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2945
                                (#(#'subclass:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2946
                                  #'variableSubclass:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2947
                                  #'variableByteSubclass:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2948
                                  #'variableWordSubclass:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2949
                                  #'variableLongSubclass:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2950
                                  #'variableFloatSubclass:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2951
                                  #'variableDoubleSubclass:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2952
                                  #'primitiveDefinitions:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2953
                                  #'primitiveFunctions:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2954
                                  #'primitiveVariables:'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2955
                                 ) includes:sel) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2956
                                    changeType := 'class definition'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2957
                                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2958
                            ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2959
                        ] ifTrue:[
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  2960
                            |done first p className cls text methodPos|
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2961
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2962
                            "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2963
                             method definitions actually consist of
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2964
                             two (or more) chunks; skip next chunk(s)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2965
                             up to an empty one.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2966
                             The system only writes one chunk,
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2967
                             and we cannot handle more in this ChangesBrowser....
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2968
                            "
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  2969
                            className := nil.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2970
                            p := Parser parseExpression:chunkText inNameSpace:Smalltalk.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2971
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2972
                            (p notNil and:[p ~~ #Error]) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2973
                                sel := p selector.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2974
                                (sel == #methodsFor:) ifTrue:[
10583
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2975
                                    classAndName := self classNameAndClassFromNode:p.
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  2976
                                    className := classAndName key. changeClass := classAndName value.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2977
                                    category := (p args at:1) evaluate.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2978
                                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2979
                            ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2980
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2981
                            done := false.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2982
                            first := true.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2983
                            [done] whileFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2984
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2985
                                changeDelta := ' '.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2986
                                methodPos := aStream position.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2987
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2988
                                text := aStream nextChunk.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2989
                                text isNil ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2990
                                    done := true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2991
                                ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2992
                                    done := text isEmpty
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2993
                                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2994
                                done ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2995
                                    first ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2996
                                        change := Change new.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2997
                                        change chunk: chunkText.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2998
                                        change string:changeString.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  2999
                                        change position: methodPos.
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3000
                                        change className: className.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3001
                                        lastChange notNil ifTrue: [lastChange lastPosition: methodPos - 1].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3002
                                        lastChange := change.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3003
                                        change timeStamp: timeStampInfo.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3004
                                        change followUp: true.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3005
                                        editingClassSource := true.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3006
                                    ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3007
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3008
                                    first := false.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3009
                                    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3010
                                     try to find the selector
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3011
                                    "
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3012
                                    sel := nil.
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3013
                                    className notNil ifTrue:[
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3014
                                        p := Parser
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3015
                                                 parseMethodSpecification:text
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3016
                                                 in:nil
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3017
                                                 ignoreErrors:true
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3018
                                                 ignoreWarnings:true.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3019
                                        (p notNil and:[p ~~ #Error]) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3020
                                            sel := p selector.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3021
                                        ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3022
                                    ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3023
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3024
                                    sel isNil ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3025
                                        changeString := (chunkText contractTo:maxLen).
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3026
                                        changeType := 'change'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3027
                                        headerLine := chunkText , ' (change)'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3028
                                    ] ifFalse:[
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3029
                                        changeString :=  self contractClass:className selector:sel to:maxLen.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3030
                                        changeType := 'method definition'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3031
                                        changeCategory := category.
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3032
                                        headerLine := className , ' ' , sel , ' ' , '(change category: ''' , category , ''')'.
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3033
                                        change selector:sel.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3034
                                    ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3035
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3036
                                    DeltaInfoColumn ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3037
                                        changeClass isNil ifFalse:[
10583
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  3038
                                            cls := changeClass theNonMetaclass
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3039
                                        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3040
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3041
                                        (changeClass isNil or:[cls isLoaded not]) ifTrue:[
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3042
                                            changeDelta := '?'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3043
                                        ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3044
                                            (changeClass implements:sel asSymbol) ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3045
                                                changeDelta := '+'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3046
                                            ] ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3047
                                                |m currentText t1 t2|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3048
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3049
                                                m := changeClass compiledMethodAt:sel asSymbol.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3050
                                                currentText := m source.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3051
                                                currentText notNil ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3052
                                                    text asString = currentText asString ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3053
                                                        changeDelta := '='
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3054
                                                    ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3055
                                                        t1 := currentText asCollectionOfLines collect:[:s | s withTabsExpanded].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3056
                                                        t2 := text asCollectionOfLines collect:[:s | s withTabsExpanded].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3057
                                                        t1 = t2 ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3058
                                                            changeDelta := '='
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3059
                                                        ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3060
                                                    ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3061
                                                ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3062
                                            ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3063
                                        ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3064
                                    ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3065
                                    change delta:changeDelta.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3066
                                    change string:changeString.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3067
                                    change type:changeType.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3068
                                    change category: changeCategory.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3069
                                    change timeStamp:timeStampInfo.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3070
                                    changes add:change.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3071
                                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3072
                                changeString := nil.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3073
                                headerLine := nil.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3074
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3075
                            ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3076
                        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3077
                        changeString notNil ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3078
                            change delta:changeDelta.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3079
                            change string:changeString.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3080
                            change type:changeType.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3081
                            change timeStamp:timeStampInfo.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3082
                            changes add:change.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3083
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3084
                        ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3085
                            headerLine notNil ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3086
                                changes add: change.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3087
                            ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3088
                        ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3089
                    ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3090
                ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3091
                change lastPosition: aStream position.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3092
            ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3093
            modified := false.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3094
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3095
        ] valueNowOrOnUnwindDo:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3096
            aStream close.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3097
            inBackground ifTrue:[myProcess priority:myPriority].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3098
        ].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3099
    ].
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3100
    changes removeLast.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3101
    self setChangeList.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3102
    self valueOfNotReading value: true.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3103
    self filterField raise.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3104
    self filterLabel label: 'Filter:'.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3105
1653
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  3106
    self checkIfFileHasChanged.
5994b3c5207c national strings
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  3107
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3108
    "Modified: / 16-11-2010 / 15:52:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
10583
e2411142dc0c added: #classNameAndClassFromNode:
Claus Gittinger <cg@exept.de>
parents: 10247
diff changeset
  3109
    "Modified: / 18-08-2011 / 09:45:23 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3110
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3111
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3112
selectorOfMethodChange:aChange
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3113
    "returns the selector of the method change, or nil if it is not a method change"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3114
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3115
    |source parser sel|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3116
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3117
    source := self sourceOfMethodChange:aChange.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3118
    source isNil ifTrue:[^ nil].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3119
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3120
    parser := Parser
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3121
		parseMethod:source
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3122
		in:nil
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3123
		ignoreErrors:true
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3124
		ignoreWarnings:true.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3125
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3126
    (parser notNil and:[parser ~~ #Error]) ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3127
	sel := parser selector.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3128
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3129
    ^ sel
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3130
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3131
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3132
setChangeList
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3133
    "sets the list of changes into the list for the table by evaluating filterCompletionBlock"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3134
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3135
    self unselectChange.
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3136
    filterCompletionBlock value: self valueOfFilter value.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3137
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3138
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3139
silentDeleteChange:aChange
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3140
    "delete aChange do not update changeListView"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3141
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3142
    modified := true.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3143
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3144
    changes remove:aChange
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3145
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3146
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3147
silentDeleteChangesFor:aClassName from:start to:stop
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3148
    "deletes changes for aChange in the range [start,stop]
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3149
     and returns the number of the deleted changes"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3150
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3151
    |index numDeleted clsName|
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3152
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3153
    numDeleted := 0.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3154
    index := stop.
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3155
    [index >= start] whileTrue:
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3156
    [
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3157
	((clsName := self classNameOfChange:(self listOfChanges at: index)) notNil and:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3158
	[(clsName = aClassName or: [PrivateAsSeparate not and: [(clsName upTo: $:) = aClassName]])])
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3159
	ifTrue:
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3160
	[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3161
	    self silentDeleteChange:(self listOfChanges at: index).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3162
	    numDeleted := numDeleted + 1.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3163
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3164
	index := index - 1
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3165
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3166
    ^ numDeleted
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3167
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3168
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3169
sourceOfMethodChange:aChange
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3170
    "returns the source code of the method change, or nil if it is not a method change."
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3171
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3172
    |aStream chunk sawExcla parseTree sourceChunk|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3173
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3174
    aStream := self streamForChange:aChange.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3175
    aStream isNil ifTrue:[^ nil].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3176
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3177
    aChange followUp ifFalse:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3178
	sawExcla := aStream peekFor:(aStream class chunkSeparator).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3179
	chunk := aStream nextChunk.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3180
    ] ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3181
	chunk := aChange chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3182
	sawExcla := true.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3183
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3184
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3185
    sawExcla ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3186
	parseTree := Parser parseExpression:chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3187
	(parseTree notNil and:[parseTree isMessage]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3188
	    (parseTree selector == #methodsFor:) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3189
		sourceChunk := aStream nextChunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3190
	    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3191
	].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3192
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3193
    aStream close.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3194
    ^ sourceChunk
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3195
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3196
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3197
streamForChange:aChange
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3198
    "returns the stream for aChange"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3199
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3200
    |aStream|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3201
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3202
    aStream := FileStream readonlyFileNamed:changeFileName.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3203
    aStream isNil ifTrue:[^ nil].
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3204
    aStream position:aChange position.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3205
    ^ aStream
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3206
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3207
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3208
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3209
unselectChange
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3210
    "unselects the current change"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3211
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3212
    self selectionOfChange value: nil.
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3213
    self valueOfChangeText value: nil
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3214
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3215
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3216
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3217
withSelectedChangeDo:aBlock
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3218
    "just a helper, check for a selected change and evaluate aBlock
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3219
     with busy cursor"
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3220
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3221
    |change|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3222
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3223
    (change := self selectionOfChange value) notNil
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3224
    ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3225
	self withExecuteCursorDo:[aBlock value:change]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3226
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3227
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3228
16666
37c8853b8f78 #OTHER by mawalch
mawalch
parents: 16087
diff changeset
  3229
!NewChangesBrowser methodsFor:'startup & release'!
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3230
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3231
closeRequest
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3232
    "asks for saving before closing"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3233
5395
ff5fc88d4a4b Use 'Discard Changes and Exit' instead of 'Forget it...'
Stefan Vogel <sv@exept.de>
parents: 3220
diff changeset
  3234
    self valueOfNotSaving value ifFalse: [^ self].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3235
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3236
    modified == true ifTrue:[
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3237
        (OptionBox
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3238
              request:(resources string:'Change list was modified. Exit anyway?') withCRs
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3239
              label:'Changes Browser'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3240
              image:(WarningBox iconBitmap)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3241
              buttonLabels:(resources array:#('Cancel' 'Discard Modifications and Exit'))
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3242
              values:#(abort ignore)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3243
              default:#save
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3244
        ) == #abort ifTrue:[^ self].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3245
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3246
    super closeRequest
1656
fee64a2c7c7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1653
diff changeset
  3247
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3248
    "Modified: / 20-05-1998 / 03:53:47 / cg"
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3249
    "Modified: / 08-04-2011 / 10:22:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3250
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3251
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3252
postOpenWith:aBuilder
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3253
    "starts reading the changes from the file and
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3254
     builds entryCompletionBlock for the filterField before opening"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3255
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3256
    super postOpenWith:aBuilder.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3257
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3258
    builder namedComponents do:
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3259
    [:aView|
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3260
        aView allSubViewsDo:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3261
        [:v|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3262
            v redraw
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3263
        ]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3264
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3265
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3266
    autoUpdateBlock := [self checkIfFileHasChanged].
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3267
    Processor addTimedBlock:autoUpdateBlock afterSeconds:5.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3268
    self updateInfoLabel.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3269
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3270
    self filterField entryCompletionBlock:
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3271
    (filterCompletionBlock := [:value|
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3272
        |filter filters i changesCopy|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3273
        self unselectChange.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3274
        filter := self filterField contents.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3275
        (filters := filter asArrayOfSubstrings) size > 0 ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3276
            changesCopy := changes copy.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3277
            i := 0.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3278
            filters do:[:filter|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3279
                i := i + 1.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3280
                changesCopy contents:
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3281
                    (changesCopy select: [:row|
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3282
                        filter match: (row string asArrayOfSubstrings at: i ifAbsent: [''''])])
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3283
            ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3284
            self listOfChanges contents: changesCopy
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3285
        ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3286
            self listOfChanges contents: changes
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3287
        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3288
        self autoSelectLast.
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3289
    ]).
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3290
1771
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3291
    Object errorSignal handle: [:ex |
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3292
        ex signal == HaltSignal ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3293
            ex reject
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3294
        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3295
        ex signal == MessageTracer breakpointSignal ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3296
            ex reject
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3297
        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3298
        self warn:'Error while reading changes file:\\' , ex errorString.
1771
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3299
    ] do: [
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3300
        self readChangesFileInBackground:true
1771
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3301
    ].
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3302
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3303
    "Modified: / 30.7.1998 / 11:37:51 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3304
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3305
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3306
uninitialize
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3307
    "removes the autoUpdateBlock from the Processor and myself from the ObjectMemory"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3308
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3309
    Processor removeTimedBlock:autoUpdateBlock.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3310
    ObjectMemory removeDependent:self
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3311
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3312
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3313
!NewChangesBrowser methodsFor:'user actions'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3314
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3315
doApply
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3316
    "applies the selected change"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3317
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3318
    self withSelectedChangeDo:[:change|
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3319
	skipSignal := nil.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3320
	self applyChange:change.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3321
	self autoSelectChange: (self listOfChanges at: (self listOfChanges indexOf: change) + 1 ifAbsent: [^self autoSelectLast])
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3322
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3323
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3324
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3325
doApplyAll
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3326
    "applies all changes"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3327
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3328
    self withExecuteCursorDo:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3329
	|change|
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3330
	self unselectChange.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3331
	skipSignal isNil ifTrue:[skipSignal := Signal new].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3332
	1 to:self listOfChanges size do:[:changeNr |
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3333
	    self selectionOfChange value:(change := self listOfChanges at: changeNr).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3334
	    self applyChange:change
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3335
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3336
	self autoSelectLast
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3337
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3338
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3339
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3340
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3341
doApplyAllForClass
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3342
    "applies all changes having the same class like the selected one"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3343
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3344
    self doApplyForClassToEndFrom: 1
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3345
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3346
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3347
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3348
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3349
doApplyForClassToEnd
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3350
    "applies all changes having the same class like the selected one from the selected to the end"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3351
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3352
    self doApplyForClassToEndFrom: (self listOfChanges indexOf: self selectionOfChange value)
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3353
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3354
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3355
doApplyForClassToEndFrom: start
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3356
    "applies changes with same class like the selected one from start to end"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3357
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3358
    self withSelectedChangeDo:[:change|
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3359
	|classNameToApply thisClassName lastChange change2|
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3360
	(classNameToApply := self classNameOfChange:change) notNil
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3361
	ifTrue:
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3362
	[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3363
	    self unselectChange.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3364
	    skipSignal isNil ifTrue:[skipSignal := Signal new].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3365
	    start to:self listOfChanges size do:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3366
	    [:changeNr|
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3367
		change2 := self listOfChanges at: changeNr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3368
		((thisClassName := self classNameOfChange:change2) notNil and:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3369
		[thisClassName = classNameToApply or:
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3370
		[PrivateAsSeparate not and: [(thisClassName upTo: $:) = classNameToApply]]])
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3371
		ifTrue:
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3372
		[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3373
		    self selectionOfChange value: change2.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3374
		    self applyChange:change2.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3375
		    lastChange := change2
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3376
		]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3377
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3378
	    self autoSelectChange:lastChange.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3379
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3380
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3381
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3382
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3383
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3384
doApplyFromLastSnapshot
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3385
    "applies all changes made since the last snapshot"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3386
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3387
    self autoSelectLast.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3388
    (self doFindSnapshot: 'last') ifTrue: [self doApplyToEnd]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3389
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3390
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3391
doApplyToEnd
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3392
    "applies all changes from selected one to be end"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3393
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3394
    self withSelectedChangeDo:[:change|
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3395
	self unselectChange.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3396
	skipSignal isNil ifTrue:[skipSignal := Signal new].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3397
	(self listOfChanges indexOf: change) to: self listOfChanges size do:[:changeNr|
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3398
	    self selectionOfChange value:(self listOfChanges at: changeNr).
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3399
	    self applyChange:(self listOfChanges at: changeNr)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3400
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3401
	self autoSelectChange:self listOfChanges last
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3402
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3403
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3404
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3405
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3406
doBrowseClass
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3407
    "opens a System Browser on the class of a change (and selector)"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3408
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3409
    |className cls isMeta|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3410
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3411
    className := self fullClassNameOfChange:self selectionOfChange value.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3412
    className notNil ifTrue:[
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3413
	isMeta := false.
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3414
	(className endsWith:' class') ifTrue:[
13846
96f35c2635d7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13706
diff changeset
  3415
	    className := className copyButLast:6.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3416
	    isMeta := true.
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3417
	].
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3418
	(cls := Smalltalk classNamed:className) notNil ifTrue:[
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3419
	    isMeta ifTrue:[cls := cls class].
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3420
	    cls browserClass
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3421
		openInClass:cls
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3422
		selector:(self selectorOfMethodChange:self selectionOfChange value)
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3423
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3424
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3425
3220
2838a2b22947 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2740
diff changeset
  3426
    "Modified: / 26.9.2001 / 17:35:50 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3427
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3428
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3429
doCompare
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3430
    "compares a change with the current system version"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3431
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3432
    |change|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3433
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3434
    (change := self selectionOfChange value) notNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3435
	self withExecuteCursorDo:[self compareChange:change]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3436
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3437
    self newLabel:''
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3438
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3439
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3440
doCompress
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3441
    "compresses the changes, i.e. replaces multiple changes by the last change"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3442
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3443
    |changesSizeBefore|
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3444
    (changesSizeBefore := changes size) == 0 ifTrue: [^self warn: 'Nothing to compress!!'].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3445
    self setChangeList.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3446
    self unselectChange.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3447
    self compressForClass:nil.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3448
    self setChangeList.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3449
    self updateInfoLabel.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3450
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3451
    self information:
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3452
	'Compression Rate:   ', (((changesSizeBefore - changes size)/changesSizeBefore) * 100) rounded printString, '%\' withCRs,
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3453
	'Obsolete Changes: ', (changesSizeBefore - changes size) printString, ' from ', changesSizeBefore printString
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3454
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3455
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3456
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3457
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3458
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3459
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3460
doCompressForClass
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3461
    "compresses changes for the selected class.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3462
     this replaces multiple method-changes by the last (i.e. the most recent) change."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3463
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3464
    self withSelectedChangeDo:[:change|
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3465
	| classNameToCompress |
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3466
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3467
	(classNameToCompress := self classNameOfChange:change) notNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3468
	    self compressForClass:classNameToCompress.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3469
	    filterCompletionBlock value: self valueOfFilter value.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3470
	    self autoSelectLast
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3471
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3472
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3473
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3474
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3475
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3476
doDelete
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3477
    "deletes the selected change"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3478
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3479
    |change selectionIndex|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3480
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3481
    (change := self selectionOfChange value) notNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3482
	selectionIndex := self listOfChanges indexOf: change.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3483
	self unselectChange.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3484
	self silentDeleteChange:change.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3485
	self listOfChanges remove:change.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3486
	self autoSelectOrEnd: (self listOfChanges at: selectionIndex ifAbsent: [nil]).
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3487
    ]
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3488
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3489
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3490
doDeleteAll
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3491
    "deletes all changes"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3492
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3493
    self deleteChangesFrom:1 to: self listOfChanges size.
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3494
    self autoSelectOrEnd: nil
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3495
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3496
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3497
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3498
doDeleteAllForClass
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3499
    "deletes all changes having the same class like the selected one"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3500
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3501
    self doDeleteForClassToEndFrom: 1
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3502
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3503
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3504
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3505
doDeleteForClassToEnd
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3506
    "deletes all changes having the same class like the selected one from the selected to the end"
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3507
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3508
    self withSelectedChangeDo:[:change|
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3509
	self doDeleteForClassToEndFrom: (self listOfChanges indexOf: change)
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3510
    ]
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3511
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3512
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3513
!
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3514
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3515
doDeleteForClassToEndFrom: start
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3516
    "deletes changes with same class like the selected one from start to end"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3517
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3518
    self withSelectedChangeDo:[:change|
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3519
	|classNameToDelete|
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3520
	(classNameToDelete := self classNameOfChange:change) notNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3521
	    self unselectChange.
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3522
	    self silentDeleteChangesFor:classNameToDelete
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3523
				   from:start
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3524
				     to:self listOfChanges size.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3525
	    self setChangeList.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3526
	    self autoSelectOrEnd: nil
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3527
	]
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3528
    ].
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3529
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3530
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3531
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3532
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3533
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3534
doDeleteToEnd
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3535
    "deletes all changes from selected one to be end"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3536
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3537
    |changeNr|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3538
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3539
    changeNr := (self listOfChanges indexOf: self selectionOfChange value).
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3540
    changeNr ~~ 0 ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3541
	self deleteChangesFrom:changeNr to: self listOfChanges size.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3542
	self unselectChange.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3543
	self autoSelectOrEnd: nil
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3544
    ]
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3546
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3547
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  3548
doFilter: aFilterString
b37202441764 revised
tz
parents: 1556
diff changeset
  3549
    "filter the changes with aFilterString"
b37202441764 revised
tz
parents: 1556
diff changeset
  3550
1569
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  3551
    self selectionOfChange value: nil.
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  3552
    self valueOfFilter value: aFilterString withoutNotifying: self.
b37202441764 revised
tz
parents: 1556
diff changeset
  3553
    self valueOfFilter changed.
b37202441764 revised
tz
parents: 1556
diff changeset
  3554
    self autoSelectLast
b37202441764 revised
tz
parents: 1556
diff changeset
  3555
!
b37202441764 revised
tz
parents: 1556
diff changeset
  3556
1644
16586a2c52b2 filter problems fixed
tz
parents: 1642
diff changeset
  3557
doFilterSourceType: aFilterStringTypeString
16586a2c52b2 filter problems fixed
tz
parents: 1642
diff changeset
  3558
    "filter the source changes with aFilterStringTypeString"
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  3559
1569
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  3560
    self selectionOfChange value: nil.
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  3561
    self listOfChanges contents: #().
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  3562
    self valueOfFilter value: '' withoutNotifying: self.
1644
16586a2c52b2 filter problems fixed
tz
parents: 1642
diff changeset
  3563
    self listOfChanges contents: (changes select: [:change| change type = 'source' and: [aFilterStringTypeString match: change string]]).
16586a2c52b2 filter problems fixed
tz
parents: 1642
diff changeset
  3564
    self autoSelectLast
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  3565
b37202441764 revised
tz
parents: 1556
diff changeset
  3566
!
b37202441764 revised
tz
parents: 1556
diff changeset
  3567
b37202441764 revised
tz
parents: 1556
diff changeset
  3568
doFilterType: aFilterTypeString
b37202441764 revised
tz
parents: 1556
diff changeset
  3569
    "filter the changes with aFilterTypeString"
b37202441764 revised
tz
parents: 1556
diff changeset
  3570
1569
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  3571
    self selectionOfChange value: nil.
96d29b2efc76 revised
tz
parents: 1568
diff changeset
  3572
    self valueOfFilter value: '' withoutNotifying: self.
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  3573
    self listOfChanges contents: (changes select: [:change| change type = aFilterTypeString]).
b37202441764 revised
tz
parents: 1556
diff changeset
  3574
    self autoSelectLast
b37202441764 revised
tz
parents: 1556
diff changeset
  3575
b37202441764 revised
tz
parents: 1556
diff changeset
  3576
!
b37202441764 revised
tz
parents: 1556
diff changeset
  3577
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3578
doFindSnapshot: what
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3579
    "finds the last made snapshot and selects it. what is one of last, prvious or next"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3580
1887
332f146981fc find last snapshot error fixed
tz
parents: 1877
diff changeset
  3581
    |snapshotNr snapshotFound|
332f146981fc find last snapshot error fixed
tz
parents: 1877
diff changeset
  3582
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3583
    (self listOfChanges contains: [:change| change type = 'image']) ifFalse: [
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3584
        self warn: 'No snapshot found!!'.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3585
        ^ false.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3586
    ].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3587
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3588
    self withSelectedChangeDo:[:change|
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3589
        what = 'last' ifTrue:[            
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3590
            snapshotNr := self listOfChanges size+1.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3591
        ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3592
            snapshotNr := self listOfChanges indexOf: change.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3593
        ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3594
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3595
        snapshotFound := false.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3596
        [snapshotNr > 0 and: [snapshotFound not]] whileTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3597
            (what = 'last' or:[what = 'previous']) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3598
                snapshotNr := snapshotNr - 1.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3599
                snapshotNr == 0 ifTrue: [snapshotNr := self listOfChanges size].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3600
            ] ifFalse:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3601
                snapshotNr := snapshotNr + 1.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3602
                snapshotNr > self listOfChanges size ifTrue: [snapshotNr := 1].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3603
            ].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3604
            (self listOfChanges at: snapshotNr ifAbsent: [^self autoSelectChange: (what = 'last' ifTrue: [self listOfChanges last] ifFalse: [self listOfChanges first])]) type = 'image'
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3605
            ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3606
                snapshotFound := true.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3607
                self autoSelectChange:(self listOfChanges at: snapshotNr)
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3608
            ]
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3609
        ]
1887
332f146981fc find last snapshot error fixed
tz
parents: 1877
diff changeset
  3610
    ].
332f146981fc find last snapshot error fixed
tz
parents: 1877
diff changeset
  3611
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3612
    ^ snapshotFound
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3613
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3614
1556
tz
parents: 1554
diff changeset
  3615
doLoad
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3616
    "opens a dialog for loading changes from a file"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3617
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3618
    |fileName|
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3619
    (fileName :=
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3620
        "
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3621
        FileSelectionBrowser
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3622
            request: 'Load Changes List'
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3623
            fileName: changeFileName
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3624
            withFileFilters: #('c*'))"
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3625
        Dialog
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3626
            requestFileName:'Load Changes List'
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3627
            default: changeFileName
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3628
            pattern:'*.chg;*.st'  
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3629
        ) notNil
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3630
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3631
    ifTrue:
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3632
    [
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3633
        changeFileName := fileName.
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3634
        changes removeAll.
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3635
        self readChangesFileInBackground:true.
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3636
        self unselectChange.
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3637
        Processor addTimedBlock:autoUpdateBlock afterSeconds:5.
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3638
        self updateInfoLabel.
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3639
        self autoSelectLast
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3640
    ]
10247
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3641
8517600df5c5 Merged with JV's branch
vrany
parents: 9180
diff changeset
  3642
    "Modified: / 11-10-2010 / 20:35:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3643
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3644
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3645
doReload
1546
ffea21e237ed revised
tz
parents: 1545
diff changeset
  3646
    "reloads the changes from the file"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3647
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3648
    changes removeAll.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3649
    self unselectChange.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3650
    self readChangesFileInBackground:true.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3651
    self autoSelectLast
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3652
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3653
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3654
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3655
doSave
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3656
    "write back the changes file. To avoid problems when the disk is full
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3657
     or a crash occurs while writing (well, or someone kills us),
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3658
     first write the stuff to a new temporary file. If this works ok,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3659
     rename the old change-file to a .bak file and finally rename the
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3660
     tempfile back to the change-file.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3661
     That way, if anything happens, either the original file is left unchanged,
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3662
     or we have at least a backup of the previous change file."
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3663
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3664
    |inStream outStream tempfile stamp f|
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3665
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3666
    self valueOfNotReading value ifFalse: [^nil].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3667
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3668
    editingClassSource ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3669
	(self confirm:'You are editing a classes sourceFile (not a changeFile) !!\Are you certain, you want to overwrite it ?' withCRs)
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3670
	ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3671
	    ^ false
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3672
	]
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3673
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3674
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3675
    tempfile := Filename newTemporaryIn:nil.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3676
    tempfile exists ifTrue:[tempfile remove].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3677
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3678
    outStream := tempfile writeStream.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3679
    outStream isNil ifTrue:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3680
	self warn:'Cannot create temporary file in current directory.'.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3681
	^ false
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3682
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3683
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3684
    inStream := FileStream readonlyFileNamed:changeFileName.
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3685
    inStream isNil ifTrue:[^ false].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3686
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3687
    self withCursor:(Cursor write) do:[
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3688
	|excla sawExcla done first chunk
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3689
	 nChanges "{Class:SmallInteger}" |
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3690
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3691
	Stream writeErrorSignal handle:[:ex |
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3692
	    self warn:('Could not update the changes file.\\' , ex errorString) withCRs.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3693
	    ^ false
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3694
	] do:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3695
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3696
	    self valueOfNotSaving value: false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3697
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3698
	    excla := inStream class chunkSeparator.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3699
	    nChanges := changes size.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3700
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3701
	    1 to:nChanges do:[:index |
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3702
		inStream position: (changes at: index) position.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3703
		sawExcla := inStream peekFor:excla.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3704
		chunk := inStream nextChunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3705
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3706
		(chunk notNil
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3707
		and:[(chunk startsWith:'''---- snap') not]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3708
		    (stamp := (changes at:index) timeStamp) notNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3709
			outStream nextPutAll:'''---- timestamp ' , stamp , ' ----'''.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3710
			outStream nextPut:excla; cr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3711
		    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3712
		].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3713
6288
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3714
		sawExcla ifTrue:[
4767ba5caf5b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5396
diff changeset
  3715
		    outStream nextPut:excla.
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3716
		    outStream nextChunkPut:chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3717
		    outStream cr; cr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3718
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3719
		    "
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3720
		     a method-definition chunk - skip followups
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3721
		    "
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3722
		    done := false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3723
		    first := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3724
		    [done] whileFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3725
			chunk := inStream nextChunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3726
			chunk isNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3727
			    outStream cr; cr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3728
			    done := true
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3729
			] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3730
			    chunk isEmpty ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3731
				outStream space; nextChunkPut:chunk; cr; cr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3732
				done := true.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3733
			    ] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3734
				first ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3735
				    outStream cr; cr.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3736
				].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3737
				outStream nextChunkPut:chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3738
			    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3739
			].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3740
			first := false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3741
		    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3742
		] ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3743
		    outStream nextChunkPut:chunk.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3744
		    outStream cr
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3745
		]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3746
	    ].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3747
	    outStream close.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3748
	    inStream close.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3749
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3750
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3751
	f := changeFileName asFilename.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3752
	f renameTo:(f withSuffix:'bak').
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3753
	tempfile renameTo:changeFileName.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3754
	self doReload.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3755
	modified := false.
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3756
	self valueOfNotSaving value: true.
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3757
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3758
    ^ true
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3759
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3760
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3761
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3762
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3763
!NewChangesBrowser::Change methodsFor:'accessing'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3764
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3765
category
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3766
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3767
    ^category
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3768
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3769
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3770
category: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3771
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3772
    category := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3773
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3774
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3775
chunk
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3776
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3777
    ^chunk
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3778
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3779
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3780
chunk: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3781
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3782
    chunk := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3783
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3784
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3785
className
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3786
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3787
    ^className
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3788
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3789
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3790
className: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3791
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3792
    className := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3793
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3794
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3795
delta
1771
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3796
    |cls|
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3797
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3798
    delta size = 0 ifTrue: [^''].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3799
    delta = '='    ifTrue: [^'Current'].
1771
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3800
    delta = '?'    ifTrue: [
2250
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3801
	(className notNil and:[className knownAsSymbol]) ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3802
	    (cls := Smalltalk at:className asSymbol ifAbsent:nil) notNil ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3803
		cls isBehavior ifTrue:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3804
		    cls isLoaded ifFalse:[
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3805
			^ 'Not loaded'
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3806
		    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3807
		]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3808
	    ]
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3809
	].
dc7a9ae0d6bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  3810
	^'No class'
1771
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3811
    ].
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3812
    delta = '-'    ifTrue: [^'Remove'].
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3813
    delta = '+'    ifTrue: [^'New'].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3814
    ^delta
1771
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3815
6d6c2bde9615 dont catch halts and breakpoints while reading;
Claus Gittinger <cg@exept.de>
parents: 1712
diff changeset
  3816
    "Modified: / 29.7.1998 / 23:08:10 / cg"
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3817
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3818
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3819
delta: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3820
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3821
    delta := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3822
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3823
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3824
followUp
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3825
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3826
    ^followUp
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3827
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3828
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3829
followUp: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3830
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3831
    followUp := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3832
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3833
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  3834
lastPosition: aValue
b37202441764 revised
tz
parents: 1556
diff changeset
  3835
b37202441764 revised
tz
parents: 1556
diff changeset
  3836
    lastPosition := aValue
b37202441764 revised
tz
parents: 1556
diff changeset
  3837
!
b37202441764 revised
tz
parents: 1556
diff changeset
  3838
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3839
listColor
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3840
    ((string size < 3) or:[(string at: 3) ~~ $-]) ifTrue:[
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3841
        (self type = 'class') ifTrue: [^Color gray].
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3842
        ^ Color white
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3843
    ].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3844
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3845
    (string includesMatchString: '---- s') ifTrue: [^Color red].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3846
    (string includesMatchString: '---- f') ifTrue: [^Color cyan: 100 magenta: 20 yellow: 20].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3847
    (string includesMatchString: '---- c') ifTrue: [^Color blue].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3848
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3849
    ^Color white
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3850
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3851
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3852
position
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3853
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3854
    ^position
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3855
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3856
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3857
position: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3858
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3859
    position := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3860
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3861
1568
b37202441764 revised
tz
parents: 1556
diff changeset
  3862
positions
b37202441764 revised
tz
parents: 1556
diff changeset
  3863
b37202441764 revised
tz
parents: 1556
diff changeset
  3864
    ^position printString, ' - ', lastPosition printString
b37202441764 revised
tz
parents: 1556
diff changeset
  3865
!
b37202441764 revised
tz
parents: 1556
diff changeset
  3866
7957
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3867
selector
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3868
    ^ selector
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3869
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3870
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3871
selector:something
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3872
    selector := something.
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3873
!
55841733ff69 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6288
diff changeset
  3874
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3875
string
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3876
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3877
    ^string
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3878
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3879
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3880
string: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3881
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3882
    string := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3883
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3884
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3885
timeStamp
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3886
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3887
    ^timeStamp
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3888
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3889
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3890
timeStamp: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3891
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3892
    timeStamp := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3893
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3894
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3895
type
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3896
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3897
    (type = 'doIt' or: [type = 'remove']) ifTrue: [^'class'].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3898
    (type size = 0) ifTrue: [(string includesMatchString: '---- s') ifTrue: [^'image'] ifFalse: [^'source']].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3899
    (self category = nil) ifTrue: [^'class'].
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3900
    ^'method'
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3901
!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3902
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3903
type: aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3904
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3905
    type := aValue
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3906
! !
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3907
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3908
!NewChangesBrowser class methodsFor:'documentation'!
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3909
10584
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  3910
version
16087
mawalch
parents: 13846
diff changeset
  3911
    ^ '$Header$'
10584
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  3912
!
26c11c692527 changed: #checkClassIsLoaded:
Claus Gittinger <cg@exept.de>
parents: 10583
diff changeset
  3913
9179
20f04cffb483 changed: #readChangesFileInBackground:
Claus Gittinger <cg@exept.de>
parents: 7957
diff changeset
  3914
version_CVS
16087
mawalch
parents: 13846
diff changeset
  3915
    ^ '$Header$'
1545
e2d6f6ca36ef initial checkin
tz
parents:
diff changeset
  3916
! !
13706
88e9ac79bb2f class: NewChangesBrowser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10584
diff changeset
  3917