ChangeSetBrowser2 improvements: jv
authorJan Vrany <jan.vrany@fit.cvut.cz>
Thu, 26 Jul 2012 19:46:57 +0100
branchjv
changeset 12269 79f87eee62e5
parent 12268 cb43ab66c093
child 12270 0ccd3c63a688
ChangeSetBrowser2 improvements: - uses DataSetView instead of list (allows for multiple columns) - CodeView2 and its Diff*Tool users now respect value of codeAspect
Make.proto
Make.spec
Tools__ChangeList.st
Tools__ChangeSetBrowser2.st
Tools__CodeView2.st
Tools__DiffCodeView2.st
Tools__HierarchicalChangeList.st
Tools__TextDiff3Tool.st
Tools__TextDiffTool.st
abbrev.stc
bc.mak
libtool.rc
stx_libtool.st
--- a/Make.proto	Thu Jul 26 17:09:41 2012 +0100
+++ b/Make.proto	Thu Jul 26 19:46:57 2012 +0100
@@ -63,7 +63,7 @@
 
 all:: preMake classLibRule postMake
 
-pre_objs::
+pre_objs::  
 
 
 
@@ -78,13 +78,13 @@
 		echo -n exported > .svnversion; \
 	fi
 
-stx_libtool.o: stx_libtool.st .svnversion
+stx_libtool.o: stx_libtool.st .svnversion 
 	if [ -d .svn ]; then \
 		rev2="$(shell printf "%-16s" $$(cat .svnversion))"; \
 		sed -e "s/\"\$$SVN\-Revision:\".*\"\$$\"/\"\$$SVN-Revision:\"\'$$rev2\'\"\$$\"/g" $< > .stx_libtool.svn.st; \
 	fi
 	$(MAKE) CC="$(CLASSLIB_CC)" OPT="$(OPT)" SEPINITCODE="$(SEPINITCODE)" STC="$(STC)" STFILE=.stx_libtool.svn $(O_RULE);
-	mv .stx_libtool.svn.$(O) stx_libtool.$(O)
+	mv .stx_libtool.svn.$(O) stx_libtool.$(O) 
 endif
 
 
@@ -103,7 +103,6 @@
 postMake:: cleanjunk
 
 prereq: $(REQUIRED_SUPPORT_DIRS)
-	cd ../libwidg3 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../libbasic && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../libbasic2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../libcomp && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
@@ -301,11 +300,12 @@
 $(OUTDIR)Tools__ImplementingClassList.$(O) Tools__ImplementingClassList.$(H): Tools__ImplementingClassList.st $(INCLUDE_TOP)/stx/libtool/Tools__MethodList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigatorModel.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)Tools__ImplementingMethodList.$(O) Tools__ImplementingMethodList.$(H): Tools__ImplementingMethodList.st $(INCLUDE_TOP)/stx/libtool/Tools__MethodList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigatorModel.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)Tools__NamespaceFilter.$(O) Tools__NamespaceFilter.$(H): Tools__NamespaceFilter.st $(INCLUDE_TOP)/stx/libtool/Tools__NamespaceList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigatorModel.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)Tools__TestRunner2.$(O) Tools__TestRunner2.$(H): Tools__TestRunner2.st $(INCLUDE_TOP)/stx/libtool/Tools__AbstractTestRunner.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__ClassList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigatorModel.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItem.$(H) $(STCHDR)
+$(OUTDIR)Tools__TestRunner2.$(O) Tools__TestRunner2.$(H): Tools__TestRunner2.st $(INCLUDE_TOP)/stx/libtool/Tools__AbstractTestRunner.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItem.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__ClassList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigatorModel.$(H) $(STCHDR)
 $(OUTDIR)Tools__HierarchicalChangeList.$(O) Tools__HierarchicalChangeList.$(H): Tools__HierarchicalChangeList.st $(INCLUDE_TOP)/stx/libtool/Tools__ChangeList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserListWithFilter.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigatorModel.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)Tools__HierarchicalPackageFilterList.$(O) Tools__HierarchicalPackageFilterList.$(H): Tools__HierarchicalPackageFilterList.st $(INCLUDE_TOP)/stx/libtool/Tools__HierarchicalProjectList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__ProjectList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigatorModel.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItemWithLabel.$(H) $(INCLUDE_TOP)/stx/libwidg2/HierarchicalItem.$(H) $(STCHDR)
 $(OUTDIR)Tools__InheritanceClassList.$(O) Tools__InheritanceClassList.$(H): Tools__InheritanceClassList.st $(INCLUDE_TOP)/stx/libtool/Tools__HierarchicalClassList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__ClassList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__BrowserList.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NavigatorModel.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)XTermView.$(O) XTermView.$(H): XTermView.st $(INCLUDE_TOP)/stx/libview/XEmbedContainerView.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)/stx/libcomp/Breakpoint.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libcomp/BreakpointDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/ByteArray.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic3/Change.$(H) $(INCLUDE_TOP)/stx/libbasic3/ChangeSet.$(H) $(INCLUDE_TOP)/stx/libbasic/OrderedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Character.$(H) $(INCLUDE_TOP)/stx/libbasic/Magnitude.$(H) $(INCLUDE_TOP)/stx/libbasic/CharacterArray.$(H) $(INCLUDE_TOP)/stx/libview/Color.$(H) $(INCLUDE_TOP)/stx/libbasic3/CompositeChange.$(H) $(INCLUDE_TOP)/stx/libbasic/Date.$(H) $(INCLUDE_TOP)/stx/libbasic/Dictionary.$(H) $(INCLUDE_TOP)/stx/libbasic/Set.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libbasic/ExecutableFunction.$(H) $(INCLUDE_TOP)/stx/libview/Form.$(H) $(INCLUDE_TOP)/stx/libview/Image.$(H) $(INCLUDE_TOP)/stx/libbasic/Integer.$(H) $(INCLUDE_TOP)/stx/libbasic/Number.$(H) $(INCLUDE_TOP)/stx/libbasic/ArithmeticValue.$(H) $(INCLUDE_TOP)/stx/libwidg/MenuView.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInListView.$(H) $(INCLUDE_TOP)/stx/libbasic/Method.$(H) $(INCLUDE_TOP)/stx/libbasic/CompiledCode.$(H) $(INCLUDE_TOP)/stx/libbasic/MethodDictionary.$(H) $(INCLUDE_TOP)/stx/libbasic/KeyedCollection.$(H) $(INCLUDE_TOP)/stx/libwidg/PopUpMenu.$(H) $(INCLUDE_TOP)/stx/libview/PopUpView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libbasic3/ProfileTree.$(H) $(INCLUDE_TOP)/stx/libbasic2/RunArray.$(H) $(INCLUDE_TOP)/stx/libwidg2/SelectionInListModelView.$(H) $(INCLUDE_TOP)/stx/libwidg2/ListModelView.$(H) $(INCLUDE_TOP)/stx/libbasic/StringCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Symbol.$(H) $(INCLUDE_TOP)/stx/libbasic/String.$(H) $(INCLUDE_TOP)/stx/libbasic2/Text.$(H) $(INCLUDE_TOP)/stx/libbasic/Timestamp.$(H) $(INCLUDE_TOP)/stx/libbasic/AbstractTime.$(H) $(INCLUDE_TOP)/stx/libbasic/UserPreferences.$(H) $(INCLUDE_TOP)/stx/libbasic/IdentityDictionary.$(H) $(INCLUDE_TOP)/stx/libcomp/AbstractSyntaxHighlighter.$(H) $(INCLUDE_TOP)/stx/libcomp/Parser.$(H) $(INCLUDE_TOP)/stx/libcomp/Scanner.$(H) $(INCLUDE_TOP)/stx/libwidg/GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libbasic/NameSpace.$(H) $(INCLUDE_TOP)/stx/libbasic/Smalltalk.$(H) $(STCHDR)
