--- a/CBrowser.st Wed Oct 13 03:48:23 1993 +0100
+++ b/CBrowser.st Sat Dec 11 02:40:26 1993 +0100
@@ -28,7 +28,7 @@
this class implements a changes browser.
-$Header: /cvs/stx/stx/libtool/Attic/CBrowser.st,v 1.3 1993-10-13 02:46:28 claus Exp $
+$Header: /cvs/stx/stx/libtool/Attic/CBrowser.st,v 1.4 1993-12-11 01:40:26 claus Exp $
written jan 90 by claus
'!
@@ -53,7 +53,7 @@
startOn:aFileName
"create c changes browser on a change file"
- ^ ((self new label:'Changes Browser:', aFileName) changeFileName:aFileName) realize
+ ^ ((self new label:'Changes Browser:', aFileName) changeFileName:aFileName) open
! !
!ChangesBrowser methodsFor:'initialize / release'!
@@ -79,11 +79,6 @@
codeView := v scrolledView.
anyChanges := false.
-"
- self readChangesFile.
- changeListView contents:changeChunks.
- changeListView action:[:lineNr | self changeSelection:lineNr]
-"
!
initializeMiddleButtonMenu
@@ -141,12 +136,16 @@
!
destroy
- closeBox notNil ifTrue:[closeBox destroy].
+ closeBox notNil ifTrue:[closeBox destroy. closeBox := nil].
super destroy
! !
!ChangesBrowser methodsFor:'private'!
+queryCloseText
+ ^ 'Quit without updating changeFile ?'
+!
+
changeFileName:aFileName
changeFileName := aFileName
!
@@ -185,7 +184,7 @@
(aParseTree isKindOf:MessageNode) ifTrue:[
sel := aParseTree selector.
"a change for a method or a comment-change"
- (#(methodsFor: removeSelector comment) includes:sel) ifTrue:[
+ (#(methodsFor: removeSelector: comment:) includes:sel) ifTrue:[
recTree := aParseTree receiver.
(recTree isKindOf:UnaryNode) ifTrue:[
(recTree selector ~~ #class) ifTrue:[^ nil].
@@ -314,9 +313,19 @@
text := aStream nextChunk.
text notNil ifTrue:[
changePositions add:chunkPos.
+
+ "only first line is saved in changeChunks ..."
index := text indexOf:(Character cr).
(index ~~ 0) ifTrue:[
- text := text copyFrom:1 to:(index - 1)
+ text := text copyFrom:1 to:(index - 1).
+
+ "take care for comment changes - must still be a
+ valid expression for classNameOfChange: to work"
+
+ (text endsWith:'comment:''') ifTrue:[
+ text := text , '...'''
+ ]
+
].
changeChunks add:text.
sawExcla ifTrue:[
@@ -334,7 +343,8 @@
]
].
changeClassNames := VariableArray new:(changeChunks size).
- aStream close
+ aStream close.
+ anyChanges := false
]
!
@@ -727,7 +737,7 @@
anyChanges ifTrue:[
closeBox isNil ifTrue:[closeBox := YesNoBox new].
- closeBox title:(resources at:'Quit without updating changeFile ?').
+ closeBox title:(resources at:(self queryCloseText)).
closeBox yesAction:[self destroy] noAction:nil.
closeBox showAtPointer
] ifFalse:[
--- a/ChangesBrowser.st Wed Oct 13 03:48:23 1993 +0100
+++ b/ChangesBrowser.st Sat Dec 11 02:40:26 1993 +0100
@@ -28,7 +28,7 @@
this class implements a changes browser.
-$Header: /cvs/stx/stx/libtool/ChangesBrowser.st,v 1.3 1993-10-13 02:46:28 claus Exp $
+$Header: /cvs/stx/stx/libtool/ChangesBrowser.st,v 1.4 1993-12-11 01:40:26 claus Exp $
written jan 90 by claus
'!
@@ -53,7 +53,7 @@
startOn:aFileName
"create c changes browser on a change file"
- ^ ((self new label:'Changes Browser:', aFileName) changeFileName:aFileName) realize
+ ^ ((self new label:'Changes Browser:', aFileName) changeFileName:aFileName) open
! !
!ChangesBrowser methodsFor:'initialize / release'!
@@ -79,11 +79,6 @@
codeView := v scrolledView.
anyChanges := false.
-"
- self readChangesFile.
- changeListView contents:changeChunks.
- changeListView action:[:lineNr | self changeSelection:lineNr]
-"
!
initializeMiddleButtonMenu
@@ -141,12 +136,16 @@
!
destroy
- closeBox notNil ifTrue:[closeBox destroy].
+ closeBox notNil ifTrue:[closeBox destroy. closeBox := nil].
super destroy
! !
!ChangesBrowser methodsFor:'private'!
+queryCloseText
+ ^ 'Quit without updating changeFile ?'
+!
+
changeFileName:aFileName
changeFileName := aFileName
!
@@ -185,7 +184,7 @@
(aParseTree isKindOf:MessageNode) ifTrue:[
sel := aParseTree selector.
"a change for a method or a comment-change"
- (#(methodsFor: removeSelector comment) includes:sel) ifTrue:[
+ (#(methodsFor: removeSelector: comment:) includes:sel) ifTrue:[
recTree := aParseTree receiver.
(recTree isKindOf:UnaryNode) ifTrue:[
(recTree selector ~~ #class) ifTrue:[^ nil].
@@ -314,9 +313,19 @@
text := aStream nextChunk.
text notNil ifTrue:[
changePositions add:chunkPos.
+
+ "only first line is saved in changeChunks ..."
index := text indexOf:(Character cr).
(index ~~ 0) ifTrue:[
- text := text copyFrom:1 to:(index - 1)
+ text := text copyFrom:1 to:(index - 1).
+
+ "take care for comment changes - must still be a
+ valid expression for classNameOfChange: to work"
+
+ (text endsWith:'comment:''') ifTrue:[
+ text := text , '...'''
+ ]
+
].
changeChunks add:text.
sawExcla ifTrue:[
@@ -334,7 +343,8 @@
]
].
changeClassNames := VariableArray new:(changeChunks size).
- aStream close
+ aStream close.
+ anyChanges := false
]
!
@@ -727,7 +737,7 @@
anyChanges ifTrue:[
closeBox isNil ifTrue:[closeBox := YesNoBox new].
- closeBox title:(resources at:'Quit without updating changeFile ?').
+ closeBox title:(resources at:(self queryCloseText)).
closeBox yesAction:[self destroy] noAction:nil.
closeBox showAtPointer
] ifFalse:[