+$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)/stx/libcomp/Breakpoint.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libcomp/BreakpointDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/ByteArray.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic3/Change.$(H) $(INCLUDE_TOP)/stx/libbasic3/ChangeSet.$(H) $(INCLUDE_TOP)/stx/libbasic/OrderedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Character.$(H) $(INCLUDE_TOP)/stx/libbasic/Magnitude.$(H) $(INCLUDE_TOP)/stx/libbasic/CharacterArray.$(H) $(INCLUDE_TOP)/stx/libview/Color.$(H) $(INCLUDE_TOP)/stx/libbasic3/CompositeChange.$(H) $(INCLUDE_TOP)/stx/libbasic/Date.$(H) $(INCLUDE_TOP)/stx/libbasic/Dictionary.$(H) $(INCLUDE_TOP)/stx/libbasic/Set.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libbasic/ExecutableFunction.$(H) $(INCLUDE_TOP)/stx/libview/Form.$(H) $(INCLUDE_TOP)/stx/libview/Image.$(H) $(INCLUDE_TOP)/stx/libbasic/Integer.$(H) $(INCLUDE_TOP)/stx/libbasic/Number.$(H) $(INCLUDE_TOP)/stx/libbasic/ArithmeticValue.$(H) $(INCLUDE_TOP)/stx/libwidg/MenuView.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInListView.$(H) $(INCLUDE_TOP)/stx/libbasic/Method.$(H) $(INCLUDE_TOP)/stx/libbasic/CompiledCode.$(H) $(INCLUDE_TOP)/stx/libbasic/MethodDictionary.$(H) $(INCLUDE_TOP)/stx/libbasic/KeyedCollection.$(H) $(INCLUDE_TOP)/stx/libwidg/PopUpMenu.$(H) $(INCLUDE_TOP)/stx/libview/PopUpView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libbasic3/ProfileTree.$(H) $(INCLUDE_TOP)/stx/libbasic2/RunArray.$(H) $(INCLUDE_TOP)/stx/libwidg2/SelectionInListModelView.$(H) $(INCLUDE_TOP)/stx/libwidg2/ListModelView.$(H) $(INCLUDE_TOP)/stx/libbasic/StringCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Symbol.$(H) $(INCLUDE_TOP)/stx/libbasic/String.$(H) $(INCLUDE_TOP)/stx/libbasic2/Text.$(H) $(INCLUDE_TOP)/stx/libbasic/Timestamp.$(H) $(INCLUDE_TOP)/stx/libbasic/AbstractTime.$(H) $(INCLUDE_TOP)/stx/libbasic/UserPreferences.$(H) $(INCLUDE_TOP)/stx/libbasic/IdentityDictionary.$(H) $(INCLUDE_TOP)/stx/libcomp/AbstractSyntaxHighlighter.$(H) $(INCLUDE_TOP)/stx/libcomp/Parser.$(H) $(INCLUDE_TOP)/stx/libcomp/Scanner.$(H) $(INCLUDE_TOP)/stx/libwidg/GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libbasic/NameSpace.$(H) $(INCLUDE_TOP)/stx/libbasic/Smalltalk.$(H) $(INCLUDE_TOP)/stx/libbasic/Block.$(H) $(INCLUDE_TOP)/stx/libbasic/LimitedPrecisionReal.$(H) $(STCHDR)
 
 # ENDMAKEDEPEND --- do not remove this line
+
--- a/Make.spec	Thu Jul 26 17:09:41 2012 +0100
+++ b/Make.spec	Thu Jul 26 19:46:57 2012 +0100
@@ -209,6 +209,7 @@
 	MercurialSourceCodeManagementSettingsAppl \
 	GitSourceCodeManagementSettingsAppl \
 	Tools::LintAnnotation \
+	Tools::ProjectCheckerBrowser \
 	ParseTreeIndex \
 	Tools::Diff2CodeView2 \
 	Tools::Diff3CodeView2 \
@@ -388,6 +389,7 @@
     $(OUTDIR)MercurialSourceCodeManagementSettingsAppl.$(O) \
     $(OUTDIR)GitSourceCodeManagementSettingsAppl.$(O) \
     $(OUTDIR)Tools__LintAnnotation.$(O) \
+    $(OUTDIR)Tools__ProjectCheckerBrowser.$(O) \
     $(OUTDIR)ParseTreeIndex.$(O) \
     $(OUTDIR)Tools__Diff2CodeView2.$(O) \
     $(OUTDIR)Tools__Diff3CodeView2.$(O) \
@@ -404,3 +406,6 @@
     $(OUTDIR)PerforceSourceCodeManagerUtilities.$(O) \
     $(OUTDIR)Tools__ProjectCheckerBrowser.$(O) \
     $(OUTDIR)extensions.$(O) \
+
+
+
--- a/Tools__ChangeList.st	Thu Jul 26 17:09:41 2012 +0100
+++ b/Tools__ChangeList.st	Thu Jul 26 19:46:57 2012 +0100
@@ -27,8 +27,8 @@
 
 "{ NameSpace: Tools }"
 
-Tools::BrowserListWithFilter subclass:#ChangeList
-	instanceVariableNames:'listHolder showRemovedHolder showSameHolder showColumnSpecHolder
+BrowserListWithFilter subclass:#ChangeList
+	instanceVariableNames:'listHolder showRemovedHolder showSameHolder showTimestampHolder
 		allowRemoveHolder allowAcceptHolder scrollToBottom'
 	classVariableNames:'LastSelectionConditionString'
 	poolDictionaries:''
@@ -140,23 +140,9 @@
         component: 
        (SpecCollection
           collection: (
-           (SelectionInListModelViewSpec
-              name: 'List'
-              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
-              model: selectionHolder
-              menu: menuHolderWithShowFilter
-              hasHorizontalScrollBar: true
-              hasVerticalScrollBar: true
-              listModel: listHolder
-              multipleSelectOk: true
-              useIndex: false
-              highlightMode: line
-              doubleClickSelector: selectionDoubleclicked
-              postBuildCallback: postBuildListView:
-            )
            (InputFieldSpec
               name: 'Filter'
-              layout: (LayoutFrame 0 0 0 0 0 1 26 0)
+              layout: (LayoutFrame 0 0 0 0 0 1 19 0)
               initiallyInvisible: true
               model: filterPatternHolder
               immediateAccept: true
@@ -169,12 +155,138 @@
               useDynamicPreferredHeight: true
               postBuildCallback: postBuildFilterView:
             )
+           (DataSetSpec
+              name: 'List'
+              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
+              model: selectionHolder
+              menu: menuHolderWithShowFilter
+              hasHorizontalScrollBar: true
+              hasVerticalScrollBar: true
+              dataList: listHolder
+              useIndex: false
+              doubleClickSelector: selectionDoubleclicked
+              columnHolder: listColumns
+              showLabels: false
+              multipleSelectOk: true
+              postBuildCallback: postBuildListView:
+            )
            )
          
         )
       )
+! !
 
-    "Modified: / 29-11-2011 / 15:52:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!ChangeList class methodsFor:'list specs'!
+
+listColumnSpec
+    "This resource specification was automatically generated
+     by the DataSetBuilder of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the DataSetBuilder may not be able to read the specification."
+
+    "
+     DataSetBuilder new openOnClass:Tools::ChangeList andSelector:#listColumnSpec
+    "
+
+    <resource: #tableColumns>
+
+    ^#(
+      (DataSetColumnSpec
+         label: 'Removed'
+         id: 'removed'
+         labelButtonType: Button
+         width: 20
+         minWidth: 20
+         editorType: CheckToggle
+         rendererType: CheckToggle
+         model: notRemoved
+         menuFromApplication: false
+         printSelector: notRemoved
+         isResizeable: false
+         showRowSeparator: false
+         showSelectionHighLighted: false
+         showColSeparator: false
+       )
+      (DataSetColumnSpec
+         label: 'Delta'
+         id: 'delta'
+         labelButtonType: Button
+         width: 20
+         minWidth: 20
+         menuFromApplication: false
+         printSelector: iconDelta
+         canSelect: false
+         isResizeable: false
+         showRowSeparator: false
+         showSelectionHighLighted: false
+         showColSeparator: false
+       )
+      (DataSetColumnSpec
+         label: 'Change'
+         id: change
+         labelAlignment: left
+         labelButtonType: Button
+         model: string
+         menuFromApplication: false
+         canSelect: false
+         showRowSeparator: false
+         showColSeparator: false
+       )
+      (DataSetColumnSpec
+         label: 'Class'
+         id: 'className'
+         labelAlignment: left
+         activeHelpKey: ''
+         activeHelpKeyForLabel: ''
+         labelButtonType: Button
+         usePreferredWidth: true
+         model: className
+         menuFromApplication: false
+         canSelect: false
+         showRowSeparator: false
+         showColSeparator: false
+       )
+      (DataSetColumnSpec
+         label: 'Selector'
+         id: 'selector'
+         labelAlignment: left
+         activeHelpKey: ''
+         activeHelpKeyForLabel: ''
+         labelButtonType: Button
+         usePreferredWidth: true
+         model: selector
+         menuFromApplication: false
+         canSelect: false
+         showRowSeparator: false
+         showColSeparator: false
+       )
+      (DataSetColumnSpec
+         label: 'Category'
+         id: category
+         labelAlignment: left
+         labelButtonType: Button
+         usePreferredWidth: true
+         model: category
+         menuFromApplication: false
+         canSelect: false
+         showRowSeparator: false
+         showColSeparator: false
+       )
+      (DataSetColumnSpec
+         label: 'Time Stamp'
+         id: timeStamp
+         labelAlignment: left
+         labelButtonType: Button
+         usePreferredWidth: true
+         model: timeStamp
+         menuFromApplication: false
+         canSelect: false
+         showRowSeparator: false
+         showColSeparator: false
+       )
+      )
+    
 ! !
 
 !ChangeList class methodsFor:'menu specs'!
@@ -312,21 +424,20 @@
      these can be connected to aspects of an embedding application
      (if this app is embedded in a subCanvas)."
 
-    ^super aspectSelectors , #(
+    ^ #(
         #allowAcceptHolder
         #allowRemoveHolder
-
         #inGeneratorHolder
         #menuHolder
         #outGeneratorHolder
         #selectionHolder
-
+        #showTimestampHolder
+        #showFilterHolder
         #showRemovedHolder
         #showSameHolder
-        #showColumnSpecHolder
       ).
 
-    "Modified: / 03-04-2012 / 11:47:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 26-07-2012 / 18:45:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeList methodsFor:'accessing'!
@@ -472,6 +583,19 @@
     ].
 !
 
+listColumns
+
+    |holder|
+    (holder := builder bindingAt:#listColumns) isNil ifTrue:[
+        builder aspectAt:#listColumns put:(holder := List new).
+        self listColumnShow: #delta.
+        self listColumnShow: #change.
+    ].
+    ^ holder
+
+    "Created: / 26-07-2012 / 18:03:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 listHolder
     listHolder isNil ifTrue:[
         listHolder := ValueHolder new.
@@ -479,37 +603,6 @@
     ^ listHolder
 !
 
-showColumnSpecHolder
-    "return/create the 'showColumnSpecHolder' value holder (automatically generated)"
-
-    showColumnSpecHolder isNil ifTrue:[
-        showColumnSpecHolder := List with:#timestamp.
-        showColumnSpecHolder addDependent:self.
-    ].
-    ^ showColumnSpecHolder
-
-    "Modified: / 03-04-2012 / 11:49:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-showColumnSpecHolder:something
-    "set the 'showColumnSpecHolder' value holder (automatically generated)"
-
-    |oldValue newValue|
-
-    showColumnSpecHolder notNil ifTrue:[
-        oldValue := showColumnSpecHolder value.
-        showColumnSpecHolder removeDependent:self.
-    ].
-    showColumnSpecHolder := something.
-    showColumnSpecHolder notNil ifTrue:[
-        showColumnSpecHolder addDependent:self.
-    ].
-    newValue := showColumnSpecHolder value.
-    oldValue ~~ newValue ifTrue:[
-        self update:#value with:newValue from:showColumnSpecHolder.
-    ].
-!
-
 showRemovedHolder
     "return/create the 'showRemovedHolder' value holder (automatically generated)"
 
@@ -568,12 +661,52 @@
     oldValue ~~ newValue ifTrue:[
         self update:#value with:newValue from:showSameHolder.
     ].
+!
+
+showTimestampHolder
+    "return/create the 'showTimestampHolder' value holder (automatically generated)"
+
+    showTimestampHolder isNil ifTrue:[
+        showTimestampHolder := ValueHolder new.
+        showTimestampHolder addDependent:self.
+    ].
+    ^ showTimestampHolder
+!
+
+showTimestampHolder:something
+    "set the 'showTimestampHolder' value holder (automatically generated)"
+
+    |oldValue newValue|
+
+    showTimestampHolder notNil ifTrue:[
+        oldValue := showTimestampHolder value.
+        showTimestampHolder removeDependent:self.
+    ].
+    showTimestampHolder := something.
+    showTimestampHolder notNil ifTrue:[
+        showTimestampHolder addDependent:self.
+    ].
+    newValue := showTimestampHolder value.
+    oldValue ~~ newValue ifTrue:[
+        self update:#value with:newValue from:showTimestampHolder.
+    ].
 ! !
 
 !ChangeList methodsFor:'change & update'!
 
 update: aspect with: param from: sender
 
+    sender == allowRemoveHolder ifTrue:[
+        self listColumn: #removed visible: allowRemoveHolder value.
+        ^self.
+    ].
+
+    sender == showTimestampHolder ifTrue:[
+        self listColumn: #timeStamp visible: showTimestampHolder value.
+        ^self.
+    ].
+
+
     sender == selectionHolder ifTrue:[
         self selectionChanged.
         ^self
@@ -586,52 +719,16 @@
         self updateList.
         ^self.
     ].
-    sender == showColumnSpecHolder ifTrue:[
-        listView notNil ifTrue:[
-            listView invalidate.
-        ].
-        ^self.
-    ].
 
     ^super update: aspect with: param from: sender
 
     "Created: / 24-10-2009 / 19:47:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified (format): / 27-12-2011 / 14:20:30 / cg"
-    "Modified: / 03-04-2012 / 11:27:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 26-07-2012 / 18:44:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeList methodsFor:'event processing'!
 
-buttonPress:button x:x y:y view:aView
-
-    | itemIndex item |
-
-    button ~= 1 ifTrue:[^aView buttonPress:button x:x y:y].
-
-    itemIndex := aView yVisibleToLineNr:y.
-    itemIndex isNil ifTrue:[^self].
-    itemIndex == 0 ifTrue:[^self].
-    itemIndex > aView list size ifTrue:[^self].
-    item := aView list at: itemIndex.
-
-    ((aView left + x) between: (item x) and: ((item x ? 0) + 16))
-        ifFalse:[^aView buttonPress:button x:x y:y].
-
-    item removed: item removed not.
-    aView invalidate
-
-    "Created: / 08-12-2009 / 14:12:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 18-11-2011 / 14:55:41 / cg"
-    "Modified: / 15-02-2012 / 18:17:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-handlesButtonPress:button inView:aView
-
-    ^listView scrolledView == aView
-
-    "Created: / 08-12-2009 / 14:08:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
 handlesKeyPress:key inView:aView
     ^(key == #Accept or:[ key == #Ctrls]) 
         and:[ listView scrolledView == aView ]
@@ -876,6 +973,62 @@
     "Modified: / 24-07-2009 / 22:06:53 / Jan Vrany <vranyj1@fel.cvut.cz>"
 !
 
+listColumn: columnId visible: visible
+    visible ifTrue:[
+        self listColumnShow: columnId 
+    ] ifFalse:[
+        self listColumnHide: columnId
+    ]
+
+    "Created: / 26-07-2012 / 18:20:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+listColumnHide: columnId
+    self listColumns do:[:spec|
+        spec id = columnId ifTrue:[
+            self listColumns remove: spec.
+            listView notNil ifTrue:[
+                listView invalidate.
+            ].
+            ^self
+        ].
+    ]
+
+    "Created: / 26-07-2012 / 18:19:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+listColumnShow: columnId
+
+    | columns |
+    columns := self listColumns.
+
+    columns do:[:spec|
+        spec id = columnId ifTrue:[
+            ^self.
+        ]
+    ].
+
+    self class listColumnSpec do:[:specArray|
+        | spec |
+
+        spec := specArray decodeAsLiteralArray.
+        spec id = columnId ifTrue:[
+            columnId == #removed ifTrue:[
+                columns addFirst: spec.
+            ] ifFalse:[
+                columns add: spec.
+            ].
+            listView notNil ifTrue:[
+                listView invalidate.
+            ].
+            ^self.
+        ]
+
+    ].
+
+    "Created: / 26-07-2012 / 17:56:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 listEntryFor:chg 
     ^ListEntry change:chg application: self
 
@@ -905,7 +1058,7 @@
     inGenerator := self inGeneratorHolder value.
     listView notNil ifTrue:[
         ((listView isKindOf: ScrollableView) not or:[listView scrolledView notNil]) ifTrue:[
-            firstLineShown := listView yVisibleToLineNr:1.
+            firstLineShown := listView firstLineShown
         ].
     ].
     oldSel := self selection.
@@ -940,7 +1093,7 @@
     ]
 
     "Modified: / 28-12-2011 / 15:46:15 / cg"
-    "Modified: / 25-07-2012 / 15:18:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 26-07-2012 / 18:03:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeList methodsFor:'queries'!
@@ -1126,8 +1279,22 @@
     "Modified: / 05-12-2009 / 14:46:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+notRemoved
+    ^ self removed not
+
+    "Created: / 26-07-2012 / 18:31:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+notRemoved: aBoolean
+    ^ self removed: aBoolean not
+
+    "Created: / 26-07-2012 / 18:31:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 removed
-    ^ change removed
+    ^ change removed == true
+
+    "Modified: / 26-07-2012 / 18:30:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 removed:aBoolean
@@ -1139,6 +1306,12 @@
     ^change source
 !
 
+timeStamp
+    ^change timeOfChangeIfKnown
+
+    "Created: / 26-07-2012 / 18:38:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 x
     ^ x
 ! !
@@ -1160,20 +1333,20 @@
 
     super displayLabel:aLabel h:lH on:aGC x:cx y:y h:h.
 
-    "Now, display additional columns..."
-    (list showColumn: #timestamp) ifTrue:[
-        cx := cx + (aLabel widthOn: aGC) + 5."px - padding"
-        colS := change timeOfChangeIfKnown notNil 
-                    ifTrue:[change timeOfChangeIfKnown printString]
-                    ifFalse:['???'].
-        [ (colW := colS widthOn: aGC) > (aGC width - cx - 5) ] whileTrue:[
-            colS = '...' ifTrue:[ ^ self ].
-            colS := '...' , (colS copyFrom: 6).
-        ].
-        super displayLabel:colS h:lH on:aGC x: (aGC width - 5 - colW) y:y h:h.
-    ].
+"/    "Now, display additional columns..."
+"/    (list showColumn: #timestamp) ifTrue:[
+"/        cx := cx + (aLabel widthOn: aGC) + 5."px - padding"
+"/        colS := change timeOfChangeIfKnown notNil 
+"/                    ifTrue:[change timeOfChangeIfKnown printString]
+"/                    ifFalse:['???'].
+"/        [ (colW := colS widthOn: aGC) > (aGC width - cx - 5) ] whileTrue:[
+"/            colS = '...' ifTrue:[ ^ self ].
+"/            colS := '...' , (colS copyFrom: 6).
+"/        ].
+"/        super displayLabel:colS h:lH on:aGC x: (aGC width - 5 - colW) y:y h:h.
+"/    ].
 
-    "Modified: / 17-05-2012 / 23:05:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 26-07-2012 / 18:38:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeList::ListEntry methodsFor:'private'!
@@ -1203,7 +1376,7 @@
 !ChangeList class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeList.st,v 1.16 2012/07/25 23:18:13 cg Exp $'
+    ^ '$Id: Tools__ChangeList.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 !
 
 version_CVS
@@ -1211,5 +1384,5 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__ChangeList.st 8026 2012-07-26 16:09:41Z vranyj1 $'
+    ^ '$Id: Tools__ChangeList.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 ! !
--- a/Tools__ChangeSetBrowser2.st	Thu Jul 26 17:09:41 2012 +0100
+++ b/Tools__ChangeSetBrowser2.st	Thu Jul 26 19:46:57 2012 +0100
@@ -32,10 +32,11 @@
 		navigatorChangesetHolder navigatorSpecHolder list1 list1Holder
 		selection1Holder list2 list2Holder selection2Holder classHolder
 		languageHolder codeAspectHolder showRemovedAspect showSameAspect
-		sourceView changeSourceHolder imageSourceHolder targetPackage
-		targetNamespace allowRemoveHolder allowAcceptHolder infoPanel
-		updateChangeFileHolder showFilterHolder showColumnSpecHolder
-		isWorkingHolder isWorkingNotHolder hasSelectionHolder'
+		showTimestampHolder sourceView changeSourceHolder
+		imageSourceHolder targetPackage targetNamespace allowRemoveHolder
+		allowAcceptHolder infoPanel updateChangeFileHolder
+		showFilterHolder showingRegularChangesetHolder isWorkingHolder
+		isWorkingNotHolder hasSelectionHolder'
 	classVariableNames:'ShowRemoved LastSelectionConditionString'
 	poolDictionaries:''
 	category:'Interface-Browsers-ChangeSet'
@@ -864,6 +865,11 @@
                   subAspect: showSameHolder
                   aspect: showSameAspect
                 )
+                
+               (SubChannelInfoSpec
+                  subAspect: showTimestampHolder
+                  aspect: showTimestampHolder
+                )
               )
               createNewApplication: true
               createNewBuilder: true
@@ -955,6 +961,10 @@
                      (SubChannelInfoSpec
                         subAspect: showSameHolder
                         aspect: showSameAspect
+                      ) 
+                     (SubChannelInfoSpec
+                        subAspect: showTimestampHolder
+                        aspect: showTimestampHolder
                       )
                     )
                     createNewApplication: true
@@ -1004,6 +1014,11 @@
                         subAspect: showSameHolder
                         aspect: showSameAspect
                       )
+                      
+                     (SubChannelInfoSpec
+                        subAspect: showTimestampHolder
+                        aspect: showTimestampHolder
+                      )
                     )
                     createNewApplication: true
                     createNewBuilder: true
@@ -1489,6 +1504,14 @@
                   translateLabel: true
                   indication: showFilterHolder
                 )
+               (MenuItem
+                  label: '-'
+                )
+               (MenuItem
+                  label: 'Show Timestamp'
+                  translateLabel: true
+                  indication: showTimestampHolder
+                )
                )
               nil
               nil
@@ -1623,10 +1646,12 @@
             itemValue: doCompress
             translateLabel: true
             isButton: true
+            isVisible: showingRegularChangesetHolder
             labelImage: (ResourceRetriever nil compressIcon)
           )
          (MenuItem
             label: '-'
+            isVisible: showingRegularChangesetHolder
           )
          (MenuItem
             activeHelpKey: testFindPreviousSnapshot
@@ -1635,6 +1660,7 @@
             itemValue: doFindSnapshot:
             translateLabel: true
             isButton: true
+            isVisible: showingRegularChangesetHolder
             labelImage: (ResourceRetriever nil findPreviousSnapshotIcon)
             argument: 'previous'
           )
@@ -1645,6 +1671,7 @@
             itemValue: doFindSnapshot:
             translateLabel: true
             isButton: true
+            isVisible: showingRegularChangesetHolder
             labelImage: (ResourceRetriever nil findNextSnapshotIcon)
             argument: 'next'
           )
@@ -1768,13 +1795,16 @@
     sel isNil ifTrue:[
         sel := selection1Holder value.
     ].
+    sel isNil ifTrue:[
+        ^nil
+    ].
     sel do:
         [:each|
-        change ifNotNil:[nil].
-        change ifNil:[change := each]].
+        change notNil ifTrue:[nil].
+        change isNil ifTrue:[change := each]].
     ^change
 
-    "Modified: / 04-08-2011 / 18:55:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 26-07-2012 / 19:33:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 title: aString
@@ -2143,37 +2173,6 @@
     ].
 !
 
-showColumnSpecHolder
-    "return/create the 'showColumnSpecHolder' value holder (automatically generated)"
-
-    showColumnSpecHolder isNil ifTrue:[
-        showColumnSpecHolder := List new.
-        showColumnSpecHolder addDependent:self.
-    ].
-    ^ showColumnSpecHolder
-
-    "Modified: / 03-04-2012 / 11:49:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-showColumnSpecHolder:something
-    "set the 'showColumnSpecHolder' value holder (automatically generated)"
-
-    |oldValue newValue|
-
-    showColumnSpecHolder notNil ifTrue:[
-        oldValue := showColumnSpecHolder value.
-        showColumnSpecHolder removeDependent:self.
-    ].
-    showColumnSpecHolder := something.
-    showColumnSpecHolder notNil ifTrue:[
-        showColumnSpecHolder addDependent:self.
-    ].
-    newValue := showColumnSpecHolder value.
-    oldValue ~~ newValue ifTrue:[
-        self update:#value with:newValue from:showColumnSpecHolder.
-    ].
-!
-
 showFilterHolder
     "return/create the 'showFilterHolder' value holder (automatically generated)"
 
@@ -2222,6 +2221,54 @@
     showSameAspect := something.
 !
 
+showTimestampHolder
+    "return/create the 'showTimestampHolder' value holder (automatically generated)"
+
+    showTimestampHolder isNil ifTrue:[
+        showTimestampHolder := ValueHolder with: false.
+    ].
+    ^ showTimestampHolder
+
+    "Modified: / 26-07-2012 / 18:47:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+showTimestampHolder:something
+    "set the 'showTimestampHolder' value holder (automatically generated)"
+
+    showTimestampHolder := something.
+!
+
+showingRegularChangesetHolder
+    "return/create the 'showingRegularChangesetHolder' value holder (automatically generated)"
+
+    showingRegularChangesetHolder isNil ifTrue:[
+        showingRegularChangesetHolder := ValueHolder with: false.
+        showingRegularChangesetHolder addDependent:self.
+    ].
+    ^ showingRegularChangesetHolder
+
+    "Modified: / 26-07-2012 / 19:45:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+showingRegularChangesetHolder:something
+    "set the 'showingRegularChangesetHolder' value holder (automatically generated)"
+
+    |oldValue newValue|
+
+    showingRegularChangesetHolder notNil ifTrue:[
+        oldValue := showingRegularChangesetHolder value.
+        showingRegularChangesetHolder removeDependent:self.
+    ].
+    showingRegularChangesetHolder := something.
+    showingRegularChangesetHolder notNil ifTrue:[
+        showingRegularChangesetHolder addDependent:self.
+    ].
+    newValue := showingRegularChangesetHolder value.
+    oldValue ~~ newValue ifTrue:[
+        self update:#value with:newValue from:showingRegularChangesetHolder.
+    ].
+!
+
 titleHolder
     "return/create the 'titleHolder' value holder (automatically generated)"
 
@@ -2240,9 +2287,7 @@
 
     "Created: / 07-09-2011 / 15:54:03 / cg"
     "Created: / 11-02-2012 / 22:40:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
- !
+! !
 
 !ChangeSetBrowser2 methodsFor:'aspects-queries'!
 
@@ -2317,6 +2362,13 @@
     "Modified: / 25-07-2012 / 17:43:30 / cg"
 !
 
+showingRegularChangesetChanged
+
+    self showTimestampHolder value: showingRegularChangesetHolder value.
+
+    "Created: / 26-07-2012 / 19:40:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 update: aspect with: param from: sender
 
     sender == changesetHolder ifTrue: [ 
@@ -2335,6 +2387,11 @@
         self selectionChanged.
         ^self
     ].
+
+    sender == showingRegularChangesetHolder ifTrue:[
+        self showingRegularChangesetChanged.
+        ^self.
+    ].
     super update: aspect with: param from: sender
 
     "Created: / 24-10-2009 / 19:29:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -2430,15 +2487,13 @@
 
     self showProgress: 'Reading ' , (fn := aStringOrFilename asFilename) baseName while:[
         cs := ChangeSet fromFile: aStringOrFilename.
-        (fn suffix = 'chg') ifTrue:[
+        ((fn suffix = 'chg') or:[fn pathName = ObjectMemory nameForChanges]) ifTrue:[
             self list scrollToBottom: true.
-            (self showColumnSpecHolder includes:#timestamp) ifFalse:[
-                self showColumnSpecHolder add: #timestamp
-            ].
+            self showingRegularChangesetHolder value: true.
         ] ifFalse:[
-            self showColumnSpecHolder remove: #timestamp ifAbsent:[].
+            self showingRegularChangesetHolder value: false.
         ].
-        self allowRemove: true.
+        self allowRemove: false."/true.
         self doOpen: cs.
     ].
 
@@ -3492,7 +3547,7 @@
 !ChangeSetBrowser2 class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__ChangeSetBrowser2.st,v 1.37 2012/07/26 12:25:38 cg Exp $'
+    ^ '$Id: Tools__ChangeSetBrowser2.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 !
 
 version_CVS
@@ -3500,5 +3555,5 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__ChangeSetBrowser2.st 8026 2012-07-26 16:09:41Z vranyj1 $'
+    ^ '$Id: Tools__ChangeSetBrowser2.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 ! !
--- a/Tools__CodeView2.st	Thu Jul 26 17:09:41 2012 +0100
+++ b/Tools__CodeView2.st	Thu Jul 26 19:46:57 2012 +0100
@@ -989,6 +989,10 @@
 
 update:aspect with:param from:sender
 
+    sender == modeHolder ifTrue:[
+        codeAspect := modeHolder value
+    ].
+
     sender == showGutterChannel ifTrue: [
         self updateGutterVisibility.
         ^self.
@@ -1002,9 +1006,9 @@
 
     super update:aspect with:param from:sender
 
-    "Modified: / 23-06-2010 / 19:05:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 07-07-2011 / 12:07:04 / Jan Vrany <jan.vrant@fit.cvut,cz>"
     "Modified: / 06-10-2011 / 14:14:36 / cg"
+    "Modified: / 26-07-2012 / 19:25:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 updateGutterVisibility
@@ -1386,11 +1390,7 @@
 
     "Created: / 06-07-2011 / 17:12:58 / jv"
     "Modified: / 06-10-2011 / 14:13:44 / cg"
-!
-
-
-
- !
+! !
 
 !CodeView2 methodsFor:'diff mode'!
 
@@ -2001,8 +2001,6 @@
     "Created: / 06-03-2010 / 19:19:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
-
-
 unregisterService: aCodeViewService
 
     services remove: aCodeViewService ifAbsent:[^self].
@@ -2803,8 +2801,6 @@
     "Modified: / 17-03-2012 / 10:04:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
-
-
 redrawLines
     |i pom|
 
@@ -3395,8 +3391,6 @@
 
 !CodeView2::TextView methodsFor:'scrolling'!
 
-
-
 basicScrollTo:anOrigin redraw:doRedraw
     super scrollTo:anOrigin redraw:doRedraw
 
@@ -3405,8 +3399,6 @@
     "Created: / 19-03-2012 / 17:01:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
-
-
 originChanged:delta
 
     super originChanged:delta.
@@ -3416,8 +3408,6 @@
     "Created: / 07-12-2009 / 21:50:49 / Jindra <a>"
 !
 
-
-
 scrollTo:anOrigin redraw:doRedraw
 
     codeView scrollTo:anOrigin redraw:doRedraw in: self.
@@ -3426,9 +3416,7 @@
     "Modified: / 06-04-2010 / 14:04:28 / Jakub <zelenja7@fel.cvut.cz>"
     "Modified: / 17-03-2012 / 10:06:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Created: / 19-03-2012 / 17:05:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
- !
+! !
 
 !CodeView2::TextView methodsFor:'undo & again'!
 
@@ -3451,7 +3439,7 @@
 !CodeView2 class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__CodeView2.st,v 1.63 2012/07/19 15:12:12 cg Exp $'
+    ^ '$Id: Tools__CodeView2.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 !
 
 version_CVS
@@ -3459,7 +3447,7 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__CodeView2.st 8022 2012-07-25 09:51:30Z vranyj1 $'
+    ^ '$Id: Tools__CodeView2.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 ! !
 
 CodeView2 initialize!
--- a/Tools__DiffCodeView2.st	Thu Jul 26 17:09:41 2012 +0100
+++ b/Tools__DiffCodeView2.st	Thu Jul 26 19:46:57 2012 +0100
@@ -98,6 +98,13 @@
     "Created: / 19-07-2011 / 12:55:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+modeHolder: aValueModel
+
+    textViews do:[:each|each modeHolder: aValueModel].
+
+    "Created: / 26-07-2012 / 19:19:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 text1:t1 text2:t2 
     |data|
 
@@ -347,9 +354,9 @@
 !DiffCodeView2 class methodsFor:'documentation'!
 
 version_CVS
-    ^ 'Header: /cvs/stx/stx/libtool/Tools__DiffCodeView2.st,v 1.4 2012/07/17 17:03:25 cg Exp '
+    ^ '§Header: /cvs/stx/stx/libtool/Tools__DiffCodeView2.st,v 1.4 2012/07/17 17:03:25 cg Exp §'
 !
 
 version_SVN
-    ^ '$Id: Tools__DiffCodeView2.st 8018 2012-07-18 17:00:57Z vranyj1 $'
-! !
\ No newline at end of file
+    ^ '$Id: Tools__DiffCodeView2.st 8027 2012-07-26 18:46:57Z vranyj1 $'
+! !
--- a/Tools__HierarchicalChangeList.st	Thu Jul 26 17:09:41 2012 +0100
+++ b/Tools__HierarchicalChangeList.st	Thu Jul 26 19:46:57 2012 +0100
@@ -150,8 +150,58 @@
     "Created: / 25-07-2009 / 23:34:54 / Jan Vrany <vranyj1@fel.cvut.cz>"
 ! !
 
+!HierarchicalChangeList methodsFor:'event processing'!
+
+buttonPress:button x:x y:y view:aView
+
+    | itemIndex item |
+
+    button ~= 1 ifTrue:[^aView buttonPress:button x:x y:y].
+
+    itemIndex := aView yVisibleToLineNr:y.
+    itemIndex isNil ifTrue:[^self].
+    itemIndex == 0 ifTrue:[^self].
+    itemIndex > aView list size ifTrue:[^self].
+    item := aView list at: itemIndex.
+
+    ((aView left + x) between: (item x) and: ((item x ? 0) + 16))
+        ifFalse:[^aView buttonPress:button x:x y:y].
+
+    item removed: item removed not.
+    aView invalidate
+
+    "Created: / 08-12-2009 / 14:12:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 18-11-2011 / 14:55:41 / cg"
+    "Modified: / 26-07-2012 / 18:21:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+handlesButtonPress:button inView:aView
+
+    ^listView scrolledView == aView
+
+    "Created: / 08-12-2009 / 14:08:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
 !HierarchicalChangeList methodsFor:'private'!
 
+listColumn: columnId visible: visible
+    "Nothing to do here"
+
+    "Created: / 26-07-2012 / 18:42:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+listColumnHide: columnId
+    "Nothing to do here"
+
+    "Created: / 26-07-2012 / 18:42:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+listColumnShow: columnId
+    "Nothing to do here"
+
+    "Created: / 26-07-2012 / 18:43:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 updateList
     |inGenerator changeset root|
 
@@ -172,5 +222,5 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__HierarchicalChangeList.st 7854 2012-01-30 17:49:41Z vranyj1 $'
+    ^ '$Id: Tools__HierarchicalChangeList.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 ! !
--- a/Tools__TextDiff3Tool.st	Thu Jul 26 17:09:41 2012 +0100
+++ b/Tools__TextDiff3Tool.st	Thu Jul 26 19:46:57 2012 +0100
@@ -658,6 +658,7 @@
 postBuildMergeView:aCodeView2
 
     mergeView := aCodeView2.
+    self setupCodeView: aCodeView2.
     mergeView registerService: 
                 ((mergeService := MergeService new)
                     dataHolder: self mergeDataHolder;
@@ -917,5 +918,5 @@
 !TextDiff3Tool class methodsFor:'documentation'!
 
 version_SVN
-    ^ '$Id: Tools__TextDiff3Tool.st 8021 2012-07-24 17:17:26Z vranyj1 $'
+    ^ '$Id: Tools__TextDiff3Tool.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 ! !
--- a/Tools__TextDiffTool.st	Thu Jul 26 17:09:41 2012 +0100
+++ b/Tools__TextDiffTool.st	Thu Jul 26 19:46:57 2012 +0100
@@ -350,7 +350,7 @@
         #labelHolder
 
         #labelAHolder
-        #labelBHolde
+        #labelBHolder
         #labelCHolder
 
         #textAHolder
@@ -770,13 +770,20 @@
 postBuildDiffView:aScrollableView
 
     diffView := aScrollableView.
-    diffView notNil ifTrue:[
-        diffView languageHolder: self languageHolder.
-        diffView classHolder: self classHolder.
+    self setupCodeView: aScrollableView.
+
+    "Created: / 30-06-2011 / 20:55:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
 
+setupCodeView: codeView2
+    codeView2 notNil ifTrue:[
+        codeView2
+            languageHolder: self languageHolder;
+            classHolder: self classHolder;
+            modeHolder: self codeAspectHolder
     ].
 
-    "Created: / 30-06-2011 / 20:55:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Created: / 26-07-2012 / 19:13:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !TextDiffTool methodsFor:'initialization'!
@@ -812,5 +819,5 @@
 !TextDiffTool class methodsFor:'documentation'!
 
 version_SVN
-    ^ '$Id: Tools__TextDiffTool.st 7956 2012-03-27 16:39:28Z vranyj1 $'
+    ^ '$Id: Tools__TextDiffTool.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 ! !
--- a/abbrev.stc	Thu Jul 26 17:09:41 2012 +0100
+++ b/abbrev.stc	Thu Jul 26 19:46:57 2012 +0100
@@ -43,7 +43,7 @@
 FileBrowser FileBrowser stx:libtool 'Interface-Tools-File' 2
 FileBrowserV2PanelView FileBrowserV2PanelView stx:libtool 'Interface-Tools-File' 2
 FileBrowserV2SettingsDialog FileBrowserV2SettingsDialog stx:libtool 'Interface-Tools-File' 1
-FileBrowserV2Tests FileBrowserV2Tests stx:libtool 'Interface-Tools-File' 0
+FileBrowserV2Tests FileBrowserV2Tests stx:libtool 'Interface-Tools-File' 1
 FileBrowserV2UISpecifications FileBrowserV2UISpecifications stx:libtool 'Interface-Tools-File' 0
 FileDialog FileDialog stx:libtool 'Interface-Tools-File' 1
 FileDialogV2 FileDialogV2 stx:libtool 'Interface-Tools-File' 1
@@ -73,7 +73,7 @@
 SystemBrowser SystemBrowser stx:libtool 'Interface-Browsers' 1
 SystemStatusMonitor SystemStatusMonitor stx:libtool 'Monitors-ST/X' 2
 TerminalApplication TerminalApplication stx:libtool 'Interface-Smalltalk' 7
-TextDiffTests TextDiffTests stx:libtool 'Collections-Sequenceable-Diff' 0
+TextDiffTests TextDiffTests stx:libtool 'Collections-Sequenceable-Diff' 1
 Tools::AbstractTestRunner Tools__AbstractTestRunner stx:libtool 'SUnit-UI' 1
 Tools::BreakpointBrowser Tools__BreakpointBrowser stx:libtool 'Interface-Smalltalk-Breakpoints' 1
 Tools::Browslet Tools__Browslet stx:libtool 'Interface-Browsers-Browslets' 1
@@ -104,7 +104,7 @@
 Tools::MethodCategoryCache Tools__MethodCategoryCache stx:libtool 'Interface-Browsers-New' 0
 Tools::MethodRewriter Tools__MethodRewriter stx:libtool 'Interface-MethodRewriter' 1
 Tools::NavigationHistory Tools__NavigationHistory stx:libtool 'Interface-History' 0
-Tools::NavigationHistoryTests Tools__NavigationHistoryTests stx:libtool 'Interface-History' 0
+Tools::NavigationHistoryTests Tools__NavigationHistoryTests stx:libtool 'Interface-History' 1
 Tools::NavigationState Tools__NavigationState stx:libtool 'Interface-Browsers-New' 0
 Tools::NavigatorModel Tools__NavigatorModel stx:libtool 'Interface-Browsers-New' 1
 Tools::NewClassWizardDialog Tools__NewClassWizardDialog stx:libtool 'Interface-Browsers-New' 1
--- a/bc.mak	Thu Jul 26 17:09:41 2012 +0100
+++ b/bc.mak	Thu Jul 26 19:46:57 2012 +0100
@@ -15,7 +15,7 @@
 #    bmake clobber - clean all
 #
 # Historic Note:
-#  this used to contain only rules to make with borland
+#  this used to contain only rules to make with borland 
 #    (called via bmake, by "make.exe -f bc.mak")
 #  this has changed; it is now also possible to build using microsoft visual c
 #    (called via vcmake, by "make.exe -f bc.mak -DUSEVC")
@@ -53,7 +53,6 @@
 
 # build all prerequisite packages for this package
 prereq:
-	pushd ..\libwidg3 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\libbasic & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\libbasic2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\libcomp & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
@@ -243,7 +242,7 @@
 $(OUTDIR)Tools__ImplementingClassList.$(O) Tools__ImplementingClassList.$(H): Tools__ImplementingClassList.st $(INCLUDE_TOP)\stx\libtool\Tools__MethodList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigatorModel.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)Tools__ImplementingMethodList.$(O) Tools__ImplementingMethodList.$(H): Tools__ImplementingMethodList.st $(INCLUDE_TOP)\stx\libtool\Tools__MethodList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigatorModel.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)Tools__NamespaceFilter.$(O) Tools__NamespaceFilter.$(H): Tools__NamespaceFilter.st $(INCLUDE_TOP)\stx\libtool\Tools__NamespaceList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigatorModel.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)Tools__TestRunner2.$(O) Tools__TestRunner2.$(H): Tools__TestRunner2.st $(INCLUDE_TOP)\stx\libtool\Tools__AbstractTestRunner.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__ClassList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigatorModel.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItem.$(H) $(STCHDR)
+$(OUTDIR)Tools__TestRunner2.$(O) Tools__TestRunner2.$(H): Tools__TestRunner2.st $(INCLUDE_TOP)\stx\libtool\Tools__AbstractTestRunner.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItem.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__ClassList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigatorModel.$(H) $(STCHDR)
 $(OUTDIR)Tools__HierarchicalChangeList.$(O) Tools__HierarchicalChangeList.$(H): Tools__HierarchicalChangeList.st $(INCLUDE_TOP)\stx\libtool\Tools__ChangeList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserListWithFilter.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigatorModel.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)Tools__HierarchicalPackageFilterList.$(O) Tools__HierarchicalPackageFilterList.$(H): Tools__HierarchicalPackageFilterList.st $(INCLUDE_TOP)\stx\libtool\Tools__HierarchicalProjectList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__ProjectList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigatorModel.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItemWithLabel.$(H) $(INCLUDE_TOP)\stx\libwidg2\HierarchicalItem.$(H) $(STCHDR)
 $(OUTDIR)Tools__InheritanceClassList.$(O) Tools__InheritanceClassList.$(H): Tools__InheritanceClassList.st $(INCLUDE_TOP)\stx\libtool\Tools__HierarchicalClassList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__ClassList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__BrowserList.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NavigatorModel.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
--- a/libtool.rc	Thu Jul 26 17:09:41 2012 +0100
+++ b/libtool.rc	Thu Jul 26 19:46:57 2012 +0100
@@ -3,7 +3,7 @@
 // automagically generated from the projectDefinition: stx_libtool.
 //
 VS_VERSION_INFO VERSIONINFO
-  FILEVERSION     6,2,1,83
+  FILEVERSION     6,2,8026,8026
   PRODUCTVERSION  6,2,2,1
 #if (__BORLANDC__)
   FILEFLAGSMASK   VS_FF_DEBUG | VS_FF_PRERELEASE
@@ -20,12 +20,12 @@
     BEGIN
       VALUE "CompanyName", "eXept Software AG\0"
       VALUE "FileDescription", "Smalltalk/X Tools (LIB)\0"
-      VALUE "FileVersion", "6.2.1.83\0"
+      VALUE "FileVersion", "6.2.8026.8026\0"
       VALUE "InternalName", "stx:libtool\0"
       VALUE "LegalCopyright", "Copyright Claus Gittinger 1988-2012\nCopyright eXept Software AG 1998-2012\0"
       VALUE "ProductName", "Smalltalk/X\0"
       VALUE "ProductVersion", "6.2.2.1\0"
-      VALUE "ProductDate", "Thu, 26 Jul 2012 12:06:06 GMT\0"
+      VALUE "ProductDate", "Thu, 26 Jul 2012 18:49:04 GMT\0"
     END
 
   END
--- a/stx_libtool.st	Thu Jul 26 17:09:41 2012 +0100
+++ b/stx_libtool.st	Thu Jul 26 19:46:57 2012 +0100
@@ -11,7 +11,7 @@
 "
 "{ Package: 'stx:libtool' }"
 
-LibraryDefinition subclass:#'stx_libtool'
+LibraryDefinition subclass:#stx_libtool
 	instanceVariableNames:''
 	classVariableNames:''
 	poolDictionaries:''
@@ -39,11 +39,7 @@
     Build-Information for creation of the st/x standard library: stx_libtool.
     This library contains developer tools.
 "
-!
-
-
-
- !
+! !
 
 !stx_libtool class methodsFor:'description'!
 
@@ -98,17 +94,17 @@
 
     ^ #(
         #'stx:goodies/sunit'    "TestResultForRunWithDebug - referenced by Tools::TestRunnerEmbedded>>runWithDebug "
-        #'stx:libbasic'    "UninterpretedBytes - superclass of Win32FileDialog::OpenFilenameStructure "
+        #'stx:libbasic'    "KeyedCollection - superclass of extended MethodDictionary "
         #'stx:libbasic2'    "List - superclass of DirectoryTreeBrowser::DirTreeBrowserHFL "
         #'stx:libbasic3'    "SourceCodeManagerUtilities - superclass of PerforceSourceCodeManagerUtilities "
         #'stx:libboss'    "BinaryInputManager - referenced by Tools::Profiler class>>readStatisticsFrom: "
         #'stx:libcomp'    "Scanner - superclass of SyntaxHighlighter2 "
         #'stx:libhtml'    "HTMLParser - referenced by Tools::TagList>>htmlTagsInFile: "
         #'stx:libui'    "InputFieldSpec - superclass of EditFieldWithCompletionSpec "
-        #'stx:libview'    "TopView - superclass of FileBrowser "
-        #'stx:libview2'    "ApplicationModel - superclass of AbstractFileApplicationNoteBookComponent "
-        #'stx:libwidg'    "Workspace - superclass of Tools::CodeView2::TextView "
-        #'stx:libwidg2'    "ComboView - superclass of FilenameEditFieldV2 "
+        #'stx:libview'    "SimpleView - superclass of Tools::CodeCompletionMenu "
+        #'stx:libview2'    "SimpleDialog - superclass of FileDialogWithPreview "
+        #'stx:libwidg'    "TextCollector - superclass of Tools::NewSystemBrowserCodeView "
+        #'stx:libwidg2'    "ComboBoxView - superclass of FilenameEditFieldV2 "
     )
 ! !
 
@@ -538,13 +534,13 @@
     "Return a SVN revision number of myself.
      This number is updated after a commit"
 
-    ^ "$SVN-Revision:"'8022            '"$"
+    ^ "$SVN-Revision:"'8025:8026       '"$"
 ! !
 
 !stx_libtool class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/stx_libtool.st,v 1.84 2012/07/26 12:07:41 vrany Exp $'
+    ^ '$Id: stx_libtool.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 !
 
 version_CVS
@@ -552,5 +548,5 @@
 !
 
 version_SVN
-    ^ '$Id: stx_libtool.st 8026 2012-07-26 16:09:41Z vranyj1 $'
+    ^ '$Id: stx_libtool.st 8027 2012-07-26 18:46:57Z vranyj1 $'
 ! !